Timeline: rearrange drawing in accordance to construction

...since the construction is determined now (and was worked out in FreeCAD),
the SVG will serve to document the construction; thus the drawing
primitives are rearranged to use the unscaled reference coordinates
to be extracted from the FreeCAD document; all scaling and placement
in the SVG document will be applied through common groups.
This commit is contained in:
Fischlurch 2023-02-25 15:32:35 +01:00
parent 3ad5eaa9ba
commit ef4401a185
2 changed files with 161 additions and 100 deletions

View file

@ -27,9 +27,9 @@
borderopacity="1.0" borderopacity="1.0"
inkscape:pageopacity="0.0" inkscape:pageopacity="0.0"
inkscape:pageshadow="2" inkscape:pageshadow="2"
inkscape:zoom="4.4873333" inkscape:zoom="2.2436667"
inkscape:cx="54.880443" inkscape:cx="30.664941"
inkscape:cy="362.36907" inkscape:cy="361.12572"
inkscape:document-units="mm" inkscape:document-units="mm"
inkscape:current-layer="svg8" inkscape:current-layer="svg8"
showgrid="true" showgrid="true"
@ -94,100 +94,146 @@
<g <g
inkscape:label="Drawing:Bracket" inkscape:label="Drawing:Bracket"
inkscape:groupmode="layer" inkscape:groupmode="layer"
id="layer1" /> id="layer1">
<rect
style="fill:none;stroke:teal;stroke-width:0.1"
id="rect821"
width="10"
height="10"
x="77"
y="61" />
<g
id="phi_pos"
transform="translate(20,50)">
<g
id="phi">
<rect
id="phiMaj"
y="0"
x="0"
height="10"
width="10"
style="fill:none;stroke:teal;stroke-width:0.1" />
<rect
id="phiMin"
y="0"
x="0"
height="6.1803398"
width="6.1803398"
style="fill:none;stroke:teal;stroke-width:0.1" />
<rect
id="phiMinI"
y="3.8196602"
x="3.8196602"
height="6.1803398"
width="6.1803398"
style="fill:none;stroke:teal;stroke-width:0.1" />
<text
id="phisym"
x="3.8193359"
y="6.0935059"
style="font-size:3px;font-family:Sans;fill:teal;stroke:none"
xml:space="preserve"><tspan
id="phispan"
sodipodi:role="line"
x="3.8193359"
y="6.0935059">Φ</tspan></text>
</g>
</g>
</g>
<g <g
inkscape:groupmode="layer" inkscape:groupmode="layer"
id="layer2" id="layer2"
inkscape:label="Construction" /> inkscape:label="Construction" >
<rect
style="fill:none;stroke:teal;stroke-width:0.1"
id="rect821"
width="10"
height="10"
x="77"
y="61" />
<g
id="phi_pos"
transform="translate(20,50)">
<g <g
id="phi"> id="r_trans">
<rect <g
id="phiMaj" id="r_ref"
y="0" style="fill:none;stroke:teal;stroke-width:0.1">
x="0" <g
height="10" id="r_dubline">
width="10" <rect
style="fill:none;stroke:teal;stroke-width:0.1" /> style="fill:none;stroke:teal;stroke-width:0.1"
<rect id="r_bar"
id="phiMin" width="3.8196602"
y="0" height="30"
x="0" x="0"
height="6.1803398" y="0" />
width="6.1803398" <rect
style="fill:none;stroke:teal;stroke-width:0.1" /> style="fill:none;stroke:teal;stroke-width:0.1"
<rect id="r_vline"
id="phiMinI" width="10"
y="3.8196602" height="30"
x="3.8196602" x="0"
height="6.1803398" y="0" />
width="6.1803398" </g>
style="fill:none;stroke:teal;stroke-width:0.1" /> <g
<text id="r_mainsquare"
id="phisym" transform="matrix(2.6180339,0,0,2.6180339,0,-26.180339)"
x="3.8193359" style="stroke-width:0.0381966">
y="6.0935059" <rect
style="font-size:3px;font-family:Sans;fill:teal;stroke:none" id="r_square"
xml:space="preserve"><tspan y="0"
id="phispan" x="0"
sodipodi:role="line" height="10"
x="3.8193359" width="10" />
y="6.0935059">Φ</tspan></text> <rect
</g> id="r_sq_min_nw"
</g> y="0"
<g x="0"
id="r_dubline"> height="6.1803398"
<rect width="6.1803398" />
style="fill:none;stroke:teal;stroke-width:0.1" <rect
id="r_bar" id="r_sq_min_se"
width="3.8196602" y="3.8196602"
height="30" x="3.8196602"
x="0" height="6.1803398"
y="0" /> width="6.1803398" />
<rect </g>
style="fill:none;stroke:teal;stroke-width:0.1" <g
id="r_vline" id="r_construct">
width="10" <path
height="30" id="r_diagonal"
x="0" inkscape:connector-curvature="0"
y="0" /> d="M 0,0 26,-26" />
</g> <path
<g id="r_dia_se"
id="r_mainsquare" inkscape:connector-curvature="0"
transform="matrix(2.6180339,0,0,2.6180339,0,0)" d="M 10,0 26,-26" />
style="stroke-width:0.0381966"> <path
<g id="r_dia_nw"
id="g847"> inkscape:connector-curvature="0"
<rect d="M 0,-10 26,-26" />
style="fill:none;stroke:teal" <path
width="10" id="r_bisec_in"
height="10" inkscape:connector-curvature="0"
x="0" d="M 13,-19 -9,-56" />
y="0" <path
id="rect837" /> id="r_bisec_out"
<rect inkscape:connector-curvature="0"
style="fill:none;stroke:teal" d="M 13,-14 -20,-49" />
width="6.1803398" <path
height="6.1803398" id="r_arc_out"
x="0" sodipodi:type="arc"
y="0" sodipodi:cy="-49"
id="rect839" /> sodipodi:cx="-20"
<rect sodipodi:ry="53"
style="fill:none;stroke:teal" sodipodi:rx="53"
width="6.1803398" sodipodi:start="0.44429177"
height="6.1803398" sodipodi:end="1.2085032"
x="3.8196602" d="M 27.854511,-26.219619 A 53,53 0 0 1 -1.2157699,0.55958737 L -20,-49 Z" />
y="3.8196602" <path
id="rect841" /> id="r_arc_in"
sodipodi:type="arc"
sodipodi:cy="-56"
sodipodi:cx="-9"
sodipodi:ry="48"
sodipodi:rx="48"
sodipodi:start="0.70190517"
sodipodi:end="1.3988087"
d="M 27.653446,-25.007664 A 48,48 0 0 1 -0.78523256,-8.7081657 L -9,-56 Z" />
</g>
</g>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 5.1 KiB

After

Width:  |  Height:  |  Size: 6.8 KiB

View file

@ -28399,8 +28399,7 @@
Die Geometrie-Elemente in den Sketch-Objekten sind eine Spezial-Implementierung, und keine &#187;first class citizens&#171;. Es ist nicht klar, wie man sie aus Expressions referenzieren kann (kein sauberes DSL-Design). Das Dependency-Management ist viel zu naiv implementiert, und es wird empfohlen, mit Tricks und Kniffen zu arbeiten. Die Geometrie-Elemente in den Sketch-Objekten sind eine Spezial-Implementierung, und keine &#187;first class citizens&#171;. Es ist nicht klar, wie man sie aus Expressions referenzieren kann (kein sauberes DSL-Design). Das Dependency-Management ist viel zu naiv implementiert, und es wird empfohlen, mit Tricks und Kniffen zu arbeiten.
</p> </p>
</body> </body>
</html> </html></richcontent>
</richcontent>
</node> </node>
<node CREATED="1677284865478" ID="ID_1467561719" MODIFIED="1677285153626" TEXT="Contstraints und Expressions sind noch nicht vollst&#xe4;ndig entwickelt"> <node CREATED="1677284865478" ID="ID_1467561719" MODIFIED="1677285153626" TEXT="Contstraints und Expressions sind noch nicht vollst&#xe4;ndig entwickelt">
<richcontent TYPE="NOTE"><html> <richcontent TYPE="NOTE"><html>
@ -28412,8 +28411,7 @@
Eine Funktion, um eine Linie gem&#228;&#223; Proportion zu teilen, wird zwar oft gew&#252;nscht, ist aber derzeit (2022) noch in Entwicklung. Daher kann man im Moment nur eine feste Basisl&#228;nge als benannter Constraint vorgeben, und dann andere L&#228;ngen per Expression <font face="Monospaced" color="#1418c4">=Constraint.basis * (1+sqrt(5)/2</font>&#160;&#160;daran binden. Au&#223;erdem kann man solche Expressions zwar einmal initial eigeben, dann aber nur noch &#252;ber das XML editieren. Eine Funktion, um eine Linie gem&#228;&#223; Proportion zu teilen, wird zwar oft gew&#252;nscht, ist aber derzeit (2022) noch in Entwicklung. Daher kann man im Moment nur eine feste Basisl&#228;nge als benannter Constraint vorgeben, und dann andere L&#228;ngen per Expression <font face="Monospaced" color="#1418c4">=Constraint.basis * (1+sqrt(5)/2</font>&#160;&#160;daran binden. Au&#223;erdem kann man solche Expressions zwar einmal initial eigeben, dann aber nur noch &#252;ber das XML editieren.
</p> </p>
</body> </body>
</html> </html></richcontent>
</richcontent>
<icon BUILTIN="broken-line"/> <icon BUILTIN="broken-line"/>
</node> </node>
<node CREATED="1677283111823" ID="ID_991289244" MODIFIED="1677283133867"> <node CREATED="1677283111823" ID="ID_991289244" MODIFIED="1677283133867">
@ -28475,16 +28473,33 @@
</node> </node>
<node CREATED="1677284059069" ID="ID_239372381" MODIFIED="1677284076170" TEXT="in diesem konkreten Fall brauche ich nur ein paar numerische Koordinaten"/> <node CREATED="1677284059069" ID="ID_239372381" MODIFIED="1677284076170" TEXT="in diesem konkreten Fall brauche ich nur ein paar numerische Koordinaten"/>
<node CREATED="1677284078398" ID="ID_314954569" MODIFIED="1677284135625" TEXT="die habe ich jetzt (manuell aus dem XML entnehmen)"> <node CREATED="1677284078398" ID="ID_314954569" MODIFIED="1677284135625" TEXT="die habe ich jetzt (manuell aus dem XML entnehmen)">
<arrowlink COLOR="#4e50ba" DESTINATION="ID_175092425" ENDARROW="Default" ENDINCLINATION="20;-39;" ID="Arrow_ID_1002715155" STARTARROW="None" STARTINCLINATION="-95;5;"/>
<linktarget COLOR="#d93353" DESTINATION="ID_314954569" ENDARROW="Default" ENDINCLINATION="229;0;" ID="Arrow_ID_1387442926" SOURCE="ID_178736804" STARTARROW="None" STARTINCLINATION="-193;12;"/> <linktarget COLOR="#d93353" DESTINATION="ID_314954569" ENDARROW="Default" ENDINCLINATION="229;0;" ID="Arrow_ID_1387442926" SOURCE="ID_178736804" STARTARROW="None" STARTINCLINATION="-193;12;"/>
</node> </node>
<node BACKGROUND_COLOR="#e0ceaa" COLOR="#690f14" CREATED="1677284093289" ID="ID_445049749" MODIFIED="1677284109270" TEXT="Fazit: keine generell brauchbare L&#xf6;sung"> <node BACKGROUND_COLOR="#e0ceaa" COLOR="#690f14" CREATED="1677284093289" ID="ID_445049749" MODIFIED="1677284109270" TEXT="Fazit: keine generell brauchbare L&#xf6;sung">
<icon BUILTIN="broken-line"/> <icon BUILTIN="broken-line"/>
</node> </node>
</node> </node>
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1677284189119" ID="ID_848175311" MODIFIED="1677284204214" TEXT="Dokumentation im SVG darstellen"> <node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1677331147847" ID="ID_175092425" MODIFIED="1677331206813" TEXT="ermittelte Koordinaten extrahieren">
<icon BUILTIN="flag-yellow"/> <linktarget COLOR="#4e50ba" DESTINATION="ID_175092425" ENDARROW="Default" ENDINCLINATION="20;-39;" ID="Arrow_ID_1002715155" SOURCE="ID_314954569" STARTARROW="None" STARTINCLINATION="-95;5;"/>
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1677285339149" ID="ID_622350527" MODIFIED="1677285395543" TEXT="manuell die Koordinaten ins SVG reinschreiben">
<icon BUILTIN="flag-yellow"/> <icon BUILTIN="flag-yellow"/>
<node CREATED="1677331237859" ID="ID_437122420" MODIFIED="1677332146589" TEXT="bezogen auf Linienweite == 1mm"/>
</node>
<node BACKGROUND_COLOR="#eef0c5" COLOR="#990000" CREATED="1677284189119" ID="ID_848175311" MODIFIED="1677336300812" TEXT="Dokumentation im SVG darstellen">
<icon BUILTIN="pencil"/>
<node BACKGROUND_COLOR="#eef0c5" COLOR="#990000" CREATED="1677285339149" ID="ID_622350527" MODIFIED="1677336296588" TEXT="manuell die Koordinaten ins SVG reinschreiben">
<icon BUILTIN="pencil"/>
<node COLOR="#338800" CREATED="1677336149759" ID="ID_436410709" MODIFIED="1677336194334" TEXT="Konstruktion vollst&#xe4;ndig anlegen">
<icon BUILTIN="button_ok"/>
</node>
<node COLOR="#338800" CREATED="1677336159392" ID="ID_721716534" MODIFIED="1677336193101" TEXT="Elemente im SVG konsistent reorganisieren">
<icon BUILTIN="button_ok"/>
<node COLOR="#435e98" CREATED="1677336199897" ID="ID_1876418381" MODIFIED="1677336290693" TEXT="Gruppe r_trans f&#xfc;r die Platzierung auf der Seite"/>
<node COLOR="#435e98" CREATED="1677336215871" ID="ID_142480272" MODIFIED="1677336290694" TEXT="Gruppe_r_ref umfa&#xdf;t die Konstruktion und tr&#xe4;gt den Style"/>
<node COLOR="#435e98" CREATED="1677336240060" ID="ID_1544427721" MODIFIED="1677336290694" TEXT="Gruppe r_rubline f&#xfc;r die vertikale Doppelline"/>
<node COLOR="#435e98" CREATED="1677336251555" ID="ID_595975745" MODIFIED="1677336290694" TEXT="Gruppe r_mainsquare f&#xfc;r das die Klammer umschliepende Quadrat"/>
<node COLOR="#435e98" CREATED="1677336274103" ID="ID_1407156022" MODIFIED="1677336290694" TEXT="Gruppe r_construct f&#xfc;r die Hilfskonstruktion"/>
</node>
</node> </node>
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1677285356443" ID="ID_1264869426" MODIFIED="1677285395543" TEXT="von diesen Eckpunkten ausgehend die Konstruktion rekonstruieren"> <node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1677285356443" ID="ID_1264869426" MODIFIED="1677285395543" TEXT="von diesen Eckpunkten ausgehend die Konstruktion rekonstruieren">
<icon BUILTIN="flag-yellow"/> <icon BUILTIN="flag-yellow"/>