wolffd@0
|
1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
|
wolffd@0
|
2 <!--
|
wolffd@0
|
3 This is a generated document. Do not edit.
|
wolffd@0
|
4 -->
|
wolffd@0
|
5 <HTML VERSION="2.0">
|
wolffd@0
|
6 <HEAD>
|
wolffd@0
|
7 <TITLE>Arrow Shapes</TITLE>
|
wolffd@0
|
8 </HEAD>
|
wolffd@0
|
9 <BODY BGCOLOR=white>
|
wolffd@0
|
10 <A NAME="top"></A>
|
wolffd@0
|
11 <H1 ALIGN=CENTER>Arrow Shapes</H1>
|
wolffd@0
|
12 <HR>
|
wolffd@0
|
13 Arrow shapes can be specified and named using the following simple
|
wolffd@0
|
14 grammar.
|
wolffd@0
|
15 Terminals are shown in bold font and nonterminals in italics.
|
wolffd@0
|
16 Literal characters are given in single quotes.
|
wolffd@0
|
17 Square brackets [ and ] enclose optional items.
|
wolffd@0
|
18 Vertical bars | separate alternatives.
|
wolffd@0
|
19 <TABLE>
|
wolffd@0
|
20 <TR>
|
wolffd@0
|
21 <TD ALIGN=RIGHT><I>arrowname</I></TD>
|
wolffd@0
|
22 <TD ALIGN=LEFT>:</TD>
|
wolffd@0
|
23 <TD ALIGN=LEFT><I>aname</I> [ <I>aname</I> [ <I>aname</I> [ <I>aname</I> ] ] ]</TD>
|
wolffd@0
|
24 </TR>
|
wolffd@0
|
25 <TR>
|
wolffd@0
|
26 <TD ALIGN=RIGHT><I>aname</I></TD>
|
wolffd@0
|
27 <TD ALIGN=LEFT>:</TD>
|
wolffd@0
|
28 <TD ALIGN=LEFT>[ <I>modifiers</I> ] <I>shape</I></TD>
|
wolffd@0
|
29 </TR>
|
wolffd@0
|
30 <TR>
|
wolffd@0
|
31 <TD ALIGN=RIGHT><I>modifiers</I></TD>
|
wolffd@0
|
32 <TD ALIGN=LEFT>:</TD>
|
wolffd@0
|
33 <TD ALIGN=LEFT>[ <B>'o'</B> ] [ <I>side</I> ]</TD>
|
wolffd@0
|
34 </TR>
|
wolffd@0
|
35 <TR>
|
wolffd@0
|
36 <TD ALIGN=RIGHT><I>side</I></TD>
|
wolffd@0
|
37 <TD ALIGN=LEFT>:</TD>
|
wolffd@0
|
38 <TD ALIGN=LEFT><B>'l'</B></TD>
|
wolffd@0
|
39 </TR>
|
wolffd@0
|
40 <TR>
|
wolffd@0
|
41 <TD ALIGN=RIGHT></TD>
|
wolffd@0
|
42 <TD ALIGN=LEFT>|</TD>
|
wolffd@0
|
43 <TD ALIGN=LEFT><B>'r'</B></TD>
|
wolffd@0
|
44 </TR>
|
wolffd@0
|
45 <TR>
|
wolffd@0
|
46 <TD ALIGN=RIGHT><I>shape</I></TD>
|
wolffd@0
|
47 <TD ALIGN=LEFT>:</TD>
|
wolffd@0
|
48 <TD ALIGN=LEFT><B>box</B></TD>
|
wolffd@0
|
49 </TR>
|
wolffd@0
|
50 <TR>
|
wolffd@0
|
51 <TD ALIGN=RIGHT></TD>
|
wolffd@0
|
52 <TD ALIGN=LEFT>|</TD>
|
wolffd@0
|
53 <TD ALIGN=LEFT><B>crow</B></TD>
|
wolffd@0
|
54 </TR>
|
wolffd@0
|
55 <TR>
|
wolffd@0
|
56 <TD ALIGN=RIGHT></TD>
|
wolffd@0
|
57 <TD ALIGN=LEFT>|</TD>
|
wolffd@0
|
58 <TD ALIGN=LEFT><B>diamond</B></TD>
|
wolffd@0
|
59 </TR>
|
wolffd@0
|
60 <TR>
|
wolffd@0
|
61 <TD ALIGN=RIGHT></TD>
|
wolffd@0
|
62 <TD ALIGN=LEFT>|</TD>
|
wolffd@0
|
63 <TD ALIGN=LEFT><B>dot</B></TD>
|
wolffd@0
|
64 </TR>
|
wolffd@0
|
65 <TR>
|
wolffd@0
|
66 <TD ALIGN=RIGHT></TD>
|
wolffd@0
|
67 <TD ALIGN=LEFT>|</TD>
|
wolffd@0
|
68 <TD ALIGN=LEFT><B>inv</B></TD>
|
wolffd@0
|
69 </TR>
|
wolffd@0
|
70 <TR>
|
wolffd@0
|
71 <TD ALIGN=RIGHT></TD>
|
wolffd@0
|
72 <TD ALIGN=LEFT>|</TD>
|
wolffd@0
|
73 <TD ALIGN=LEFT><B>none</B></TD>
|
wolffd@0
|
74 </TR>
|
wolffd@0
|
75 <TR>
|
wolffd@0
|
76 <TD ALIGN=RIGHT></TD>
|
wolffd@0
|
77 <TD ALIGN=LEFT>|</TD>
|
wolffd@0
|
78 <TD ALIGN=LEFT><B>normal</B></TD>
|
wolffd@0
|
79 </TR>
|
wolffd@0
|
80 <TR>
|
wolffd@0
|
81 <TD ALIGN=RIGHT></TD>
|
wolffd@0
|
82 <TD ALIGN=LEFT>|</TD>
|
wolffd@0
|
83 <TD ALIGN=LEFT><B>tee</B></TD>
|
wolffd@0
|
84 </TR>
|
wolffd@0
|
85 <TR>
|
wolffd@0
|
86 <TD ALIGN=RIGHT></TD>
|
wolffd@0
|
87 <TD ALIGN=LEFT>|</TD>
|
wolffd@0
|
88 <TD ALIGN=LEFT><B>vee</B></TD>
|
wolffd@0
|
89 </TR>
|
wolffd@0
|
90 </TABLE>
|
wolffd@0
|
91 <P>
|
wolffd@0
|
92 The primitive shapes are:
|
wolffd@0
|
93 <CENTER>
|
wolffd@0
|
94 <TABLE>
|
wolffd@0
|
95 <TR>
|
wolffd@0
|
96 <TD>"box"<TD><IMG SRC="a_box.gif">
|
wolffd@0
|
97 <TD>"crow"<TD><IMG SRC="a_crow.gif">
|
wolffd@0
|
98 <TD>"diamond"<TD><IMG SRC="a_diamond.gif">
|
wolffd@0
|
99 </TR>
|
wolffd@0
|
100 <TR>
|
wolffd@0
|
101 <TD>"dot"<TD><IMG SRC="a_dot.gif">
|
wolffd@0
|
102 <TD>"inv"<TD><IMG SRC="a_inv.gif">
|
wolffd@0
|
103 <TD>"none"<TD><IMG SRC="a_none.gif">
|
wolffd@0
|
104 </TR>
|
wolffd@0
|
105 <TR>
|
wolffd@0
|
106 <TD>"normal"<TD><IMG SRC="a_normal.gif">
|
wolffd@0
|
107 <TD>"tee"<TD><IMG SRC="a_tee.gif">
|
wolffd@0
|
108 <TD>"vee"<TD><IMG SRC="a_open.gif">
|
wolffd@0
|
109 </TR>
|
wolffd@0
|
110 </TABLE>
|
wolffd@0
|
111 </CENTER>
|
wolffd@0
|
112 <P>
|
wolffd@0
|
113 As for the modifiers:
|
wolffd@0
|
114 <DL>
|
wolffd@0
|
115 <DT>'l'
|
wolffd@0
|
116 <DD> Clip the shape, leaving only the part to the left of the edge.
|
wolffd@0
|
117 <DT>'r'
|
wolffd@0
|
118 <DD> Clip the shape, leaving only the part to the right of the edge.
|
wolffd@0
|
119 <DT>'o'
|
wolffd@0
|
120 <DD> Use an open (non-filled) version of the shape.
|
wolffd@0
|
121 </DL>
|
wolffd@0
|
122 Left and right are defined as those directions determined by looking
|
wolffd@0
|
123 from the edge towards the point where the arrow "touches" the node.
|
wolffd@0
|
124 <P>
|
wolffd@0
|
125 As an example, the arrow shape <TT>lteeoldiamond</TT> is parsed as
|
wolffd@0
|
126 <TT>'l' 'tee' 'o' 'l' 'diamond'</TT> and corresponds to the shape
|
wolffd@0
|
127 <CENTER>
|
wolffd@0
|
128 <IMG SRC="a_lteeoldiamond.gif">
|
wolffd@0
|
129 </CENTER>
|
wolffd@0
|
130 Note that the first arrow shape specified occurs closest to the node.
|
wolffd@0
|
131 Subsequent arrow shapes, if specified, occur further from the node.
|
wolffd@0
|
132 <P>
|
wolffd@0
|
133 Not all syntactically legal combinations of modifiers are meaningful
|
wolffd@0
|
134 or semantically valid.
|
wolffd@0
|
135 For example, none of the modifiers make any sense with <TT>none</TT>.
|
wolffd@0
|
136 The following table indicates which modifiers are allowed with which shapes.
|
wolffd@0
|
137 <P>
|
wolffd@0
|
138 <CENTER>
|
wolffd@0
|
139 <TABLE BORDER=2>
|
wolffd@0
|
140 <TR ALIGN=CENTER>
|
wolffd@0
|
141 <TH>Modifier</TH>
|
wolffd@0
|
142 <TH>box
|
wolffd@0
|
143 <TH>crow
|
wolffd@0
|
144 <TH>diamond
|
wolffd@0
|
145 <TH>dot
|
wolffd@0
|
146 <TH>inv
|
wolffd@0
|
147 <TH>none
|
wolffd@0
|
148 <TH>normal
|
wolffd@0
|
149 <TH>tee
|
wolffd@0
|
150 <TH>vee
|
wolffd@0
|
151 </TR>
|
wolffd@0
|
152 <TR ALIGN=CENTER><TD>'l'/'r'<TD>X<TD>X<TD>X<TD> <TD>X<TD> <TD>X<TD>X<TD>X</TR>
|
wolffd@0
|
153 <TR ALIGN=CENTER><TD>'o' <TD>X<TD> <TD>X<TD>X<TD>X<TD> <TD>X<TD> <TD> </TR>
|
wolffd@0
|
154 </TABLE>
|
wolffd@0
|
155 </CENTER>
|
wolffd@0
|
156 <P>
|
wolffd@0
|
157 This yields 36 different arrow shapes. The optional second, third, fourth shapes
|
wolffd@0
|
158 can independently be any of the 36, but since <TT>nonenone</TT>
|
wolffd@0
|
159 is redundant, there are 35**4 + 35**3 + 35**2 + 35 + 1 = 1,544,761 different combinations.
|
wolffd@0
|
160 <P>
|
wolffd@0
|
161 The following display contains the 36 combinations possible with a single
|
wolffd@0
|
162 arrow shape. The node attached to the arrow is not drawn but would appear
|
wolffd@0
|
163 on the right side of the edge.
|
wolffd@0
|
164 <P>
|
wolffd@0
|
165 <CENTER>
|
wolffd@0
|
166 <TABLE>
|
wolffd@0
|
167 <TR ALIGN=CENTER>
|
wolffd@0
|
168 <TD><IMG SRC="aa_box.gif">
|
wolffd@0
|
169 <TD><IMG SRC="aa_lbox.gif">
|
wolffd@0
|
170 <TD><IMG SRC="aa_rbox.gif">
|
wolffd@0
|
171 <TD><IMG SRC="aa_obox.gif">
|
wolffd@0
|
172 <TD><IMG SRC="aa_olbox.gif">
|
wolffd@0
|
173 <TD><IMG SRC="aa_orbox.gif">
|
wolffd@0
|
174 </TR>
|
wolffd@0
|
175 <TR ALIGN=CENTER>
|
wolffd@0
|
176 <TD>box
|
wolffd@0
|
177 <TD>lbox
|
wolffd@0
|
178 <TD>rbox
|
wolffd@0
|
179 <TD>obox
|
wolffd@0
|
180 <TD>olbox
|
wolffd@0
|
181 <TD>orbox
|
wolffd@0
|
182 </TR>
|
wolffd@0
|
183 <TR ALIGN=CENTER>
|
wolffd@0
|
184 <TD><IMG SRC="aa_crow.gif">
|
wolffd@0
|
185 <TD><IMG SRC="aa_lcrow.gif">
|
wolffd@0
|
186 <TD><IMG SRC="aa_rcrow.gif">
|
wolffd@0
|
187 </TR>
|
wolffd@0
|
188 <TR ALIGN=CENTER>
|
wolffd@0
|
189 <TD>crow
|
wolffd@0
|
190 <TD>lcrow
|
wolffd@0
|
191 <TD>rcrow
|
wolffd@0
|
192 </TR>
|
wolffd@0
|
193 <TR ALIGN=CENTER>
|
wolffd@0
|
194 <TD><IMG SRC="aa_diamond.gif">
|
wolffd@0
|
195 <TD><IMG SRC="aa_ldiamond.gif">
|
wolffd@0
|
196 <TD><IMG SRC="aa_rdiamond.gif">
|
wolffd@0
|
197 <TD><IMG SRC="aa_odiamond.gif">
|
wolffd@0
|
198 <TD><IMG SRC="aa_oldiamond.gif">
|
wolffd@0
|
199 <TD><IMG SRC="aa_ordiamond.gif">
|
wolffd@0
|
200 </TR>
|
wolffd@0
|
201 <TR ALIGN=CENTER>
|
wolffd@0
|
202 <TD>diamond
|
wolffd@0
|
203 <TD>ldiamond
|
wolffd@0
|
204 <TD>rdiamond
|
wolffd@0
|
205 <TD>odiamond
|
wolffd@0
|
206 <TD>oldiamond
|
wolffd@0
|
207 <TD>ordiamond
|
wolffd@0
|
208 </TR>
|
wolffd@0
|
209 <TR ALIGN=CENTER>
|
wolffd@0
|
210 <TD><IMG SRC="aa_dot.gif">
|
wolffd@0
|
211 <TD><IMG SRC="aa_odot.gif">
|
wolffd@0
|
212 </TR>
|
wolffd@0
|
213 <TR ALIGN=CENTER>
|
wolffd@0
|
214 <TD>dot
|
wolffd@0
|
215 <TD>odot
|
wolffd@0
|
216 </TR>
|
wolffd@0
|
217 <TR ALIGN=CENTER>
|
wolffd@0
|
218 <TD><IMG SRC="aa_inv.gif">
|
wolffd@0
|
219 <TD><IMG SRC="aa_linv.gif">
|
wolffd@0
|
220 <TD><IMG SRC="aa_rinv.gif">
|
wolffd@0
|
221 <TD><IMG SRC="aa_oinv.gif">
|
wolffd@0
|
222 <TD><IMG SRC="aa_olinv.gif">
|
wolffd@0
|
223 <TD><IMG SRC="aa_orinv.gif">
|
wolffd@0
|
224 </TR>
|
wolffd@0
|
225 <TR ALIGN=CENTER>
|
wolffd@0
|
226 <TD>inv
|
wolffd@0
|
227 <TD>linv
|
wolffd@0
|
228 <TD>rinv
|
wolffd@0
|
229 <TD>oinv
|
wolffd@0
|
230 <TD>olinv
|
wolffd@0
|
231 <TD>orinv
|
wolffd@0
|
232 </TR>
|
wolffd@0
|
233 <TR ALIGN=CENTER>
|
wolffd@0
|
234 <TD><IMG SRC="aa_none.gif">
|
wolffd@0
|
235 </TR>
|
wolffd@0
|
236 <TR ALIGN=CENTER>
|
wolffd@0
|
237 <TD>none
|
wolffd@0
|
238 </TR>
|
wolffd@0
|
239 <TR ALIGN=CENTER>
|
wolffd@0
|
240 <TD><IMG SRC="aa_normal.gif">
|
wolffd@0
|
241 <TD><IMG SRC="aa_lnormal.gif">
|
wolffd@0
|
242 <TD><IMG SRC="aa_rnormal.gif">
|
wolffd@0
|
243 <TD><IMG SRC="aa_onormal.gif">
|
wolffd@0
|
244 <TD><IMG SRC="aa_olnormal.gif">
|
wolffd@0
|
245 <TD><IMG SRC="aa_ornormal.gif">
|
wolffd@0
|
246 </TR>
|
wolffd@0
|
247 <TR ALIGN=CENTER>
|
wolffd@0
|
248 <TD>normal
|
wolffd@0
|
249 <TD>lnormal
|
wolffd@0
|
250 <TD>rnormal
|
wolffd@0
|
251 <TD>onormal
|
wolffd@0
|
252 <TD>olnormal
|
wolffd@0
|
253 <TD>ornormal
|
wolffd@0
|
254 </TR>
|
wolffd@0
|
255 <TR ALIGN=CENTER>
|
wolffd@0
|
256 <TD><IMG SRC="aa_tee.gif">
|
wolffd@0
|
257 <TD><IMG SRC="aa_ltee.gif">
|
wolffd@0
|
258 <TD><IMG SRC="aa_rtee.gif">
|
wolffd@0
|
259 </TR>
|
wolffd@0
|
260 <TR ALIGN=CENTER>
|
wolffd@0
|
261 <TD>tee
|
wolffd@0
|
262 <TD>ltee
|
wolffd@0
|
263 <TD>rtee
|
wolffd@0
|
264 </TR>
|
wolffd@0
|
265 <TR ALIGN=CENTER>
|
wolffd@0
|
266 <TD><IMG SRC="aa_vee.gif">
|
wolffd@0
|
267 <TD><IMG SRC="aa_lvee.gif">
|
wolffd@0
|
268 <TD><IMG SRC="aa_rvee.gif">
|
wolffd@0
|
269 </TR>
|
wolffd@0
|
270 <TR ALIGN=CENTER>
|
wolffd@0
|
271 <TD>vee
|
wolffd@0
|
272 <TD>lvee
|
wolffd@0
|
273 <TD>rvee
|
wolffd@0
|
274 </TR>
|
wolffd@0
|
275 </TABLE>
|
wolffd@0
|
276 </CENTER>
|
wolffd@0
|
277 </BODY>
|
wolffd@0
|
278 </HTML>
|