Added dashed lines

This commit is contained in:
Tobias Falk 2024-05-30 22:35:49 +02:00
parent 465aefaf77
commit a015da52b8
9 changed files with 682 additions and 152 deletions

12
examples/ex15.gv generated
View File

@ -4,6 +4,12 @@ graph {
graph [bgcolor="#FFFFFF" fontname=arial nodesep=0.33 rankdir=LR ranksep=2]
node [fillcolor="#FFFFFF" fontname=arial height=0 margin=0 shape=none style=filled width=0]
edge [fontname=arial style=bold]
edge [color="#FF66CC" headclip=false style=dashed tailclip=false]
X1:p1j:c -- X1:p5j:c [straight=straight]
X1:p5j:c -- X1:p7j:c [straight=straight]
edge [color="#FF0000" headclip=false style=dashed tailclip=false]
X1:p2j:c -- X1:p6j:c [straight=straight]
edge [headclip=true style=bold tailclip=true]
X1 [label=<
<table border="0" cellspacing="0" cellpadding="0">
<tr><td>
@ -66,6 +72,12 @@ graph {
</td></tr>
</table>
> fillcolor="#FFFFFF" shape=box style=filled]
edge [color="#000000" headclip=false style=dashed tailclip=false]
X2:p1j:c -- X2:p5j:c [straight=straight]
X2:p5j:c -- X2:p7j:c [straight=straight]
edge [color="#000000" headclip=false style=dashed tailclip=false]
X2:p2j:c -- X2:p6j:c [straight=straight]
edge [headclip=true style=bold tailclip=true]
X2 [label=<
<table border="0" cellspacing="0" cellpadding="0">
<tr><td>

176
examples/ex15.html generated
View File

@ -42,7 +42,7 @@
<title>X1</title>
<polygon fill="#ffffff" stroke="black" points="188.25,-217 0,-217 0,0 188.25,0 188.25,-217"/>
<polygon fill="none" stroke="black" points="0,-192.5 0,-217 188.25,-217 188.25,-192.5 0,-192.5"/>
<text text-anchor="start" x="85.12" y="-199.7" font-family="arial" font-size="14.00">X1</text>
<text text-anchor="start" x="85.13" y="-199.7" font-family="arial" font-size="14.00">X1</text>
<polygon fill="none" stroke="black" points="0,-168 0,-192.5 97.25,-192.5 97.25,-168 0,-168"/>
<text text-anchor="start" x="4" y="-175.2" font-family="arial" font-size="14.00">Molex KK 254</text>
<polygon fill="none" stroke="black" points="97.25,-168 97.25,-192.5 148.75,-192.5 148.75,-168 97.25,-168"/>
@ -51,58 +51,73 @@
<text text-anchor="start" x="152.75" y="-175.2" font-family="arial" font-size="14.00">7&#45;pin</text>
<polygon fill="none" stroke="black" points="0,-144 0,-168 61.81,-168 61.81,-144 0,-144"/>
<text text-anchor="start" x="15.16" y="-150.7" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="61.81,-144 61.81,-168 105.62,-168 105.62,-144 61.81,-144"/>
<text text-anchor="start" x="76.97" y="-151.72" font-family="Sans" font-size="12.00" fill="#ff66cc"></text>
<polygon fill="none" stroke="black" points="105.62,-144 105.62,-168 149.44,-168 149.44,-144 105.62,-144"/>
<polygon fill="none" stroke="black" points="61.81,-144 61.81,-168 105.63,-168 105.63,-144 61.81,-144"/>
<text text-anchor="start" x="76.97" y="-151.73" font-family="Sans" font-size="12.00" fill="#ff66cc"></text>
<polygon fill="none" stroke="black" points="105.63,-144 105.63,-168 149.44,-168 149.44,-144 105.63,-144"/>
<polygon fill="none" stroke="black" points="149.44,-144 149.44,-168 188.25,-168 188.25,-144 149.44,-144"/>
<text text-anchor="start" x="164.72" y="-150.7" font-family="arial" font-size="14.00">1</text>
<polygon fill="none" stroke="black" points="0,-120 0,-144 61.81,-144 61.81,-120 0,-120"/>
<text text-anchor="start" x="15.53" y="-126.7" font-family="arial" font-size="14.00">VCC</text>
<polygon fill="none" stroke="black" points="61.81,-120 61.81,-144 105.62,-144 105.62,-120 61.81,-120"/>
<polygon fill="none" stroke="black" points="105.62,-120 105.62,-144 149.44,-144 149.44,-120 105.62,-120"/>
<text text-anchor="start" x="120.78" y="-127.72" font-family="Sans" font-size="12.00" fill="#ff0000"></text>
<polygon fill="none" stroke="black" points="61.81,-120 61.81,-144 105.63,-144 105.63,-120 61.81,-120"/>
<polygon fill="none" stroke="black" points="105.63,-120 105.63,-144 149.44,-144 149.44,-120 105.63,-120"/>
<text text-anchor="start" x="120.78" y="-127.73" font-family="Sans" font-size="12.00" fill="#ff0000"></text>
<polygon fill="none" stroke="black" points="149.44,-120 149.44,-144 188.25,-144 188.25,-120 149.44,-120"/>
<text text-anchor="start" x="164.72" y="-126.7" font-family="arial" font-size="14.00">2</text>
<polygon fill="none" stroke="black" points="0,-96 0,-120 61.81,-120 61.81,-96 0,-96"/>
<text text-anchor="start" x="20.78" y="-102.7" font-family="arial" font-size="14.00">RX</text>
<polygon fill="none" stroke="black" points="61.81,-96 61.81,-120 105.62,-120 105.62,-96 61.81,-96"/>
<polygon fill="none" stroke="black" points="105.62,-96 105.62,-120 149.44,-120 149.44,-96 105.62,-96"/>
<polygon fill="none" stroke="black" points="61.81,-96 61.81,-120 105.63,-120 105.63,-96 61.81,-96"/>
<polygon fill="none" stroke="black" points="105.63,-96 105.63,-120 149.44,-120 149.44,-96 105.63,-96"/>
<polygon fill="none" stroke="black" points="149.44,-96 149.44,-120 188.25,-120 188.25,-96 149.44,-96"/>
<text text-anchor="start" x="164.72" y="-102.7" font-family="arial" font-size="14.00">3</text>
<polygon fill="none" stroke="black" points="0,-72 0,-96 61.81,-96 61.81,-72 0,-72"/>
<text text-anchor="start" x="21.53" y="-78.7" font-family="arial" font-size="14.00">TX</text>
<polygon fill="none" stroke="black" points="61.81,-72 61.81,-96 105.62,-96 105.62,-72 61.81,-72"/>
<polygon fill="none" stroke="black" points="105.62,-72 105.62,-96 149.44,-96 149.44,-72 105.62,-72"/>
<polygon fill="none" stroke="black" points="61.81,-72 61.81,-96 105.63,-96 105.63,-72 61.81,-72"/>
<polygon fill="none" stroke="black" points="105.63,-72 105.63,-96 149.44,-96 149.44,-72 105.63,-72"/>
<polygon fill="none" stroke="black" points="149.44,-72 149.44,-96 188.25,-96 188.25,-72 149.44,-72"/>
<text text-anchor="start" x="164.72" y="-78.7" font-family="arial" font-size="14.00">4</text>
<polygon fill="none" stroke="black" points="0,-48 0,-72 61.81,-72 61.81,-48 0,-48"/>
<text text-anchor="start" x="15.16" y="-54.7" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="61.81,-48 61.81,-72 105.62,-72 105.62,-48 61.81,-48"/>
<polygon fill="none" stroke="black" points="61.81,-48 61.81,-72 105.63,-72 105.63,-48 61.81,-48"/>
<text text-anchor="start" x="76.97" y="-55.73" font-family="Sans" font-size="12.00" fill="#ff66cc"></text>
<polygon fill="none" stroke="black" points="105.62,-48 105.62,-72 149.44,-72 149.44,-48 105.62,-48"/>
<polygon fill="none" stroke="black" points="105.63,-48 105.63,-72 149.44,-72 149.44,-48 105.63,-48"/>
<polygon fill="none" stroke="black" points="149.44,-48 149.44,-72 188.25,-72 188.25,-48 149.44,-48"/>
<text text-anchor="start" x="164.72" y="-54.7" font-family="arial" font-size="14.00">5</text>
<polygon fill="none" stroke="black" points="0,-24 0,-48 61.81,-48 61.81,-24 0,-24"/>
<text text-anchor="start" x="15.53" y="-30.7" font-family="arial" font-size="14.00">VCC</text>
<polygon fill="none" stroke="black" points="61.81,-24 61.81,-48 105.62,-48 105.62,-24 61.81,-24"/>
<polygon fill="none" stroke="black" points="105.62,-24 105.62,-48 149.44,-48 149.44,-24 105.62,-24"/>
<polygon fill="none" stroke="black" points="61.81,-24 61.81,-48 105.63,-48 105.63,-24 61.81,-24"/>
<polygon fill="none" stroke="black" points="105.63,-24 105.63,-48 149.44,-48 149.44,-24 105.63,-24"/>
<text text-anchor="start" x="120.78" y="-31.73" font-family="Sans" font-size="12.00" fill="#ff0000"></text>
<polygon fill="none" stroke="black" points="149.44,-24 149.44,-48 188.25,-48 188.25,-24 149.44,-24"/>
<text text-anchor="start" x="164.72" y="-30.7" font-family="arial" font-size="14.00">6</text>
<polygon fill="none" stroke="black" points="0,0 0,-24 61.81,-24 61.81,0 0,0"/>
<text text-anchor="start" x="15.16" y="-6.7" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="61.81,0 61.81,-24 105.62,-24 105.62,0 61.81,0"/>
<text text-anchor="start" x="76.97" y="-7.72" font-family="Sans" font-size="12.00" fill="#ff66cc"></text>
<polygon fill="none" stroke="black" points="105.62,0 105.62,-24 149.44,-24 149.44,0 105.62,0"/>
<polygon fill="none" stroke="black" points="61.81,0 61.81,-24 105.63,-24 105.63,0 61.81,0"/>
<text text-anchor="start" x="76.97" y="-7.73" font-family="Sans" font-size="12.00" fill="#ff66cc"></text>
<polygon fill="none" stroke="black" points="105.63,0 105.63,-24 149.44,-24 149.44,0 105.63,0"/>
<polygon fill="none" stroke="black" points="149.44,0 149.44,-24 188.25,-24 188.25,0 149.44,0"/>
<text text-anchor="start" x="164.72" y="-6.7" font-family="arial" font-size="14.00">7</text>
</g>
<!-- X1&#45;&#45;X1 -->
<g id="edge1" class="edge">
<title>X1:c&#45;&#45;X1:c</title>
<path fill="none" stroke="#ff66cc" stroke-dasharray="5,2" d="M83.72,-156C83.72,-156 83.72,-60 83.72,-60"/>
</g>
<!-- X1&#45;&#45;X1 -->
<g id="edge2" class="edge">
<title>X1:c&#45;&#45;X1:c</title>
<path fill="none" stroke="#ff66cc" stroke-dasharray="5,2" d="M83.72,-60C83.72,-60 83.72,-12 83.72,-12"/>
</g>
<!-- X1&#45;&#45;X1 -->
<g id="edge3" class="edge">
<title>X1:c&#45;&#45;X1:c</title>
<path fill="none" stroke="#ff0000" stroke-dasharray="5,2" d="M127.53,-132C127.53,-132 127.53,-36 127.53,-36"/>
</g>
<!-- W1 -->
<g id="node3" class="node">
<g id="node2" class="node">
<title>W1</title>
<polygon fill="#ffffff" stroke="black" points="610,-252 332.25,-252 332.25,-17 610,-17 610,-252"/>
<polygon fill="none" stroke="black" points="332.25,-227.5 332.25,-252 610,-252 610,-227.5 332.25,-227.5"/>
<text text-anchor="start" x="459.88" y="-234.7" font-family="arial" font-size="14.00">W1</text>
<text text-anchor="start" x="459.87" y="-234.7" font-family="arial" font-size="14.00">W1</text>
<polygon fill="none" stroke="black" points="332.25,-203 332.25,-227.5 376.25,-227.5 376.25,-203 332.25,-203"/>
<text text-anchor="start" x="336.25" y="-210.2" font-family="arial" font-size="14.00">Serial</text>
<polygon fill="none" stroke="black" points="376.25,-203 376.25,-227.5 399.25,-227.5 399.25,-203 376.25,-203"/>
@ -113,8 +128,8 @@
<text text-anchor="start" x="540.25" y="-210.2" font-family="arial" font-size="14.00">+ S</text>
<polygon fill="none" stroke="black" points="566,-203 566,-227.5 610,-227.5 610,-203 566,-203"/>
<text text-anchor="start" x="570" y="-210.2" font-family="arial" font-size="14.00">0.2 m</text>
<text text-anchor="start" x="376.17" y="-187.7" font-family="arial" font-size="14.00"> </text>
<text text-anchor="start" x="345.42" y="-167.7" font-family="arial" font-size="14.00">X1:1:GND</text>
<text text-anchor="start" x="376.16" y="-187.7" font-family="arial" font-size="14.00"> </text>
<text text-anchor="start" x="345.41" y="-167.7" font-family="arial" font-size="14.00">X1:1:GND</text>
<text text-anchor="start" x="438.5" y="-167.7" font-family="arial" font-size="14.00"> &#160;&#160;&#160;&#160;1:BN &#160;&#160;&#160;</text>
<text text-anchor="start" x="531.58" y="-167.7" font-family="arial" font-size="14.00">X2:1:GND</text>
<polygon fill="#000000" stroke="none" points="332.25,-161 332.25,-163 610,-163 610,-161 332.25,-161"/>
@ -122,45 +137,45 @@
<polygon fill="#000000" stroke="none" points="332.25,-157 332.25,-159 610,-159 610,-157 332.25,-157"/>
<text text-anchor="start" x="345.79" y="-141.7" font-family="arial" font-size="14.00">X1:2:VCC</text>
<text text-anchor="start" x="437.75" y="-141.7" font-family="arial" font-size="14.00"> &#160;&#160;&#160;&#160;2:RD &#160;&#160;&#160;</text>
<text text-anchor="start" x="531.96" y="-141.7" font-family="arial" font-size="14.00">X2:2:VCC</text>
<text text-anchor="start" x="531.95" y="-141.7" font-family="arial" font-size="14.00">X2:2:VCC</text>
<polygon fill="#000000" stroke="none" points="332.25,-135 332.25,-137 610,-137 610,-135 332.25,-135"/>
<polygon fill="#ff0000" stroke="none" points="332.25,-133 332.25,-135 610,-135 610,-133 332.25,-133"/>
<polygon fill="#000000" stroke="none" points="332.25,-131 332.25,-133 610,-133 610,-131 332.25,-131"/>
<text text-anchor="start" x="351.04" y="-115.7" font-family="arial" font-size="14.00">X1:3:RX</text>
<text text-anchor="start" x="437" y="-115.7" font-family="arial" font-size="14.00"> &#160;&#160;&#160;&#160;3:OG &#160;&#160;&#160;</text>
<text text-anchor="start" x="537.96" y="-115.7" font-family="arial" font-size="14.00">X2:4:TX</text>
<text text-anchor="start" x="537.95" y="-115.7" font-family="arial" font-size="14.00">X2:4:TX</text>
<polygon fill="#000000" stroke="none" points="332.25,-109 332.25,-111 610,-111 610,-109 332.25,-109"/>
<polygon fill="#ff8000" stroke="none" points="332.25,-107 332.25,-109 610,-109 610,-107 332.25,-107"/>
<polygon fill="#000000" stroke="none" points="332.25,-105 332.25,-107 610,-107 610,-105 332.25,-105"/>
<text text-anchor="start" x="351.79" y="-89.7" font-family="arial" font-size="14.00">X1:4:TX</text>
<text text-anchor="start" x="438.88" y="-89.7" font-family="arial" font-size="14.00"> &#160;&#160;&#160;&#160;4:YE &#160;&#160;&#160;</text>
<text text-anchor="start" x="537.21" y="-89.7" font-family="arial" font-size="14.00">X2:3:RX</text>
<text text-anchor="start" x="438.87" y="-89.7" font-family="arial" font-size="14.00"> &#160;&#160;&#160;&#160;4:YE &#160;&#160;&#160;</text>
<text text-anchor="start" x="537.2" y="-89.7" font-family="arial" font-size="14.00">X2:3:RX</text>
<polygon fill="#000000" stroke="none" points="332.25,-83 332.25,-85 610,-85 610,-83 332.25,-83"/>
<polygon fill="#ffff00" stroke="none" points="332.25,-81 332.25,-83 610,-83 610,-81 332.25,-81"/>
<polygon fill="#000000" stroke="none" points="332.25,-79 332.25,-81 610,-81 610,-79 332.25,-79"/>
<text text-anchor="start" x="376.17" y="-63.7" font-family="arial" font-size="14.00"> </text>
<text text-anchor="start" x="345.42" y="-43.7" font-family="arial" font-size="14.00">X1:1:GND</text>
<text text-anchor="start" x="376.16" y="-63.7" font-family="arial" font-size="14.00"> </text>
<text text-anchor="start" x="345.41" y="-43.7" font-family="arial" font-size="14.00">X1:1:GND</text>
<text text-anchor="start" x="451.25" y="-43.7" font-family="arial" font-size="14.00">Shield</text>
<polygon fill="#000000" stroke="none" points="332.25,-37 332.25,-39 610,-39 610,-37 332.25,-37"/>
<text text-anchor="start" x="376.17" y="-21.7" font-family="arial" font-size="14.00"> </text>
<text text-anchor="start" x="376.16" y="-21.7" font-family="arial" font-size="14.00"> </text>
</g>
<!-- X1&#45;&#45;W1 -->
<g id="edge1" class="edge">
<g id="edge4" class="edge">
<title>X1:e&#45;&#45;W1:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-154C252.76,-154.06 268.71,-158.06 332.25,-158"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-154C252.76,-154.06 268.72,-158.06 332.25,-158"/>
<path fill="none" stroke="#895956" stroke-width="2" d="M188.25,-156C252.27,-156 268.23,-160 332.25,-160"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-158C251.79,-157.94 267.74,-161.94 332.25,-162"/>
</g>
<!-- X1&#45;&#45;W1 -->
<g id="edge3" class="edge">
<title>X1:e&#45;&#45;W1:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-130C252.5,-130.02 268.49,-132.02 332.25,-132"/>
<path fill="none" stroke="#ff0000" stroke-width="2" d="M188.25,-132C252.26,-132 268.24,-134 332.25,-134"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-134C252.01,-133.98 268,-135.98 332.25,-136"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-158C251.78,-157.94 267.74,-161.94 332.25,-162"/>
</g>
<!-- X1&#45;&#45;W1 -->
<g id="edge5" class="edge">
<title>X1:e&#45;&#45;W1:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-130C252.51,-130.02 268.49,-132.02 332.25,-132"/>
<path fill="none" stroke="#ff0000" stroke-width="2" d="M188.25,-132C252.26,-132 268.24,-134 332.25,-134"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-134C252.01,-133.98 267.99,-135.98 332.25,-136"/>
</g>
<!-- X1&#45;&#45;W1 -->
<g id="edge6" class="edge">
<title>X1:e&#45;&#45;W1:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-106C252.25,-106 268.25,-106 332.25,-106"/>
<path fill="none" stroke="#ff8000" stroke-width="2" d="M188.25,-108C252.25,-108 268.25,-108 332.25,-108"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-110C252.25,-110 268.25,-110 332.25,-110"/>
@ -168,17 +183,17 @@
<!-- X1&#45;&#45;W1 -->
<g id="edge7" class="edge">
<title>X1:e&#45;&#45;W1:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-82C252.01,-82.02 268,-80.02 332.25,-80"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-82C252.01,-82.02 267.99,-80.02 332.25,-80"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M188.25,-84C252.26,-84 268.24,-82 332.25,-82"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-86C252.5,-85.98 268.49,-83.98 332.25,-84"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-86C252.51,-85.98 268.49,-83.98 332.25,-84"/>
</g>
<!-- X1&#45;&#45;W1 -->
<g id="edge9" class="edge">
<g id="edge8" class="edge">
<title>X1:e&#45;&#45;W1:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-156C270.99,-156 249.51,-38 332.25,-38"/>
</g>
<!-- X2 -->
<g id="node2" class="node">
<g id="node3" class="node">
<title>X2</title>
<polygon fill="#ffffff" stroke="black" points="942.25,-220 754,-220 754,-3 942.25,-3 942.25,-220"/>
<polygon fill="none" stroke="black" points="754,-195.5 754,-220 942.25,-220 942.25,-195.5 754,-195.5"/>
@ -192,78 +207,93 @@
<polygon fill="none" stroke="black" points="754,-147 754,-171 792.81,-171 792.81,-147 754,-147"/>
<text text-anchor="start" x="769.28" y="-153.7" font-family="arial" font-size="14.00">1</text>
<polygon fill="none" stroke="black" points="792.81,-147 792.81,-171 854.62,-171 854.62,-147 792.81,-147"/>
<text text-anchor="start" x="807.97" y="-153.7" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="854.62,-147 854.62,-171 898.44,-171 898.44,-147 854.62,-147"/>
<text text-anchor="start" x="869.78" y="-154.72" font-family="Sans" font-size="12.00" fill="#000000"></text>
<polygon fill="none" stroke="black" points="898.44,-147 898.44,-171 942.25,-171 942.25,-147 898.44,-147"/>
<text text-anchor="start" x="807.96" y="-153.7" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="854.62,-147 854.62,-171 898.43,-171 898.43,-147 854.62,-147"/>
<text text-anchor="start" x="869.78" y="-154.73" font-family="Sans" font-size="12.00" fill="#000000"></text>
<polygon fill="none" stroke="black" points="898.43,-147 898.43,-171 942.25,-171 942.25,-147 898.43,-147"/>
<polygon fill="none" stroke="black" points="754,-123 754,-147 792.81,-147 792.81,-123 754,-123"/>
<text text-anchor="start" x="769.28" y="-129.7" font-family="arial" font-size="14.00">2</text>
<polygon fill="none" stroke="black" points="792.81,-123 792.81,-147 854.62,-147 854.62,-123 792.81,-123"/>
<text text-anchor="start" x="808.34" y="-129.7" font-family="arial" font-size="14.00">VCC</text>
<polygon fill="none" stroke="black" points="854.62,-123 854.62,-147 898.44,-147 898.44,-123 854.62,-123"/>
<polygon fill="none" stroke="black" points="898.44,-123 898.44,-147 942.25,-147 942.25,-123 898.44,-123"/>
<text text-anchor="start" x="913.59" y="-130.72" font-family="Sans" font-size="12.00" fill="#000000"></text>
<polygon fill="none" stroke="black" points="854.62,-123 854.62,-147 898.43,-147 898.43,-123 854.62,-123"/>
<polygon fill="none" stroke="black" points="898.43,-123 898.43,-147 942.25,-147 942.25,-123 898.43,-123"/>
<text text-anchor="start" x="913.59" y="-130.73" font-family="Sans" font-size="12.00" fill="#000000"></text>
<polygon fill="none" stroke="black" points="754,-99 754,-123 792.81,-123 792.81,-99 754,-99"/>
<text text-anchor="start" x="769.28" y="-105.7" font-family="arial" font-size="14.00">3</text>
<polygon fill="none" stroke="black" points="792.81,-99 792.81,-123 854.62,-123 854.62,-99 792.81,-99"/>
<text text-anchor="start" x="813.59" y="-105.7" font-family="arial" font-size="14.00">RX</text>
<polygon fill="none" stroke="black" points="854.62,-99 854.62,-123 898.44,-123 898.44,-99 854.62,-99"/>
<polygon fill="none" stroke="black" points="898.44,-99 898.44,-123 942.25,-123 942.25,-99 898.44,-99"/>
<polygon fill="none" stroke="black" points="854.62,-99 854.62,-123 898.43,-123 898.43,-99 854.62,-99"/>
<polygon fill="none" stroke="black" points="898.43,-99 898.43,-123 942.25,-123 942.25,-99 898.43,-99"/>
<polygon fill="none" stroke="black" points="754,-75 754,-99 792.81,-99 792.81,-75 754,-75"/>
<text text-anchor="start" x="769.28" y="-81.7" font-family="arial" font-size="14.00">4</text>
<polygon fill="none" stroke="black" points="792.81,-75 792.81,-99 854.62,-99 854.62,-75 792.81,-75"/>
<text text-anchor="start" x="814.34" y="-81.7" font-family="arial" font-size="14.00">TX</text>
<polygon fill="none" stroke="black" points="854.62,-75 854.62,-99 898.44,-99 898.44,-75 854.62,-75"/>
<polygon fill="none" stroke="black" points="898.44,-75 898.44,-99 942.25,-99 942.25,-75 898.44,-75"/>
<polygon fill="none" stroke="black" points="854.62,-75 854.62,-99 898.43,-99 898.43,-75 854.62,-75"/>
<polygon fill="none" stroke="black" points="898.43,-75 898.43,-99 942.25,-99 942.25,-75 898.43,-75"/>
<polygon fill="none" stroke="black" points="754,-51 754,-75 792.81,-75 792.81,-51 754,-51"/>
<text text-anchor="start" x="769.28" y="-57.7" font-family="arial" font-size="14.00">5</text>
<polygon fill="none" stroke="black" points="792.81,-51 792.81,-75 854.62,-75 854.62,-51 792.81,-51"/>
<text text-anchor="start" x="807.97" y="-57.7" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="854.62,-51 854.62,-75 898.44,-75 898.44,-51 854.62,-51"/>
<text text-anchor="start" x="807.96" y="-57.7" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="854.62,-51 854.62,-75 898.43,-75 898.43,-51 854.62,-51"/>
<text text-anchor="start" x="869.78" y="-58.73" font-family="Sans" font-size="12.00" fill="#000000"></text>
<polygon fill="none" stroke="black" points="898.44,-51 898.44,-75 942.25,-75 942.25,-51 898.44,-51"/>
<polygon fill="none" stroke="black" points="898.43,-51 898.43,-75 942.25,-75 942.25,-51 898.43,-51"/>
<polygon fill="none" stroke="black" points="754,-27 754,-51 792.81,-51 792.81,-27 754,-27"/>
<text text-anchor="start" x="769.28" y="-33.7" font-family="arial" font-size="14.00">6</text>
<polygon fill="none" stroke="black" points="792.81,-27 792.81,-51 854.62,-51 854.62,-27 792.81,-27"/>
<text text-anchor="start" x="808.34" y="-33.7" font-family="arial" font-size="14.00">VCC</text>
<polygon fill="none" stroke="black" points="854.62,-27 854.62,-51 898.44,-51 898.44,-27 854.62,-27"/>
<polygon fill="none" stroke="black" points="898.44,-27 898.44,-51 942.25,-51 942.25,-27 898.44,-27"/>
<polygon fill="none" stroke="black" points="854.62,-27 854.62,-51 898.43,-51 898.43,-27 854.62,-27"/>
<polygon fill="none" stroke="black" points="898.43,-27 898.43,-51 942.25,-51 942.25,-27 898.43,-27"/>
<text text-anchor="start" x="913.59" y="-34.73" font-family="Sans" font-size="12.00" fill="#000000"></text>
<polygon fill="none" stroke="black" points="754,-3 754,-27 792.81,-27 792.81,-3 754,-3"/>
<text text-anchor="start" x="769.28" y="-9.7" font-family="arial" font-size="14.00">7</text>
<polygon fill="none" stroke="black" points="792.81,-3 792.81,-27 854.62,-27 854.62,-3 792.81,-3"/>
<text text-anchor="start" x="807.97" y="-9.7" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="854.62,-3 854.62,-27 898.44,-27 898.44,-3 854.62,-3"/>
<text text-anchor="start" x="869.78" y="-10.72" font-family="Sans" font-size="12.00" fill="#000000"></text>
<polygon fill="none" stroke="black" points="898.44,-3 898.44,-27 942.25,-27 942.25,-3 898.44,-3"/>
<text text-anchor="start" x="807.96" y="-9.7" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="854.62,-3 854.62,-27 898.43,-27 898.43,-3 854.62,-3"/>
<text text-anchor="start" x="869.78" y="-10.73" font-family="Sans" font-size="12.00" fill="#000000"></text>
<polygon fill="none" stroke="black" points="898.43,-3 898.43,-27 942.25,-27 942.25,-3 898.43,-3"/>
</g>
<!-- W1&#45;&#45;X2 -->
<g id="edge2" class="edge">
<g id="edge9" class="edge">
<title>W1:e&#45;&#45;X2:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-158C673.88,-158 689.87,-157 754,-157"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-158C673.88,-158 689.88,-157 754,-157"/>
<path fill="none" stroke="#895956" stroke-width="2" d="M610,-160C674,-160 690,-159 754,-159"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-162C674.13,-162 690.12,-161 754,-161"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-162C674.13,-162 690.13,-161 754,-161"/>
</g>
<!-- W1&#45;&#45;X2 -->
<g id="edge4" class="edge">
<g id="edge10" class="edge">
<title>W1:e&#45;&#45;X2:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-132C674.13,-132 690.12,-133 754,-133"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-132C674.13,-132 690.13,-133 754,-133"/>
<path fill="none" stroke="#ff0000" stroke-width="2" d="M610,-134C674,-134 690,-135 754,-135"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-136C673.88,-136 689.87,-137 754,-137"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-136C673.88,-136 689.88,-137 754,-137"/>
</g>
<!-- W1&#45;&#45;X2 -->
<g id="edge6" class="edge">
<g id="edge11" class="edge">
<title>W1:e&#45;&#45;X2:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-106C673.04,-106.86 687.68,-85.86 754,-85"/>
<path fill="none" stroke="#ff8000" stroke-width="2" d="M610,-108C674.68,-108 689.32,-87 754,-87"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-110C676.32,-109.14 690.96,-88.14 754,-89"/>
</g>
<!-- W1&#45;&#45;X2 -->
<g id="edge8" class="edge">
<g id="edge12" class="edge">
<title>W1:e&#45;&#45;X2:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-80C677.1,-81.16 690.53,-110.16 754,-109"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-80C677.1,-81.16 690.54,-110.16 754,-109"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M610,-82C675.28,-82 688.72,-111 754,-111"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-84C673.47,-82.84 686.9,-111.84 754,-113"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-84C673.47,-82.84 686.91,-111.84 754,-113"/>
</g>
<!-- X2&#45;&#45;X2 -->
<g id="edge13" class="edge">
<title>X2:c&#45;&#45;X2:c</title>
<path fill="none" stroke="#000000" stroke-dasharray="5,2" d="M876.53,-159C876.53,-159 876.53,-63 876.53,-63"/>
</g>
<!-- X2&#45;&#45;X2 -->
<g id="edge14" class="edge">
<title>X2:c&#45;&#45;X2:c</title>
<path fill="none" stroke="#000000" stroke-dasharray="5,2" d="M876.53,-63C876.53,-63 876.53,-15 876.53,-15"/>
</g>
<!-- X2&#45;&#45;X2 -->
<g id="edge15" class="edge">
<title>X2:c&#45;&#45;X2:c</title>
<path fill="none" stroke="#000000" stroke-dasharray="5,2" d="M920.34,-135C920.34,-135 920.34,-39 920.34,-39"/>
</g>
</g>
</svg>

BIN
examples/ex15.png generated

Binary file not shown.

Before

Width:  |  Height:  |  Size: 47 KiB

After

Width:  |  Height:  |  Size: 49 KiB

176
examples/ex15.svg generated
View File

@ -13,7 +13,7 @@
<title>X1</title>
<polygon fill="#ffffff" stroke="black" points="188.25,-217 0,-217 0,0 188.25,0 188.25,-217"/>
<polygon fill="none" stroke="black" points="0,-192.5 0,-217 188.25,-217 188.25,-192.5 0,-192.5"/>
<text text-anchor="start" x="85.12" y="-199.7" font-family="arial" font-size="14.00">X1</text>
<text text-anchor="start" x="85.13" y="-199.7" font-family="arial" font-size="14.00">X1</text>
<polygon fill="none" stroke="black" points="0,-168 0,-192.5 97.25,-192.5 97.25,-168 0,-168"/>
<text text-anchor="start" x="4" y="-175.2" font-family="arial" font-size="14.00">Molex KK 254</text>
<polygon fill="none" stroke="black" points="97.25,-168 97.25,-192.5 148.75,-192.5 148.75,-168 97.25,-168"/>
@ -22,58 +22,73 @@
<text text-anchor="start" x="152.75" y="-175.2" font-family="arial" font-size="14.00">7&#45;pin</text>
<polygon fill="none" stroke="black" points="0,-144 0,-168 61.81,-168 61.81,-144 0,-144"/>
<text text-anchor="start" x="15.16" y="-150.7" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="61.81,-144 61.81,-168 105.62,-168 105.62,-144 61.81,-144"/>
<text text-anchor="start" x="76.97" y="-151.72" font-family="Sans" font-size="12.00" fill="#ff66cc"></text>
<polygon fill="none" stroke="black" points="105.62,-144 105.62,-168 149.44,-168 149.44,-144 105.62,-144"/>
<polygon fill="none" stroke="black" points="61.81,-144 61.81,-168 105.63,-168 105.63,-144 61.81,-144"/>
<text text-anchor="start" x="76.97" y="-151.73" font-family="Sans" font-size="12.00" fill="#ff66cc"></text>
<polygon fill="none" stroke="black" points="105.63,-144 105.63,-168 149.44,-168 149.44,-144 105.63,-144"/>
<polygon fill="none" stroke="black" points="149.44,-144 149.44,-168 188.25,-168 188.25,-144 149.44,-144"/>
<text text-anchor="start" x="164.72" y="-150.7" font-family="arial" font-size="14.00">1</text>
<polygon fill="none" stroke="black" points="0,-120 0,-144 61.81,-144 61.81,-120 0,-120"/>
<text text-anchor="start" x="15.53" y="-126.7" font-family="arial" font-size="14.00">VCC</text>
<polygon fill="none" stroke="black" points="61.81,-120 61.81,-144 105.62,-144 105.62,-120 61.81,-120"/>
<polygon fill="none" stroke="black" points="105.62,-120 105.62,-144 149.44,-144 149.44,-120 105.62,-120"/>
<text text-anchor="start" x="120.78" y="-127.72" font-family="Sans" font-size="12.00" fill="#ff0000"></text>
<polygon fill="none" stroke="black" points="61.81,-120 61.81,-144 105.63,-144 105.63,-120 61.81,-120"/>
<polygon fill="none" stroke="black" points="105.63,-120 105.63,-144 149.44,-144 149.44,-120 105.63,-120"/>
<text text-anchor="start" x="120.78" y="-127.73" font-family="Sans" font-size="12.00" fill="#ff0000"></text>
<polygon fill="none" stroke="black" points="149.44,-120 149.44,-144 188.25,-144 188.25,-120 149.44,-120"/>
<text text-anchor="start" x="164.72" y="-126.7" font-family="arial" font-size="14.00">2</text>
<polygon fill="none" stroke="black" points="0,-96 0,-120 61.81,-120 61.81,-96 0,-96"/>
<text text-anchor="start" x="20.78" y="-102.7" font-family="arial" font-size="14.00">RX</text>
<polygon fill="none" stroke="black" points="61.81,-96 61.81,-120 105.62,-120 105.62,-96 61.81,-96"/>
<polygon fill="none" stroke="black" points="105.62,-96 105.62,-120 149.44,-120 149.44,-96 105.62,-96"/>
<polygon fill="none" stroke="black" points="61.81,-96 61.81,-120 105.63,-120 105.63,-96 61.81,-96"/>
<polygon fill="none" stroke="black" points="105.63,-96 105.63,-120 149.44,-120 149.44,-96 105.63,-96"/>
<polygon fill="none" stroke="black" points="149.44,-96 149.44,-120 188.25,-120 188.25,-96 149.44,-96"/>
<text text-anchor="start" x="164.72" y="-102.7" font-family="arial" font-size="14.00">3</text>
<polygon fill="none" stroke="black" points="0,-72 0,-96 61.81,-96 61.81,-72 0,-72"/>
<text text-anchor="start" x="21.53" y="-78.7" font-family="arial" font-size="14.00">TX</text>
<polygon fill="none" stroke="black" points="61.81,-72 61.81,-96 105.62,-96 105.62,-72 61.81,-72"/>
<polygon fill="none" stroke="black" points="105.62,-72 105.62,-96 149.44,-96 149.44,-72 105.62,-72"/>
<polygon fill="none" stroke="black" points="61.81,-72 61.81,-96 105.63,-96 105.63,-72 61.81,-72"/>
<polygon fill="none" stroke="black" points="105.63,-72 105.63,-96 149.44,-96 149.44,-72 105.63,-72"/>
<polygon fill="none" stroke="black" points="149.44,-72 149.44,-96 188.25,-96 188.25,-72 149.44,-72"/>
<text text-anchor="start" x="164.72" y="-78.7" font-family="arial" font-size="14.00">4</text>
<polygon fill="none" stroke="black" points="0,-48 0,-72 61.81,-72 61.81,-48 0,-48"/>
<text text-anchor="start" x="15.16" y="-54.7" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="61.81,-48 61.81,-72 105.62,-72 105.62,-48 61.81,-48"/>
<polygon fill="none" stroke="black" points="61.81,-48 61.81,-72 105.63,-72 105.63,-48 61.81,-48"/>
<text text-anchor="start" x="76.97" y="-55.73" font-family="Sans" font-size="12.00" fill="#ff66cc"></text>
<polygon fill="none" stroke="black" points="105.62,-48 105.62,-72 149.44,-72 149.44,-48 105.62,-48"/>
<polygon fill="none" stroke="black" points="105.63,-48 105.63,-72 149.44,-72 149.44,-48 105.63,-48"/>
<polygon fill="none" stroke="black" points="149.44,-48 149.44,-72 188.25,-72 188.25,-48 149.44,-48"/>
<text text-anchor="start" x="164.72" y="-54.7" font-family="arial" font-size="14.00">5</text>
<polygon fill="none" stroke="black" points="0,-24 0,-48 61.81,-48 61.81,-24 0,-24"/>
<text text-anchor="start" x="15.53" y="-30.7" font-family="arial" font-size="14.00">VCC</text>
<polygon fill="none" stroke="black" points="61.81,-24 61.81,-48 105.62,-48 105.62,-24 61.81,-24"/>
<polygon fill="none" stroke="black" points="105.62,-24 105.62,-48 149.44,-48 149.44,-24 105.62,-24"/>
<polygon fill="none" stroke="black" points="61.81,-24 61.81,-48 105.63,-48 105.63,-24 61.81,-24"/>
<polygon fill="none" stroke="black" points="105.63,-24 105.63,-48 149.44,-48 149.44,-24 105.63,-24"/>
<text text-anchor="start" x="120.78" y="-31.73" font-family="Sans" font-size="12.00" fill="#ff0000"></text>
<polygon fill="none" stroke="black" points="149.44,-24 149.44,-48 188.25,-48 188.25,-24 149.44,-24"/>
<text text-anchor="start" x="164.72" y="-30.7" font-family="arial" font-size="14.00">6</text>
<polygon fill="none" stroke="black" points="0,0 0,-24 61.81,-24 61.81,0 0,0"/>
<text text-anchor="start" x="15.16" y="-6.7" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="61.81,0 61.81,-24 105.62,-24 105.62,0 61.81,0"/>
<text text-anchor="start" x="76.97" y="-7.72" font-family="Sans" font-size="12.00" fill="#ff66cc"></text>
<polygon fill="none" stroke="black" points="105.62,0 105.62,-24 149.44,-24 149.44,0 105.62,0"/>
<polygon fill="none" stroke="black" points="61.81,0 61.81,-24 105.63,-24 105.63,0 61.81,0"/>
<text text-anchor="start" x="76.97" y="-7.73" font-family="Sans" font-size="12.00" fill="#ff66cc"></text>
<polygon fill="none" stroke="black" points="105.63,0 105.63,-24 149.44,-24 149.44,0 105.63,0"/>
<polygon fill="none" stroke="black" points="149.44,0 149.44,-24 188.25,-24 188.25,0 149.44,0"/>
<text text-anchor="start" x="164.72" y="-6.7" font-family="arial" font-size="14.00">7</text>
</g>
<!-- X1&#45;&#45;X1 -->
<g id="edge1" class="edge">
<title>X1:c&#45;&#45;X1:c</title>
<path fill="none" stroke="#ff66cc" stroke-dasharray="5,2" d="M83.72,-156C83.72,-156 83.72,-60 83.72,-60"/>
</g>
<!-- X1&#45;&#45;X1 -->
<g id="edge2" class="edge">
<title>X1:c&#45;&#45;X1:c</title>
<path fill="none" stroke="#ff66cc" stroke-dasharray="5,2" d="M83.72,-60C83.72,-60 83.72,-12 83.72,-12"/>
</g>
<!-- X1&#45;&#45;X1 -->
<g id="edge3" class="edge">
<title>X1:c&#45;&#45;X1:c</title>
<path fill="none" stroke="#ff0000" stroke-dasharray="5,2" d="M127.53,-132C127.53,-132 127.53,-36 127.53,-36"/>
</g>
<!-- W1 -->
<g id="node3" class="node">
<g id="node2" class="node">
<title>W1</title>
<polygon fill="#ffffff" stroke="black" points="610,-252 332.25,-252 332.25,-17 610,-17 610,-252"/>
<polygon fill="none" stroke="black" points="332.25,-227.5 332.25,-252 610,-252 610,-227.5 332.25,-227.5"/>
<text text-anchor="start" x="459.88" y="-234.7" font-family="arial" font-size="14.00">W1</text>
<text text-anchor="start" x="459.87" y="-234.7" font-family="arial" font-size="14.00">W1</text>
<polygon fill="none" stroke="black" points="332.25,-203 332.25,-227.5 376.25,-227.5 376.25,-203 332.25,-203"/>
<text text-anchor="start" x="336.25" y="-210.2" font-family="arial" font-size="14.00">Serial</text>
<polygon fill="none" stroke="black" points="376.25,-203 376.25,-227.5 399.25,-227.5 399.25,-203 376.25,-203"/>
@ -84,8 +99,8 @@
<text text-anchor="start" x="540.25" y="-210.2" font-family="arial" font-size="14.00">+ S</text>
<polygon fill="none" stroke="black" points="566,-203 566,-227.5 610,-227.5 610,-203 566,-203"/>
<text text-anchor="start" x="570" y="-210.2" font-family="arial" font-size="14.00">0.2 m</text>
<text text-anchor="start" x="376.17" y="-187.7" font-family="arial" font-size="14.00"> </text>
<text text-anchor="start" x="345.42" y="-167.7" font-family="arial" font-size="14.00">X1:1:GND</text>
<text text-anchor="start" x="376.16" y="-187.7" font-family="arial" font-size="14.00"> </text>
<text text-anchor="start" x="345.41" y="-167.7" font-family="arial" font-size="14.00">X1:1:GND</text>
<text text-anchor="start" x="438.5" y="-167.7" font-family="arial" font-size="14.00"> &#160;&#160;&#160;&#160;1:BN &#160;&#160;&#160;</text>
<text text-anchor="start" x="531.58" y="-167.7" font-family="arial" font-size="14.00">X2:1:GND</text>
<polygon fill="#000000" stroke="none" points="332.25,-161 332.25,-163 610,-163 610,-161 332.25,-161"/>
@ -93,45 +108,45 @@
<polygon fill="#000000" stroke="none" points="332.25,-157 332.25,-159 610,-159 610,-157 332.25,-157"/>
<text text-anchor="start" x="345.79" y="-141.7" font-family="arial" font-size="14.00">X1:2:VCC</text>
<text text-anchor="start" x="437.75" y="-141.7" font-family="arial" font-size="14.00"> &#160;&#160;&#160;&#160;2:RD &#160;&#160;&#160;</text>
<text text-anchor="start" x="531.96" y="-141.7" font-family="arial" font-size="14.00">X2:2:VCC</text>
<text text-anchor="start" x="531.95" y="-141.7" font-family="arial" font-size="14.00">X2:2:VCC</text>
<polygon fill="#000000" stroke="none" points="332.25,-135 332.25,-137 610,-137 610,-135 332.25,-135"/>
<polygon fill="#ff0000" stroke="none" points="332.25,-133 332.25,-135 610,-135 610,-133 332.25,-133"/>
<polygon fill="#000000" stroke="none" points="332.25,-131 332.25,-133 610,-133 610,-131 332.25,-131"/>
<text text-anchor="start" x="351.04" y="-115.7" font-family="arial" font-size="14.00">X1:3:RX</text>
<text text-anchor="start" x="437" y="-115.7" font-family="arial" font-size="14.00"> &#160;&#160;&#160;&#160;3:OG &#160;&#160;&#160;</text>
<text text-anchor="start" x="537.96" y="-115.7" font-family="arial" font-size="14.00">X2:4:TX</text>
<text text-anchor="start" x="537.95" y="-115.7" font-family="arial" font-size="14.00">X2:4:TX</text>
<polygon fill="#000000" stroke="none" points="332.25,-109 332.25,-111 610,-111 610,-109 332.25,-109"/>
<polygon fill="#ff8000" stroke="none" points="332.25,-107 332.25,-109 610,-109 610,-107 332.25,-107"/>
<polygon fill="#000000" stroke="none" points="332.25,-105 332.25,-107 610,-107 610,-105 332.25,-105"/>
<text text-anchor="start" x="351.79" y="-89.7" font-family="arial" font-size="14.00">X1:4:TX</text>
<text text-anchor="start" x="438.88" y="-89.7" font-family="arial" font-size="14.00"> &#160;&#160;&#160;&#160;4:YE &#160;&#160;&#160;</text>
<text text-anchor="start" x="537.21" y="-89.7" font-family="arial" font-size="14.00">X2:3:RX</text>
<text text-anchor="start" x="438.87" y="-89.7" font-family="arial" font-size="14.00"> &#160;&#160;&#160;&#160;4:YE &#160;&#160;&#160;</text>
<text text-anchor="start" x="537.2" y="-89.7" font-family="arial" font-size="14.00">X2:3:RX</text>
<polygon fill="#000000" stroke="none" points="332.25,-83 332.25,-85 610,-85 610,-83 332.25,-83"/>
<polygon fill="#ffff00" stroke="none" points="332.25,-81 332.25,-83 610,-83 610,-81 332.25,-81"/>
<polygon fill="#000000" stroke="none" points="332.25,-79 332.25,-81 610,-81 610,-79 332.25,-79"/>
<text text-anchor="start" x="376.17" y="-63.7" font-family="arial" font-size="14.00"> </text>
<text text-anchor="start" x="345.42" y="-43.7" font-family="arial" font-size="14.00">X1:1:GND</text>
<text text-anchor="start" x="376.16" y="-63.7" font-family="arial" font-size="14.00"> </text>
<text text-anchor="start" x="345.41" y="-43.7" font-family="arial" font-size="14.00">X1:1:GND</text>
<text text-anchor="start" x="451.25" y="-43.7" font-family="arial" font-size="14.00">Shield</text>
<polygon fill="#000000" stroke="none" points="332.25,-37 332.25,-39 610,-39 610,-37 332.25,-37"/>
<text text-anchor="start" x="376.17" y="-21.7" font-family="arial" font-size="14.00"> </text>
<text text-anchor="start" x="376.16" y="-21.7" font-family="arial" font-size="14.00"> </text>
</g>
<!-- X1&#45;&#45;W1 -->
<g id="edge1" class="edge">
<g id="edge4" class="edge">
<title>X1:e&#45;&#45;W1:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-154C252.76,-154.06 268.71,-158.06 332.25,-158"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-154C252.76,-154.06 268.72,-158.06 332.25,-158"/>
<path fill="none" stroke="#895956" stroke-width="2" d="M188.25,-156C252.27,-156 268.23,-160 332.25,-160"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-158C251.79,-157.94 267.74,-161.94 332.25,-162"/>
</g>
<!-- X1&#45;&#45;W1 -->
<g id="edge3" class="edge">
<title>X1:e&#45;&#45;W1:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-130C252.5,-130.02 268.49,-132.02 332.25,-132"/>
<path fill="none" stroke="#ff0000" stroke-width="2" d="M188.25,-132C252.26,-132 268.24,-134 332.25,-134"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-134C252.01,-133.98 268,-135.98 332.25,-136"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-158C251.78,-157.94 267.74,-161.94 332.25,-162"/>
</g>
<!-- X1&#45;&#45;W1 -->
<g id="edge5" class="edge">
<title>X1:e&#45;&#45;W1:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-130C252.51,-130.02 268.49,-132.02 332.25,-132"/>
<path fill="none" stroke="#ff0000" stroke-width="2" d="M188.25,-132C252.26,-132 268.24,-134 332.25,-134"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-134C252.01,-133.98 267.99,-135.98 332.25,-136"/>
</g>
<!-- X1&#45;&#45;W1 -->
<g id="edge6" class="edge">
<title>X1:e&#45;&#45;W1:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-106C252.25,-106 268.25,-106 332.25,-106"/>
<path fill="none" stroke="#ff8000" stroke-width="2" d="M188.25,-108C252.25,-108 268.25,-108 332.25,-108"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-110C252.25,-110 268.25,-110 332.25,-110"/>
@ -139,17 +154,17 @@
<!-- X1&#45;&#45;W1 -->
<g id="edge7" class="edge">
<title>X1:e&#45;&#45;W1:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-82C252.01,-82.02 268,-80.02 332.25,-80"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-82C252.01,-82.02 267.99,-80.02 332.25,-80"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M188.25,-84C252.26,-84 268.24,-82 332.25,-82"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-86C252.5,-85.98 268.49,-83.98 332.25,-84"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-86C252.51,-85.98 268.49,-83.98 332.25,-84"/>
</g>
<!-- X1&#45;&#45;W1 -->
<g id="edge9" class="edge">
<g id="edge8" class="edge">
<title>X1:e&#45;&#45;W1:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M188.25,-156C270.99,-156 249.51,-38 332.25,-38"/>
</g>
<!-- X2 -->
<g id="node2" class="node">
<g id="node3" class="node">
<title>X2</title>
<polygon fill="#ffffff" stroke="black" points="942.25,-220 754,-220 754,-3 942.25,-3 942.25,-220"/>
<polygon fill="none" stroke="black" points="754,-195.5 754,-220 942.25,-220 942.25,-195.5 754,-195.5"/>
@ -163,78 +178,93 @@
<polygon fill="none" stroke="black" points="754,-147 754,-171 792.81,-171 792.81,-147 754,-147"/>
<text text-anchor="start" x="769.28" y="-153.7" font-family="arial" font-size="14.00">1</text>
<polygon fill="none" stroke="black" points="792.81,-147 792.81,-171 854.62,-171 854.62,-147 792.81,-147"/>
<text text-anchor="start" x="807.97" y="-153.7" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="854.62,-147 854.62,-171 898.44,-171 898.44,-147 854.62,-147"/>
<text text-anchor="start" x="869.78" y="-154.72" font-family="Sans" font-size="12.00" fill="#000000"></text>
<polygon fill="none" stroke="black" points="898.44,-147 898.44,-171 942.25,-171 942.25,-147 898.44,-147"/>
<text text-anchor="start" x="807.96" y="-153.7" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="854.62,-147 854.62,-171 898.43,-171 898.43,-147 854.62,-147"/>
<text text-anchor="start" x="869.78" y="-154.73" font-family="Sans" font-size="12.00" fill="#000000"></text>
<polygon fill="none" stroke="black" points="898.43,-147 898.43,-171 942.25,-171 942.25,-147 898.43,-147"/>
<polygon fill="none" stroke="black" points="754,-123 754,-147 792.81,-147 792.81,-123 754,-123"/>
<text text-anchor="start" x="769.28" y="-129.7" font-family="arial" font-size="14.00">2</text>
<polygon fill="none" stroke="black" points="792.81,-123 792.81,-147 854.62,-147 854.62,-123 792.81,-123"/>
<text text-anchor="start" x="808.34" y="-129.7" font-family="arial" font-size="14.00">VCC</text>
<polygon fill="none" stroke="black" points="854.62,-123 854.62,-147 898.44,-147 898.44,-123 854.62,-123"/>
<polygon fill="none" stroke="black" points="898.44,-123 898.44,-147 942.25,-147 942.25,-123 898.44,-123"/>
<text text-anchor="start" x="913.59" y="-130.72" font-family="Sans" font-size="12.00" fill="#000000"></text>
<polygon fill="none" stroke="black" points="854.62,-123 854.62,-147 898.43,-147 898.43,-123 854.62,-123"/>
<polygon fill="none" stroke="black" points="898.43,-123 898.43,-147 942.25,-147 942.25,-123 898.43,-123"/>
<text text-anchor="start" x="913.59" y="-130.73" font-family="Sans" font-size="12.00" fill="#000000"></text>
<polygon fill="none" stroke="black" points="754,-99 754,-123 792.81,-123 792.81,-99 754,-99"/>
<text text-anchor="start" x="769.28" y="-105.7" font-family="arial" font-size="14.00">3</text>
<polygon fill="none" stroke="black" points="792.81,-99 792.81,-123 854.62,-123 854.62,-99 792.81,-99"/>
<text text-anchor="start" x="813.59" y="-105.7" font-family="arial" font-size="14.00">RX</text>
<polygon fill="none" stroke="black" points="854.62,-99 854.62,-123 898.44,-123 898.44,-99 854.62,-99"/>
<polygon fill="none" stroke="black" points="898.44,-99 898.44,-123 942.25,-123 942.25,-99 898.44,-99"/>
<polygon fill="none" stroke="black" points="854.62,-99 854.62,-123 898.43,-123 898.43,-99 854.62,-99"/>
<polygon fill="none" stroke="black" points="898.43,-99 898.43,-123 942.25,-123 942.25,-99 898.43,-99"/>
<polygon fill="none" stroke="black" points="754,-75 754,-99 792.81,-99 792.81,-75 754,-75"/>
<text text-anchor="start" x="769.28" y="-81.7" font-family="arial" font-size="14.00">4</text>
<polygon fill="none" stroke="black" points="792.81,-75 792.81,-99 854.62,-99 854.62,-75 792.81,-75"/>
<text text-anchor="start" x="814.34" y="-81.7" font-family="arial" font-size="14.00">TX</text>
<polygon fill="none" stroke="black" points="854.62,-75 854.62,-99 898.44,-99 898.44,-75 854.62,-75"/>
<polygon fill="none" stroke="black" points="898.44,-75 898.44,-99 942.25,-99 942.25,-75 898.44,-75"/>
<polygon fill="none" stroke="black" points="854.62,-75 854.62,-99 898.43,-99 898.43,-75 854.62,-75"/>
<polygon fill="none" stroke="black" points="898.43,-75 898.43,-99 942.25,-99 942.25,-75 898.43,-75"/>
<polygon fill="none" stroke="black" points="754,-51 754,-75 792.81,-75 792.81,-51 754,-51"/>
<text text-anchor="start" x="769.28" y="-57.7" font-family="arial" font-size="14.00">5</text>
<polygon fill="none" stroke="black" points="792.81,-51 792.81,-75 854.62,-75 854.62,-51 792.81,-51"/>
<text text-anchor="start" x="807.97" y="-57.7" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="854.62,-51 854.62,-75 898.44,-75 898.44,-51 854.62,-51"/>
<text text-anchor="start" x="807.96" y="-57.7" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="854.62,-51 854.62,-75 898.43,-75 898.43,-51 854.62,-51"/>
<text text-anchor="start" x="869.78" y="-58.73" font-family="Sans" font-size="12.00" fill="#000000"></text>
<polygon fill="none" stroke="black" points="898.44,-51 898.44,-75 942.25,-75 942.25,-51 898.44,-51"/>
<polygon fill="none" stroke="black" points="898.43,-51 898.43,-75 942.25,-75 942.25,-51 898.43,-51"/>
<polygon fill="none" stroke="black" points="754,-27 754,-51 792.81,-51 792.81,-27 754,-27"/>
<text text-anchor="start" x="769.28" y="-33.7" font-family="arial" font-size="14.00">6</text>
<polygon fill="none" stroke="black" points="792.81,-27 792.81,-51 854.62,-51 854.62,-27 792.81,-27"/>
<text text-anchor="start" x="808.34" y="-33.7" font-family="arial" font-size="14.00">VCC</text>
<polygon fill="none" stroke="black" points="854.62,-27 854.62,-51 898.44,-51 898.44,-27 854.62,-27"/>
<polygon fill="none" stroke="black" points="898.44,-27 898.44,-51 942.25,-51 942.25,-27 898.44,-27"/>
<polygon fill="none" stroke="black" points="854.62,-27 854.62,-51 898.43,-51 898.43,-27 854.62,-27"/>
<polygon fill="none" stroke="black" points="898.43,-27 898.43,-51 942.25,-51 942.25,-27 898.43,-27"/>
<text text-anchor="start" x="913.59" y="-34.73" font-family="Sans" font-size="12.00" fill="#000000"></text>
<polygon fill="none" stroke="black" points="754,-3 754,-27 792.81,-27 792.81,-3 754,-3"/>
<text text-anchor="start" x="769.28" y="-9.7" font-family="arial" font-size="14.00">7</text>
<polygon fill="none" stroke="black" points="792.81,-3 792.81,-27 854.62,-27 854.62,-3 792.81,-3"/>
<text text-anchor="start" x="807.97" y="-9.7" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="854.62,-3 854.62,-27 898.44,-27 898.44,-3 854.62,-3"/>
<text text-anchor="start" x="869.78" y="-10.72" font-family="Sans" font-size="12.00" fill="#000000"></text>
<polygon fill="none" stroke="black" points="898.44,-3 898.44,-27 942.25,-27 942.25,-3 898.44,-3"/>
<text text-anchor="start" x="807.96" y="-9.7" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="854.62,-3 854.62,-27 898.43,-27 898.43,-3 854.62,-3"/>
<text text-anchor="start" x="869.78" y="-10.73" font-family="Sans" font-size="12.00" fill="#000000"></text>
<polygon fill="none" stroke="black" points="898.43,-3 898.43,-27 942.25,-27 942.25,-3 898.43,-3"/>
</g>
<!-- W1&#45;&#45;X2 -->
<g id="edge2" class="edge">
<g id="edge9" class="edge">
<title>W1:e&#45;&#45;X2:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-158C673.88,-158 689.87,-157 754,-157"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-158C673.88,-158 689.88,-157 754,-157"/>
<path fill="none" stroke="#895956" stroke-width="2" d="M610,-160C674,-160 690,-159 754,-159"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-162C674.13,-162 690.12,-161 754,-161"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-162C674.13,-162 690.13,-161 754,-161"/>
</g>
<!-- W1&#45;&#45;X2 -->
<g id="edge4" class="edge">
<g id="edge10" class="edge">
<title>W1:e&#45;&#45;X2:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-132C674.13,-132 690.12,-133 754,-133"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-132C674.13,-132 690.13,-133 754,-133"/>
<path fill="none" stroke="#ff0000" stroke-width="2" d="M610,-134C674,-134 690,-135 754,-135"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-136C673.88,-136 689.87,-137 754,-137"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-136C673.88,-136 689.88,-137 754,-137"/>
</g>
<!-- W1&#45;&#45;X2 -->
<g id="edge6" class="edge">
<g id="edge11" class="edge">
<title>W1:e&#45;&#45;X2:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-106C673.04,-106.86 687.68,-85.86 754,-85"/>
<path fill="none" stroke="#ff8000" stroke-width="2" d="M610,-108C674.68,-108 689.32,-87 754,-87"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-110C676.32,-109.14 690.96,-88.14 754,-89"/>
</g>
<!-- W1&#45;&#45;X2 -->
<g id="edge8" class="edge">
<g id="edge12" class="edge">
<title>W1:e&#45;&#45;X2:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-80C677.1,-81.16 690.53,-110.16 754,-109"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-80C677.1,-81.16 690.54,-110.16 754,-109"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M610,-82C675.28,-82 688.72,-111 754,-111"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-84C673.47,-82.84 686.9,-111.84 754,-113"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M610,-84C673.47,-82.84 686.91,-111.84 754,-113"/>
</g>
<!-- X2&#45;&#45;X2 -->
<g id="edge13" class="edge">
<title>X2:c&#45;&#45;X2:c</title>
<path fill="none" stroke="#000000" stroke-dasharray="5,2" d="M876.53,-159C876.53,-159 876.53,-63 876.53,-63"/>
</g>
<!-- X2&#45;&#45;X2 -->
<g id="edge14" class="edge">
<title>X2:c&#45;&#45;X2:c</title>
<path fill="none" stroke="#000000" stroke-dasharray="5,2" d="M876.53,-63C876.53,-63 876.53,-15 876.53,-15"/>
</g>
<!-- X2&#45;&#45;X2 -->
<g id="edge15" class="edge">
<title>X2:c&#45;&#45;X2:c</title>
<path fill="none" stroke="#000000" stroke-dasharray="5,2" d="M920.34,-135C920.34,-135 920.34,-39 920.34,-39"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 21 KiB

252
examples/ex15.tmp Normal file
View File

@ -0,0 +1,252 @@
graph {
// Graph generated by WireViz 0.5-dev
// https://github.com/formatc1702/WireViz
graph [bgcolor="#FFFFFF" fontname=arial nodesep=0.33 rankdir=LR ranksep=2]
node [fillcolor="#FFFFFF" fontname=arial height=0 margin=0 shape=none style=filled width=0]
edge [fontname=arial style=bold]
edge [color="#FF66CC" headclip=false style=dashed tailclip=false]
X1:p1j:c -- X1:p5j:c [straight=straight]
X1:p5j:c -- X1:p7j:c [straight=straight]
edge [color="#FF0000" headclip=false style=dashed tailclip=false]
X1:p2j:c -- X1:p6j:c [straight=straight]
edge [headclip=true style=bold tailclip=true]
X1 [label=<
<table border="0" cellspacing="0" cellpadding="0">
<tr><td>
<table border="0" cellspacing="0" cellpadding="3" cellborder="1"><tr>
<td balign="left">X1</td>
</tr></table>
</td></tr>
<tr><td>
<table border="0" cellspacing="0" cellpadding="3" cellborder="1"><tr>
<td balign="left">Molex KK 254</td>
<td balign="left">female</td>
<td balign="left">7-pin</td>
</tr></table>
</td></tr>
<tr><td>
<table border="0" cellspacing="0" cellpadding="3" cellborder="1">
<tr>
<td>GND</td>
<td port="p1J"><FONT FACE="Sans" POINT-SIZE="12.0" COLOR="#FF66CC">&#11044;</FONT></td>
<td></td>
<td port="p1r">1</td>
</tr>
<tr>
<td>VCC</td>
<td></td>
<td port="p2J"><FONT FACE="Sans" POINT-SIZE="12.0" COLOR="#FF0000">&#11044;</FONT></td>
<td port="p2r">2</td>
</tr>
<tr>
<td>RX</td>
<td></td>
<td></td>
<td port="p3r">3</td>
</tr>
<tr>
<td>TX</td>
<td></td>
<td></td>
<td port="p4r">4</td>
</tr>
<tr>
<td>GND</td>
<td port="p5J"><FONT FACE="Sans" POINT-SIZE="12.0" COLOR="#FF66CC">&#11044;</FONT></td>
<td></td>
<td port="p5r">5</td>
</tr>
<tr>
<td>VCC</td>
<td></td>
<td port="p6J"><FONT FACE="Sans" POINT-SIZE="12.0" COLOR="#FF0000">&#11044;</FONT></td>
<td port="p6r">6</td>
</tr>
<tr>
<td>GND</td>
<td port="p7J"><FONT FACE="Sans" POINT-SIZE="12.0" COLOR="#FF66CC">&#11044;</FONT></td>
<td></td>
<td port="p7r">7</td>
</tr>
</table>
</td></tr>
</table>
> fillcolor="#FFFFFF" shape=box style=filled]
edge [color="#000000" headclip=false style=dashed tailclip=false]
X2:p1j:c -- X2:p5j:c [straight=straight]
X2:p5j:c -- X2:p7j:c [straight=straight]
edge [color="#000000" headclip=false style=dashed tailclip=false]
X2:p2j:c -- X2:p6j:c [straight=straight]
edge [headclip=true style=bold tailclip=true]
X2 [label=<
<table border="0" cellspacing="0" cellpadding="0">
<tr><td>
<table border="0" cellspacing="0" cellpadding="3" cellborder="1"><tr>
<td balign="left">X2</td>
</tr></table>
</td></tr>
<tr><td>
<table border="0" cellspacing="0" cellpadding="3" cellborder="1"><tr>
<td balign="left">Molex KK 254</td>
<td balign="left">female</td>
<td balign="left">7-pin</td>
</tr></table>
</td></tr>
<tr><td>
<table border="0" cellspacing="0" cellpadding="3" cellborder="1">
<tr>
<td port="p1l">1</td>
<td>GND</td>
<td port="p1J"><FONT FACE="Sans" POINT-SIZE="12.0" COLOR="#000000">&#11044;</FONT></td>
<td></td>
</tr>
<tr>
<td port="p2l">2</td>
<td>VCC</td>
<td></td>
<td port="p2J"><FONT FACE="Sans" POINT-SIZE="12.0" COLOR="#000000">&#11044;</FONT></td>
</tr>
<tr>
<td port="p3l">3</td>
<td>RX</td>
<td></td>
<td></td>
</tr>
<tr>
<td port="p4l">4</td>
<td>TX</td>
<td></td>
<td></td>
</tr>
<tr>
<td port="p5l">5</td>
<td>GND</td>
<td port="p5J"><FONT FACE="Sans" POINT-SIZE="12.0" COLOR="#000000">&#11044;</FONT></td>
<td></td>
</tr>
<tr>
<td port="p6l">6</td>
<td>VCC</td>
<td></td>
<td port="p6J"><FONT FACE="Sans" POINT-SIZE="12.0" COLOR="#000000">&#11044;</FONT></td>
</tr>
<tr>
<td port="p7l">7</td>
<td>GND</td>
<td port="p7J"><FONT FACE="Sans" POINT-SIZE="12.0" COLOR="#000000">&#11044;</FONT></td>
<td></td>
</tr>
</table>
</td></tr>
</table>
> fillcolor="#FFFFFF" shape=box style=filled]
edge [color="#000000:#895956:#000000"]
X1:p1r:e -- W1:w1:w
W1:w1:e -- X2:p1l:w
edge [color="#000000:#ff0000:#000000"]
X1:p2r:e -- W1:w2:w
W1:w2:e -- X2:p2l:w
edge [color="#000000:#ff8000:#000000"]
X1:p3r:e -- W1:w3:w
W1:w3:e -- X2:p4l:w
edge [color="#000000:#ffff00:#000000"]
X1:p4r:e -- W1:w4:w
W1:w4:e -- X2:p3l:w
edge [color="#000000"]
X1:p1r:e -- W1:ws:w
W1 [label=<
<table border="0" cellspacing="0" cellpadding="0">
<tr><td>
<table border="0" cellspacing="0" cellpadding="3" cellborder="1"><tr>
<td balign="left">W1</td>
</tr></table>
</td></tr>
<tr><td>
<table border="0" cellspacing="0" cellpadding="3" cellborder="1"><tr>
<td balign="left">Serial</td>
<td balign="left">4x</td>
<td balign="left">0.25 mm² (24 AWG)</td>
<td balign="left">+ S</td>
<td balign="left">0.2 m</td>
</tr></table>
</td></tr>
<tr><td>
<table border="0" cellspacing="0" cellborder="0">
<tr><td>&nbsp;</td></tr>
<tr>
<td>X1:1:GND</td>
<td>
1:BN
</td>
<td>X2:1:GND</td>
</tr>
<tr>
<td colspan="3" border="0" cellspacing="0" cellpadding="0" port="w1" height="6">
<table cellspacing="0" cellborder="0" border="0">
<tr><td colspan="3" cellpadding="0" height="2" bgcolor="#000000" border="0"></td></tr>
<tr><td colspan="3" cellpadding="0" height="2" bgcolor="#895956" border="0"></td></tr>
<tr><td colspan="3" cellpadding="0" height="2" bgcolor="#000000" border="0"></td></tr>
</table>
</td>
</tr>
<tr>
<td>X1:2:VCC</td>
<td>
2:RD
</td>
<td>X2:2:VCC</td>
</tr>
<tr>
<td colspan="3" border="0" cellspacing="0" cellpadding="0" port="w2" height="6">
<table cellspacing="0" cellborder="0" border="0">
<tr><td colspan="3" cellpadding="0" height="2" bgcolor="#000000" border="0"></td></tr>
<tr><td colspan="3" cellpadding="0" height="2" bgcolor="#ff0000" border="0"></td></tr>
<tr><td colspan="3" cellpadding="0" height="2" bgcolor="#000000" border="0"></td></tr>
</table>
</td>
</tr>
<tr>
<td>X1:3:RX</td>
<td>
3:OG
</td>
<td>X2:4:TX</td>
</tr>
<tr>
<td colspan="3" border="0" cellspacing="0" cellpadding="0" port="w3" height="6">
<table cellspacing="0" cellborder="0" border="0">
<tr><td colspan="3" cellpadding="0" height="2" bgcolor="#000000" border="0"></td></tr>
<tr><td colspan="3" cellpadding="0" height="2" bgcolor="#ff8000" border="0"></td></tr>
<tr><td colspan="3" cellpadding="0" height="2" bgcolor="#000000" border="0"></td></tr>
</table>
</td>
</tr>
<tr>
<td>X1:4:TX</td>
<td>
4:YE
</td>
<td>X2:3:RX</td>
</tr>
<tr>
<td colspan="3" border="0" cellspacing="0" cellpadding="0" port="w4" height="6">
<table cellspacing="0" cellborder="0" border="0">
<tr><td colspan="3" cellpadding="0" height="2" bgcolor="#000000" border="0"></td></tr>
<tr><td colspan="3" cellpadding="0" height="2" bgcolor="#ffff00" border="0"></td></tr>
<tr><td colspan="3" cellpadding="0" height="2" bgcolor="#000000" border="0"></td></tr>
</table>
</td>
</tr>
<tr><td>&nbsp;</td></tr>
<tr>
<td>X1:1:GND</td>
<td>Shield</td>
<td><!-- s_out --></td>
</tr>
<tr><td colspan="3" cellpadding="0" height="2" bgcolor="#000000" border="0" port="ws"></td></tr>
<tr><td>&nbsp;</td></tr>
</table>
</td></tr>
</table>
> fillcolor="#FFFFFF" shape=box style=filled]
}

View File

@ -1,5 +1,6 @@
# -*- coding: utf-8 -*-
import os
import re
from collections import Counter
from dataclasses import dataclass
@ -269,11 +270,17 @@ class Harness:
]
for short, short_color in zip_longest(connector.internal_shorts, connector.internal_shorts_color):
print("Short_connections: " + str(short) + str(short_color))
if short_color == None:
short_color = "BK"
# TODO adding dashed Line for Jumpers
dot.attr("edge", color=str(wv_colors.translate_color(short_color, "HEX")), headclip="false", tailclip="false", style="dashed")
for i in range(1, len(short)):
dot.edge(
f"{connector.name}:p{short[i - 1]}j:c",
f"{connector.name}:p{short[i]}j:c",
straight="straight"
)
dot.attr("edge", headclip="true", tailclip="true", style="bold")
html = "\n".join(html)
dot.node(
@ -664,6 +671,12 @@ class Harness:
# do not access directly, use self.graph instead
_graph = None
# This renders the graph with gvpr and neato, this is needed to be able to draw the stright lines for the jumpers
def graphRender(self, type, filename, graph):
graph.save(filename=f"{filename}_tmp.gv")
os.system(f"dot {filename}_tmp.gv | gvpr -q -cf pin2pin.gvpr | neato -n2 -T{type} -o {filename}.{type}")
os.remove(f"{filename}_tmp.gv")
@property
def graph(self):
if not self._graph: # no cached graph exists, generate one
@ -688,8 +701,6 @@ class Harness:
def output(
self,
filename: (str, Path),
view: bool = False,
cleanup: bool = True,
fmt: tuple = ("html", "png", "svg", "tsv"),
) -> None:
# graphical output
@ -706,7 +717,8 @@ class Harness:
_filename = f"{filename}.tmp" if f == "svg" else filename
# TODO: prevent rendering SVG twice when both SVG and HTML are specified
graph.format = f
graph.render(filename=_filename, view=view, cleanup=cleanup)
# graph.render(filename=_filename) # old rendering methode, befor jumper implementations
self.graphRender(f, _filename, graph)
# embed images into SVG output
if "svg" in fmt or "html" in fmt:
embed_svg_images_file(f"{filename}.tmp.svg")

28
src/wireviz/pin2pin.gvpr Normal file
View File

@ -0,0 +1,28 @@
/*******************************************************************
see https://forum.graphviz.org/t/straitening-one-line-throu-a-table/2196
input must include pos values (must be output from one of the engines w/ -Tdot)
*******************************************************************/
BEG_G{
string tok[int];
int cnt;
/***************************************
$G.bb="";
$G.nodesep="";
$G.ranksep="";
$G.splines="true";
****************************************/
}
/********************************************************
the weakness is in the head==tail test
it would be better to mark every target edge with a new attribute and test for that attribute
*********************************************************/
E[straight] {
cnt=tokens($.pos,tok," ");
$.oldpos=$.pos;
pos=tok[0]+" " + tok[0]+" "+tok[cnt-1]+" "+tok[cnt-1];
$.label=""; // remove pesky label
$.lp=""; // remove peskier label pos
}

View File

@ -377,7 +377,7 @@ def parse(
harness.add_bom_item(line)
if output_formats:
harness.output(filename=output_file, fmt=output_formats, view=False)
harness.output(filename=output_file, fmt=output_formats)
if return_types:
returns = []

166
tutorial/tutorial01 Normal file
View File

@ -0,0 +1,166 @@
graph {
// Graph generated by WireViz 0.5-dev
// https://github.com/formatc1702/WireViz
graph [bgcolor="#FFFFFF" fontname=arial nodesep=0.33 rankdir=LR ranksep=2]
node [fillcolor="#FFFFFF" fontname=arial height=0 margin=0 shape=none style=filled width=0]
edge [fontname=arial style=bold]
edge [headclip=true style=bold tailclip=true]
X1 [label=<
<table border="0" cellspacing="0" cellpadding="0">
<tr><td>
<table border="0" cellspacing="0" cellpadding="3" cellborder="1"><tr>
<td balign="left">X1</td>
</tr></table>
</td></tr>
<tr><td>
<table border="0" cellspacing="0" cellpadding="3" cellborder="1"><tr>
<td balign="left">4-pin</td>
</tr></table>
</td></tr>
<tr><td>
<table border="0" cellspacing="0" cellpadding="3" cellborder="1">
<tr>
<td port="p1r">1</td>
</tr>
<tr>
<td port="p2r">2</td>
</tr>
<tr>
<td port="p3r">3</td>
</tr>
<tr>
<td port="p4r">4</td>
</tr>
</table>
</td></tr>
</table>
> fillcolor="#FFFFFF" shape=box style=filled]
edge [headclip=true style=bold tailclip=true]
X2 [label=<
<table border="0" cellspacing="0" cellpadding="0">
<tr><td>
<table border="0" cellspacing="0" cellpadding="3" cellborder="1"><tr>
<td balign="left">X2</td>
</tr></table>
</td></tr>
<tr><td>
<table border="0" cellspacing="0" cellpadding="3" cellborder="1"><tr>
<td balign="left">4-pin</td>
</tr></table>
</td></tr>
<tr><td>
<table border="0" cellspacing="0" cellpadding="3" cellborder="1">
<tr>
<td port="p1l">1</td>
</tr>
<tr>
<td port="p2l">2</td>
</tr>
<tr>
<td port="p3l">3</td>
</tr>
<tr>
<td port="p4l">4</td>
</tr>
</table>
</td></tr>
</table>
> fillcolor="#FFFFFF" shape=box style=filled]
edge [color="#000000:#ffffff:#000000"]
X1:p1r:e -- W1:w1:w
W1:w1:e -- X2:p1l:w
edge [color="#000000:#ffffff:#000000"]
X1:p2r:e -- W1:w2:w
W1:w2:e -- X2:p2l:w
edge [color="#000000:#ffffff:#000000"]
X1:p3r:e -- W1:w3:w
W1:w3:e -- X2:p3l:w
edge [color="#000000:#ffffff:#000000"]
X1:p4r:e -- W1:w4:w
W1:w4:e -- X2:p4l:w
W1 [label=<
<table border="0" cellspacing="0" cellpadding="0">
<tr><td>
<table border="0" cellspacing="0" cellpadding="3" cellborder="1"><tr>
<td balign="left">W1</td>
</tr></table>
</td></tr>
<tr><td>
<table border="0" cellspacing="0" cellpadding="3" cellborder="1"><tr>
<td balign="left">4x</td>
<td balign="left">1 m</td>
</tr></table>
</td></tr>
<tr><td>
<table border="0" cellspacing="0" cellborder="0">
<tr><td>&nbsp;</td></tr>
<tr>
<td>X1:1</td>
<td>
1
</td>
<td>X2:1</td>
</tr>
<tr>
<td colspan="3" border="0" cellspacing="0" cellpadding="0" port="w1" height="6">
<table cellspacing="0" cellborder="0" border="0">
<tr><td colspan="3" cellpadding="0" height="2" bgcolor="#000000" border="0"></td></tr>
<tr><td colspan="3" cellpadding="0" height="2" bgcolor="#ffffff" border="0"></td></tr>
<tr><td colspan="3" cellpadding="0" height="2" bgcolor="#000000" border="0"></td></tr>
</table>
</td>
</tr>
<tr>
<td>X1:2</td>
<td>
2
</td>
<td>X2:2</td>
</tr>
<tr>
<td colspan="3" border="0" cellspacing="0" cellpadding="0" port="w2" height="6">
<table cellspacing="0" cellborder="0" border="0">
<tr><td colspan="3" cellpadding="0" height="2" bgcolor="#000000" border="0"></td></tr>
<tr><td colspan="3" cellpadding="0" height="2" bgcolor="#ffffff" border="0"></td></tr>
<tr><td colspan="3" cellpadding="0" height="2" bgcolor="#000000" border="0"></td></tr>
</table>
</td>
</tr>
<tr>
<td>X1:3</td>
<td>
3
</td>
<td>X2:3</td>
</tr>
<tr>
<td colspan="3" border="0" cellspacing="0" cellpadding="0" port="w3" height="6">
<table cellspacing="0" cellborder="0" border="0">
<tr><td colspan="3" cellpadding="0" height="2" bgcolor="#000000" border="0"></td></tr>
<tr><td colspan="3" cellpadding="0" height="2" bgcolor="#ffffff" border="0"></td></tr>
<tr><td colspan="3" cellpadding="0" height="2" bgcolor="#000000" border="0"></td></tr>
</table>
</td>
</tr>
<tr>
<td>X1:4</td>
<td>
4
</td>
<td>X2:4</td>
</tr>
<tr>
<td colspan="3" border="0" cellspacing="0" cellpadding="0" port="w4" height="6">
<table cellspacing="0" cellborder="0" border="0">
<tr><td colspan="3" cellpadding="0" height="2" bgcolor="#000000" border="0"></td></tr>
<tr><td colspan="3" cellpadding="0" height="2" bgcolor="#ffffff" border="0"></td></tr>
<tr><td colspan="3" cellpadding="0" height="2" bgcolor="#000000" border="0"></td></tr>
</table>
</td>
</tr>
<tr><td>&nbsp;</td></tr>
</table>
</td></tr>
</table>
> fillcolor="#FFFFFF" shape=box style=filled]
}