Asymptote: Marking Angles
Asymptote (Vector Graphics Language) |
Getting Started - Basics - Drawing - Reference - Examples - Macros and Packages - Advanced Asymptote - 3D Graphics - Help |
You can use the olympiad package to create nice marks for the angles.
Let's look at this angle.
draw((0,0)--(3,4),EndArrow); draw((0,0)--(5,0),EndArrow);
Now we mark this angle:
import olympiad; draw((0,0)--(3,4),EndArrow); draw((0,0)--(5,0),EndArrow); draw(anglemark((5,0),(0,0),(3,4)));
What we are doing with the draw(anglemark((a,b),(c,d),(e,f))) command is the code to mark the angle that has ends at (a,b) and (e,f) and a vertex at (c,d).
(The import olympiad code is not required on the forums, but you need to use it on your home computer).
This angle is too small, so we change the scale factor:
import olympiad; draw((0,0)--(3,4),EndArrow); draw((0,0)--(5,0),EndArrow); markscalefactor=0.1; draw(anglemark((5,0),(0,0),(3,4)));
The larger the scale factor, the bigger the angle mark is. Note: On some images, you might not be able to see the angle mark unless you set it to a large scale factor.
We can add properties to this mark:
import olympiad; draw((0,0)--(3,4),EndArrow); draw((0,0)--(5,0),EndArrow); markscalefactor=0.1; draw(anglemark((5,0),(0,0),(3,4)),red);
We can get fancy with this:
import olympiad; draw((0,0)--(3,4),EndArrow); draw((0,0)--(5,0),EndArrow); markscalefactor=0.1; filldraw(anglemark((5,0),(0,0),(3,4)),green,red+linewidth(1));
There also exists a command called rightanglemark to create a right angle.
import olympiad; draw((0,0)--(0,4),EndArrow); draw((0,0)--(5,0),EndArrow); draw(rightanglemark((5,0),(0,0),(0,4)));