summaryrefslogtreecommitdiffstats
path: root/doc/livarot-images/intersection-cross-product.svg
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--doc/livarot-images/intersection-cross-product.svg443
1 files changed, 443 insertions, 0 deletions
diff --git a/doc/livarot-images/intersection-cross-product.svg b/doc/livarot-images/intersection-cross-product.svg
new file mode 100644
index 0000000..b2004db
--- /dev/null
+++ b/doc/livarot-images/intersection-cross-product.svg
@@ -0,0 +1,443 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ width="500"
+ height="700"
+ viewBox="0 0 500.00001 700"
+ version="1.1"
+ id="svg6"
+ inkscape:version="1.1-dev (6f52e792f5, 2020-08-23, custom)"
+ sodipodi:docname="intersection-cross-product.svg"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:svg="http://www.w3.org/2000/svg">
+ <defs
+ id="defs2">
+ <marker
+ style="overflow:visible"
+ id="marker1557"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow1Lend"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(-0.8,0,0,-0.8,-10,0)"
+ style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+ d="M 0,0 5,-5 -12.5,0 5,5 Z"
+ id="path1555" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="marker1499"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow1Lend"
+ inkscape:isstock="true"
+ inkscape:collect="always">
+ <path
+ transform="matrix(-0.8,0,0,-0.8,-10,0)"
+ style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+ d="M 0,0 5,-5 -12.5,0 5,5 Z"
+ id="path1497" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="marker1489"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow1Lend"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(-0.8,0,0,-0.8,-10,0)"
+ style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+ d="M 0,0 5,-5 -12.5,0 5,5 Z"
+ id="path1487" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="marker1347"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow1Lend"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(-0.8,0,0,-0.8,-10,0)"
+ style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+ d="M 0,0 5,-5 -12.5,0 5,5 Z"
+ id="path1345" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="marker1231"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow1Lend"
+ inkscape:isstock="true"
+ inkscape:collect="always">
+ <path
+ transform="matrix(-0.8,0,0,-0.8,-10,0)"
+ style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+ d="M 0,0 5,-5 -12.5,0 5,5 Z"
+ id="path1229" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="marker1159"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow1Lend"
+ inkscape:isstock="true"
+ inkscape:collect="always">
+ <path
+ transform="matrix(-0.8,0,0,-0.8,-10,0)"
+ style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+ d="M 0,0 5,-5 -12.5,0 5,5 Z"
+ id="path1157" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="marker1149"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow1Lend"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(-0.8,0,0,-0.8,-10,0)"
+ style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+ d="M 0,0 5,-5 -12.5,0 5,5 Z"
+ id="path1147" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="marker1091"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow1Lend"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(-0.8,0,0,-0.8,-10,0)"
+ style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+ d="M 0,0 5,-5 -12.5,0 5,5 Z"
+ id="path1089" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="marker1033"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow1Lend"
+ inkscape:isstock="true"
+ inkscape:collect="always">
+ <path
+ transform="matrix(-0.8,0,0,-0.8,-10,0)"
+ style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+ d="M 0,0 5,-5 -12.5,0 5,5 Z"
+ id="path1031" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="marker1023"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow1Lend"
+ inkscape:isstock="true">
+ <path
+ transform="matrix(-0.8,0,0,-0.8,-10,0)"
+ style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+ d="M 0,0 5,-5 -12.5,0 5,5 Z"
+ id="path1021" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="marker933"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow1Lend"
+ inkscape:isstock="true"
+ inkscape:collect="always">
+ <path
+ transform="matrix(-0.8,0,0,-0.8,-10,0)"
+ style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+ d="M 0,0 5,-5 -12.5,0 5,5 Z"
+ id="path931" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="marker903"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow1Lend"
+ inkscape:isstock="true"
+ inkscape:collect="always">
+ <path
+ transform="matrix(-0.8,0,0,-0.8,-10,0)"
+ style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+ d="M 0,0 5,-5 -12.5,0 5,5 Z"
+ id="path901" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="marker847"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow1Lend"
+ inkscape:isstock="true"
+ inkscape:collect="always">
+ <path
+ transform="matrix(-0.8,0,0,-0.8,-10,0)"
+ style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+ d="M 0,0 5,-5 -12.5,0 5,5 Z"
+ id="path845" />
+ </marker>
+ <marker
+ style="overflow:visible"
+ id="marker1121"
+ refX="0"
+ refY="0"
+ orient="auto"
+ inkscape:stockid="Arrow1Lend"
+ inkscape:isstock="true"
+ inkscape:collect="always">
+ <path
+ transform="matrix(-0.8,0,0,-0.8,-10,0)"
+ style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+ d="M 0,0 5,-5 -12.5,0 5,5 Z"
+ id="path1119" />
+ </marker>
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1.7070136"
+ inkscape:cx="185.70443"
+ inkscape:cy="463.67527"
+ inkscape:document-units="px"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ units="px"
+ width="1000.0005px"
+ inkscape:window-width="1920"
+ inkscape:window-height="1016"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1" />
+ <g
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ id="layer1">
+ <path
+ style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#marker1121)"
+ d="M 40.376023,51.195578 184.68385,195.50341"
+ id="path829" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#marker847)"
+ d="M 186.94302,51.087771 42.635185,195.39561"
+ id="path843" />
+ <text
+ xml:space="preserve"
+ style="font-size:16px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px"
+ x="27.279669"
+ y="45.689095"
+ id="text875"><tspan
+ sodipodi:role="line"
+ id="tspan873"
+ x="27.279669"
+ y="45.689095">left</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-size:16px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px"
+ x="174.84354"
+ y="39.357662"
+ id="text879"><tspan
+ sodipodi:role="line"
+ id="tspan877"
+ x="174.84354"
+ y="39.357662">right</tspan></text>
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.860571px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#marker903)"
+ d="M 361.95404,61.714577 486.14115,185.90169"
+ id="path899" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.860571px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#marker933)"
+ d="M 361.95404,61.714577 237.76692,185.9017"
+ id="path929" />
+ <text
+ xml:space="preserve"
+ style="font-size:13.7691px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;stroke-width:0.860571"
+ x="428.63852"
+ y="123.67144"
+ id="text967"><tspan
+ sodipodi:role="line"
+ id="tspan965"
+ x="428.63852"
+ y="123.67144"
+ style="stroke-width:0.860571">left</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-size:13.7691px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;stroke-width:0.860571"
+ x="267.50607"
+ y="120.33862"
+ id="text971"><tspan
+ sodipodi:role="line"
+ id="tspan969"
+ x="267.50607"
+ y="120.33862"
+ style="stroke-width:0.860571">right</tspan></text>
+ <path
+ style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#marker1033)"
+ d="M 31.562822,248.05474 175.87065,392.36257"
+ id="path1009" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#marker1023)"
+ d="M 178.12982,247.94693 33.821984,392.25477"
+ id="path1011" />
+ <text
+ xml:space="preserve"
+ style="font-size:16px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px"
+ x="168.3092"
+ y="239.50467"
+ id="text1015"><tspan
+ sodipodi:role="line"
+ id="tspan1013"
+ x="168.3092"
+ y="239.50467">left</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-size:16px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px"
+ x="13.953851"
+ y="240.20125"
+ id="text1019"><tspan
+ sodipodi:role="line"
+ id="tspan1017"
+ x="13.953851"
+ y="240.20125">right</tspan></text>
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.860571px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#marker1159)"
+ d="M 353.68417,264.68996 477.87128,388.87707"
+ id="path1135" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.860571px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#marker1149)"
+ d="M 353.68417,264.68996 229.49705,388.87708"
+ id="path1137" />
+ <text
+ xml:space="preserve"
+ style="font-size:13.7691px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;stroke-width:0.860571"
+ x="261.2811"
+ y="322.17184"
+ id="text1141"><tspan
+ sodipodi:role="line"
+ id="tspan1139"
+ x="261.2811"
+ y="322.17184"
+ style="stroke-width:0.860571">left</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-size:13.7691px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;stroke-width:0.860571"
+ x="413.39346"
+ y="319.2049"
+ id="text1145"><tspan
+ sodipodi:role="line"
+ id="tspan1143"
+ x="413.39346"
+ y="319.2049"
+ style="stroke-width:0.860571">right</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-size:16px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px"
+ x="304.15286"
+ y="29.0243"
+ id="text1193"><tspan
+ sodipodi:role="line"
+ id="tspan1191"
+ x="304.15286"
+ y="29.0243">cross(ldir, rdir);</tspan></text>
+ <path
+ style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#marker1231);paint-order:normal"
+ d="m 390.02678,90.544454 c 0,0 -25.46234,33.475456 -54.15233,0.04604"
+ id="path1227"
+ sodipodi:nodetypes="cc" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#marker1347)"
+ d="m 326.30728,291.97517 c 0,0 20.78023,28.33579 51.3341,-0.47436"
+ id="path1343"
+ sodipodi:nodetypes="cc" />
+ <text
+ xml:space="preserve"
+ style="font-size:12.5877px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;stroke-width:0.786733"
+ x="301.95645"
+ y="141.09514"
+ id="text1385"><tspan
+ sodipodi:role="line"
+ id="tspan1383"
+ x="301.95645"
+ y="141.09514"
+ style="stroke-width:0.786733">cross(ldir, rdir) &gt; 0</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-size:12.5877px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;stroke-width:0.786733"
+ x="289.08221"
+ y="359.32712"
+ id="text1389"><tspan
+ sodipodi:role="line"
+ id="tspan1387"
+ x="289.08221"
+ y="359.32712"
+ style="stroke-width:0.786733">cross(ldir, rdir) &lt; 0</tspan></text>
+ <path
+ style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#marker1499)"
+ d="M 33.412499,452.06889 177.72033,596.37672"
+ id="path1479" />
+ <text
+ xml:space="preserve"
+ style="font-size:16px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px"
+ x="56.942776"
+ y="522.93726"
+ id="text1485"><tspan
+ sodipodi:role="line"
+ id="tspan1483"
+ x="56.942776"
+ y="522.93726">left</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-size:16px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px"
+ x="139.73827"
+ y="506.14304"
+ id="text1539"><tspan
+ sodipodi:role="line"
+ id="tspan1537"
+ x="139.73827"
+ y="506.14304">right</tspan></text>
+ <path
+ style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#marker1557)"
+ d="M 43.272694,443.14263 187.58052,587.45046"
+ id="path1553" />
+ <text
+ xml:space="preserve"
+ style="font-size:12.5877px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;stroke-width:0.786733"
+ x="292.02301"
+ y="537.99573"
+ id="text1585"><tspan
+ sodipodi:role="line"
+ id="tspan1583"
+ x="292.02301"
+ y="537.99573"
+ style="stroke-width:0.786733">cross(ldir, rdir) = 0</tspan></text>
+ </g>
+</svg>