A variety of 2D objects can be created with these commands (e.g.: poly lines, circles and ellipses with given radius etc.) The order of the parameters in a sequence is always definitive.
POINT
POINT <coord> ENTER
It creates a point at the given place.
coord (point): the position of the point.
e.g.: #POINT 10 10;
- It creates a point at the place (10,10).
PARAMETER
POINT PARAMETER shape width height ang <coord> ENTER
It draws a shape defined by the parameters ‘shape’, ‘width’, ‘hight’ and ‘ang’ with its center point located at ‘coord’.
shape (int): shape can be 0: default; 1: square; 2: +; 3: X; 4: triangle; 5: circle;
width (real): the width of the shape
height(real): the height of the shape
ang (real): an angle by which the shape is rotated (0 is horizontal and positive way is counterclockwise)
coord (point): the coordinates of the point
e.g.: #POINT PARAMETER 1 10 10 45 0 0;
- It draws a square at the point (0,0) with the side length of 10, standing on its vertex.
NOTE: Although it draws a complex shape it creates only a point in the memory, located at ‘coord’.
DIVIDE
DIVIDE <prim num> ENTER
It divides the selected object into equal parts and creates points at the ends of the object and at the dividing points.
prim (obj): the object to be divided
num (int): the number of equal portions
e.g.: #DIVIDE 10 10 3;
- It divides the object located near the place (10,10) into 3 equal steps.
OPENCHAIN
DIVIDE OPENCHAIN <prim length> ENTER
It divides the selected object/chain into steps with the length given in the parameter ‘length’ and creates points at the dividing points.
prim (obj): the object to be divided
length (real): the length of the sections
e.g.: #DIVIDE OPENCHAIN 10 10 3;
-It divides the object found nearby the point (10,10) into sections with a length of 3.
NOTE: If the object cannot be exactly divided into steps with a length given by the parameter length, the last section will be shorter.
OPENCHAIN ENDDIVIDED
DIVIDE OPENCHAIN ENDDIVIDED <prim num> ENTER
It divides the selected chain into equal parts and creates points at the chain’s endpoints and at the dividing points.
prim (obj): the chain to be divided
num (int): the number of sections
e.g.: #DIVIDE OPENCHAIN ENDDIVIDED 10 10 3;
-It divides the chain located near the place (10,10) into 3 equal steps.
NOTE: This command is similar to DIVIDE but not exactly the same. For example if the point (10,10) is the left bottom vertex of a square made by a chain, DIVIDE divides only one side of the square but DIVIDE OPENCHAIN ENDDIVIDED divides the whole circumference of the square.
CONSTLINE
CONSTLINE <<coord1 coord2> ENTER> ENTER
It creates a construction line (a line between the borders of the whole window) passing through the two points given.
coord1 (point): the coordinates of the first point
coord2 (point): the coordinates of the second point
e.g: #CONSTLINE 0 0 0 10;
-It creates a line from the left to the right border of the window laying on the X axis.
PT
CONSTLINE PT ANGLE dir <coord> ENTER
It creates a construction line with the given direction passing through the point given by the parameter ‘coord’.
dir (real): the angle between the x axis and the construction line
coord (point): the coordinates of the point
e.g.: #ANGLE 0; #CONSTLINE PT 0 0;
-It creates a line from the left to the right border of the window laying on the X axis.
TANGENT
CONSTLINE TANGENT [FIXDIRECTION ang] <prim> ENTER
It creates a construction line tangential to the object given by the parameter ‘prim’. The common point will be either the nearest to the selecting point or the start point of the object. If you use the option 'FIXDIRECTION' the direction of the line will be the given and the program will select the nearer from the two possible tangential points.
ang (real): the direction of the line
prim (obj): the object the line will be tangential to
e.g.: #CONSTLINE TANGENT 10 10;
- It creates a construction line tangential to the object found nearby the point (10,10).
LINE
LINE <start.coord <end.coord> ENTER> ENTER
It creates a series of lines connected by their endpoints. The endpoint of a line will be the start point of the next.
start.coord (point): the start point of the first line
end.coord (point): the endpoint of the actual line
e.g.: #LINE 10 10 10 20 20 20 20 10 10 10;
- It draws a square with a height and width of 10 and with its left bottom vertex located at the point (10,10).
VALUE
LINE VALUE index <start.coord end.coord> ENTER
It creates a set of lines given by their start and endpoints. The lines attributes will be the same as the object defined by the parameter ‘int’.
index (int): the index of the object from which the attributes are inherited by the line
start.coord (point): the coordinates of the line’s start
end.coord (point): the coordinates of the line’s end
e.g.: #LINE VALUE 3 0 0 10 10;
-It creates a line from (0,0) to (10,10) with the same attributes as the object which has the index: 3.
HORIZONTAL
LINE HORIZONTAL <start.coord end.coord> ENTER
It creates horizontal lines defined by their start and endpoints.
start.coord (point): the coordinates of the line’s start
end.coord (point): the coordinates of the line’s end
e.g: #LINE HORIZONTAL 10 10 20 10 10 20 20 20;
- It creates two parallel lines. One between the places (10,10) and (20,10) and an other one between the places (10,20) and (20,20).
NOTE: If you give 2 coordinates that do not define a horizontal line the line defined by these won’t be created.
VERTICAL
LINE VERTICAL <start.coord end.coord> ENTER
It creates vertical lines defined by their start and endpoints.
start.coord : the coordinates of the line’s start
end.coord: the coordinates of the line’s end
e.g: #LINE VERTICAL 10 10 10 20 20 10 20 20;
- It creates two parallel lines. One between the places (10,10) and (10,20) and an other one between the places (20,10) and (20,20).
NOTE: If you give 2 coordinates that do not define a vertical line the line defined by these won’t be created.
HV
LINE HV start.coord <end.coord> ENTER
It creates a series of horizontal/vertical lines connected by their endpoints. The endpoint of a line will be the start point of the next.
start.coord (point): the start point of the first line
end.coord (point): the endpoint of the actual line
e.g.: #LINE HV 10 10 10 20 20 20 20 10 10 10;
- It draws a square with a height and width of 10 and with its left bottom vertex located at the point (10,10)
NOTE: Even if connecting a pair of start and endpoints results a non HV line, a line will be created from the start point (the endpoint of the preceding line) to the projection of the given endpoint on the horizontal or vertical direction. The actual endpoint will be the nearer from the two possible.
PERPENDICULAR
LINE PERPENDICULAR [CONSTLINE] <coord prim> ENTER
It creates a line perpendicular to the selected object. The start point of the line will be the given point and the endpoint of the line will be either the nearest intersection point with the object or the nearest intersection point with the construction lines of the object (not visible).
If you use the switch ‘constline’ a construction line will be created with the same conditions
coord (point): the coordinates of the start point of the line
prim (obj): the object the line will be perpendicular to
e.g.: #LINE PERPENDICULAR 0 0 15 15;
- It creates a lines starting from the (0,0) perpendicular to the object located nearby the (15,15).
LPERPENDICULAR
LINE LPERPENDICULAR <prim1 {length|coord|ONITEM prim2}> ENTER
It creates a line perpendicular to the object selected by the parameter ‘prim1’. The start point will be on the selected object and the endpoint can be defined either directly or with the length of the line.
If you give the coordinates of the desired endpoint, and the line passing through the selected start and endpoints is not perpendicular to the object, the endpoint will be the named point’s projection to the perpendicular direction.
If you use the option ‘ONITEM’ then you have to select another object, on which the endpoint will be created.
If you enter the length the positive length is in the right from the objects direction.
prim1 (obj): the object the line will be perpendicular to
length (real): the length of the line
coord (point): the coordinates of the line’s endpoint
prim2 (obj): the object on which the endpoint will be created
e.g.: If you have a square with its left bottom vertex on (0,0) and another with its left bottom vertex on (10,0) and both has a width of 2, the next 3 commands will create the same line, which connects the midpoint of the first square’s right side with the midpoint of the second square’s left side:
#LINE LPERPENDICULAR 2 1 3;
#LINE LPERPENDICULAR 2 1 5 1;
#LINE LPERPENDICULAR 2 1 ONITEM 5 0;
PARALLEL
LINE PARALLEL [CONSTLINE] <<prim coord> ENTER> ENTER
It creates a line which will be parallel to the selected line and which has the same length. The new line is defined with a point it (or its construction line) passes through. If you use the switch ‘constline’ a construction line will be created with the same conditions. (Of course the length of the construction line will be the whole width of the window.)
prim (obj): the object the new line will be parallel to
coord (point): one point of the new line
e.g.: #LINE 10 10 20 10; #LINE PARALLEL 10 10 10 20;
-It creates two parallel horizontal lines with the same length (10), one starting from (10,10) and the second starting from (10,20).
NOTE: In this command the selected object can be only a line or a construction line. It is allowed that the selected line is a part of a chain or a polygon.
DPARALLEL
LINE DPARALLEL [CONSTLINE] <prim <dist> ENTER> ENTER
It cerates a line which will be parallel to the selected line and which has the same length. The new line is defined with the distance from the origin. If you use the switch ‘constline’ a construction line will be created with the same conditions. (Of course the length of the construction line will be the whole width of the window.) The positive direction is the side of the object where the chosen point has fallen.
prim (obj): the object the new line will be parallel to
dist (real): the distance between the original and the new line
e.g.: #LINE DPARALLEL 15 11 2 4 6 8; 11 15 2 4 6 8;;
-If you have the square with its left bottom vertex on the point (10,10) and with the width of 10, this command creates a grid inside the square with the distance 2 between the points of the grid.
NOTE: In this command the selected object can be only a line or a construction line. It is allowed that the selected line is a part of a chain or a polygon.
DISTANCE
LINE DISTANCE [CONSTLINE] <prim dist> ENTER
It cerates a line which will be parallel to the selected line and which has the same length. The new line is defined with the distance from the origin. If you use the switch ‘constline’ a construction line will be created with the same conditions. (Of course the length of the construction line will be the whole width of the window.) The positive direction is the side of the object where the chosen point has fallen.
prim (obj): the object the new line will be parallel to
dist (real): the distance between the original and the new line
e.g: #LINE DISTANCE 15 11 5 11 15 5;
-If you have the square with its left bottom vertex on the point (10,10) and with the width of 10, this command creates four squares with a width of 5 inside the original square.
NOTE: In this command the selected object can be only a line or a construction line. It is allowed that the selected line is a part of a chain or a polygon. The effect of this command is the same then #LINE DPARALLEL but the syntax is different.
SAMEPARALLEL
LINE SAMEPARALLEL [CONSTLINE] prim dist <prim> ENTER
It creates a line which will be parallel to the selected line and which has the same length. The new line is defined with the distance from the origin. If you create multiple lines the distance will be the same. If you use the switch ‘constline’ a construction line will be created with the same conditions. (Of course the length of the construction line will be the whole width of the window.) The positive direction is the side of the object where the chosen point has fallen.
prim (obj): the object the new line will be parallel to
dist (real): the distance between the original and the new line
e.g.: #LINE 20 10 10 10; #LINE SAMEPARALLEL 10 15 2 12 15 14 15;
-It creates 3 vertical lines with the length of 10. Their starting points will be (12,20), (14,20) and (16,20).
NOTE: In this command the selected object can be only a line or a construction line. It is allowed that the selected line is a part of a chain or a polygon. The effect of this command is the same then #LINE DPARALLEL but the syntax is different.
AXIS
LINE AXIS [HV] <coord1 <coord2> ENTER> ENTER
It creates a set of lines passing through one point given by the parameter ‘coord1’. One line’s first endpoint will be the parameter ‘coord2’ and the other will be created in the opposite direction with the same distance. If you use the switch ‘HV’ only horizontal/vertical lines will be created, and the first endpoint will be either the given or its projection explained by the note of the command LINE HV.
coord1 (point): the center point of the lines
coord2 (point): one endpoint of the created line
e.g.: #LINE AXIS 0 0 10 0 0 10;;
-It creates a cross at the center of the window from two 20m long lines.
BREAK
LINE BREAK [HV] <coord1 <coord2 {coord3|ONITEM prim}> ENTER> ENTER
It creates a set of lines with their construction line passing through one point. If you use the switch ‘HV’ only horizontal/vertical lines will be created, and the first endpoint will be either the given or its projection explained by the note of the command LINE HV.
coord1 (point): the common point of the line’s construction lines
coord2 (point): one endpoint of the next line
coord3 (point): the second endpoint of the next line
prim (obj): the object the second endpoint will be located on
e.g.: #LINE BREAK 0 0 10 0 -10 0 0 10 0 -10;;
-It creates a cross at the center of the window from two 20m long lines.
RPT
LINE RPT [CONSTLINE] <coord prim> ENTER
It creates a line from the point ‘coord’ tangential to the object ‘prim’. The endpoint will be created on the object. If you use the switch ‘constline’ a construction line will be created passing through the point and tangential to the object.
coord (point): the start point of the line
prim (obj): the object the line will be tangential to
e.g.: #LINE RPT 0 0 5 10;
-It creates a line from the center of the drawing tangential to the circle located at (10,10) and with the radius of 5. (If it exists.)
TTR
LINE TTR [CONSTLINE] <prim1 prim2> ENTER
It creates a line tangential to both object selected with the two parameters ‘prim1’ and ‘prim2’. If there is no such a line, nothing will be created. The two endpoints will be the two tangential points. If there are more possible tangential lines to the two objects, those tangential points will be chosen which are the nearest to the selecting points. If you use the switch ‘constline’ the two endpoints will be on the borders of the window.
prim1 (obj): the first object the line will be tangential to
prim2(obj): the second object the line will be tangential to.
e.g.: #LINE TTR 10 10 -10 10;
- A line will be created which is tangential to both the object near to the point (10,10) and the object near to the point (-10,10).
LTANGENT
LINE LTANGENT [CONSTLINE] <prim1 prim2> ENTER
It creates a line perpendicular to the construction line of ‘prim1’ and tangential to ‘prim2’. If there is no such a line, nothing will be created. The two endpoints will be the two intersection points. If there are more possible lines with these conditions, those line be chosen of which intersection points are nearest to the selecting points. If you use the switch ‘constline’ the two endpoints will be on the borders of the window.
prim1 (obj): the object the line will be perpendicular to
prim2(obj): the object the line will be tangential to
e.g.: #LINE LTANGENT 10 10 10 0;
- A line will be created which is perpendicular to the object near to the point (10,10) and tangential to the object near to the point (-10,10).
HALFANGLE
LINE HALFANGLE [CONSTLINE]
<prim1 prim2 {coord1|ONITEM prim3} {coord2|ONITEM prim4}> ENTER
It creates a line running in the half angle of the two selected objects ‘prim1’ and ‘prim2’ either between the two endpoints given by ‘coord1’ and ‘coord2’ (or given by using any of the switches ‘ONITEM’ and selecting an object) or between the borders of the window if you use the switch ‘CONSTLINE’. If the two objects are parallel the line will be running parallel, too, halving their distance.
prim1, prim2 (obj): the two selected objects
coord1 (point): the start point of the line
coord2 (point): the endpoint of the line
prim3 (obj): an object the start point will be located at
prim4 (obj): an object the endpoint will be located at
e.g.: #LINE 20 10 10 10 10 20;; #LINE HALFANGLE 15 10 10 15 20 20 ONITEM 15 10;
- It creates a line from (20,20) to (10,10)
TRIANGLE
LINE TRIANGLE [ {RIGHT|POINT} ] <prim length1 length2> ENTER
It creates a triangle. The base line will be the selected by ‘prim’ and the two other lines are defined by their length. (The base line have to be created before running this command.) If you use the switch ‘POINT’ only the third vertex will be drawn (one point will be created). If you use the switch ‘RIGHT’ only the side connecting the third vertex and the start point of the base line will be created (one segment will be created). If you do not use any switches both sides will be created (two segments will be created).
prim (obj): the base line of the triangle
length1, length2 (real): the lengths of the two sides
e.g.: #LINE 20 10 10 10;
1.: #LINE TRIANGLE 15 10 8 8;
2.: #LINE TRIANGLE RIGHT 15 10 8 8;
3.: #LINE TRIANGLE POINT 15 10 8 8;
TRIANGLE P3/CPOINT
LINE TRIANGLE {P3|CPOINT} <coord1 coord2 length1 length2> ENTER
It creates the vertices of a triangle, given by two points and with the lengths of two sides. If you use the option ‘P3’ every three vertices will be created (3 points will be created) but if you use ‘CPOINT’ only the third (not given) point will be created.
coord1, coord2 (point): the coordinates of the vertices on the imaginary base line
length1, length2 (real): the lengths of the two imaginary sides
e.g.: #LINE TRIANGLE CPOINT 10 10 20 10 10 14.1421;
- It creates a point at (10,20).
ARC
LINE ARC
<st_point1
{ARC
{TANGENT tng_point1 {end_point | RADIUS rad DANGLE ang}
| mid_ point end_point
}
| SPLINE node1 tng_point2 ct_point {<node> [CLOSED] ENTER | ENTER}
| end_point1
}
<
{ARC
{SMOOTH end_point
| TANGENT tng_point1 {end_point | RADIUS rad DANGLE ang}
| mid_ point1 end_point
}
| SPLINE
{SMOOTH node1 ct_point {<node> [CLOSED] ENTER | ENTER}
| node1 tng_point2 ct_point {<node> [CLOSED] ENTER | ENTER}
}
| end_point2
}
> ENTER
> ENTER
It creates a series of lines, circular arcs and splines. The start point of a segment will be the endpoint of the previous segment. The connections can be normal or smooth. (The tangents of the connected objects are the same in the connection point.)
While drawing a spline if you use the switches ‘CLOSED’ the spline will be closed. (This means the first and the last point will be the same.)
st_point1 (point): the coordinates of the start point of the chain
tng_point1 (point): the line going through this point and the endpoint of the previous object will be the arc’s tangent in the connection point
end_point (point): the endpoint of an arc
rad (real): the radius of an arc
ang (real): the central angle of an arc
mid_point (point): the center of the arc
node1 (point): the first node of a spline
tng_point2 (point): the spline’s tangent in the connection point will be the line going through the endpoint of the previous segment and tng_point2
ct_point (point): a control point which defines the first curve of the spline. The spline won’t go through this point. The tangent at the first node will be the line between the start of the spline and this point.
node (point): a point the spline will go through
end_point1 (point): if the first object is a straight line, this will be its endpoint
end_point2 (point): if any segment is a straight line, this will be its endpoint
e.g.: #LINE ARC 10 10 20 10 ARC SMOOTH 20 5 10 5 ARC TANGENT 0 5 RADIUS 2.5 DANGLE 180;;
- It creates two parallel lines in a distance of 5 and with a length of 10, and two half circles closing both ends of the lines
ARC MULTILINE
LINE ARC MULTILINE <offset> ENTER
<st_point1 [INVERSE]
{ARC
{TANGENT tng_point1 {end_point | RADIUS rad DANGLE ang}
| mid_ point end_point
}
| SPLINE node1 tng_point2 ct_point {<node> [CLOSED] ENTER | ENTER}
| end_point1
| SELITEM prim
}
<
{ARC
{SMOOTH end_point
| TANGENT tng_point1 {end_point | RADIUS rad DANGLE ang}
| mid_ point1 end_point }
| SPLINE
{SMOOTH node1 ct_point {<node> [CLOSED] ENTER | ENTER}
| node1 tng_point2 ct_point {<node> [CLOSED] ENTER | ENTER}
}
| end_point2
| SELITEM prim
}
> ENTER
> ENTER
It creates a series of lines, arcs, splines like LINE ARC but with more parallel lines. The distances are defined by the parameters offset. The offset is measured from the previous line, not from the first. The parallel lines run on the right side of the main line but if you use the switch ‘INVERSE’ it can be changed. With the SELITEM option you can select an existing object to involve it into the chain. Its start point will be connected to the actual point with a straight line. At the connections the parallel lines are trimmed or extended to create a connection between them, too. For more details see LINE ARC.
offset (real): the distances of the parallel lines from the main line
st_point1 (point): the coordinates of the start point of the chain
tng_point1 (point): the line going through this point and the endpoint of the previous object will be the arc’s tangent in the connection point
end_point (point): the endpoint of an arc
rad (real): the radius of an arc
ang (real): the central angle of an arc
mid_point (point): center of the arc
node1 (point): the first node of a spline
tng_point2 (poin)t: the spline’s tangent in the connection point will be the line going through the endpoint of the previous segment and tng_point2
ct_point (point): a control point which defines the first curve of the spline. The spline won’t go through this point. The tangent at the first node will be the line between the start of the spline and this point.
node (point): a point the spline will go through.
end_point1 (point): if the first object is a straight line, this will be its endpoint
end_point2 (point): if any segment is a straight line, this will be its endpoint
prim (obj): an object to be involved into the line
e.g.: #LINE ARC MULTILINE 0.5; 10 10 20 10 ARC SMOOTH 20 5 10 5 ARC TANGENT 0 5 RADIUS 2.5 DANGLE 180;;
- It creates two parallel lines in a distance of 5 and with a length of 10, and two half circles closing both ends of the lines and another parallel object with the same outfit inside the first and in the distance of 0.5
POLYGON
POLYGON <<coord> ENTER> ENTER
It creates a polygon defined by its vertices. The last vertex will be automatically connected with the first.
coord (point): a vertex of the polygon
e.g.: #POLYGON 10 10 10 20 20 20 20 10;;
- It creates a square with its left bottom vertex at the point (10,10) and with a length of the sides of 10.
NOTE: at least three vertices have to be given
IN
POLYGON IN <num <[DIAMETER dia][RADIUS rad][ANGLE ang] coord>ENTER> ENTER
It creates a regular polygon defined with the number of its vertices. The polygon will be created as it were inscribed in a circle. The radius of the circle is either the actual radius or it can be modified using the options ‘DIAMETER’ or ‘RADIUS’. With the option ‘ANGLE’ you can define the first vertex’s direction from the center point. Modifying these values doesn't affect the actual ones.
num (int): the number of the polygon’s vertices (at least 3)
dia (real): the diameter of the imaginary circle, the polygon will be inscribed in
rad (real): the radius of the imaginary circle, the polygon will be inscribed in
ang (real): the included angle between the horizontal direction and the line connecting the first vertex with the center point. The positive direction is counterclockwise.
coord (point): the coordinates of the polygon’s center point.
e.g.: #POLYGON IN 4 DIAMETER 14.1427 ANGLE 90 0 0;;
It creates a square standing on its vertex at the center of the drawing with the width the length of the sides of 10.
OUT
POLYGON OUT <num <[DIAMETER dia][RADIUS rad][ANGLE ang] coord> ENTER>ENTER
It creates a regular polygon defined with the number of its vertices. The polygon will be created as it were circumscribed around a circle. It means every sideline is tangential to the circle. The radius of the circle is either the actual radius or it can be modified using the options ‘DIAMETER’ or ‘RADIUS’. With the option ‘ANGLE’ you can define the first vertex’s direction from the center point. Modifying these values doesn't affect the actual ones.
num (int): the number of the polygon’s vertices (at least 3)
dia (real): the diameter of the imaginary circle, the polygon will be circumscribed around
rad (real): the radius of the imaginary circle, the polygon will be circumscribed around
ang (real): the included angle between the horizontal direction and the line connecting the first vertex with the center point. The positive direction is counterclockwise.
coord (point): the coordinates of the polygon’s center point.
e.g.: #POLYGON OUT 4 DIAMETER 10 ANGLE 90 0 0;;
It creates a square standing on its vertex at the center of the drawing with the width the length of the sides of 10.
INSCRIBED
POLYGON INSCRIBED <num <center_pt node> ENTER> ENTER
It creates a regular polygon defined by the number of its vertices, and by its center point and one vertex.
num (int): the number of the polygon’s vertices (at least 3)
center_pt (point): the coordinates of the center point
node (point): the coordinates of a vertex
e.g.: #POLYGON INSCRIBED 4 5 5 10 0; 3 5 12.887 0 10;;
-It creates a square with its left bottom vertex at the center of the drawing and with the length of sides of 10, and a regular triangle with the same length of sides sitting on the top of the square.
CIRCUMSCRIBED
POLYGON CIRCUMSCRIBED <num <center_pt coord>ENTER>ENTER
It creates a regular polygon defined by the number of its vertices and by its center point and a point of the circle the polygon is circumscribed around.
num (int): the number of the polygon’s vertices (at least 3)
center_pt (point): the center of the polygon
coord (point): a point of the imaginary circle and the midpoint of one side of the polygon
e.g.: #POLYGON CIRCUMSCRIBED 4 0 0 0 10;
-It creates a square with the four vertices: (10,10) (-10,10) (-10,-10) and (10,-10).
REGULAR IN
POLYGON REGULAR IN length num <[ANGLE ang] coord> ENTER
It creates a regular polygon defined by the number of its vertices and by the length of its sides
length (real): the length of the polygon’s sides
num (int): the number of the polygon’s vertices (at least 3)
ang (real): the rotation angle of the polygon
coord (point): the coordinates of the polygon’s center point
e.g.: #POLYGON REGULAR IN 5 8 0 0 ANGLE 22.5 0 0;
-It creates two octagons. Both center points are (0,0) and the both octagon has a side length of 5 but the first stands on one of its vertices and the second lays on one of its side.
NOTE: If the angle is 0 (default) the vertex with the biggest x coordinate will be located in the horizontal direction from the center point. The positive angle is in counterclockwise.
MULTILINE
POLYGON MULTILINE <offset> ENTER <coord1 [BACKWARD] <coord>> ENTER> ENTER
It creates multiple polygons with parallel sides. Only the vertices of one polygon have to be given and the others are constructed in the distances given in the parameters ‘offset’. The offsets are measured from the previous line not from the first. If you use the switch ‘BACKWARD’ the first offset is measured on the left side of the first line.
offset (real): the distance between the parallel edges
coord1 (point): the first vertex of the base polygon
coord (point): vertices of the base polygon (at least 2)
e.g.: #POLYGON MULTILINE 1 1; 0 0 10 0 10 10 0 10;;
-It creates three squares with the length of sides of 10. The left bottom vertex of the first will be located at (0,0). The coordinates of the other’s left bottom corner will be (-1,-1) and (-2,-2)
RECTANGLE
RECTANGLE [MULTILINE <offset> ENTER]
<coord1 [INVERSE] coord2 {coord3|ONITEM prim}> ENTER
It creates a rectangle defined by three points. The first two coordinates will be the endpoints of the base line. From the third coordinates only one is relevant the other comes from the second point’s coordinates.
If you use the switch ‘MULTILINE’ more rectangles will be created with parallel edges. The distances between the oblongs are given in the parameters ‘offset’. The offset is measured from the previous line not from the first. By using the switch ‘INVERSE’ the secondary lines can be relocated on the other side of the primary rectangle.
offset (real): the distance between the parallel rectangles
coord1 (point): one vertex of the rectangle
coord2 (point): another vertex of the rectangle which sits on the same edge as ‘coord1’
coord3 (point): a third vertex of the rectangle
prim (obj): an object the third point will be located at
e.g.: #RECTANGLE 0 0 20 0 -1 -10;
-It creates a rectangle with the vertices: (0,0) (20,0) (20,-10) (0,-10). Notice that replacing the -1 (the horizontal coordinate of the third point) with any number doesn’t affect the result.
WIDTH
RECTANGLE WIDTH width <coord1 [INVERSE] coord2> ENTER
It creates rectangle defined by two points and with the length of one edge. With the switch ‘INVERSE’ you can change on which side of the base line are the third and fourth vertices (the default is right).
width (real): the length of one side of the rectangle
coord1 (point): the first endpoint of the base line
coord2 (point): the second endpoint of the base line
e.g.: #RECTANGLE WIDTH 10 0 0 INVERSE 10 0;
-It creates a square with the four vertices: (0,0) (10,0) (10,10) and (0,10).
HV
RECTANGLE HV [MULTILINE <offset>] <coord1 [INVERSE] coord2> ENTER
It creates a rectangle with parallel sides to the borders of the window. The rectangle is defined by the two endpoints of its diagonal. If you use the switch ‘MULTILINE’ more rectangles will be created with parallel edges. By using the switch ‘INVERSE’ you can change the offsets to their negatives.
offset (real): the distance of the parallel lines
coord1, coord2 (point): The coordinates of the endpoints of the diagonal
e.g.: #RECTANGLE HV 0 0 20 10;
-It creates a square with the four vertices: (0,0) (20,0) (20,10) and (0,10).
SPLINE
SPLINE <st_coord node1 tg_coord1 tg_coord2 [<node>] [CLOSED] ENTER>ENTER
It creates a spline. The tangents in the first and second point are defined by the values given in the parameters ‘tg_coord1’ and ‘tg_coord2’. If you use the switch ‘CLOSED’ the last node and the start point will be connected.
st_coord (point): the start point of the spline
node1 (point): the first node of the spline
tg_coord1 (point): the tangent at the start point will be the line between ‘st_coord’ and ‘tg_coord1’
tg_coord2 (point): the tangent at the first node will be the line between ‘node1’ and ‘tg_coord2’
node (point): nodes of the spline
e.g.: #SPLINE 0 10 10 0 20 10 10 20 5 -8 3 -16 -8 10;;
-It creates a spline starting with an quarter circle between (0,10) and (10,0).
CIRCLE
CIRCLE < {RADIUS rad|DIAMETER dia} <coord>> ENTER
It creates circles with the radius defined by the options ‘RADIUS’ or ‘DIAMETER’. The centers will be located at ‘coord’.
rad (real): the radius of the circles
dia (real): the diameter of the circles
coord (point): the center point of the circle
e.g.: #CIRCLE RADIUS 5 0 0 DIAMETER 10 10 10;
-It creates two circles each with the radius of 10. The first’s center point is (0,0) and the second’ is (10,10)
VALUE
CIRCLE VALUE index <coord> ENTER
It creates circles with the same attributes as one existing. The model can be chosen by its index.
index (int): the index of the circle from which the attributes are inherited
coord (point): the center of the circles
e.g.: #CIRCLE VALUE 4 0 0;
-It creates a circle with the same attributes as the object indexed with 4 has.
NOTE: If the object is not a circle or a circular arc, the radius of the newly created circle will be the default. Only other attributes such as color, line type, etc. are inherited.
CPOINT
CIRCLE CPOINT <coord1 coord2> ENTER
It creates a circle defined by its center and a point of its circumference.
coord1 (point): the center of the circle
coord2 (point): one point of the circle’s circumference
e.g.: #CIRCLE CPOINT 0 0 7.071 7.071;
-It creates a circle. The center point is (0,0) and the radius is 10.
P2
CIRCLE P2 < {RADIUS rad|DIAMETER dia} <coord1 coord2 coord3> > ENTER
It creates circles defined by two points, and the radius. The parameter ‘coord3’ makes the choice between the two possible circles. The radius is set by the keywords ‘RADIUS’ and ‘DIAMETER’.
rad (real): the radius of the circle
dia (real): the diameter of the circle
coord1, coord2 (point): two points of the circle’s circumference
coord3 (point): a point to choose between the two possible circles. The nearer center will be chosen.
e.g.: #CIRCLE P2 RADIUS 10 8 8 6 2 10 0 RADIUS 20 0 -20 10 -20 15 -30;
- It creates two circles. The first has a radius of 10 and goes through (8,8) and (6,2) the second’s radius is 20 and goes through (0,-20) and (10,-20). In both cases the center will be located below the given points (with lower y coordinate).
P3
CIRCLE P3 <coord1 coord2 coord3> ENTER
It creates a circle passing through all the three given points.
coord1, coord2, coord3 (point): coordinates of the three points
e.g.: #CIRCLE P3 5 0 -5 0 0 5;
- It creates a circle with the radius of 5 and its center point will be (0,0).
CT
CIRCLE CT <coord prim> ENTER
It creates a circle defined by its center point and by a tangential object. Sometimes there are more possible tangential points (e.g. if the tangential object is also a circle). In this case that point will be chosen, which is nearer to the given point. If you select the object by its index, the tangential point will be the endpoint of the object. (The endpoint of a circle is always the point with the lower x coordinate.)
coord (point): the center point of the circle
prim (obj): an object the circle will be tangential to
e.g.: #CONSTLINE 10 0 -10 0; #CIRCLE CT 10 10 0 0;
-It creates a circle with the radius of 10 and its center point will be (10,10).
TTR
CIRCLE TTR < {RADIUS rad|DIAMETER dia} prim1 prim2> ENTER
It creates a circle with the defined radius, tangential to both objects ‘prim1’ and ‘prim2’. If there isn’t any circle with these conditions, nothing will be created. If there are more possible circles the one will be selected which’s tangential points are nearer to the given points.
rad (real): the radius of the circle
dia (real): the diameter of the circle
prim1, prim2 (obj): the two objects the circle will be tangential to
e.g.: #CONSTLINE 10 0 -10 0 20 10 20 20; #CIRCLE TTR RADIUS 10 0 0 20 20 RADIUS 1 20 10 18 14;
-It creates first a bigger circle with the radius of 10 and with the center point (10,10) then it creates a smaller circle with the radius of 1 and with the center point (19,10).
TP2
CIRCLE TP2 <coord1 coord2 prim> ENTER
It creates a circle passing through the two given points and tangential to the object.
coord1, coord2 (real): two points of the circle
prim (obj): the object the circle will be tangential to
e.g.: #CONSTLINE -10 0 10 0; #CIRCLE TP2 5 5 15 5 ID 1;
- It creates a circle with the radius of 5 and with the center point (10,5). (If the newly created construction line’s index is 1.)
PTT
CIRCLE PTT <coord prim1 prim2> ENTER
It creates a circle passing through the given point and tangential to both given objects.
coord (point): a point of the circle
prim1, prim2 (obj): two objects the circle will be tangential to
e.g.: #CIRCLE PTT 0 0 10 10 -10 10;
-It creates a circle with the center point (0,0) and tangential to the objects found near the points (10,10) and (-10,10).
TTT
CIRCLE TTT <prim1 prim2 prim3> ENTER
It creates a circle tangential to all the three given objects.
prim1, prim2, prim3 (obj): objects the circle will be tangential to.
e.g.: #POLYGON 0 0 10 0 17 10; #CIRCLE TTT 6 0 12 5 5 3;
-It creates the inscribed circle of the triangle created by the command ‘POLYGON’.
RPT
CIRCLE RPT <{RADIUS rad|DIAMETER dia} prim coord> ENTER
It creates a circle with the given radius tangential to the given object and passing through the given point. If there isn’t any possible circle with these conditions nothing will be created.
rad (real): the radius of the circle
dia (real): the diameter of the circle
prim (obj): the object the circle will be tangential to
coord (point): the point the circle will passing through
e.g.: #LINE 0 0 10 0; #CIRCLE RPT RADIUS 1 0 0 20 2;
-It creates a circle with the radius of 1 and with the center point (20,19). Notice that the line is not tangential to the circle only its extension.
AXIS
CIRCLE AXIS <coord1 coord2> ENTER
It defines a circle as the line with the endpoints ‘coord1’ and coord2’ is the circle’s diameter.
coord1, coord2 (point): the endpoints of the circle’s diameter
e.g.: #CIRCLE AXIS 0 10 10 10;
-It creates a circle with the radius of 5 and with the center point (5,10).
ARC
ARC <{RADIUS rad|DIAMETER dia} coord> ENTER
It creates a circular arc with the given radius and with the given center point. The start of the arc will be the default start angle, and the end will be the default end angle.
rad (real): the radius of the arc
dia (real): the diameter of the arc
coord (point): the center point of the arc
e.g.: #ARC DIAMETER 10 10 10;
-It creates a circular arc with the center point (10,10) between the points (15,10) and (10,15).
VALUE
ARC VALUE index <[ {RADIUS rad|DIAMETER dia} ] coord>ENTER
It creates a circular arc with the attributes inherited from the object marked with the index ‘index’. The radius can be modified.
index (int): the index of the object the attributes are inherited from
rad (real): the radius of the arc
dia (real): the diameter of the arc
e.g.: #ARC VALUE 1 0 0;
-It creates a circular arc with the center point (0,0) and with the attributes of the object wearing the index 1. (radius, start and end angle etc.)
CPOINT
ARC CPOINT <coord1 coord2 [BACKWARD] coord3> ENTER
It creates a circular arc defined by its center point and the two endpoints of the arc. The arc will be created in the positive angle direction (counterclockwise) from the start point (‘coord2’). It can be changed by using the switch ‘BACKWARD’. If the third point isn’t on the circle defined by the first and second point the endpoint will be the nearest point of the circle.
coord1 (point): the center point of the arc
coord2 (point): the start point of the arc
coord3 (point): the endpoint of the arc
e.g.: #ARC CPOINT 0 0 5 0 0 10;
-It creates a circular arc with the center point (0,0) between the points (5,0) and (0,5).
P2/AXIS
ARC {P2|AXIS} <{RADIUS rad|DIAMETER dia} coord1 coord2 coord3> ENTER
It creates a circular arc with the given radius. The endpoints of the arc will be ‘coord1’ and ‘coord2’. If the distance between the two points is longer than the used diameter, nothing will be created. The parameter ‘coord3’ chooses between the possible arcs. (The arc will be chosen which has the nearest point to ‘coord3’.)
rad (real): the radius of the arc
dia (real): the diameter of the arc
coord1, coord2 (point): the endpoints of the arc
coord3 (point): a point to choose between the possible arcs.
e.g.: #ARC P2 RADIUS 5 0 0 10 0 0 1;
-It creates a circular arc with the center point (5,0) between the points (0,0) and (10,0). The arc will be created on the upper side of the x axis.
P3
ARC P3 coord1 {TANGENT tg_point {coord3|RADIUS rad DANGLE ang}|coord3 {coord2|{RADIUS rad|DIAMETER dia| PERIMETER per|ARC height} sel_point}} ENTER
It creates a circular arc. You can define it with three points or with two points and the tangent at the first point or with two points and the radius/diameter/perimeter/chord height of the arc. In the last case the parameter ‘sel_point’ chooses from the possible arcs.
coord1 (point): the start point of the arc
tg_point (point): the tangent at the start of the arc will be the line between ‘coord1’ and ‘tg_point’
coord3 (point): the endpoint of the arc
coord2 (point): a point of the arc
ang (real): the central angle of the arc
rad (real): the radius of the arc
dia (real): the diameter of the arc
per (real): the perimeter of the arc
height (real): the height of the arc
sel_point (point): if there are more possible arcs the one will be selected which has the nearest point to this parameter
e.g.: #ARC P3 0 0 TANGENT 0 10 10 0;
#ARC P3 0 0 10 0 5 5;
#ARC P3 0 0 10 0 RADIUS 5 5 30;
#ARC P3 0 0 10 0 DIAMETER 10 5 30;
#ARC P3 0 0 10 0 PERIMETER 5*PI 5 30;
#ARC P3 0 0 10 0 ARC 5 5 30;
-These 6 commands create the same arc. It is a semicircle with the radius of 5 between the points (0,0) and (10,0). The arc goes in the first quadrant.
TTR
ARC TTR <{RADIUS rad|DIAMETER dia} prim1 prim2>ENTER
It creates a circular arc with the given radius tangential to the objects ‘prim1’ and ‘prim2’. The endpoints of the arc will be the two tangential points.
rad (real): the radius of the arc
dia (real): the diameter of the arc
prim1, prim2 (obj): the objects the arc will be tangential to
e.g.: #CONSTLINE 1 0 2 0 0 1 0 2; #ARC TTR RADIUS 10 20 0 0 20;
-It creates a circular arc with the center point (10,10) and with the radius of 10. The two endpoints of the arc will be (0,10) and (10,0).
ARCCONTINUE
ARCCONTINUE <coord1
{TANGENT tg_point coord3
|coord2 coord3
}
<
{
{TANGENT tg_point coord3
|coord2 coord3
}
|SMOOTH {coord3|RADIUS rad DANGLE ang}
}
> ENTER
>ENTER
It creates a series of circular arcs. The endpoint of the previous arc is the start point of the next. The connection can be smooth (the same tangent at the connection point) or normal.
coord1 (point): the start point of the chain
tg_point (point): the tangent at the start of an arc will be the line between the actual point and ‘tg_point’
coord3 (point): the endpoint of an arc
coord2 (point): a point of an arc
rad (real): the radius of an arc
ang (real): the central angle of an arc
e.g.: #ARCCONTINUE 0 0 2.974 20.338 -2 2 SMOOTH RADIUS -10 DANGLE 300 SMOOTH RADIUS -8 DANGLE 300 SMOOTH RADIUS -6 DANGLE 300 SMOOTH RADIUS -4 DANGLE 300;;
-It creates a helix starting from the origin.
NOTE: If you enter the radius of an arc, the sign chooses between the two possible arcs. Positive number means the center is on the right side of the arc.
SMOOTH
ARCCONTINUE SMOOTH <coord1 {TANGENT tg_point coord3|coord2 coord3}
<{coord3|RADIUS rad DANGLE ang}> ENTER >ENTER
It creates a series of circular arcs. The endpoint of the previous arc is the start point of the next. The connection is always smooth. (The tangents are the same at the connection point.)
coord1 (point): the start point of the chain
tg_point (point): the tangent at the start of an arc will be the line between the actual point and ‘tg_point’
coord3 (point): the endpoint of an arc
coord2 (point): a point of an arc
rad (real): the radius of an arc
ang (real): the central angle of an arc
e.g.: #ARCCONTINUE SMOOTH 0 0 2.974 20.338 -2 2 RADIUS -10 DANGLE 300 RADIUS -8 DANGLE 300 RADIUS -6 DANGLE 300 RADIUS -4 DANGLE 300;;
ELLIPSE
ELLIPSE <coord>ENTER
It creates an ellipse with the default attributes. (length of the axes and direction of the major axis)
coord (point): the center point of the ellipse
e.g.: #ELLIPSE 10 10;
-It creates an ellipse with the default attributes and with its center point located at (10,10).
SUMMA
ELLIPSE SUMMA <coord1 coord2 length>ENTER
It creates an ellipse defined by its two focuses and the sum of the distances of the ellipse’s points from them.
coord1, coord2 (point): the location f the focuses
length (real): the sum of the distances from the focuses
e.g.: #ELLIPSE SUMMA 10 10 20 10 20;
-It creates an ellipse with the focuses (10,10) and (20,20). The sum of the distances between the points of the ellipse and the focuses is 20.
AXIS
ELLIPSE AXIS <coord1 coord2 coord3> ENTER
It creates an ellipse defined by two endpoints of its arbitrary axis and a point of the ellipse.
coord1, coord2 (point): the endpoints of the axis
coord3 (point): a point on the perimeter
e.g.: #ELLIPSE AXIS 10 10 20 10 15 15;
-It creates a circle with the radius of 5 and with the center located at (15,10).
ANGLEEND
ELLIPSE ANGLEEND <coord1 coord2 coord3> ENTER
It creates an ellipse defined by its two focuses and a point of the ellipse.
coord1, coord2 (point): the focuses of the ellipse
coord3 (point): a point on the perimeter
e.g.: #ELLIPSE ANGLEEND 10 10 20 10 5 10;
-It creates an ellipse with the focuses (10,10) and (20,20). The sum of the distances between the points of the ellipse and the focuses is 20.
ARC
ELLIPSE ARC
{<coord>|{AXIS|ANGLEEND} <coord1 coord2 coord3 [BACKWARD] coord4>} ENTER
It creates an elliptic arc. If you use none of the options, the arc will be created with the default attributes. If you use the option ‘AXIS’ the ellipse is defined by the endpoints of its arbitrary axis and a point on the perimeter, and if you use the option ‘ANGLEEND’ the ellipse is defined by its two focuses and a point on the perimeter. In both cases the arc is defined by its start and endpoint. With the switch ‘BACKWARD’ you can change between the two possible arcs. (The default is which goes in the counterclockwise direction from the start point.)
coord (point): the center of the ellipse
coord1, coord2 (point): the endpoint of one axis of the ellipse or the two focuses of the ellipse
coord3 (point): the start point of the arc (and a point on the perimeter)
coord4 (point): the endpoint of the arc
e.g.: #ELLIPSE ARC AXIS 15 15 15 5 10 10 BACKWARD 20 10;
-It creates a semicircle between the points (10,10) and (20,10). The upper half will be drawn.
Comments
0 comments
Article is closed for comments.