condensed stl font

master
howard 2021-04-13 13:39:33 -07:00
parent 711d7f5499
commit fd2ea1d480
12 changed files with 704 additions and 74 deletions

View File

@ -23,17 +23,17 @@
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="10.270466"
inkscape:cx="-8.3938354"
inkscape:cy="-3.3545709"
inkscape:zoom="20.540932"
inkscape:cx="3.3726703"
inkscape:cy="-0.099609255"
inkscape:document-units="px"
inkscape:current-layer="layer1"
inkscape:document-rotation="0"
showgrid="false"
inkscape:window-width="1514"
inkscape:window-height="1199"
inkscape:window-x="254"
inkscape:window-y="48"
inkscape:window-x="1031"
inkscape:window-y="111"
inkscape:window-maximized="0"
units="px"
inkscape:snap-object-midpoints="true"
@ -47,7 +47,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
@ -56,34 +56,34 @@
inkscape:groupmode="layer"
id="layer1">
<path
style="fill:none;fill-opacity:0.7;stroke:#000000;stroke-width:1.5;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none"
style="fill:none;fill-opacity:0.7;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:none"
id="path1525"
sodipodi:type="arc"
sodipodi:cx="1.25"
sodipodi:cy="13.60833"
sodipodi:rx="13"
sodipodi:ry="13"
sodipodi:start="5.2359878"
sodipodi:end="0.0017453293"
sodipodi:cx="1.75"
sodipodi:cy="13.631019"
sodipodi:rx="12.5"
sodipodi:ry="12.5"
sodipodi:start="5.2879172"
sodipodi:end="6.1912839"
sodipodi:arc-type="arc"
d="M 7.75,2.3499995 A 13,13 0 0 1 14.24998,13.631019"
d="M 8.5534749,3.1447071 A 12.5,12.5 0 0 1 14.19725,12.483867"
sodipodi:open="true" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect1542-6"
width="2"
height="2"
x="0.75"
y="12.631019" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect1542-6-7"
width="2"
height="2"
x="6.75"
y="1.3499995" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect1542-6-5"
width="2"
height="2"

Before

Width:  |  Height:  |  Size: 2.9 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

View File

@ -0,0 +1,80 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="16"
height="16"
viewBox="0 0 16 16.000001"
version="1.1"
id="svg2112"
inkscape:version="1.0.2 (1.0.2+r75+1)"
sodipodi:docname="coincident.svg">
<defs
id="defs2106" />
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="19.921568"
inkscape:cx="1.0216501"
inkscape:cy="10.08649"
inkscape:document-units="px"
inkscape:current-layer="layer1"
inkscape:document-rotation="0"
showgrid="false"
inkscape:window-width="1514"
inkscape:window-height="964"
inkscape:window-x="749"
inkscape:window-y="270"
inkscape:window-maximized="0"
units="px"
inkscape:snap-object-midpoints="true"
inkscape:snap-text-baseline="true"
inkscape:snap-center="true" />
<metadata
id="metadata2109">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1">
<rect
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect1542-6-5-6-2"
width="2"
height="2"
x="7"
y="7" />
<path
style="fill:none;stroke:#000000;stroke-width:0.982777;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 1.8474908,14.153035 6.1524276,9.8474375"
id="path835"
sodipodi:nodetypes="cc" />
<path
style="fill:none;stroke:#000000;stroke-width:0.982777;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 9.8474908,6.1530346 14.152427,1.8474375"
id="path835-3"
sodipodi:nodetypes="cc" />
<path
style="fill:none;stroke:#000000;stroke-width:1.51049;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 10.033977,10.0341 3.932517,3.931609"
id="path895" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.7 KiB

View File

@ -0,0 +1,172 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="16"
height="16"
fill="currentColor"
class="bi bi-intersect"
viewBox="0 0 16 16"
version="1.1"
id="svg4"
sodipodi:docname="horizontal.svg"
inkscape:version="1.0.2 (1.0.2+r75+1)">
<metadata
id="metadata10">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<defs
id="defs8">
<marker
style="overflow:visible"
id="TriangleInS"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="TriangleInS"
inkscape:isstock="true">
<path
transform="scale(-0.2)"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1;fill:#000000;fill-opacity:1"
d="M 5.77,0.0 L -2.88,5.0 L -2.88,-5.0 L 5.77,0.0 z "
id="path2009" />
</marker>
<marker
style="overflow:visible"
id="marker2364"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="TriangleOutS"
inkscape:isstock="true">
<path
transform="scale(0.2)"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1;fill:#000000;fill-opacity:1"
d="M 5.77,0.0 L -2.88,5.0 L -2.88,-5.0 L 5.77,0.0 z "
id="path2362" />
</marker>
<marker
style="overflow:visible"
id="StopS"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="StopS"
inkscape:isstock="true">
<path
transform="scale(0.2)"
style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
d="M 0.0,5.65 L 0.0,-5.65"
id="path2045" />
</marker>
<marker
style="overflow:visible;"
id="marker2268"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="Arrow2Send"
inkscape:isstock="true">
<path
transform="scale(0.3) rotate(180) translate(-2.3,0)"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
id="path2266" />
</marker>
<marker
style="overflow:visible"
id="TriangleOutS"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="TriangleOutS"
inkscape:isstock="true">
<path
transform="scale(0.2)"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1;fill:#000000;fill-opacity:1"
d="M 5.77,0.0 L -2.88,5.0 L -2.88,-5.0 L 5.77,0.0 z "
id="path2018" />
</marker>
<marker
style="overflow:visible;"
id="Arrow2Send"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="Arrow2Send"
inkscape:isstock="true">
<path
transform="scale(0.3) rotate(180) translate(-2.3,0)"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
id="path1903" />
</marker>
<marker
style="overflow:visible;"
id="Arrow1Send"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="Arrow1Send"
inkscape:isstock="true">
<path
transform="scale(0.2) rotate(180) translate(6,0)"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1;fill:#000000;fill-opacity:1"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
id="path1885" />
</marker>
<marker
style="overflow:visible"
id="Arrow1Lstart"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="Arrow1Lstart"
inkscape:isstock="true">
<path
transform="scale(0.8) translate(12.5,0)"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1;fill:#000000;fill-opacity:1"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
id="path1870" />
</marker>
</defs>
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="2560"
inkscape:window-height="1403"
id="namedview6"
showgrid="false"
inkscape:zoom="21.968944"
inkscape:cx="7.977557"
inkscape:cy="3.1296366"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg4"
inkscape:document-rotation="0" />
<path
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 14.505901,8.0068089 1.5059005,7.9950069"
id="path913"
sodipodi:nodetypes="cc" />
</svg>

After

Width:  |  Height:  |  Size: 5.6 KiB

View File

@ -23,17 +23,17 @@
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="29.049263"
inkscape:cx="12.144995"
inkscape:zoom="19.921569"
inkscape:cx="1.0263926"
inkscape:cy="6.0925762"
inkscape:document-units="px"
inkscape:current-layer="layer1"
inkscape:document-rotation="0"
showgrid="false"
inkscape:window-width="1514"
inkscape:window-height="1199"
inkscape:window-x="603"
inkscape:window-y="114"
inkscape:window-height="964"
inkscape:window-x="963"
inkscape:window-y="314"
inkscape:window-maximized="0"
units="px"
inkscape:snap-object-midpoints="true"
@ -47,7 +47,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
@ -57,32 +57,32 @@
id="layer1">
<path
style="fill:none;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 2,14 5,8 h 6 l 3,-6"
d="m 2.5,13 2,-4 M 6,8 h 4 m 1.5,-1 2,-4"
id="path1710"
sodipodi:nodetypes="cccc" />
sodipodi:nodetypes="cccccc" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect1542-6-5-6"
width="2"
height="2"
x="1"
y="13" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect1542-6-5-6-2"
width="2"
height="2"
x="4"
y="7" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect1542-6-5-6-9"
width="2"
height="2"
x="10"
y="7" />
<rect
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect1542-6-5-6-1"
width="2"
height="2"

Before

Width:  |  Height:  |  Size: 2.9 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

70
icon/svgr_raw/stl.svg Normal file
View File

@ -0,0 +1,70 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="16"
height="16"
viewBox="0 0 16 16.000001"
version="1.1"
id="svg2112"
inkscape:version="1.0.2 (1.0.2+r75+1)"
sodipodi:docname="stl.svg">
<defs
id="defs2106" />
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="15.097379"
inkscape:cx="22.832759"
inkscape:cy="6.3103299"
inkscape:document-units="px"
inkscape:current-layer="layer1"
inkscape:document-rotation="0"
showgrid="false"
inkscape:window-width="1578"
inkscape:window-height="1199"
inkscape:window-x="978"
inkscape:window-y="186"
inkscape:window-maximized="0"
units="px"
inkscape:snap-object-midpoints="true"
inkscape:snap-text-baseline="true"
inkscape:snap-center="true" />
<metadata
id="metadata2109">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1">
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:12px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
x="0.53601015"
y="12.164"
id="text841-6"><tspan
sodipodi:role="line"
id="tspan839-3"
x="0.53601015"
y="12.164"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:12px;font-family:'Ubuntu Condensed';-inkscape-font-specification:'Ubuntu Condensed, '">STL</tspan></text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.2 KiB

172
icon/svgr_raw/vertical.svg Normal file
View File

@ -0,0 +1,172 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="16"
height="16"
fill="currentColor"
class="bi bi-intersect"
viewBox="0 0 16 16"
version="1.1"
id="svg4"
sodipodi:docname="vertical.svg"
inkscape:version="1.0.2 (1.0.2+r75+1)">
<metadata
id="metadata10">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<defs
id="defs8">
<marker
style="overflow:visible"
id="TriangleInS"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="TriangleInS"
inkscape:isstock="true">
<path
transform="scale(-0.2)"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1;fill:#000000;fill-opacity:1"
d="M 5.77,0.0 L -2.88,5.0 L -2.88,-5.0 L 5.77,0.0 z "
id="path2009" />
</marker>
<marker
style="overflow:visible"
id="marker2364"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="TriangleOutS"
inkscape:isstock="true">
<path
transform="scale(0.2)"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1;fill:#000000;fill-opacity:1"
d="M 5.77,0.0 L -2.88,5.0 L -2.88,-5.0 L 5.77,0.0 z "
id="path2362" />
</marker>
<marker
style="overflow:visible"
id="StopS"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="StopS"
inkscape:isstock="true">
<path
transform="scale(0.2)"
style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
d="M 0.0,5.65 L 0.0,-5.65"
id="path2045" />
</marker>
<marker
style="overflow:visible;"
id="marker2268"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="Arrow2Send"
inkscape:isstock="true">
<path
transform="scale(0.3) rotate(180) translate(-2.3,0)"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
id="path2266" />
</marker>
<marker
style="overflow:visible"
id="TriangleOutS"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="TriangleOutS"
inkscape:isstock="true">
<path
transform="scale(0.2)"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1;fill:#000000;fill-opacity:1"
d="M 5.77,0.0 L -2.88,5.0 L -2.88,-5.0 L 5.77,0.0 z "
id="path2018" />
</marker>
<marker
style="overflow:visible;"
id="Arrow2Send"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="Arrow2Send"
inkscape:isstock="true">
<path
transform="scale(0.3) rotate(180) translate(-2.3,0)"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
id="path1903" />
</marker>
<marker
style="overflow:visible;"
id="Arrow1Send"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="Arrow1Send"
inkscape:isstock="true">
<path
transform="scale(0.2) rotate(180) translate(6,0)"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1;fill:#000000;fill-opacity:1"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
id="path1885" />
</marker>
<marker
style="overflow:visible"
id="Arrow1Lstart"
refX="0.0"
refY="0.0"
orient="auto"
inkscape:stockid="Arrow1Lstart"
inkscape:isstock="true">
<path
transform="scale(0.8) translate(12.5,0)"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1;fill:#000000;fill-opacity:1"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
id="path1870" />
</marker>
</defs>
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="2560"
inkscape:window-height="1403"
id="namedview6"
showgrid="false"
inkscape:zoom="21.968944"
inkscape:cx="7.977557"
inkscape:cy="3.1296366"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg4"
inkscape:document-rotation="0" />
<path
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 8.0118016,1.5009078 7.9999996,14.500908"
id="path913"
sodipodi:nodetypes="cc" />
</svg>

After

Width:  |  Height:  |  Size: 5.6 KiB

View File

@ -225,7 +225,10 @@ class Sketch {
this.canvas.addEventListener('pointerdown', this.drawOnClick1)
this.mode = "point"
break;
case 'x':
case 'Delete':
this.deleteSelected()
break;
case 'Backspace':
this.deleteSelected()
break;
case ' ':

View File

@ -2,9 +2,7 @@ import {color} from './shared'
export async function setCoincident() {
let selection = await this.awaitSelection({ point: 2 }, { point: 1, line: 1 })
if (selection == null) return;
if (selection.every(e => e.userData.type == 'point')) {
this.constraints.set(++this.c_id,
[
@ -13,9 +11,7 @@ export async function setCoincident() {
]
)
} else {
const idx = selection[0].userData.type == 'point' ? [0, 1] : [1, 0]
this.constraints.set(++this.c_id,
[
'pt_on_line', -1,
@ -27,7 +23,6 @@ export async function setCoincident() {
selection[1].userData.constraints.push(this.c_id)
selection[0].userData.constraints.push(this.c_id)
this.updateOtherBuffers()
this.solve()
this.updateBoundingSpheres()

View File

@ -19,9 +19,6 @@ export async function drawDimension() {
let line, dimVal, constraint, dimType
if (selection.every(e => e.userData.type == 'line')) {
selection = await this.awaitSelection({ line: 2 })
if (selection == null) return;
line = new THREE.LineSegments(
new THREE.BufferGeometry().setAttribute('position',
new THREE.Float32BufferAttribute(Array((divisions + 2) * 2 * 3).fill(-0.001), 3)

View File

@ -8,14 +8,14 @@ function Arc(props) {
viewBox="0 0 16 16"
{...props}
>
<g stroke="currentColor" strokeLinecap="round">
<g stroke="currentColor">
<path
d="M7.75 2.35a13 13 0 016.5 11.281"
d="M8.553 3.145a12.5 12.5 0 015.644 9.339"
fill="none"
strokeWidth={1.5}
/>
<path
fill="#fff"
strokeLinecap="round"
d="M.75 12.631h2v2h-2zM6.75 1.35h2v2h-2zM13.25 12.631h2v2h-2z"
/>
</g>
@ -23,6 +23,28 @@ function Arc(props) {
);
}
function Coincident(props) {
return (
<svg
xmlns="http://www.w3.org/2000/svg"
width="1em"
height="1em"
viewBox="0 0 16 16"
{...props}
>
<g stroke="currentColor">
<path strokeLinecap="round" d="M7 7h2v2H7z" />
<path
d="M1.847 14.153l4.305-4.306M9.847 6.153l4.305-4.306"
fill="none"
strokeWidth={0.983}
/>
<path d="M10.034 10.034l3.932 3.932" fill="none" strokeWidth={1.51} />
</g>
</svg>
);
}
function Dimension(props) {
return (
<svg
@ -84,6 +106,27 @@ function Dimension(props) {
);
}
function Horizontal(props) {
return (
<svg
xmlns="http://www.w3.org/2000/svg"
width="1em"
height="1em"
fill="currentColor"
className="prefix__bi prefix__bi-intersect"
viewBox="0 0 16 16"
{...props}
>
<path
d="M14.506 8.007l-13-.012"
fill="none"
stroke="currentColor"
strokeWidth={2}
/>
</svg>
);
}
function Intersect(props) {
return (
<svg
@ -176,9 +219,8 @@ function Line(props) {
{...props}
>
<g stroke="currentColor">
<path d="M2 14l3-6h6l3-6" fill="none" strokeWidth={1.5} />
<path d="M2.5 13l2-4M6 8h4m1.5-1l2-4" fill="none" strokeWidth={1.5} />
<path
fill="#fff"
strokeLinecap="round"
d="M1 13h2v2H1zM4 7h2v2H4zM10 7h2v2h-2zM13 1h2v2h-2z"
/>
@ -187,6 +229,42 @@ function Line(props) {
);
}
function Stl(props) {
return (
<svg
xmlns="http://www.w3.org/2000/svg"
width="1em"
height="1em"
viewBox="0 0 16 16"
{...props}
>
<text
style={{
lineHeight: 1.25,
}}
x={0.536}
y={12.164}
fontWeight={400}
fontSize={12}
fontFamily="sans-serif"
letterSpacing={0}
wordSpacing={0}
>
<tspan
x={0.536}
y={12.164}
style={{
InkscapeFontSpecification: "'Ubuntu Condensed, '",
}}
fontFamily="Ubuntu Condensed"
>
{"STL"}
</tspan>
</text>
</svg>
);
}
function Subtract(props) {
return (
<svg
@ -319,4 +397,25 @@ function Union_thin(props) {
</svg>
);
}
export { Arc, Dimension, Intersect, Intersect_thin, Line, Subtract, Union, Union_thin };
function Vertical(props) {
return (
<svg
xmlns="http://www.w3.org/2000/svg"
width="1em"
height="1em"
fill="currentColor"
className="prefix__bi prefix__bi-intersect"
viewBox="0 0 16 16"
{...props}
>
<path
d="M8.012 1.5L8 14.5"
fill="none"
stroke="currentColor"
strokeWidth={2}
/>
</svg>
);
}
export { Arc, Coincident, Dimension, Horizontal, Intersect, Intersect_thin, Line, Stl, Subtract, Union, Union_thin, Vertical };

View File

@ -5,7 +5,7 @@ import React, { useEffect, useReducer } from 'react';
import { useDispatch, useSelector } from 'react-redux'
import { FaCube, FaEdit } from 'react-icons/fa'
import { MdDone } from 'react-icons/md'
import { MdDone, MdSave, MdFolder} from 'react-icons/md'
import * as Icon from "./icons";
@ -42,35 +42,52 @@ export const NavBar = () => {
const btnz = [
activeSketchId ?
[MdDone, () => {
treeEntries.byId[activeSketchId].deactivate()
// dispatch({ type: 'update-descendents', sketch})
sc.activeSketch = null
sc.render()
forceUpdate()
// sc.activeDim = this.activeSketch.obj3d.children[1].children
}, 'Finish'] :
[FaEdit, sc.addSketch, 'Sketch [s]']
,
[FaCube, extrude , 'Extrude [e]'],
[Icon.Union, ()=>boolOp('u'), 'Union'],
[Icon.Subtract, ()=>boolOp('s'), 'Subtract'],
[Icon.Intersect, ()=>boolOp('i'), 'Intersect'],
[MdDone, () => {
treeEntries.byId[activeSketchId].deactivate()
// dispatch({ type: 'update-descendents', sketch})
sc.activeSketch = null
sc.render()
forceUpdate()
// sc.activeDim = this.activeSketch.obj3d.children[1].children
}, 'Finish'],
[FaCube, extrude, 'Extrude [e]'],
[Icon.Dimension, () => sc.extrude(treeEntries.byId[activeSketchId]), 'Dimension [d]'],
[Icon.Line, () => sc.extrude(treeEntries.byId[activeSketchId]), 'Line [l]'],
[Icon.Arc, () => sc.extrude(treeEntries.byId[activeSketchId]), 'Arc [a]'],
[Icon.Coincident, () => sc.extrude(treeEntries.byId[activeSketchId]), 'Arc [a]'],
[Icon.Vertical, () => sc.extrude(treeEntries.byId[activeSketchId]), 'Arc [a]'],
[Icon.Horizontal, () => sc.extrude(treeEntries.byId[activeSketchId]), 'Arc [a]'],
]
const btnz2 = [
[FaEdit, sc.addSketch, 'Sketch [s]']
,
[FaCube, extrude, 'Extrude [e]'],
[Icon.Union, () => boolOp('u'), 'Union'],
[Icon.Subtract, () => boolOp('s'), 'Subtract'],
[Icon.Intersect, () => boolOp('i'), 'Intersect'],
[MdSave, () => boolOp('i'), 'Intersect'],
[MdFolder, () => boolOp('i'), 'Intersect'],
[Icon.Stl, () => boolOp('i'), 'Intersect'],
]
const [_, forceUpdate] = useReducer(x => x + 1, 0);
return <div className='topNav flex justify-center items-center bg-gray-700'>
{
btnz.map(([Icon, fcn, txt, shortcut], idx) => (
<Icon className="btn w-auto h-full p-3.5" tooltip={txt}
onClick={fcn} key={idx}
/>
))
activeSketchId ?
btnz.map(([Icon, fcn, txt, shortcut], idx) => (
<Icon className="btn w-auto h-full p-3.5" tooltip={txt}
onClick={fcn} key={idx}
/>
))
:
btnz2.map(([Icon, fcn, txt, shortcut], idx) => (
<Icon className="btn w-auto h-full p-3.5" tooltip={txt}
onClick={fcn} key={idx}
/>
))
}
</div>
}

View File

@ -10,7 +10,7 @@ boolean flesh out refresh / replace mesh
- / delete mesh \\ done
- create derived part using relationship as name \\ done
- hidden bodies messes up hover highlight \\ fixed
- add for union and intersect
- add for union and intersect // done
- consume skeches after extrude // done
- selection hover disspates when rehovered //fixed
- boolean unable to select click //fixed
@ -24,25 +24,50 @@ constraint angle // done
-unable to delete arc
hover not clearing
hover not clearing sometimes
dim tags are not clearing
should unselect after boolean
auto update extrude
extrude dialogue
loopfind especially arc
file save, stl export
button panel cleanup
- finish
- extrude
- dim
-line
- arc
- vertical
- horizontal
-coincident
sketch
extrude
boolean +
boolean
boolean
load
save
stl
better default ent names
reattach sketch
tree ent renaming
3 pt arc
constraint labels, tangent
auto snap
constraint labels,tangent, equal
parallel
tree ent renaming