Distance dab = Distance(a.center, b.center, scale=u, L="$r_{ab}$");
Distance dac = Distance(a.center, c.center, scale=u, L="$r_{ac}$");
Distance ds[] = {dab, dac};
-Angle bac = Angle(b.center, a.center, c.center, radius=-.5u, L="$\theta_T$");
-Angle as[] = {bac};
+Angle bac1 = Angle(
+ b.center, a.center, c.center, radius=.7u, fill=red, L="$\theta_T'$");
+Angle bac2 = Angle(b.center, a.center, c.center, radius=-.5u, L="$\theta_T$");
+Angle as[] = {bac1, bac2};
Vector vs[];
vs.push(Vector(center=(-1u,-5.5u), phi=-90, "In"));
vs.push(Vector(center=(0, -4u), mag=1.5u, dir=-90, phi=60, "60dg OOP"));
+for (int i=0; i<as.length; i+=1)
+ as[i].draw();
for (int i=0; i<ms.length; i+=1)
ms[i].draw();
for (int i=0; i<ds.length; i+=1)
ds[i].draw();
-for (int i=0; i<as.length; i+=1)
- as[i].draw();
for (int i=0; i<vs.length; i+=1)
vs[i].draw();
pair C;
real radius; // radius < 0 for exterior angles.
pen outline;
+ pen fill;
Label L;
- void operator init(pair B, pair A, pair C, real radius=5mm, pen outline=currentpen, Label L="") {
+ void operator init(pair B, pair A, pair C, real radius=5mm, pen outline=currentpen, pen fill=invisible, Label L="") {
this.B = B;
this.A = A;
this.C = C;
this.radius = radius;
this.outline = outline;
+ this.fill = fill;
this.L = L;
}
if (rotateLabel == false)
label_rotate = (1,0);
- draw(picF, p, outline);
+ if (this.fill != invisible) {
+ path pcycle = (0,0) -- p -- cycle;
+ fill(picF, pcycle, this.fill);
+ }
+ draw(picF, p, this.outline);
label(pic = picF,
L = rotate(degrees(label_rotate)) * L,
position = P + unit(P) * (pLabelSize.y / 2 + labelOffsetAdjustment));