Skip to content

Instantly share code, notes, and snippets.

@PM2Ring
Created August 17, 2018 10:20
Show Gist options
  • Save PM2Ring/246d86e0c35ac9db6bb80d992999376e to your computer and use it in GitHub Desktop.
Save PM2Ring/246d86e0c35ac9db6bb80d992999376e to your computer and use it in GitHub Desktop.
Discrete catenary with vectors
Display the source blob
Display the rendered blob
Raw
<?xml version="1.0" encoding="UTF-8" ?>
<svg xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
width="512" height="512" viewBox="0 0 220 220">
<defs>
<pattern id="checker" patternUnits="userSpaceOnUse"
x="0" y="0" width="20" height="20">
<g fill="#bbb">
<rect x="0" y="0" width="10" height="10"/>
<rect x="10" y="10" width="10" height="10"/>
</g>
</pattern>
<circle id="dot" r="1.25"/>
<marker id="arrow" refX="8" refY="4" markerWidth="10" markerHeight="10"
markerUnits="strokeWidth" orient="auto">
<path d="M 1 1 L 8 4 L 1 7" style="fill:none; stroke:#000;
stroke-linejoin:bevel"/>
</marker>
</defs>
<rect width="100%" height="100%" fill="white"/>
<rect width="100%" height="100%" fill="url(#checker)"/>
<g transform="translate(110,20) scale(1, -1)" style="fill:none">
<g style="fill:red; fill-opacity:0.7; stroke:none">
<use xlink:href="#dot" x="-100.0" y="0.0"/>
<use xlink:href="#dot" x="-82.1438" y="-64.2308"/>
<use xlink:href="#dot" x="-54.1171" y="-124.72"/>
<use xlink:href="#dot" x="0" y="-163.653"/>
<use xlink:href="#dot" x="0" y="-163.653"/>
<use xlink:href="#dot" x="54.1171" y="-124.72"/>
<use xlink:href="#dot" x="82.1438" y="-64.2308"/>
<use xlink:href="#dot" x="100.0" y="0.0"/>
</g>
<g transform="translate(0, 6) scale(1, -1)"
style="fill:#000; font-family:helvetica; font-size:8; text-anchor:middle">
<text x="0" y="163.653">0</text>
<text x="50.1171" y="124.72">1</text>
<text x="-50.1171" y="124.72">-1</text>
<text x="78.1438" y="64.2308">2</text>
<text x="-78.1438" y="64.2308">-2</text>
<text x="96.0" y="0.0">3</text>
<text x="-96.0" y="0.0">-3</text>
</g>
<g style="stroke:red; stroke-width:0.8;">
<polyline points="-100.0,0.0
-82.1438,-64.2308
-54.1171,-124.72
0,-163.653
0,-163.653
54.1171,-124.72
82.1438,-64.2308
100.0,0.0"/>
</g>
<g style="stroke-width:0.4; stroke:#000; marker-end:url(#arrow)">
<line x1="-82.1438" y1="-64.2308" x2="-82.1438" y2="-74.2308"/>
<line x1="-54.1171" y1="-124.72" x2="-54.1171" y2="-134.72"/>
<line x1="0" y1="-163.653" x2="0" y2="-173.653"/>
<line x1="0" y1="-163.653" x2="0" y2="-173.653"/>
<line x1="54.1171" y1="-124.72" x2="54.1171" y2="-134.72"/>
<line x1="82.1438" y1="-64.2308" x2="82.1438" y2="-74.2308"/>
<line x1="0" y1="-163.653" x2="6.95001" y2="-158.653"/>
<line x1="0" y1="-163.653" x2="-6.95001" y2="-158.653"/>
<line x1="54.1171" y1="-124.72" x2="61.0671" y2="-109.72"/>
<line x1="-54.1171" y1="-124.72" x2="-61.0671" y2="-109.72"/>
<line x1="82.1438" y1="-64.2308" x2="89.0938" y2="-39.2308"/>
<line x1="-82.1438" y1="-64.2308" x2="-89.0938" y2="-39.2308"/>
<line x1="54.1171" y1="-124.72" x2="47.1671" y2="-129.72"/>
<line x1="-54.1171" y1="-124.72" x2="-47.1671" y2="-129.72"/>
<line x1="82.1438" y1="-64.2308" x2="75.1938" y2="-79.2308"/>
<line x1="-82.1438" y1="-64.2308" x2="-75.1938" y2="-79.2308"/>
<line x1="100.0" y1="0.0" x2="93.05" y2="-25.0"/>
<line x1="-100.0" y1="0.0" x2="-93.05" y2="-25.0"/>
<line x1="20" y1="-170" x2="26.95" y2="-165"/>
<line x1="26.95" y1="-165" x2="20.0" y2="-160"/>
<line x1="20.0" y1="-160" x2="20.0" y2="-170"/>
<line x1="70" y1="-140" x2="76.95" y2="-125"/>
<line x1="76.95" y1="-125" x2="70.0" y2="-130"/>
<line x1="70.0" y1="-130" x2="70.0" y2="-140"/>
<line x1="90" y1="-90" x2="96.95" y2="-65"/>
<line x1="96.95" y1="-65" x2="90.0" y2="-80"/>
<line x1="90.0" y1="-80" x2="90.0" y2="-90"/>
</g>
</g>
</svg>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment