diff options
author | Jovansonlee Cesar <ivanceras@gmail.com> | 2019-10-20 11:13:36 +0800 |
---|---|---|
committer | Jovansonlee Cesar <ivanceras@gmail.com> | 2019-10-20 11:13:36 +0800 |
commit | 9cea9cae45e46e04cfad830a9a081e1444e0cab9 (patch) | |
tree | 63f9fab276664d0b1f933c6a50a33299e26172fa | |
parent | 0febc4377134a2ea3b3cd43ebdf5ea688a0e7432 (diff) |
Add timing in demo example
-rw-r--r-- | svgbob/examples/demo.rs | 3 | ||||
-rw-r--r-- | svgbob/examples/demo.svg | 3122 |
2 files changed, 1584 insertions, 1541 deletions
diff --git a/svgbob/examples/demo.rs b/svgbob/examples/demo.rs index 37b5173..999c60e 100644 --- a/svgbob/examples/demo.rs +++ b/svgbob/examples/demo.rs @@ -1,14 +1,17 @@ extern crate svg; extern crate svgbob; +use std::time::Instant; use svgbob::Grid; use svgbob::Settings; fn main() { let file = "examples/demo.svg"; + let t1 = Instant::now(); let arg = include_str!("demo.bob"); let g = Grid::from_str(arg, &Settings::default()); let svg = g.get_svg(); + println!("took {}ms", t1.elapsed().as_millis()); svg::save(file, &svg).unwrap(); println!("Saved to {}", file); } diff --git a/svgbob/examples/demo.svg b/svgbob/examples/demo.svg index c6a3062..3bd7737 100644 --- a/svgbob/examples/demo.svg +++ b/svgbob/examples/demo.svg @@ -1,4561 +1,4601 @@ <svg class="bob" font-family="arial" font-size="14" height="4736" width="688" xmlns="http://www.w3.org/2000/svg"> <defs> -<marker id="triangle" markerHeight="10" markerWidth="10" orient="auto" refX="15" refY="10" viewBox="0 0 50 20"> -<path d="M 0 0 L 30 10 L 0 20 z"/> +<marker id="triangle" markerHeight="8" markerWidth="8" orient="auto" refX="4" refY="2" viewBox="0 0 8 4"> +<polygon class="fg_fill" points="0,0 0,4 8,2 0,0"/> </marker> -<marker id="circle" markerHeight="5" markerWidth="5" refX="10" refY="10" viewBox="0 0 20 20"> -<circle cx="10" cy="10" fill="black" r="8"/> +<marker id="clear_triangle" markerHeight="10" markerWidth="10" orient="auto" refX="1" refY="7" viewBox="0 0 20 14"> +<polygon class="bg_fill fg_stroke" points="2,2 2,12 18,7 2,2"/> </marker> -<marker id="square" markerHeight="5" markerWidth="5" refX="10" refY="10" viewBox="0 0 20 20"> -<rect fill="black" height="20" width="20" x="0" y="0"/> +<marker id="circle" markerHeight="5" markerWidth="5" orient="auto" refX="10" refY="10" viewBox="0 0 20 20"> +<circle class="fg_fill" cx="10" cy="10" r="8"/> </marker> -<marker id="open_circle" markerHeight="10" markerWidth="10" refX="10" refY="10" viewBox="0 0 20 20"> -<circle cx="10" cy="10" fill="white" r="4" stroke="black" stroke-width="2"/> +<marker id="square" markerHeight="5" markerWidth="5" orient="auto" refX="10" refY="10" viewBox="0 0 20 20"> +<rect class="fg_fill" height="20" width="20" x="0" y="0"/> </marker> -<marker id="big_open_circle" markerHeight="20" markerWidth="20" refX="20" refY="20" viewBox="0 0 40 40"> -<circle cx="20" cy="20" fill="white" r="6" stroke="black" stroke-width="2"/> +<marker id="open_circle" markerHeight="10" markerWidth="10" orient="auto" refX="10" refY="10" viewBox="0 0 20 20"> +<circle class="bg_fill fg_stroke" cx="10" cy="10" r="4"/> +</marker> +<marker id="big_open_circle" markerHeight="20" markerWidth="20" orient="auto" refX="20" refY="20" viewBox="0 0 40 40"> +<circle class="bg_fill fg_stroke" cx="20" cy="20" r="6"/> </marker> </defs> -<style> +<style type="text/css"> + +rect.backdrop { + fill: white; +} + +.fg_fill { + fill: black; +} + + +.bg_fill { + fill: white; +} + +.fg_stroke { + stroke: black; + stroke-width: 2; +} + +.no_fill { + fill: none; +} + +.dashed { + stroke-dasharray: 5; +} + + +text{ + fill: black; +} + +line, path { + stroke-linecap: round; + stroke-linejoin: miter; + stroke-opacity: 1; + fill-opacity: 1; +} + - line, path { - stroke: black; - stroke-width: 2; - stroke-opacity: 1; - fill-opacity: 1; - stroke-linecap: round; - stroke-linejoin: miter; - } - line.dashed { - stroke-dasharray: 5; - } - circle.solid { - fill:black; - stroke: black; - stroke-width: 2; - stroke-opacity: 1; - fill-opacity: 1; - stroke-linecap: round; - stroke-linejoin: miter; - } - circle.open { - fill:none; - stroke: black; - stroke-width: 2; - stroke-opacity: 1; - fill-opacity: 1; - stroke-linecap: round; - stroke-linejoin: miter; - } - tspan.head{ - fill: none; - stroke: none; - } + + +tspan.head{ + fill: none; + stroke: none; +} </style> -<rect fill="white" height="4736" width="688" x="0" y="0"/> +<rect class="backdrop" height="4736" width="688" x="0" y="0"/> +<g> +<line class="fg_stroke" x1="0" x2="184" y1="3670" y2="3670"/> +</g> +<g> +<line class="fg_stroke" x1="0" x2="184" y1="3674" y2="3674"/> +</g> <g> -<line x1="0" x2="184" y1="3670" y2="3670"/> +<line class="fg_stroke" x1="4" x2="4" y1="912" y2="920"/> +<line class="fg_stroke" x1="4" x2="8" y1="920" y2="912"/> +<line class="fg_stroke" x1="4" x2="8" y1="920" y2="928"/> +<line class="fg_stroke" x1="4" x2="4" y1="928" y2="920"/> +<line class="fg_stroke" x1="8" x2="16" y1="912" y2="896"/> +<line class="fg_stroke" x1="8" x2="16" y1="928" y2="944"/> </g> <g> -<line x1="0" x2="184" y1="3674" y2="3674"/> +<line class="fg_stroke" x1="4" x2="4" y1="3896" y2="3928"/> +<line class="fg_stroke" x1="4" x2="92" y1="3896" y2="3896"/> +<line class="fg_stroke" x1="4" x2="92" y1="3928" y2="3928"/> +<line class="fg_stroke" x1="92" x2="92" y1="3896" y2="3928"/> </g> <g> -<line x1="4" x2="4" y1="912" y2="920"/> -<line x1="4" x2="16" y1="920" y2="896"/> -<line x1="4" x2="16" y1="920" y2="944"/> -<line x1="4" x2="4" y1="928" y2="920"/> +<line class="fg_stroke" x1="8" x2="112" y1="3512" y2="3512"/> +<path class="fg_stroke no_fill" d="M 6 3508 A 4 4 0 0 0 8 3512"/> +<path class="fg_stroke no_fill" d="M 112 3512 A 8 8 0 0 0 118 3508"/> </g> <g> -<line x1="4" x2="4" y1="3896" y2="3928"/> -<line x1="4" x2="92" y1="3896" y2="3896"/> -<line x1="4" x2="92" y1="3928" y2="3928"/> -<line x1="92" x2="92" y1="3896" y2="3928"/> +<line class="fg_stroke" marker-end="url(#circle)" x1="8" x2="20" y1="3528" y2="3528"/> </g> <g> -<line x1="8" x2="112" y1="3512" y2="3512"/> -<path d="M 6 3508 A 4 4 0 0 0 8 3512" fill="none"/> -<path d="M 112 3512 A 8 8 0 0 0 118 3508" fill="none"/> +<line class="fg_stroke" marker-end="url(#circle)" x1="8" x2="20" y1="3560" y2="3560"/> </g> <g> -<line marker-end="url(#circle)" x1="8" x2="20" y1="3528" y2="3528"/> +<line class="fg_stroke" marker-end="url(#circle)" x1="8" x2="20" y1="3608" y2="3608"/> </g> <g> -<line marker-end="url(#circle)" x1="8" x2="20" y1="3560" y2="3560"/> +<line class="fg_stroke" marker-end="url(#triangle)" x1="8" x2="20" y1="3704" y2="3704"/> </g> <g> -<line marker-end="url(#circle)" x1="8" x2="20" y1="3608" y2="3608"/> +<line class="fg_stroke" marker-end="url(#triangle)" x1="8" x2="20" y1="3752" y2="3752"/> </g> <g> -<line marker-end="url(#triangle)" x1="8" x2="20" y1="3704" y2="3704"/> +<line class="fg_stroke" x1="8" x2="10" y1="3856" y2="3860"/> +<path class="fg_stroke no_fill" d="M 8 3840 A 16 16 0 0 0 8 3856"/> +<path class="fg_stroke no_fill" d="M 10 3860 A 8 8 0 0 0 16 3864"/> </g> <g> -<line marker-end="url(#triangle)" x1="8" x2="20" y1="3752" y2="3752"/> +<line class="fg_stroke" x1="10" x2="8" y1="3836" y2="3840"/> +<path class="fg_stroke no_fill" d="M 16 3832 A 8 8 0 0 0 10 3836"/> </g> <g> -<line x1="8" x2="10" y1="3856" y2="3860"/> -<path d="M 8 3840 A 16 16 0 0 0 8 3856" fill="none"/> -<path d="M 10 3860 A 8 8 0 0 0 16 3864" fill="none"/> +<line class="fg_stroke" x1="16" x2="256" y1="3832" y2="3832"/> +<path class="fg_stroke no_fill" d="M 262 3836 A 8 8 0 0 0 256 3832"/> </g> <g> -<line x1="10" x2="8" y1="3836" y2="3840"/> -<path d="M 16 3832 A 8 8 0 0 0 10 3836" fill="none"/> +<line class="fg_stroke" x1="16" x2="256" y1="3864" y2="3864"/> +<path class="fg_stroke no_fill" d="M 256 3864 A 8 8 0 0 0 262 3860"/> </g> <g> -<line x1="16" x2="256" y1="3832" y2="3832"/> -<path d="M 262 3836 A 8 8 0 0 0 256 3832" fill="none"/> +<line class="fg_stroke" x1="18" x2="6" y1="3484" y2="3508"/> +<path class="fg_stroke no_fill" d="M 24 3480 A 8 8 0 0 0 18 3484"/> </g> <g> -<line x1="16" x2="256" y1="3864" y2="3864"/> -<path d="M 256 3864 A 8 8 0 0 0 262 3860" fill="none"/> +<line class="fg_stroke" x1="20" x2="28" y1="944" y2="952"/> </g> <g> -<line x1="18" x2="6" y1="3484" y2="3508"/> -<path d="M 24 3480 A 8 8 0 0 0 18 3484" fill="none"/> +<line class="fg_stroke" x1="24" x2="26" y1="208" y2="212"/> +<path class="fg_stroke no_fill" d="M 24 192 A 16 16 0 0 0 24 208"/> +<path class="fg_stroke no_fill" d="M 26 212 A 8 8 0 0 0 32 216"/> </g> <g> -<line x1="20" x2="28" y1="944" y2="952"/> +<line class="fg_stroke" x1="24" x2="128" y1="3480" y2="3480"/> +<path class="fg_stroke no_fill" d="M 130 3484 A 4 4 0 0 0 128 3480"/> </g> <g> -<line x1="24" x2="26" y1="208" y2="212"/> -<path d="M 24 192 A 16 16 0 0 0 24 208" fill="none"/> -<path d="M 26 212 A 8 8 0 0 0 32 216" fill="none"/> +<line class="fg_stroke" x1="26" x2="24" y1="188" y2="192"/> +<path class="fg_stroke no_fill" d="M 32 184 A 8 8 0 0 0 26 188"/> </g> <g> -<line x1="24" x2="128" y1="3480" y2="3480"/> -<path d="M 130 3484 A 4 4 0 0 0 128 3480" fill="none"/> +<line class="fg_stroke" x1="28" x2="20" y1="880" y2="888"/> </g> <g> -<line x1="26" x2="24" y1="188" y2="192"/> -<path d="M 32 184 A 8 8 0 0 0 26 188" fill="none"/> +<line class="fg_stroke" x1="32" x2="44" y1="184" y2="184"/> </g> <g> -<line x1="28" x2="20" y1="880" y2="888"/> +<line class="fg_stroke" x1="32" x2="40" y1="216" y2="216"/> +<path class="fg_stroke no_fill" d="M 46 220 A 8 8 0 0 0 40 216"/> </g> <g> -<line x1="32" x2="44" y1="184" y2="184"/> +<line class="fg_stroke" x1="32" x2="56" y1="880" y2="880"/> </g> <g> -<line x1="32" x2="40" y1="216" y2="216"/> -<path d="M 46 220 A 8 8 0 0 0 40 216" fill="none"/> +<line class="fg_stroke" x1="32" x2="56" y1="960" y2="960"/> </g> <g> -<line x1="32" x2="56" y1="880" y2="880"/> +<line class="fg_stroke" x1="32" x2="34" y1="1184" y2="1188"/> +<path class="fg_stroke no_fill" d="M 32 1168 A 16 16 0 0 0 32 1184"/> +<path class="fg_stroke no_fill" d="M 34 1188 A 8 8 0 0 0 40 1192"/> </g> <g> -<line x1="32" x2="56" y1="960" y2="960"/> +<line class="fg_stroke" x1="34" x2="32" y1="1164" y2="1168"/> +<path class="fg_stroke no_fill" d="M 40 1160 A 8 8 0 0 0 34 1164"/> </g> <g> -<line x1="32" x2="34" y1="1184" y2="1188"/> -<path d="M 32 1168 A 16 16 0 0 0 32 1184" fill="none"/> -<path d="M 34 1188 A 8 8 0 0 0 40 1192" fill="none"/> +<line class="fg_stroke" x1="40" x2="52" y1="1160" y2="1160"/> </g> <g> -<line x1="34" x2="32" y1="1164" y2="1168"/> -<path d="M 40 1160 A 8 8 0 0 0 34 1164" fill="none"/> +<line class="fg_stroke" x1="40" x2="48" y1="1192" y2="1192"/> +<path class="fg_stroke no_fill" d="M 54 1196 A 8 8 0 0 0 48 1192"/> </g> <g> -<line x1="40" x2="52" y1="1160" y2="1160"/> +<line class="fg_stroke" x1="46" x2="60" y1="220" y2="248"/> +<line class="fg_stroke" x1="60" x2="72" y1="248" y2="224"/> </g> <g> -<line x1="40" x2="48" y1="1192" y2="1192"/> -<path d="M 54 1196 A 8 8 0 0 0 48 1192" fill="none"/> +<line class="fg_stroke" x1="52" x2="52" y1="1560" y2="1624"/> +<line class="fg_stroke" marker-end="url(#circle)" x1="52" x2="260" y1="1560" y2="1560"/> +<line class="fg_stroke" marker-end="url(#circle)" x1="52" x2="68" y1="1624" y2="1624"/> +<line class="fg_stroke" marker-end="url(#circle)" marker-start="url(#circle)" x1="68" x2="92" y1="1624" y2="1624"/> +<line class="fg_stroke" marker-start="url(#circle)" x1="92" x2="116" y1="1624" y2="1624"/> +<line class="fg_stroke" x1="116" x2="116" y1="1624" y2="1616"/> +<line class="fg_stroke" x1="116" x2="140" y1="1624" y2="1624"/> +<line class="fg_stroke" x1="140" x2="140" y1="1624" y2="1616"/> +<line class="fg_stroke" x1="140" x2="164" y1="1624" y2="1624"/> +<line class="fg_stroke" marker-start="url(#circle)" x1="164" x2="164" y1="1592" y2="1624"/> +<line class="fg_stroke" marker-end="url(#circle)" marker-start="url(#circle)" x1="164" x2="188" y1="1592" y2="1592"/> +<line class="fg_stroke" x1="164" x2="188" y1="1624" y2="1624"/> +<line class="fg_stroke" marker-start="url(#circle)" x1="188" x2="188" y1="1592" y2="1624"/> +<line class="fg_stroke" x1="188" x2="212" y1="1624" y2="1624"/> +<line class="fg_stroke" marker-start="url(#circle)" x1="212" x2="212" y1="1576" y2="1624"/> +<line class="fg_stroke" marker-end="url(#circle)" marker-start="url(#circle)" x1="212" x2="236" y1="1576" y2="1576"/> +<line class="fg_stroke" x1="212" x2="236" y1="1624" y2="1624"/> +<line class="fg_stroke" marker-start="url(#circle)" x1="236" x2="236" y1="1576" y2="1624"/> +<line class="fg_stroke" marker-start="url(#circle)" x1="236" x2="260" y1="1576" y2="1576"/> +<line class="fg_stroke" x1="236" x2="260" y1="1624" y2="1624"/> +<line class="fg_stroke" marker-start="url(#circle)" x1="260" x2="260" y1="1560" y2="1624"/> +<line class="fg_stroke" marker-start="url(#circle)" x1="260" x2="284" y1="1560" y2="1560"/> +<line class="fg_stroke" marker-end="url(#circle)" x1="260" x2="284" y1="1576" y2="1576"/> +<line class="fg_stroke" x1="260" x2="284" y1="1624" y2="1624"/> +<line class="fg_stroke" x1="284" x2="284" y1="1560" y2="1568"/> +<line class="fg_stroke" marker-start="url(#circle)" x1="284" x2="284" y1="1576" y2="1624"/> </g> <g> -<line x1="46" x2="60" y1="220" y2="248"/> -<line x1="60" x2="72" y1="248" y2="224"/> +<line class="fg_stroke" marker-end="url(#circle)" x1="52" x2="212" y1="1576" y2="1576"/> </g> <g> -<line x1="52" x2="52" y1="1560" y2="1624"/> -<line marker-end="url(#circle)" x1="52" x2="260" y1="1560" y2="1560"/> -<line marker-end="url(#circle)" x1="52" x2="68" y1="1624" y2="1624"/> -<line marker-end="url(#circle)" marker-start="url(#circle)" x1="68" x2="92" y1="1624" y2="1624"/> -<line marker-start="url(#circle)" x1="92" x2="116" y1="1624" y2="1624"/> -<line x1="116" x2="116" y1="1624" y2="1616"/> -<line x1="116" x2="140" y1="1624" y2="1624"/> -<line x1="140" x2="140" y1="1624" y2="1616"/> -<line x1="140" x2="164" y1="1624" y2="1624"/> -<line marker-start="url(#circle)" x1="164" x2="164" y1="1592" y2="1624"/> -<line marker-end="url(#circle)" marker-start="url(#circle)" x1="164" x2="188" y1="1592" y2="1592"/> -<line x1="164" x2="188" y1="1624" y2="1624"/> -<line marker-start="url(#circle)" x1="188" x2="188" y1="1592" y2="1624"/> -<line x1="188" x2="212" y1="1624" y2="1624"/> -<line marker-start="url(#circle)" x1="212" x2="212" y1="1576" y2="1624"/> -<line marker-end="url(#circle)" marker-start="url(#circle)" x1="212" x2="236" y1="1576" y2="1576"/> -<line x1="212" x2="236" y1="1624" y2="1624"/> -<line marker-start="url(#circle)" x1="236" x2="236" y1="1576" y2="1624"/> -<line marker-start="url(#circle)" x1="236" x2="260" y1="1576" y2="1576"/> -<line x1="236" x2="260" y1="1624" y2="1624"/> -<line marker-start="url(#circle)" x1="260" x2="260" y1="1560" y2="1624"/> -<line marker-start="url(#circle)" x1="260" x2="284" y1="1560" y2="1560"/> -<line marker-end="url(#circle)" x1="260" x2="284" y1="1576" y2="1576"/> -<line x1="260" x2="284" y1="1624" y2="1624"/> -<line x1="284" x2="284" y1="1560" y2="1568"/> -<line marker-start="url(#circle)" x1="284" x2="284" y1="1576" y2="1624"/> +<line class="fg_stroke" marker-end="url(#circle)" x1="52" x2="164" y1="1592" y2="1592"/> </g> <g> -<line marker-end="url(#circle)" x1="52" x2="212" y1="1576" y2="1576"/> +<line class="fg_stroke" marker-end="url(#circle)" x1="52" x2="116" y1="1608" y2="1608"/> +<line class="fg_stroke" marker-end="url(#circle)" marker-start="url(#circle)" x1="116" x2="140" y1="1608" y2="1608"/> </g> <g> -<line marker-end="url(#circle)" x1="52" x2="164" y1="1592" y2="1592"/> +<line class="fg_stroke" x1="54" x2="68" y1="1196" y2="1224"/> +<line class="fg_stroke" x1="68" x2="80" y1="1224" y2="1200"/> </g> <g> -<line marker-end="url(#circle)" x1="52" x2="116" y1="1608" y2="1608"/> -<line marker-end="url(#circle)" marker-start="url(#circle)" x1="116" x2="140" y1="1608" y2="1608"/> +<line class="fg_stroke" x1="56" x2="72" y1="192" y2="224"/> +<line class="fg_stroke" marker-start="url(#open_circle)" x1="68" x2="56" y1="168" y2="192"/> +<line class="fg_stroke" marker-start="url(#open_circle)" x1="68" x2="84" y1="168" y2="168"/> </g> <g> -<line x1="54" x2="68" y1="1196" y2="1224"/> -<line x1="68" x2="80" y1="1224" y2="1200"/> +<line class="fg_stroke" x1="56" x2="72" y1="464" y2="432"/> +<line class="fg_stroke" x1="56" x2="72" y1="464" y2="496"/> +<line class="fg_stroke" x1="72" x2="128" y1="432" y2="432"/> +<line class="fg_stroke" x1="72" x2="128" y1="496" y2="496"/> +<line class="fg_stroke" x1="128" x2="144" y1="432" y2="464"/> +<line class="fg_stroke" x1="128" x2="144" y1="496" y2="464"/> </g> <g> -<line x1="56" x2="72" y1="192" y2="224"/> -<line marker-start="url(#open_circle)" x1="68" x2="56" y1="168" y2="192"/> -<line marker-start="url(#open_circle)" x1="68" x2="84" y1="168" y2="168"/> +<line class="fg_stroke" marker-end="url(#circle)" x1="58" x2="36" y1="156" y2="200"/> +<path class="fg_stroke no_fill" d="M 64 152 A 8 8 0 0 0 58 156"/> </g> <g> -<line x1="56" x2="72" y1="464" y2="432"/> -<line x1="56" x2="72" y1="464" y2="496"/> -<line x1="72" x2="128" y1="432" y2="432"/> -<line x1="72" x2="128" y1="496" y2="496"/> -<line x1="128" x2="144" y1="432" y2="464"/> -<line x1="128" x2="144" y1="496" y2="464"/> +<line class="fg_stroke" x1="60" x2="60" y1="376" y2="408"/> +<line class="fg_stroke" x1="60" x2="116" y1="376" y2="376"/> +<line class="fg_stroke" x1="60" x2="116" y1="408" y2="408"/> +<line class="fg_stroke" x1="116" x2="116" y1="376" y2="408"/> </g> <g> -<line marker-end="url(#circle)" x1="58" x2="36" y1="156" y2="200"/> -<path d="M 64 152 A 8 8 0 0 0 58 156" fill="none"/> +<line class="fg_stroke" x1="60" x2="68" y1="880" y2="888"/> </g> <g> -<line x1="60" x2="60" y1="376" y2="408"/> -<line x1="60" x2="116" y1="376" y2="376"/> -<line x1="60" x2="116" y1="408" y2="408"/> -<line x1="116" x2="116" y1="376" y2="408"/> +<line class="fg_stroke" x1="64" x2="88" y1="152" y2="152"/> +<path class="fg_stroke no_fill" d="M 90 156 A 4 4 0 0 0 88 152"/> </g> <g> -<line x1="60" x2="68" y1="880" y2="888"/> +<line class="fg_stroke" x1="64" x2="90" y1="208" y2="156"/> </g> <g> -<line x1="64" x2="88" y1="152" y2="152"/> -<path d="M 90 156 A 4 4 0 0 0 88 152" fill="none"/> +<line class="fg_stroke" x1="64" x2="66" y1="544" y2="548"/> +<path class="fg_stroke no_fill" d="M 64 528 A 16 16 0 0 0 64 544"/> +<path class="fg_stroke no_fill" d="M 66 548 A 8 8 0 0 0 72 552"/> </g> <g> -<line x1="64" x2="90" y1="208" y2="156"/> +<line class="fg_stroke" x1="64" x2="80" y1="1168" y2="1200"/> +<line class="fg_stroke" marker-start="url(#open_circle)" x1="76" x2="64" y1="1144" y2="1168"/> +<line class="fg_stroke" marker-start="url(#open_circle)" x1="76" x2="92" y1="1144" y2="1144"/> </g> <g> -<line x1="64" x2="66" y1="544" y2="548"/> -<path d="M 64 528 A 16 16 0 0 0 64 544" fill="none"/> -<path d="M 66 548 A 8 8 0 0 0 72 552" fill="none"/> +<line class="fg_stroke" x1="66" x2="64" y1="524" y2="528"/> +<path class="fg_stroke no_fill" d="M 72 520 A 8 8 0 0 0 66 524"/> </g> <g> -<line x1="64" x2="80" y1="1168" y2="1200"/> -<line marker-start="url(#open_circle)" x1="76" x2="64" y1="1144" y2="1168"/> -<line marker-start="url(#open_circle)" x1="76" x2="92" y1="1144" y2="1144"/> +<line class="fg_stroke" marker-end="url(#circle)" x1="66" x2="44" y1="1132" y2="1176"/> +<path class="fg_stroke no_fill" d="M 72 1128 A 8 8 0 0 0 66 1132"/> </g> <g> -<line x1="66" x2="64" y1="524" y2="528"/> -<path d="M 72 520 A 8 8 0 0 0 66 524" fill="none"/> +<line class="fg_stroke" x1="68" x2="60" y1="944" y2="952"/> </g> <g> -<line marker-end="url(#circle)" x1="66" x2="44" y1="1132" y2="1176"/> -<path d="M 72 1128 A 8 8 0 0 0 66 1132" fill="none"/> +<line class="fg_stroke" x1="72" x2="160" y1="520" y2="520"/> +<path class="fg_stroke no_fill" d="M 166 524 A 8 8 0 0 0 160 520"/> </g> <g> -<line x1="68" x2="60" y1="944" y2="952"/> +<line class="fg_stroke" x1="72" x2="116" y1="552" y2="552"/> +<line class="fg_stroke" x1="116" x2="116" y1="552" y2="576"/> </g> <g> -<line x1="72" x2="160" y1="520" y2="520"/> -<path d="M 166 524 A 8 8 0 0 0 160 520" fill="none"/> +<line class="fg_stroke" x1="72" x2="80" y1="896" y2="912"/> +<line class="fg_stroke" x1="84" x2="80" y1="920" y2="912"/> +<line class="fg_stroke" x1="84" x2="80" y1="920" y2="928"/> +<line class="fg_stroke" x1="84" x2="84" y1="928" y2="920"/> </g> <g> -<line x1="72" x2="116" y1="552" y2="552"/> -<line x1="116" x2="116" y1="552" y2="576"/> +<line class="fg_stroke" x1="72" x2="80" y1="944" y2="928"/> </g> <g> -<line x1="72" x2="84" y1="896" y2="920"/> -<line x1="84" x2="84" y1="912" y2="920"/> -<line x1="84" x2="72" y1="920" y2="944"/> -<line x1="84" x2="84" y1="928" y2="920"/> +<line class="fg_stroke" x1="72" x2="96" y1="1128" y2="1128"/> +<path class="fg_stroke no_fill" d="M 98 1132 A 4 4 0 0 0 96 1128"/> </g> <g> -<line x1="72" x2="96" y1="1128" y2="1128"/> -<path d="M 98 1132 A 4 4 0 0 0 96 1128" fill="none"/> +<line class="fg_stroke" x1="72" x2="98" y1="1184" y2="1132"/> </g> <g> -<line x1="72" x2="98" y1="1184" y2="1132"/> +<line class="fg_stroke" marker-end="url(#triangle)" x1="76" x2="92" y1="184" y2="184"/> </g> <g> -<line marker-end="url(#triangle)" x1="76" x2="92" y1="184" y2="184"/> +<line class="fg_stroke" x1="76" x2="76" y1="1900" y2="1952"/> +<line class="fg_stroke" x1="88" x2="76" y1="1952" y2="1952"/> +<path class="fg_stroke no_fill" d="M 80 1896 A 4 4 0 0 0 76 1900"/> </g> <g> -<line x1="76" x2="76" y1="1900" y2="1952"/> -<line x1="88" x2="76" y1="1952" y2="1952"/> -<path d="M 80 1896 A 4 4 0 0 0 76 1900" fill="none"/> +<line class="fg_stroke" marker-end="url(#triangle)" x1="80" x2="100" y1="1896" y2="1896"/> </g> <g> -<line marker-end="url(#triangle)" x1="80" x2="100" y1="1896" y2="1896"/> +<line class="fg_stroke" x1="80" x2="136" y1="1952" y2="1952"/> +<line class="fg_stroke" x1="136" x2="144" y1="1952" y2="1968"/> +<line class="fg_stroke" x1="136" x2="146" y1="1952" y2="1932"/> +<line class="fg_stroke" x1="148" x2="136" y1="1928" y2="1952"/> +<line class="fg_stroke" x1="148" x2="160" y1="1928" y2="1952"/> +<line class="fg_stroke" x1="148" x2="144" y1="1976" y2="1968"/> +<line class="fg_stroke" x1="148" x2="152" y1="1976" y2="1968"/> +<line class="fg_stroke" x1="148" x2="148" y1="1984" y2="1976"/> +<line class="fg_stroke" x1="148" x2="148" y1="1988" y2="1984"/> +<line class="fg_stroke" x1="150" x2="160" y1="1932" y2="1952"/> +<line class="fg_stroke" x1="152" x2="160" y1="1968" y2="1952"/> +<line class="fg_stroke" x1="160" x2="200" y1="1952" y2="1952"/> +<path class="fg_stroke no_fill" d="M 146 1932 A 16 16 0 0 0 148 1924"/> +<path class="fg_stroke no_fill" d="M 148 1924 A 16 16 0 0 0 150 1932"/> +<path class="fg_stroke no_fill" d="M 148 1988 A 4 4 0 0 0 152 1992"/> </g> <g> -<line x1="80" x2="136" y1="1952" y2="1952"/> -<line x1="136" x2="146" y1="1952" y2="1932"/> -<line x1="136" x2="148" y1="1952" y2="1976"/> -<line x1="148" x2="136" y1="1928" y2="1952"/> -<line x1="148" x2="160" y1="1928" y2="1952"/> -<line x1="148" x2="160" y1="1976" y2="1952"/> -<line x1="148" x2="148" y1="1988" y2="1976"/> -<line x1="150" x2="160" y1="1932" y2="1952"/> -<line x1="160" x2="200" y1="1952" y2="1952"/> -<path d="M 146 1932 A 16 16 0 0 0 148 1924" fill="none"/> -<path d="M 148 1924 A 16 16 0 0 0 150 1932" fill="none"/> -<path d="M 148 1988 A 4 4 0 0 0 152 1992" fill="none"/> +<line class="fg_stroke" x1="80" x2="88" y1="2224" y2="2208"/> </g> <g> -<line x1="80" x2="88" y1="2224" y2="2208"/> +<line class="fg_stroke" x1="84" x2="104" y1="168" y2="168"/> </g> <g> -<line x1="84" x2="104" y1="168" y2="168"/> +<line class="fg_stroke" x1="84" x2="84" y1="912" y2="920"/> </g> <g> -<line marker-end="url(#triangle)" x1="84" x2="100" y1="1160" y2="1160"/> +<line class="fg_stroke" marker-end="url(#triangle)" x1="84" x2="100" y1="1160" y2="1160"/> </g> <g> -<line marker-end="url(#circle)" marker-start="url(#circle)" x1="84" x2="148" y1="1416" y2="1416"/> -<line marker-end="url(#triangle)" marker-start="url(#circle)" x1="148" x2="166" y1="1416" y2="1452"/> -<line marker-end="url(#circle)" marker-start="url(#circle)" x1="148" x2="196" y1="1416" y2="1416"/> -<line marker-end="url(#circle)" marker-start="url(#circle)" x1="196" x2="228" y1="1416" y2="1416"/> -<line marker-end="url(#circle)" marker-start="url(#circle)" x1="228" x2="268" y1="1416" y2="1416"/> -<line marker-start="url(#circle)" x1="268" x2="282" y1="1416" y2="1444"/> -<line marker-end="url(#triangle)" marker-start="url(#circle)" x1="268" x2="316" y1="1416" y2="1416"/> -<line marker-end="url(#circle)" x1="282" x2="268" y1="1388" y2="1416"/> -<path d="M 282 1444 A 8 8 0 0 0 288 1448" fill="none"/> -<path d="M 288 1384 A 8 8 0 0 0 282 1388" fill="none"/> +<line class="fg_stroke" marker-end="url(#circle)" marker-start="url(#circle)" x1="84" x2="148" y1="1416" y2="1416"/> +<line class="fg_stroke" marker-end="url(#triangle)" marker-start="url(#circle)" x1="148" x2="166" y1="1416" y2="1452"/> +<line class="fg_stroke" marker-end="url(#circle)" marker-start="url(#circle)" x1="148" x2="196" y1="1416" y2="1416"/> +<line class="fg_stroke" marker-end="url(#circle)" marker-start="url(#circle)" x1="196" x2="228" y1="1416" y2="1416"/> +<line class="fg_stroke" marker-end="url(#circle)" marker-start="url(#circle)" x1="228" x2="268" y1="1416" y2="1416"/> +<line class="fg_stroke" marker-start="url(#circle)" x1="268" x2="282" y1="1416" y2="1444"/> +<line class="fg_stroke" marker-end="url(#triangle)" marker-start="url(#circle)" x1="268" x2="316" y1="1416" y2="1416"/> +<line class="fg_stroke" marker-end="url(#circle)" x1="282" x2="268" y1="1388" y2="1416"/> +<path class="fg_stroke no_fill" d="M 282 1444 A 8 8 0 0 0 288 1448"/> +<path class="fg_stroke no_fill" d="M 288 1384 A 8 8 0 0 0 282 1388"/> </g> <g> -<line x1="84" x2="84" y1="2192" y2="2208"/> -<line x1="84" x2="116" y1="2208" y2="2208"/> -<line x1="88" x2="84" y1="2192" y2="2192"/> -<line x1="88" x2="116" y1="2192" y2="2192"/> -<line x1="116" x2="116" y1="2192" y2="2208"/> +<line class="fg_stroke" x1="84" x2="84" y1="2192" y2="2208"/> +<line class="fg_stroke" x1="84" x2="116" y1="2208" y2="2208"/> +<line class="fg_stroke" x1="88" x2="84" y1="2192" y2="2192"/> +<line class="fg_stroke" x1="88" x2="116" y1="2192" y2="2192"/> +<line class="fg_stroke" x1="116" x2="116" y1="2192" y2="2208"/> </g> <g> -<line x1="92" x2="112" y1="1144" y2="1144"/> +<line class="fg_stroke" x1="92" x2="112" y1="1144" y2="1144"/> </g> <g> -<line x1="92" x2="92" y1="4444" y2="4468"/> -<path d="M 92 4468 A 4 4 0 0 0 96 4472" fill="none"/> -<path d="M 96 4440 A 4 4 0 0 0 92 4444" fill="none"/> +<line class="fg_stroke" x1="92" x2="92" y1="4444" y2="4468"/> +<path class="fg_stroke no_fill" d="M 92 4468 A 4 4 0 0 0 96 4472"/> +<path class="fg_stroke no_fill" d="M 96 4440 A 4 4 0 0 0 92 4444"/> </g> <g> -<line x1="96" x2="120" y1="2936" y2="2936"/> +<line class="fg_stroke" x1="96" x2="120" y1="2936" y2="2936"/> </g> <g> -<line x1="96" x2="192" y1="4440" y2="4440"/> -<path d="M 196 4444 A 4 4 0 0 0 192 4440" fill="none"/> +<line class="fg_stroke" x1="96" x2="192" y1="4440" y2="4440"/> +<path class="fg_stroke no_fill" d="M 196 4444 A 4 4 0 0 0 192 4440"/> </g> <g> -<line x1="96" x2="192" y1="4472" y2="4472"/> -<path d="M 192 4472 A 4 4 0 0 0 196 4468" fill="none"/> +<line class="fg_stroke" x1="96" x2="192" y1="4472" y2="4472"/> +<path class="fg_stroke no_fill" d="M 192 4472 A 4 4 0 0 0 196 4468"/> </g> <g> -<line x1="100" x2="100" y1="1272" y2="1288"/> -<line x1="100" x2="116" y1="1272" y2="1272"/> -<line x1="100" x2="100" y1="1288" y2="1304"/> -<line x1="100" x2="116" y1="1288" y2="1288"/> -<line x1="100" x2="116" y1="1304" y2="1304"/> -<line x1="116" x2="116" y1="1272" y2="1288"/> -<line x1="116" x2="124" y1="1272" y2="1272"/> -<line x1="116" x2="116" y1="1288" y2="1304"/> -<line x1="116" x2="124" y1="1288" y2="1288"/> -<line x1="116" x2="124" y1="1304" y2="1304"/> -<line x1="124" x2="124" y1="1272" y2="1288"/> -<line x1="124" x2="124" y1="1288" y2="1304"/> +<line class="fg_stroke" x1="100" x2="100" y1="1272" y2="1288"/> +<line class="fg_stroke" x1="100" x2="116" y1="1272" y2="1272"/> +<line class="fg_stroke" x1="100" x2="100" y1="1288" y2="1304"/> +<line class="fg_stroke" x1="100" x2="116" y1="1288" y2="1288"/> +<line class="fg_stroke" x1="100" x2="116" y1="1304" y2="1304"/> +<line class="fg_stroke" x1="116" x2="116" y1="1272" y2="1288"/> +<line class="fg_stroke" x1="116" x2="124" y1="1272" y2="1272"/> +<line class="fg_stroke" x1="116" x2="116" y1="1288" y2="1304"/> +<line class="fg_stroke" x1="116" x2="124" y1="1288" y2="1288"/> +<line class="fg_stroke" x1="116" x2="124" y1="1304" y2="1304"/> +<line class="fg_stroke" x1="124" x2="124" y1="1272" y2="1288"/> +<line class="fg_stroke" x1="124" x2="124" y1="1288" y2="1304"/> </g> <g> -<line marker-end="url(#square)" marker-start="url(#square)" x1="100" x2="108" y1="2952" y2="2952"/> -<line marker-end="url(#square)" marker-start="url(#square)" x1="108" x2="116" y1="2952" y2="2952"/> -<line marker-end="url(#open_circle)" marker-start="url(#square)" x1="108" x2="108" y1="2952" y2="2984"/> -<line marker-start="url(#open_circle)" x1="108" x2="108" y1="2984" y2="3008"/> +<line class="fg_stroke" marker-end="url(#square)" marker-start="url(#square)" x1="100" x2="108" y1="2952" y2="2952"/> +<line class="fg_stroke" marker-end="url(#square)" marker-start="url(#square)" x1="108" x2="116" y1="2952" y2="2952"/> +<line class="fg_stroke" marker-end="url(#open_circle)" marker-start="url(#square)" x1="108" x2="108" y1="2952" y2="2984"/> +<line class="fg_stroke" marker-start="url(#open_circle)" x1="108" x2="108" y1="2984" y2="3008"/> </g> <g> -<line x1="104" x2="112" y1="2224" y2="2208"/> +<line class="fg_stroke" x1="104" x2="112" y1="2224" y2="2208"/> </g> <g> -<line x1="108" x2="108" y1="1884" y2="1892"/> -<path d="M 108 1892 A 4 4 0 0 0 112 1896" fill="none"/> -<path d="M 112 1880 A 4 4 0 0 0 108 1884" fill="none"/> +<line class="fg_stroke" x1="108" x2="108" y1="1884" y2="1892"/> +<path class="fg_stroke no_fill" d="M 108 1892 A 4 4 0 0 0 112 1896"/> +<path class="fg_stroke no_fill" d="M 112 1880 A 4 4 0 0 0 108 1884"/> </g> <g> -<line x1="112" x2="120" y1="1880" y2="1880"/> -<path d="M 124 1884 A 4 4 0 0 0 120 1880" fill="none"/> +<line class="fg_stroke" x1="112" x2="120" y1="1880" y2="1880"/> +<path class="fg_stroke no_fill" d="M 124 1884 A 4 4 0 0 0 120 1880"/> </g> <g> -<line x1="112" x2="120" y1="1896" y2="1896"/> -<path d="M 120 1896 A 4 4 0 0 0 124 1892" fill="none"/> +<line class="fg_stroke" x1="112" x2="120" y1="1896" y2="1896"/> +<path class="fg_stroke no_fill" d="M 120 1896 A 4 4 0 0 0 124 1892"/> </g> <g> -<line x1="118" x2="130" y1="3508" y2="3484"/> +<line class="fg_stroke" x1="118" x2="130" y1="3508" y2="3484"/> </g> <g> -<line marker-end="url(#triangle)" x1="120" x2="134" y1="1904" y2="1932"/> +<line class="fg_stroke" marker-end="url(#triangle)" x1="120" x2="134" y1="1904" y2="1932"/> </g> <g> -<line x1="124" x2="124" y1="1884" y2="1892"/> +<line class="fg_stroke" x1="124" x2="124" y1="1884" y2="1892"/> </g> <g> -<line x1="124" x2="124" y1="2192" y2="2208"/> -<line x1="124" x2="128" y1="2192" y2="2192"/> -<line x1="124" x2="124" y1="2208" y2="2224"/> -<line x1="128" x2="136" y1="2192" y2="2192"/> -<line x1="136" x2="140" y1="2192" y2="2192"/> -<line x1="136" x2="124" y1="2224" y2="2224"/> -<line x1="140" x2="140" y1="2192" y2="2208"/> -<line x1="140" x2="140" y1="2208" y2="2224"/> +<line class="fg_stroke" x1="124" x2="124" y1="2192" y2="2208"/> +<line class="fg_stroke" x1="124" x2="128" y1="2192" y2="2192"/> +<line class="fg_stroke" x1="124" x2="124" y1="2208" y2="2224"/> +<line class="fg_stroke" x1="128" x2="136" y1="2192" y2="2192"/> +<line class="fg_stroke" x1="136" x2="140" y1="2192" y2="2192"/> +<line class="fg_stroke" x1="136" x2="124" y1="2224" y2="2224"/> +<line class="fg_stroke" x1="140" x2="140" y1="2192" y2="2208"/> +<line class="fg_stroke" x1="140" x2="140" y1="2208" y2="2224"/> </g> <g> -<line x1="128" x2="136" y1="2198" y2="2198"/> +<line class="fg_stroke" x1="128" x2="136" y1="2198" y2="2198"/> </g> <g> -<line x1="128" x2="136" y1="2202" y2="2202"/> +<line class="fg_stroke" x1="128" x2="136" y1="2202" y2="2202"/> </g> <g> -<line x1="128" x2="136" y1="2224" y2="2224"/> -<line x1="128" x2="140" y1="2224" y2="2224"/> +<line class="fg_stroke" x1="128" x2="136" y1="2224" y2="2224"/> +<line class="fg_stroke" x1="128" x2="140" y1="2224" y2="2224"/> </g> <g> -<line x1="130" x2="120" y1="556" y2="576"/> -<path d="M 136 552 A 8 8 0 0 0 130 556" fill="none"/> +<line class="fg_stroke" x1="130" x2="120" y1="556" y2="576"/> +<path class="fg_stroke no_fill" d="M 136 552 A 8 8 0 0 0 130 556"/> </g> <g> -<line marker-start="url(#circle)" x1="132" x2="170" y1="2456" y2="2532"/> -<path d="M 170 2532 A 8 8 0 0 0 176 2536" fill="none"/> +<line class="fg_stroke" marker-start="url(#circle)" x1="132" x2="170" y1="2456" y2="2532"/> +<path class="fg_stroke no_fill" d="M 170 2532 A 8 8 0 0 0 176 2536"/> </g> <g> -<line x1="136" x2="160" y1="552" y2="552"/> -<path d="M 160 552 A 8 8 0 0 0 166 548" fill="none"/> +<line class="fg_stroke" x1="136" x2="160" y1="552" y2="552"/> +<path class="fg_stroke no_fill" d="M 160 552 A 8 8 0 0 0 166 548"/> </g> <g> -<line x1="140" x2="140" y1="1884" y2="1892"/> -<path d="M 140 1892 A 4 4 0 0 0 144 1896" fill="none"/> -<path d="M 144 1880 A 4 4 0 0 0 140 1884" fill="none"/> +<line class="fg_stroke" x1="140" x2="140" y1="1884" y2="1892"/> +<path class="fg_stroke no_fill" d="M 140 1892 A 4 4 0 0 0 144 1896"/> +<path class="fg_stroke no_fill" d="M 144 1880 A 4 4 0 0 0 140 1884"/> </g> <g> -<line x1="144" x2="154" y1="1200" y2="1220"/> -<line x1="170" x2="144" y1="1148" y2="1200"/> -<path d="M 154 1220 A 8 8 0 0 0 160 1224" fill="none"/> -<path d="M 176 1144 A 8 8 0 0 0 170 1148" fill="none"/> +<line class="fg_stroke" x1="144" x2="154" y1="1200" y2="1220"/> +<line class="fg_stroke" x1="170" x2="144" y1="1148" y2="1200"/> +<path class="fg_stroke no_fill" d="M 154 1220 A 8 8 0 0 0 160 1224"/> +<path class="fg_stroke no_fill" d="M 176 1144 A 8 8 0 0 0 170 1148"/> </g> <g> -<line x1="144" x2="152" y1="1880" y2="1880"/> -<path d="M 156 1884 A 4 4 0 0 0 152 1880" fill="none"/> +<line class="fg_stroke" x1="144" x2="152" y1="1880" y2="1880"/> +<path class="fg_stroke no_fill" d="M 156 1884 A 4 4 0 0 0 152 1880"/> </g> <g> -<line x1="144" x2="152" y1="1896" y2="1896"/> -<path d="M 152 1896 A 4 4 0 0 0 156 1892" fill="none"/> +<line class="fg_stroke" x1="144" x2="152" y1="1896" y2="1896"/> +<path class="fg_stroke no_fill" d="M 152 1896 A 4 4 0 0 0 156 1892"/> </g> <g> -<line x1="146" x2="146" y1="1272" y2="1308"/> -<line x1="146" x2="174" y1="1272" y2="1272"/> -<line x1="146" x2="174" y1="1308" y2="1308"/> -<line x1="174" x2="174" y1="1272" y2="1308"/> +<line class="fg_stroke" x1="146" x2="146" y1="1272" y2="1308"/> +<line class="fg_stroke" x1="146" x2="174" y1="1272" y2="1272"/> +<line class="fg_stroke" x1="146" x2="174" y1="1308" y2="1308"/> +<line class="fg_stroke" x1="174" x2="174" y1="1272" y2="1308"/> </g> <g> -<line x1="148" x2="148" y1="380" y2="404"/> -<path d="M 148 404 A 4 4 0 0 0 152 408" fill="none"/> -<path d="M 152 376 A 4 4 0 0 0 148 380" fill="none"/> +<line class="fg_stroke" x1="148" x2="148" y1="380" y2="404"/> +<path class="fg_stroke no_fill" d="M 148 404 A 4 4 0 0 0 152 408"/> +<path class="fg_stroke no_fill" d="M 152 376 A 4 4 0 0 0 148 380"/> </g> <g> -<line x1="148" x2="148" y1="1904" y2="1924"/> -<line x1="148" x2="148" y1="1924" y2="1920"/> +<line class="fg_stroke" x1="148" x2="148" y1="1904" y2="1924"/> +<line class="fg_stroke" x1="148" x2="148" y1="1924" y2="1920"/> </g> <g> -<line x1="150" x2="150" y1="1276" y2="1288"/> -<line x1="150" x2="162" y1="1276" y2="1276"/> -<line x1="150" x2="162" y1="1288" y2="1288"/> -<line x1="162" x2="162" y1="1276" y2="1288"/> +<line class="fg_stroke" x1="150" x2="150" y1="1276" y2="1288"/> +<line class="fg_stroke" x1="150" x2="162" y1="1276" y2="1276"/> +<line class="fg_stroke" x1="150" x2="162" y1="1288" y2="1288"/> +<line class="fg_stroke" x1="162" x2="162" y1="1276" y2="1288"/> </g> <g> -<line x1="150" x2="150" y1="1292" y2="1304"/> -<line x1="150" x2="162" y1="1292" y2="1292"/> -<line x1="150" x2="162" y1="1304" y2="1304"/> -<line x1="162" x2="162" y1="1292" y2="1304"/> +<line class="fg_stroke" x1="150" x2="150" y1="1292" y2="1304"/> +<line class="fg_stroke" x1="150" x2="162" y1="1292" y2="1292"/> |