ruby-graphviz 1.0.5 → 1.0.6

Sign up to get free protection for your applications and to get access to all the features.
data/.gitignore CHANGED
@@ -4,3 +4,6 @@
4
4
  doc
5
5
  pkg
6
6
  test/output/
7
+ .rake_tasks
8
+ .rbx
9
+ Gemfile.lock
data/AUTHORS.rdoc CHANGED
@@ -16,6 +16,9 @@
16
16
  * Ronen Barzel <https://github.com/ronen>
17
17
  * Jamison Dance <https://github.com/jergason>
18
18
  * hirochachacha <https://github.com/hirochachacha>
19
+ * coding64 (https://github.com/coding46)
20
+ * Neven Has (https://github.com/nevenh)
21
+ * Postmodern (https://github.com/postmodern)
19
22
 
20
23
  Thanks to :
21
24
 
data/CHANGELOG.rdoc CHANGED
@@ -1,5 +1,15 @@
1
1
  = CHANGELOG
2
2
 
3
+ == 1.0.6 :
4
+ * Issue #46 : Some tests fail because it cannot find 'dot'
5
+ * Issue #45 : Fix for copy/paste error (by coding46)
6
+ * Issue #44 : characters escaping (by Neven Has)
7
+ * Issue #43 : Added lib/ruby-graphviz to match the gem name (by Postmodern)
8
+ * Issue #42 : "escaped dot in label" aka "GVPR error in Dot2Ruby"
9
+ * Issue #40 : GraphML importation doesn't work...
10
+ * Bug correction (with Ruby 1.8)
11
+ * Add (experimental) support of LibXML/LibXSLT
12
+
3
13
  == 1.0.5 :
4
14
  * Change deprecated methods in gem2gv, git2gv and ruby2gv
5
15
  * Issue #38
data/Rakefile CHANGED
@@ -1,6 +1,7 @@
1
1
  $:.unshift( "lib" )
2
2
  require "graphviz/constants"
3
3
 
4
+ require 'rubygems'
4
5
  require 'rake/clean'
5
6
  require 'bundler'
6
7
  require 'rubygems/package_task'
@@ -53,13 +54,3 @@ end
53
54
 
54
55
  Bundler::GemHelper.install_tasks
55
56
 
56
- namespace :gemcutter do
57
- desc "check gemcutter status"
58
- task :status do
59
- if Rubygems.status
60
- puts "This gem already existe in version #{PKG_VERS}!"
61
- else
62
- puts "This gem (#{Constants::RGV_VERSION}) has not been published! Last version at gemcutter is #{Rubygems.version}"
63
- end
64
- end
65
- end
@@ -0,0 +1,461 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <graphml xmlns="http://graphml.graphdrawing.org/xmlns" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:y="http://www.yworks.com/xml/graphml" xmlns:yed="http://www.yworks.com/xml/yed/3" xsi:schemaLocation="http://graphml.graphdrawing.org/xmlns http://www.yworks.com/xml/schema/graphml/1.1/ygraphml.xsd">
3
+ <!--Created by yFiles for Java 2.9-->
4
+ <key for="graphml" id="d0" yfiles.type="resources"/>
5
+ <key for="port" id="d1" yfiles.type="portgraphics"/>
6
+ <key for="port" id="d2" yfiles.type="portgeometry"/>
7
+ <key for="port" id="d3" yfiles.type="portuserdata"/>
8
+ <key attr.name="url" attr.type="string" for="node" id="d4"/>
9
+ <key attr.name="description" attr.type="string" for="node" id="d5"/>
10
+ <key for="node" id="d6" yfiles.type="nodegraphics"/>
11
+ <key attr.name="Description" attr.type="string" for="graph" id="d7"/>
12
+ <key attr.name="url" attr.type="string" for="edge" id="d8"/>
13
+ <key attr.name="description" attr.type="string" for="edge" id="d9"/>
14
+ <key for="edge" id="d10" yfiles.type="edgegraphics"/>
15
+ <graph edgedefault="directed" id="G">
16
+ <data key="d7"/>
17
+ <node id="n0">
18
+ <data key="d6">
19
+ <y:ShapeNode>
20
+ <y:Geometry height="30.0" width="30.0" x="243.0212626845818" y="60.0"/>
21
+ <y:Fill color="#FFCC00" transparent="false"/>
22
+ <y:BorderStyle color="#000000" type="line" width="1.0"/>
23
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="11.869140625" x="9.0654296875" y="6.015625">K<y:LabelModel>
24
+ <y:SmartNodeLabelModel distance="4.0"/>
25
+ </y:LabelModel>
26
+ <y:ModelParameter>
27
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
28
+ </y:ModelParameter>
29
+ </y:NodeLabel>
30
+ <y:Shape type="rectangle"/>
31
+ </y:ShapeNode>
32
+ </data>
33
+ </node>
34
+ <node id="n1">
35
+ <data key="d4"><![CDATA[vdddd]]></data>
36
+ <data key="d5"><![CDATA[fddf]]></data>
37
+ <data key="d6">
38
+ <y:ShapeNode>
39
+ <y:Geometry height="30.0" width="30.0" x="243.0212626845818" y="0.0"/>
40
+ <y:Fill color="#FFCC00" transparent="false"/>
41
+ <y:BorderStyle color="#000000" type="line" width="1.0"/>
42
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="10.685546875" x="9.6572265625" y="6.015625">L<y:LabelModel>
43
+ <y:SmartNodeLabelModel distance="4.0"/>
44
+ </y:LabelModel>
45
+ <y:ModelParameter>
46
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
47
+ </y:ModelParameter>
48
+ </y:NodeLabel>
49
+ <y:Shape type="rectangle"/>
50
+ </y:ShapeNode>
51
+ </data>
52
+ </node>
53
+ <node id="n2">
54
+ <data key="d6">
55
+ <y:ShapeNode>
56
+ <y:Geometry height="30.0" width="30.0" x="168.0212626845818" y="245.2812002579896"/>
57
+ <y:Fill color="#FFCC00" transparent="false"/>
58
+ <y:BorderStyle color="#000000" type="line" width="1.0"/>
59
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="7.5390625" x="11.23046875" y="6.015625">J<y:LabelModel>
60
+ <y:SmartNodeLabelModel distance="4.0"/>
61
+ </y:LabelModel>
62
+ <y:ModelParameter>
63
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
64
+ </y:ModelParameter>
65
+ </y:NodeLabel>
66
+ <y:Shape type="rectangle"/>
67
+ </y:ShapeNode>
68
+ </data>
69
+ </node>
70
+ <node id="n3">
71
+ <data key="d6">
72
+ <y:ShapeNode>
73
+ <y:Geometry height="30.0" width="30.0" x="117.83028446031335" y="231.83256817546885"/>
74
+ <y:Fill color="#FFCC00" transparent="false"/>
75
+ <y:BorderStyle color="#000000" type="line" width="1.0"/>
76
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="11.58203125" x="9.208984375" y="6.015625">E<y:LabelModel>
77
+ <y:SmartNodeLabelModel distance="4.0"/>
78
+ </y:LabelModel>
79
+ <y:ModelParameter>
80
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
81
+ </y:ModelParameter>
82
+ </y:NodeLabel>
83
+ <y:Shape type="rectangle"/>
84
+ </y:ShapeNode>
85
+ </data>
86
+ </node>
87
+ <node id="n4">
88
+ <data key="d6">
89
+ <y:ShapeNode>
90
+ <y:Geometry height="30.0" width="30.0" x="131.27891654283417" y="282.0235463997373"/>
91
+ <y:Fill color="#FFCC00" transparent="false"/>
92
+ <y:BorderStyle color="#000000" type="line" width="1.0"/>
93
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="7.5390625" x="11.23046875" y="6.015625">I<y:LabelModel>
94
+ <y:SmartNodeLabelModel distance="4.0"/>
95
+ </y:LabelModel>
96
+ <y:ModelParameter>
97
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
98
+ </y:ModelParameter>
99
+ </y:NodeLabel>
100
+ <y:Shape type="rectangle"/>
101
+ </y:ShapeNode>
102
+ </data>
103
+ </node>
104
+ <node id="n5">
105
+ <data key="d6">
106
+ <y:ShapeNode>
107
+ <y:Geometry height="30.0" width="30.0" x="168.0212626845818" y="36.74234614174766"/>
108
+ <y:Fill color="#FFCC00" transparent="false"/>
109
+ <y:BorderStyle color="#000000" type="line" width="1.0"/>
110
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="13.0234375" x="8.48828125" y="6.015625">H<y:LabelModel>
111
+ <y:SmartNodeLabelModel distance="4.0"/>
112
+ </y:LabelModel>
113
+ <y:ModelParameter>
114
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
115
+ </y:ModelParameter>
116
+ </y:NodeLabel>
117
+ <y:Shape type="rectangle"/>
118
+ </y:ShapeNode>
119
+ </data>
120
+ </node>
121
+ <node id="n6">
122
+ <data key="d6">
123
+ <y:ShapeNode>
124
+ <y:Geometry height="30.0" width="30.0" x="131.2789165428341" y="0.0"/>
125
+ <y:Fill color="#FFCC00" transparent="false"/>
126
+ <y:BorderStyle color="#000000" type="line" width="1.0"/>
127
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="13.298828125" x="8.3505859375" y="6.015625">G<y:LabelModel>
128
+ <y:SmartNodeLabelModel distance="4.0"/>
129
+ </y:LabelModel>
130
+ <y:ModelParameter>
131
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
132
+ </y:ModelParameter>
133
+ </y:NodeLabel>
134
+ <y:Shape type="rectangle"/>
135
+ </y:ShapeNode>
136
+ </data>
137
+ </node>
138
+ <node id="n7">
139
+ <data key="d6">
140
+ <y:ShapeNode>
141
+ <y:Geometry height="30.0" width="30.0" x="117.83028446031332" y="50.19097822426849"/>
142
+ <y:Fill color="#FFCC00" transparent="false"/>
143
+ <y:BorderStyle color="#000000" type="line" width="1.0"/>
144
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="13.240234375" x="8.3798828125" y="6.015625">D<y:LabelModel>
145
+ <y:SmartNodeLabelModel distance="4.0"/>
146
+ </y:LabelModel>
147
+ <y:ModelParameter>
148
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
149
+ </y:ModelParameter>
150
+ </y:NodeLabel>
151
+ <y:Shape type="rectangle"/>
152
+ </y:ShapeNode>
153
+ </data>
154
+ </node>
155
+ <node id="n8">
156
+ <data key="d6">
157
+ <y:ShapeNode>
158
+ <y:Geometry height="30.0" width="30.0" x="1.4210854715202004E-14" y="168.02126268458187"/>
159
+ <y:Fill color="#FFCC00" transparent="false"/>
160
+ <y:BorderStyle color="#000000" type="line" width="1.0"/>
161
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="10.90234375" x="9.548828125" y="6.015625">F<y:LabelModel>
162
+ <y:SmartNodeLabelModel distance="4.0"/>
163
+ </y:LabelModel>
164
+ <y:ModelParameter>
165
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
166
+ </y:ModelParameter>
167
+ </y:NodeLabel>
168
+ <y:Shape type="rectangle"/>
169
+ </y:ShapeNode>
170
+ </data>
171
+ </node>
172
+ <node id="n9">
173
+ <data key="d6">
174
+ <y:ShapeNode>
175
+ <y:Geometry height="30.0" width="30.0" x="54.018978969426385" y="168.02126268458187"/>
176
+ <y:Fill color="#FFCC00" transparent="false"/>
177
+ <y:BorderStyle color="#000000" type="line" width="1.0"/>
178
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="12.232421875" x="8.8837890625" y="6.015625">B<y:LabelModel>
179
+ <y:SmartNodeLabelModel distance="4.0"/>
180
+ </y:LabelModel>
181
+ <y:ModelParameter>
182
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
183
+ </y:ModelParameter>
184
+ </y:NodeLabel>
185
+ <y:Shape type="rectangle"/>
186
+ </y:ShapeNode>
187
+ </data>
188
+ </node>
189
+ <node id="n10">
190
+ <data key="d6">
191
+ <y:ShapeNode>
192
+ <y:Geometry height="30.0" width="30.0" x="0.0" y="114.0022837151555"/>
193
+ <y:Fill color="#FFCC00" transparent="false"/>
194
+ <y:BorderStyle color="#000000" type="line" width="1.0"/>
195
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="12.37890625" x="8.810546875" y="6.015625">C<y:LabelModel>
196
+ <y:SmartNodeLabelModel distance="4.0"/>
197
+ </y:LabelModel>
198
+ <y:ModelParameter>
199
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
200
+ </y:ModelParameter>
201
+ </y:NodeLabel>
202
+ <y:Shape type="rectangle"/>
203
+ </y:ShapeNode>
204
+ </data>
205
+ </node>
206
+ <node id="n11">
207
+ <data key="d6">
208
+ <y:ShapeNode>
209
+ <y:Geometry height="30.0" width="30.0" x="54.01897896942637" y="114.0022837151555"/>
210
+ <y:Fill color="#FFCC00" transparent="false"/>
211
+ <y:BorderStyle color="#000000" type="line" width="1.0"/>
212
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" modelName="custom" textColor="#000000" visible="true" width="12.208984375" x="8.8955078125" y="6.015625">A<y:LabelModel>
213
+ <y:SmartNodeLabelModel distance="4.0"/>
214
+ </y:LabelModel>
215
+ <y:ModelParameter>
216
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
217
+ </y:ModelParameter>
218
+ </y:NodeLabel>
219
+ <y:Shape type="rectangle"/>
220
+ </y:ShapeNode>
221
+ </data>
222
+ </node>
223
+ <edge id="e0" source="n0" target="n1">
224
+ <data key="d10">
225
+ <y:PolyLineEdge>
226
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
227
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
228
+ <y:Arrows source="none" target="standard"/>
229
+ <y:EdgeLabel alignment="center" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="27.99999193262869" y="-17.0">
230
+ <y:LabelModel>
231
+ <y:SmartEdgeLabelModel autoRotationEnabled="false" defaultAngle="0.0" defaultDistance="10.0"/>
232
+ </y:LabelModel>
233
+ <y:ModelParameter>
234
+ <y:SmartEdgeLabelModelParameter angle="0.0" distance="30.0" distanceToCenter="true" position="right" ratio="0.5" segment="0"/>
235
+ </y:ModelParameter>
236
+ </y:EdgeLabel>
237
+ <y:BendStyle smoothed="false"/>
238
+ </y:PolyLineEdge>
239
+ </data>
240
+ </edge>
241
+ <edge id="e1" source="n11" target="n7">
242
+ <data key="d10">
243
+ <y:PolyLineEdge>
244
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
245
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
246
+ <y:Arrows source="none" target="standard"/>
247
+ <y:EdgeLabel alignment="center" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="36.11885321687254" y="2.307553216343578">
248
+ <y:LabelModel>
249
+ <y:SmartEdgeLabelModel autoRotationEnabled="false" defaultAngle="0.0" defaultDistance="10.0"/>
250
+ </y:LabelModel>
251
+ <y:ModelParameter>
252
+ <y:SmartEdgeLabelModelParameter angle="0.0" distance="30.0" distanceToCenter="true" position="right" ratio="0.5" segment="0"/>
253
+ </y:ModelParameter>
254
+ </y:EdgeLabel>
255
+ <y:BendStyle smoothed="false"/>
256
+ </y:PolyLineEdge>
257
+ </data>
258
+ </edge>
259
+ <edge id="e2" source="n10" target="n11">
260
+ <data key="d10">
261
+ <y:PolyLineEdge>
262
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
263
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
264
+ <y:Arrows source="none" target="standard"/>
265
+ <y:EdgeLabel alignment="center" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="10.009489484713185" y="27.999994896796125">
266
+ <y:LabelModel>
267
+ <y:SmartEdgeLabelModel autoRotationEnabled="false" defaultAngle="0.0" defaultDistance="10.0"/>
268
+ </y:LabelModel>
269
+ <y:ModelParameter>
270
+ <y:SmartEdgeLabelModelParameter angle="0.0" distance="30.0" distanceToCenter="true" position="right" ratio="0.5" segment="0"/>
271
+ </y:ModelParameter>
272
+ </y:EdgeLabel>
273
+ <y:BendStyle smoothed="false"/>
274
+ </y:PolyLineEdge>
275
+ </data>
276
+ </edge>
277
+ <edge id="e3" source="n9" target="n11">
278
+ <data key="d10">
279
+ <y:PolyLineEdge>
280
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
281
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
282
+ <y:Arrows source="none" target="standard"/>
283
+ <y:EdgeLabel alignment="center" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="27.99999703583262" y="-14.009482293295406">
284
+ <y:LabelModel>
285
+ <y:SmartEdgeLabelModel autoRotationEnabled="false" defaultAngle="0.0" defaultDistance="10.0"/>
286
+ </y:LabelModel>
287
+ <y:ModelParameter>
288
+ <y:SmartEdgeLabelModelParameter angle="0.0" distance="30.0" distanceToCenter="true" position="right" ratio="0.5" segment="0"/>
289
+ </y:ModelParameter>
290
+ </y:EdgeLabel>
291
+ <y:BendStyle smoothed="false"/>
292
+ </y:PolyLineEdge>
293
+ </data>
294
+ </edge>
295
+ <edge id="e4" source="n8" target="n10">
296
+ <data key="d10">
297
+ <y:PolyLineEdge>
298
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
299
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
300
+ <y:Arrows source="none" target="standard"/>
301
+ <y:EdgeLabel alignment="center" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="28.000000000000014" y="-14.009482293295378">
302
+ <y:LabelModel>
303
+ <y:SmartEdgeLabelModel autoRotationEnabled="false" defaultAngle="0.0" defaultDistance="10.0"/>
304
+ </y:LabelModel>
305
+ <y:ModelParameter>
306
+ <y:SmartEdgeLabelModelParameter angle="0.0" distance="30.0" distanceToCenter="true" position="right" ratio="0.5" segment="0"/>
307
+ </y:ModelParameter>
308
+ </y:EdgeLabel>
309
+ <y:BendStyle smoothed="false"/>
310
+ </y:PolyLineEdge>
311
+ </data>
312
+ </edge>
313
+ <edge id="e5" source="n8" target="n9">
314
+ <data key="d10">
315
+ <y:PolyLineEdge>
316
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
317
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
318
+ <y:Arrows source="none" target="standard"/>
319
+ <y:EdgeLabel alignment="center" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="10.0094894847132" y="28.000007191417808">
320
+ <y:LabelModel>
321
+ <y:SmartEdgeLabelModel autoRotationEnabled="false" defaultAngle="0.0" defaultDistance="10.0"/>
322
+ </y:LabelModel>
323
+ <y:ModelParameter>
324
+ <y:SmartEdgeLabelModelParameter angle="0.0" distance="30.0" distanceToCenter="true" position="right" ratio="0.5" segment="0"/>
325
+ </y:ModelParameter>
326
+ </y:EdgeLabel>
327
+ <y:BendStyle smoothed="false"/>
328
+ </y:PolyLineEdge>
329
+ </data>
330
+ </edge>
331
+ <edge id="e6" source="n7" target="n5">
332
+ <data key="d10">
333
+ <y:PolyLineEdge>
334
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
335
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
336
+ <y:Arrows source="none" target="standard"/>
337
+ <y:EdgeLabel alignment="center" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="15.860053177476345" y="24.272695486084416">
338
+ <y:LabelModel>
339
+ <y:SmartEdgeLabelModel autoRotationEnabled="false" defaultAngle="0.0" defaultDistance="10.0"/>
340
+ </y:LabelModel>
341
+ <y:ModelParameter>
342
+ <y:SmartEdgeLabelModelParameter angle="0.0" distance="30.0" distanceToCenter="true" position="right" ratio="0.5" segment="0"/>
343
+ </y:ModelParameter>
344
+ </y:EdgeLabel>
345
+ <y:BendStyle smoothed="false"/>
346
+ </y:PolyLineEdge>
347
+ </data>
348
+ </edge>
349
+ <edge id="e7" source="n7" target="n6">
350
+ <data key="d10">
351
+ <y:PolyLineEdge>
352
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
353
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
354
+ <y:Arrows source="none" target="standard"/>
355
+ <y:EdgeLabel alignment="center" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="29.68285746798017" y="-4.330918538696409">
356
+ <y:LabelModel>
357
+ <y:SmartEdgeLabelModel autoRotationEnabled="false" defaultAngle="0.0" defaultDistance="10.0"/>
358
+ </y:LabelModel>
359
+ <y:ModelParameter>
360
+ <y:SmartEdgeLabelModelParameter angle="0.0" distance="30.0" distanceToCenter="true" position="right" ratio="0.5" segment="0"/>
361
+ </y:ModelParameter>
362
+ </y:EdgeLabel>
363
+ <y:BendStyle smoothed="false"/>
364
+ </y:PolyLineEdge>
365
+ </data>
366
+ </edge>
367
+ <edge id="e8" source="n5" target="n6">
368
+ <data key="d10">
369
+ <y:PolyLineEdge>
370
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
371
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
372
+ <y:Arrows source="none" target="standard"/>
373
+ <y:EdgeLabel alignment="center" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="15.842037556140326" y="-26.584378082007763">
374
+ <y:LabelModel>
375
+ <y:SmartEdgeLabelModel autoRotationEnabled="false" defaultAngle="0.0" defaultDistance="10.0"/>
376
+ </y:LabelModel>
377
+ <y:ModelParameter>
378
+ <y:SmartEdgeLabelModelParameter angle="0.0" distance="30.0" distanceToCenter="true" position="right" ratio="0.5" segment="0"/>
379
+ </y:ModelParameter>
380
+ </y:EdgeLabel>
381
+ <y:BendStyle smoothed="false"/>
382
+ </y:PolyLineEdge>
383
+ </data>
384
+ </edge>
385
+ <edge id="e9" source="n4" target="n3">
386
+ <data key="d10">
387
+ <y:PolyLineEdge>
388
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
389
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
390
+ <y:Arrows source="none" target="standard"/>
391
+ <y:EdgeLabel alignment="center" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="24.27270121798017" y="-19.860073635785056">
392
+ <y:LabelModel>
393
+ <y:SmartEdgeLabelModel autoRotationEnabled="false" defaultAngle="0.0" defaultDistance="10.0"/>
394
+ </y:LabelModel>
395
+ <y:ModelParameter>
396
+ <y:SmartEdgeLabelModelParameter angle="0.0" distance="30.0" distanceToCenter="true" position="right" ratio="0.5" segment="0"/>
397
+ </y:ModelParameter>
398
+ </y:EdgeLabel>
399
+ <y:BendStyle smoothed="false"/>
400
+ </y:PolyLineEdge>
401
+ </data>
402
+ </edge>
403
+ <edge id="e10" source="n4" target="n2">
404
+ <data key="d10">
405
+ <y:PolyLineEdge>
406
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
407
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
408
+ <y:Arrows source="none" target="standard"/>
409
+ <y:EdgeLabel alignment="center" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="22.584377644031065" y="15.842017194147331">
410
+ <y:LabelModel>
411
+ <y:SmartEdgeLabelModel autoRotationEnabled="false" defaultAngle="0.0" defaultDistance="10.0"/>
412
+ </y:LabelModel>
413
+ <y:ModelParameter>
414
+ <y:SmartEdgeLabelModelParameter angle="0.0" distance="30.0" distanceToCenter="true" position="right" ratio="0.5" segment="0"/>
415
+ </y:ModelParameter>
416
+ </y:EdgeLabel>
417
+ <y:BendStyle smoothed="false"/>
418
+ </y:PolyLineEdge>
419
+ </data>
420
+ </edge>
421
+ <edge id="e11" source="n3" target="n9">
422
+ <data key="d10">
423
+ <y:PolyLineEdge>
424
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
425
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
426
+ <y:Arrows source="none" target="standard"/>
427
+ <y:EdgeLabel alignment="center" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="2.3075510318139436" y="-40.118853313188254">
428
+ <y:LabelModel>
429
+ <y:SmartEdgeLabelModel autoRotationEnabled="false" defaultAngle="0.0" defaultDistance="10.0"/>
430
+ </y:LabelModel>
431
+ <y:ModelParameter>
432
+ <y:SmartEdgeLabelModelParameter angle="0.0" distance="30.0" distanceToCenter="true" position="right" ratio="0.5" segment="0"/>
433
+ </y:ModelParameter>
434
+ </y:EdgeLabel>
435
+ <y:BendStyle smoothed="false"/>
436
+ </y:PolyLineEdge>
437
+ </data>
438
+ </edge>
439
+ <edge id="e12" source="n2" target="n3">
440
+ <data key="d10">
441
+ <y:PolyLineEdge>
442
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
443
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
444
+ <y:Arrows source="none" target="standard"/>
445
+ <y:EdgeLabel alignment="center" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="-4.330910567640871" y="-33.682853462567834">
446
+ <y:LabelModel>
447
+ <y:SmartEdgeLabelModel autoRotationEnabled="false" defaultAngle="0.0" defaultDistance="10.0"/>
448
+ </y:LabelModel>
449
+ <y:ModelParameter>
450
+ <y:SmartEdgeLabelModelParameter angle="0.0" distance="30.0" distanceToCenter="true" position="right" ratio="0.5" segment="0"/>
451
+ </y:ModelParameter>
452
+ </y:EdgeLabel>
453
+ <y:BendStyle smoothed="false"/>
454
+ </y:PolyLineEdge>
455
+ </data>
456
+ </edge>
457
+ </graph>
458
+ <data key="d0">
459
+ <y:Resources/>
460
+ </data>
461
+ </graphml>
@@ -0,0 +1,125 @@
1
+ %! Greg shapes for GraphViz/DOT
2
+
3
+ % input format :
4
+ % [ 54 36 0 36 0 0 54 0 54 36 ] 4 false yourshape
5
+ % or
6
+ % [ 54 36 0 36 0 0 54 0 54 36 ] 4 true yourshape
7
+ % [ 150 150 100 150 100 100 150 100 150 150 ] 4 true yourshape
8
+ %
9
+ % [upper right (y, x), lower right (y, x), lower left (y, x), upper left (y, x), upper right (y, x)]
10
+
11
+ /xdef {exch def} bind def
12
+
13
+ /rgv_box {
14
+ 10 dict begin
15
+ /fflag xdef
16
+ /sides xdef
17
+
18
+ 4 sides ne { stop } if
19
+
20
+ aload pop
21
+
22
+ newpath
23
+ moveto
24
+ lineto
25
+ lineto
26
+ lineto
27
+ closepath
28
+
29
+ pop pop
30
+
31
+ fflag { fill } { stroke } ifelse
32
+ end
33
+ } bind def
34
+
35
+ /rgv_cloud {
36
+ 10 dict begin
37
+ /fflag xdef
38
+ /sides xdef
39
+
40
+ % Check if we have 4 sides. Else stop
41
+ 4 sides ne { stop } if
42
+
43
+ % (aload) takes an array as its argument and places the individual elements
44
+ % of that array, and then the array itself, on the stack. Then (pop) remove
45
+ % the top element from the stack (the array)
46
+ aload pop
47
+
48
+ /ury xdef /urx xdef
49
+ /lry xdef /lrx xdef
50
+ /lly xdef /llx xdef
51
+ /uly xdef /ulx xdef
52
+ pop pop
53
+
54
+ /mx lrx llx neg add 2 div def
55
+ /my uly lly neg add 2 div def
56
+
57
+ % empty the current path and declares we are starting a new path
58
+ newpath
59
+
60
+ urx ury my neg add my 270 90 arc
61
+ ulx mx add uly mx 0 180 arc
62
+ llx lly my add my 90 270 arc
63
+ lrx lry lineto
64
+
65
+ closepath
66
+
67
+ % The stroke operator on line four causes the path we have constructed to be
68
+ % painted onto the current page.
69
+ % The fill operator fills the current path with ink.
70
+ fflag { fill } { stroke } ifelse
71
+ end
72
+ } bind def
73
+
74
+ /rgv_flower {
75
+ 10 dict begin
76
+ /fflag xdef
77
+ /sides xdef
78
+
79
+ % Check if we have 4 sides. Else stop
80
+ 4 sides ne { stop } if
81
+
82
+ % (aload) takes an array as its argument and places the individual elements
83
+ % of that array, and then the array itself, on the stack. Then (pop) remove
84
+ % the top element from the stack (the array)
85
+ aload pop
86
+
87
+ /ury xdef /urx xdef
88
+ /lry xdef /lrx xdef
89
+ /lly xdef /llx xdef
90
+ /uly xdef /ulx xdef
91
+ pop pop
92
+
93
+ /mx lrx llx neg add 2 div def
94
+ /my uly lly neg add 2 div def
95
+
96
+ % empty the current path and declares we are starting a new path
97
+ newpath
98
+
99
+ % Arcs
100
+ urx ury my neg add my 270 90 arc
101
+ ulx mx add uly mx 0 180 arc
102
+ llx lly my add my 90 270 arc
103
+ lrx mx neg add lry mx 180 0 arc
104
+
105
+ closepath
106
+
107
+ % The stroke operator on line four causes the path we have constructed to be
108
+ % painted onto the current page.
109
+ % The fill operator fills the current path with ink.
110
+ fflag { fill } { stroke } ifelse
111
+ end
112
+ } bind def
113
+
114
+ %[ 150 150 50 150 50 100 150 100 150 150 ] 4 false rgv_box
115
+ %[ 250 250 150 250 150 200 250 200 250 250 ] 4 false rgv_flower
116
+ %[ 350 350 250 350 250 300 350 300 350 350 ] 4 false rgv_cloud
117
+ %
118
+ %.5 setgray
119
+ %[ 150 450 50 450 50 400 150 400 150 450 ] 4 true rgv_box
120
+ %.5 setgray
121
+ %[ 250 550 150 550 150 500 250 500 250 550 ] 4 true rgv_flower
122
+ %.5 setgray
123
+ %[ 350 650 250 650 250 600 350 600 350 650 ] 4 true rgv_cloud
124
+ %
125
+ %showpage