1 2[subsection Elements] 3 4This section lists the commands for the predefined drawing elements, 5aka shapes. These commands are all defined in the language's context. 6 7All commands of this section return the handle of the newly created 8element as their result. This handle also exists as a command which 9can be used to query the element for its corners (names, values). 10 11See section [sectref {Miscellaneous Commands}]. 12 13[image figure-02-basic-shapes] 14 15[list_begin definitions] 16[include elem/arc.inc] 17[include elem/arrow.inc] 18[include elem/block.inc] 19[include elem/box.inc] 20[include elem/circle.inc] 21[include elem/diamond.inc] 22[include elem/drum.inc] 23[include elem/ellipse.inc] 24[include elem/line.inc] 25[include elem/move.inc] 26[include elem/spline.inc] 27[include elem/text.inc] 28[list_end] 29 30 31[subsection Attributes] 32 33The set of all attributes supported by all the element commands is 34shown below. 35 36While we speak of them as commands, and provide a syntax, they are not 37truly available as actual commands, but only as part of the arguments 38for an element command. 39 40[para] 41 42Note that some of the attribute names are overloaded, i.e. have 43multiple, different, definitions. During processing of attributes for 44an element the actual definition used is chosen based on the type of 45the element the processing is for. 46 47[para] 48 49Further, as a catch-all clause, any attribute which could not be 50processed according to the definitions below will be treated as the 51argument of an implicit [cmd text] attribute. 52 53[list_begin definitions] 54[include attr/anchor.inc] 55[include attr/arrowhead.inc] 56[include attr/diam_aspect.inc] 57[include attr/drum_aspect.inc] 58[include attr/at.inc] 59[include attr/line_at.inc] 60[include attr/chop.inc] 61[include attr/clockwise.inc] 62[include attr/color.inc] 63[include attr/counterclockwise.inc] 64[include attr/diameter.inc] 65[include attr/fillcolor.inc] 66[include attr/from.inc] 67[include attr/arc_from.inc] 68[include attr/height.inc] 69[include attr/diam_height.inc] 70[include attr/text_height.inc] 71[include attr/justify.inc] 72[include attr/noturn.inc] 73[include attr/circle_radius.inc] 74[include attr/arc_radius.inc] 75[include attr/slant.inc] 76[include attr/smooth.inc] 77[include attr/stroke.inc] 78[include attr/style.inc] 79[include attr/text.inc] 80[include attr/textcolor.inc] 81[include attr/textfont.inc] 82[include attr/then.inc] 83[include attr/to.inc] 84[include attr/arc_to.inc] 85[include attr/width.inc] 86[include attr/diam_width.inc] 87[include attr/text_width.inc] 88[include attr/with.inc] 89[include attr/line_with.inc] 90[list_end] 91 92 93[subsection Corners] 94[include corners.inc] 95 96[subsection {Named directions}] 97[include directions.inc] 98 99[subsection {Miscellaneous Commands}] 100 101[list_begin definitions] 102[include distances.inc] 103[include pointarith.inc] 104[include elementq.inc] 105[include history.inc] 106[list_end] 107 108[subsection {Variables}] 109 110The language context contains a number of predefined variables which 111hold the default values for various attributes. These variables, their 112uses, and values are: 113 114[list_begin definitions] 115[include var/anchor.inc] 116[include var/arcradius.inc] 117[include var/arrowhead.inc] 118[include var/boxheight.inc] 119[include var/boxwidth.inc] 120[include var/clockwise.inc] 121[include var/circleradius.inc] 122[include var/drumaspect.inc] 123[include var/fillcolor.inc] 124[include var/justify.inc] 125[include var/linecolor.inc] 126[include var/linestyle.inc] 127[include var/linewidth.inc] 128[include var/movelength.inc] 129[include var/slant.inc] 130[include var/textcolor.inc] 131[include var/textfont.inc] 132[list_end] 133