Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(76)

Side by Side Diff: experimental/Intersection/qc.htm

Issue 867213004: remove prototype pathops code (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « experimental/Intersection/op.htm ('k') | experimental/Intersection/thingsToDo.txt » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 <html>
2 <head>
3 <div style="height:0">
4
5 <div id="cubic1">
6 $1 = (Cubic &) @0x297c40: {{x = 60.776536520932126, y = 71.249307306133829}, {x = 87.107894191103014, y = 22.377669868235323}, {x = 1.4974754310666936, y = 68.0 69569937917208}, {x = 45.261946574441133, y = 17.536076632112298}}
7 $3 = {{{x = 60.776536520932126, y = 71.249307306133829}, {x = 66.996745328074098 , y = 59.419614231505768}, {x = 65.760655441289899, y = 53.975522936482086}}, {{ x = 65.760655441289899, y = 53.975522936482086}, {x = 64.524565554505699, y = 48 .531431641458411}, {x = 59.040356119613065, y = 46.936502854722001}}, {{x = 59.0 40356119613065, y = 46.936502854722001}, {x = 53.556146684720431, y = 45.3415740 67985597}, {x = 47.031996847537108, y = 45.059368518219323}}, {{x = 47.031996847 537108, y = 45.059368518219323}, {x = 40.29980253329046, y = 44.781843489000011} , {x = 35.915024002796116, y = 43.168182836391942}}, {{x = 35.915024002796116, y = 43.168182836391942}, {x = 31.530245472301775, y = 41.554522183783902}, {x = 3 2.992157437282373, y = 35.838141687728616}}, {{x = 32.992157437282373, y = 35.83 8141687728616}, {x = 34.454069402262967, y = 30.121761191673329}, {x = 45.261946 574441133, y = 17.536076632112298}}}
8 </div>
9
10 <div id="cubic2">
11 $1 = {{x = 73.565270739405079, y = 11.505317181118446}, {x = 69.865863057722279, y = 35.56041113825534}, {x = 63.830000657509075, y = 90.821050755130614}, {x = 29.400041480269302, y = 26.497158886164968}}
12 </div>
13
14 <div id="cubic3">
15 $3 = {{x = 69.729201388419241, y = 38.687735162064307}, {x = 24.764868814854356, y = 23.150171257159752}, {x = 84.928319083959011, y = 90.258844099128083}, {x = 80.39277404565027, y = 61.35338524419506}}
16 </div>
17
18 <div id="cubic1x0">
19 {{14.5975863, 41.632436}, {16.3518929, 26.2639684}, {18.5165519, 7.68775139}, {8 .03767257, 89.1628526}},
20 {{14.5975863, 41.632436}, {8.03767257, 89.1628526}, {8.03767257, 89.1628526}},
21 </div>
22
23 <div id="cubic1x0x">
24 {{14.5975863, 41.632436}, {16.3518929, 26.2639684}, {18.5165519, 7.68775139}, {8 .03767257, 89.1628526}},
25 {{14.5975863, 41.632436}, {8.03767257, 89.1628526}, {8.03767257, 89.1628526}},
26 </div>
27
28 <div id="cubic1x1">
29 {{32.0437334, 59.0267425}, {62.4615541, 91.340573}, {61.0102145, 98.6747985}, {2 7.3387826, 82.9194526}},
30 {{32.0437334, 59.0267425}, {75.9425223, 105.66184}, {27.3387826, 82.9194526}},
31 </div>
32
33 <div id="cubic1x1x">
34 {{32.0437334, 59.0267425}, {62.4615541, 91.340573}, {61.0102145, 98.6747985}, {2 7.3387826, 82.9194526}},
35 {{32.0437334, 59.0267425}, {77.7581975, 107.02498}, {27.3387826, 82.9194526}},
36 </div>
37
38 <div id="cubic1x2">
39 {{57.8949944, 41.1707465}, {56.7368674, 76.5309905}, {56.356649, 86.19953}, {55. 5002867, 93.318629}},
40 {{57.8949944, 41.1707465}, {55.5002867, 93.318629}, {55.5002867, 93.318629}},
41 </div>
42
43 <div id="cubic1x2x">
44 {{57.8949944, 41.1707465}, {56.7368674, 76.5309905}, {56.356649, 86.19953}, {55. 5002867, 93.318629}},
45 {{57.8949944, 41.1707465}, {55.5002867, 93.318629}, {55.5002867, 93.318629}},
46 </div>
47
48 <div id="cubic1x3">
49 {{41.1844187, 86.52533}, {31.2211043, 33.1005529}, {20.992908, 27.8044979}, {10. 1965708, 73.7658388}},
50 {{41.1844187, 86.52533}, {26.1439273, 5.87597256}, {10.1965708, 73.7658388}},
51 </div>
52
53 <div id="cubic1x3x">
54 {{41.1844187, 86.52533}, {31.2211043, 33.1005529}, {20.992908, 27.8044979}, {10. 1965708, 73.7658388}},
55 {{41.1844187, 86.52533}, {26.3152619, 5.60599593}, {10.1965708, 73.7658388}},
56 </div>
57
58 <div id="cubic1x4">
59 {{51.1608132, 59.7881237}, {58.9955693, 38.5338731}, {38.8048957, 93.8817224}, { 70.1083283, 10.6741861}},
60 {{51.1608132, 59.7881237}, {70.1083283, 10.6741861}, {70.1083283, 10.6741861}},
61 </div>
62
63 <div id="cubic1x4x">
64 {{51.1608132, 59.7881237}, {58.9955693, 38.5338731}, {38.8048957, 93.8817224}, { 70.1083283, 10.6741861}},
65 {{51.1608132, 59.7881237}, {70.1083283, 10.6741861}, {70.1083283, 10.6741861}},
66 </div>
67
68 <div id="cubic1x5">
69 {{9.45225228, 64.0040808}, {16.5855418, 53.2003115}, {37.6356814, 42.8968969}, { 68.1461999, 33.1817941}},
70 {{9.45225228, 64.0040808}, {19.5957859, 48.641127}, {68.1461999, 33.1817941}},
71 </div>
72
73 <div id="cubic1x5x">
74 {{9.45225228, 64.0040808}, {16.5855418, 53.2003115}, {37.6356814, 42.8968969}, { 68.1461999, 33.1817941}},
75 {{9.45225228, 64.0040808}, {21.2663043, 47.7764376}, {68.1461999, 33.1817941}},
76 </div>
77
78 <div id="cubic1x6">
79 {{96.2293269, 26.2973682}, {79.8675829, 34.4649929}, {53.1353046, 45.0651411}, { 9.82676512, 58.4413866}},
80 {{96.2293269, 26.2973682}, {67.554114, 40.6117577}, {9.82676512, 58.4413866}},
81 </div>
82
83 <div id="cubic1x6x">
84 {{96.2293269, 26.2973682}, {79.8675829, 34.4649929}, {53.1353046, 45.0651411}, { 9.82676512, 58.4413866}},
85 {{96.2293269, 26.2973682}, {73.2381426, 38.4629118}, {9.82676512, 58.4413866}},
86 </div>
87
88 <div id="cubic1x7">
89 {{77.9926032, 21.6823036}, {14.4765247, 6.95017395}, {11.5735665, 16.9314125}, { 66.2493838, 53.3932579}},
90 {{77.9926032, 21.6823036}, {-12.9236155, 0.594894684}, {66.2493838, 53.3932579}} ,
91 </div>
92
93 <div id="cubic1x7x">
94 {{77.9926032, 21.6823036}, {14.4765247, 6.95017395}, {11.5735665, 16.9314125}, { 66.2493838, 53.3932579}},
95 {{77.9926032, 21.6823036}, {-16.5229284, -0.857700571}, {66.2493838, 53.3932579} },
96 </div>
97
98 <div id="cubic1x8">
99 {{56.479229, 46.4012343}, {65.5444116, 4.92526628}, {78.9504195, 19.6997536}, {9 3.7579262, 89.4649302}},
100 {{56.479229, 46.4012343}, {70.7547833, -18.9137695}, {93.7579262, 89.4649302}},
101 </div>
102
103 <div id="cubic1x8x">
104 {{56.479229, 46.4012343}, {65.5444116, 4.92526628}, {78.9504195, 19.6997536}, {9 3.7579262, 89.4649302}},
105 {{56.479229, 46.4012343}, {70.8118345, -15.4977762}, {93.7579262, 89.4649302}},
106 </div>
107
108 <div id="cubic1x9">
109 {{14.1826743, 68.2075081}, {63.5890486, 41.1398453}, {37.3805687, 55.2173676}, { 38.296851, 55.1751163}},
110 {{14.1826743, 68.2075081}, {38.296851, 55.1751163}, {38.296851, 55.1751163}},
111 </div>
112
113 <div id="cubic1x9x">
114 {{14.1826743, 68.2075081}, {63.5890486, 41.1398453}, {37.3805687, 55.2173676}, { 38.296851, 55.1751163}},
115 {{14.1826743, 68.2075081}, {38.296851, 55.1751163}, {38.296851, 55.1751163}},
116 </div>
117
118 <div id="cubic2x0">
119 {{27.9052884, 4.18132628}, {75.550717, 80.9000193}, {86.6244633, 97.3541595}, {3 1.358766, 46.7795742}},
120 {{27.9052884, 4.18132628}, {66.5480157, 66.4038653}, {68.2236994, 73.2154296}},
121 {{68.2236994, 73.2154296}, {70.5412458, 82.636132}, {31.358766, 46.7795742}},
122 </div>
123
124 <div id="cubic2x0x">
125 {{27.9052884, 4.18132628}, {75.550717, 80.9000193}, {86.6244633, 97.3541595}, {3 1.358766, 46.7795742}},
126 {{27.9052884, 4.18132628}, {64.5696024, 61.9317264}, {68.2236994, 73.2154296}},
127 {{68.2236994, 73.2154296}, {71.8777964, 84.4991328}, {31.358766, 46.7795742}},
128 </div>
129
130 <div id="cubic2x1">
131 {{55.6607299, 89.8878963}, {45.872586, 80.5522712}, {42.0218181, 60.6961261}, {1 9.7918636, 41.8513322}},
132 {{55.6607299, 89.8878963}, {52.7119153, 87.0754092}, {42.3919757, 69.4355526}},
133 {{42.3919757, 69.4355526}, {32.6126647, 52.7197915}, {19.7918636, 41.8513322}},
134 </div>
135
136 <div id="cubic2x1x">
137 {{55.6607299, 89.8878963}, {45.872586, 80.5522712}, {42.0218181, 60.6961261}, {1 9.7918636, 41.8513322}},
138 {{55.6607299, 89.8878963}, {49.0795145, 82.5258065}, {42.3919757, 69.4355526}},
139 {{42.3919757, 69.4355526}, {35.7044369, 56.3452986}, {19.7918636, 41.8513322}},
140 </div>
141
142 <div id="cubic2x2">
143 {{80.5982112, 14.1354079}, {73.8005055, 65.0951435}, {54.0762929, 60.254824}, {2 .82780649, 26.9437232}},
144 {{80.5982112, 14.1354079}, {75.7174786, 50.7243473}, {58.3820516, 52.1411292}},
145 {{58.3820516, 52.1411292}, {43.4686812, 53.3599624}, {2.82780649, 26.9437232}},
146 </div>
147
148 <div id="cubic2x2x">
149 {{80.5982112, 14.1354079}, {73.8005055, 65.0951435}, {54.0762929, 60.254824}, {2 .82780649, 26.9437232}},
150 {{80.5982112, 14.1354079}, {76.0811121, 51.5011698}, {58.3820516, 52.1411292}},
151 {{58.3820516, 52.1411292}, {40.6829911, 52.7810886}, {2.82780649, 26.9437232}},
152 </div>
153
154 <div id="cubic2x3">
155 {{1.6014867, 16.1869736}, {54.4660745, 11.3148647}, {68.9317074, 35.2054791}, {9 8.4868263, 68.0902175}},
156 {{1.6014867, 16.1869736}, {36.7068582, 12.9515906}, {58.7852073, 27.9797778}},
157 {{58.7852073, 27.9797778}, {68.1927213, 34.3832403}, {98.4868263, 68.0902175}},
158 </div>
159
160 <div id="cubic2x3x">
161 {{1.6014867, 16.1869736}, {54.4660745, 11.3148647}, {68.9317074, 35.2054791}, {9 8.4868263, 68.0902175}},
162 {{1.6014867, 16.1869736}, {39.5784138, 13.1506607}, {58.7852073, 27.9797778}},
163 {{58.7852073, 27.9797778}, {77.9920009, 42.808895}, {98.4868263, 68.0902175}},
164 </div>
165
166 <div id="cubic2x4">
167 {{23.0453529, 23.2462522}, {99.7603064, 71.4695575}, {88.8529841, 52.1034408}, { 2.52897437, 4.4722111}},
168 {{23.0453529, 23.2462522}, {83.1995453, 61.0594014}, {73.9267748, 49.8046823}},
169 {{73.9267748, 49.8046823}, {64.9578598, 38.9187642}, {2.52897437, 4.4722111}},
170 </div>
171
172 <div id="cubic2x4x">
173 {{23.0453529, 23.2462522}, {99.7603064, 71.4695575}, {88.8529841, 52.1034408}, { 2.52897437, 4.4722111}},
174 {{23.0453529, 23.2462522}, {80.2001434, 58.1848465}, {73.9267748, 49.8046823}},
175 {{73.9267748, 49.8046823}, {67.6534063, 41.424518}, {2.52897437, 4.4722111}},
176 </div>
177
178 <div id="cubic2x5">
179 {{64.4519328, 43.6345262}, {65.4821636, 58.7228333}, {54.6599207, 69.286817}, {3 .532848, 76.5762786}},
180 {{64.4519328, 43.6345262}, {65.2901892, 55.9112614}, {53.5513792, 63.0299695}},
181 {{53.5513792, 63.0299695}, {39.721686, 71.4166414}, {3.532848, 76.5762786}},
182 </div>
183
184 <div id="cubic2x5x">
185 {{64.4519328, 43.6345262}, {65.4821636, 58.7228333}, {54.6599207, 69.286817}, {3 .532848, 76.5762786}},
186 {{64.4519328, 43.6345262}, {66.113742, 54.9117003}, {53.5513792, 63.0299695}},
187 {{53.5513792, 63.0299695}, {40.9890164, 71.1482387}, {3.532848, 76.5762786}},
188 </div>
189
190 <div id="cubic2x6">
191 {{82.5366784, 93.9543251}, {90.3418213, 74.9907304}, {69.20575, 41.039441}, {49. 884656, 11.4126389}},
192 {{82.5366784, 93.9543251}, {87.7472455, 81.2945847}, {76.383006, 56.6821848}},
193 {{76.383006, 56.6821848}, {69.0501277, 40.8008111}, {49.884656, 11.4126389}},
194 </div>
195
196 <div id="cubic2x6x">
197 {{82.5366784, 93.9543251}, {90.3418213, 74.9907304}, {69.20575, 41.039441}, {49. 884656, 11.4126389}},
198 {{82.5366784, 93.9543251}, {87.4294046, 79.1281234}, {76.383006, 56.6821848}},
199 {{76.383006, 56.6821848}, {65.3366074, 34.2362462}, {49.884656, 11.4126389}},
200 </div>
201
202 <div id="cubic2x7">
203 {{81.6027334, 97.1400425}, {32.694003, 88.1076582}, {25.4108981, 80.9641684}, {6 4.7788314, 37.8185316}},
204 {{81.6027334, 97.1400425}, {43.6639346, 90.1335672}, {40.0870335, 80.2717567}},
205 {{40.0870335, 80.2717567}, {36.0922592, 69.2578356}, {64.7788314, 37.8185316}},
206 </div>
207
208 <div id="cubic2x7x">
209 {{81.6027334, 97.1400425}, {32.694003, 88.1076582}, {25.4108981, 80.9641684}, {6 4.7788314, 37.8185316}},
210 {{81.6027334, 97.1400425}, {44.7641414, 91.5498493}, {40.0870335, 80.2717567}},
211 {{40.0870335, 80.2717567}, {35.4099255, 68.9936642}, {64.7788314, 37.8185316}},
212 </div>
213
214 <div id="cubic2x8">
215 {{43.6332675, 44.3267048}, {98.9277035, 77.9134953}, {92.1152147, 80.4133992}, { 7.99971512, 51.2120151}},
216 {{43.6332675, 44.3267048}, {85.4039037, 69.6989069}, {78.0952172, 71.3149254}},
217 {{78.0952172, 71.3149254}, {70.649222, 72.9613041}, {7.99971512, 51.2120151}},
218 </div>
219
220 <div id="cubic2x8x">
221 {{43.6332675, 44.3267048}, {98.9277035, 77.9134953}, {92.1152147, 80.4133992}, { 7.99971512, 51.2120151}},
222 {{43.6332675, 44.3267048}, {85.5789722, 69.5359977}, {78.0952172, 71.3149254}},
223 {{78.0952172, 71.3149254}, {70.6114621, 73.0938531}, {7.99971512, 51.2120151}},
224 </div>
225
226 <div id="cubic2x9">
227 {{3.42763756, 8.30440876}, {72.1979502, 30.9497829}, {73.001545, 36.9676506}, {1 5.3033876, 4.03527813}},
228 {{3.42763756, 8.30440876}, {62.7221525, 27.8294978}, {56.7911889, 27.0114984}},
229 {{56.7911889, 27.0114984}, {55.1652933, 26.7872547}, {15.3033876, 4.03527813}},
230 </div>
231
232 <div id="cubic2x9x">
233 {{3.42763756, 8.30440876}, {72.1979502, 30.9497829}, {73.001545, 36.9676506}, {1 5.3033876, 4.03527813}},
234 {{3.42763756, 8.30440876}, {54.7095919, 25.9860248}, {56.7911889, 27.0114984}},
235 {{56.7911889, 27.0114984}, {58.8727859, 28.036972}, {15.3033876, 4.03527813}},
236 </div>
237
238 <div id="cubic3x0">
239 {{37.7493998, 54.1620116}, {0.928181503, 99.9465276}, {1.29019157, 84.2497321}, {85.2470221, 46.7010984}},
240 {{37.7493998, 54.1620116}, {30.0262679, 63.7651662}, {19.9157535, 75.222785}},
241 {{19.9157535, 75.222785}, {12.0739437, 84.1094218}, {23.0870945, 77.9306985}},
242 {{23.0870945, 77.9306985}, {53.2236264, 61.0231583}, {85.2470221, 46.7010984}},
243 </div>
244
245 <div id="cubic3x0x">
246 {{37.7493998, 54.1620116}, {0.928181503, 99.9465276}, {1.29019157, 84.2497321}, {85.2470221, 46.7010984}},
247 {{37.7493998, 54.1620116}, {26.0576358, 68.4753229}, {19.9157535, 75.222785}},
248 {{19.9157535, 75.222785}, {7.36020346, 87.8757618}, {23.0870945, 77.9306985}},
249 {{23.0870945, 77.9306985}, {37.855802, 68.7339725}, {85.2470221, 46.7010984}},
250 </div>
251
252 <div id="cubic3x1">
253 {{77.853445, 82.8493315}, {48.7140421, 36.904878}, {60.2845497, 2.42643608}, {81 .1111786, 35.5792593}},
254 {{77.853445, 82.8493315}, {64.326138, 61.5206609}, {61.1190571, 42.8070764}},
255 {{61.1190571, 42.8070764}, {58.2548088, 26.0939491}, {64.5348786, 22.8899965}},
256 {{64.5348786, 22.8899965}, {71.0512995, 19.5654629}, {81.1111786, 35.5792593}},
257 </div>
258
259 <div id="cubic3x1x">
260 {{77.853445, 82.8493315}, {48.7140421, 36.904878}, {60.2845497, 2.42643608}, {81 .1111786, 35.5792593}},
261 {{77.853445, 82.8493315}, {63.5749823, 59.3570561}, {61.1190571, 42.8070764}},
262 {{61.1190571, 42.8070764}, {58.6631319, 26.2570968}, {64.5348786, 22.8899965}},
263 {{64.5348786, 22.8899965}, {70.4066254, 19.5228963}, {81.1111786, 35.5792593}},
264 </div>
265
266 <div id="cubic3x2">
267 {{38.2012882, 49.0499648}, {82.7576585, 7.96646616}, {92.3967278, 11.8042378}, { 93.8251679, 19.597347}},
268 {{38.2012882, 49.0499648}, {58.8845939, 29.9787846}, {72.1076941, 21.4229661}},
269 {{72.1076941, 21.4229661}, {83.1166319, 14.2997899}, {88.6707154, 14.6399404}},
270 {{88.6707154, 14.6399404}, {92.9647013, 14.9029184}, {93.8251679, 19.597347}},
271 </div>
272
273 <div id="cubic3x2x">
274 {{38.2012882, 49.0499648}, {82.7576585, 7.96646616}, {92.3967278, 11.8042378}, { 93.8251679, 19.597347}},
275 {{38.2012882, 49.0499648}, {60.2321893, 28.8875296}, {72.1076941, 21.4229661}},
276 {{72.1076941, 21.4229661}, {83.983199, 13.9584026}, {88.6707154, 14.6399404}},
277 {{88.6707154, 14.6399404}, {93.3582319, 15.3214782}, {93.8251679, 19.597347}},
278 </div>
279
280 <div id="cubic3x3">
281 {{52.7120295, 31.0801866}, {64.6964272, 52.8517052}, {78.6098203, 95.2490945}, { 51.5310243, 81.9254304}},
282 {{52.7120295, 31.0801866}, {59.5211432, 43.4499986}, {63.7497522, 56.8993316}},
283 {{63.7497522, 56.8993316}, {68.6258107, 72.4079153}, {66.5354307, 79.5030739}},
284 {{66.5354307, 79.5030739}, {64.0124137, 88.0666872}, {51.5310243, 81.9254304}},
285 </div>
286
287 <div id="cubic3x3x">
288 {{52.7120295, 31.0801866}, {64.6964272, 52.8517052}, {78.6098203, 95.2490945}, { 51.5310243, 81.9254304}},
289 {{52.7120295, 31.0801866}, {59.1016467, 42.6728619}, {63.7497522, 56.8993316}},
290 {{63.7497522, 56.8993316}, {68.3978576, 71.1258013}, {66.5354307, 79.5030739}},
291 {{66.5354307, 79.5030739}, {64.6730039, 87.8803465}, {51.5310243, 81.9254304}},
292 </div>
293
294 <div id="cubic3x4">
295 {{20.7082833, 44.1170772}, {75.7169666, 75.0570675}, {84.1330966, 24.9551825}, { 21.7528516, 0.176163297}},
296 {{20.7082833, 44.1170772}, {46.6273271, 58.6954113}, {59.2896776, 51.9825439}},
297 {{59.2896776, 51.9825439}, {71.1540672, 45.6927106}, {61.4307428, 29.4567029}},
298 {{61.4307428, 29.4567029}, {50.807026, 11.71722}, {21.7528516, 0.176163297}},
299 </div>
300
301 <div id="cubic3x4x">
302 {{20.7082833, 44.1170772}, {75.7169666, 75.0570675}, {84.1330966, 24.9551825}, { 21.7528516, 0.176163297}},
303 {{20.7082833, 44.1170772}, {48.4367344, 58.6022136}, {59.2896776, 51.9825439}},
304 {{59.2896776, 51.9825439}, {70.1426209, 45.3628742}, {61.4307428, 29.4567029}},
305 {{61.4307428, 29.4567029}, {52.7188646, 13.5505316}, {21.7528516, 0.176163297}},
306 </div>
307
308 <div id="cubic3x5">
309 {{20.8291142, 74.9221559}, {16.6750469, 57.513008}, {21.1249099, 46.360262}, {76 .9233116, 50.0985771}},
310 {{20.8291142, 74.9221559}, {18.4755741, 65.0587801}, {21.1261573, 59.9182775}},
311 {{21.1261573, 59.9182775}, {24.474036, 53.4254499}, {36.6579558, 51.0041468}},
312 {{36.6579558, 51.0041468}, {50.2178533, 48.3093965}, {76.9233116, 50.0985771}},
313 </div>
314
315 <div id="cubic3x5x">
316 {{20.8291142, 74.9221559}, {16.6750469, 57.513008}, {21.1249099, 46.360262}, {76 .9233116, 50.0985771}},
317 {{20.8291142, 74.9221559}, {18.3562971, 66.1376314}, {21.1261573, 59.9182775}},
318 {{21.1261573, 59.9182775}, {23.8960175, 53.6989236}, {36.6579558, 51.0041468}},
319 {{36.6579558, 51.0041468}, {49.4198942, 48.3093701}, {76.9233116, 50.0985771}},
320 </div>
321
322 <div id="cubic3x6">
323 {{39.306348, 21.7912016}, {44.72463, 86.8568551}, {3.16400146, 77.3725818}, {0.9 81986477, 4.24671164}},
324 {{39.306348, 21.7912016}, {41.8751537, 52.6388057}, {32.26342, 62.4108917}},
325 {{32.26342, 62.4108917}, {23.2193358, 71.6058581}, {13.0917792, 55.754704}},
326 {{13.0917792, 55.754704}, {2.00097021, 38.3959145}, {0.981986477, 4.24671164}},
327 </div>
328
329 <div id="cubic3x6x">
330 {{39.306348, 21.7912016}, {44.72463, 86.8568551}, {3.16400146, 77.3725818}, {0.9 81986477, 4.24671164}},
331 {{39.306348, 21.7912016}, {41.2158823, 54.2230253}, {32.26342, 62.4108917}},
332 {{32.26342, 62.4108917}, {23.3109577, 70.5987581}, {13.0917792, 55.754704}},
333 {{13.0917792, 55.754704}, {2.87260067, 40.9106498}, {0.981986477, 4.24671164}},
334 </div>
335
336 <div id="cubic3x7">
337 {{85.4907277, 42.6604079}, {93.4752654, 38.7852218}, {63.2230996, 90.6357313}, { 14.7351715, 54.0271501}},
338 {{85.4907277, 42.6604079}, {92.9820656, 39.0245896}, {81.4704732, 52.0202764}},
339 {{81.4704732, 52.0202764}, {71.0697229, 63.7619094}, {56.4037366, 66.489545}},
340 {{56.4037366, 66.489545}, {36.2148038, 70.2443591}, {14.7351715, 54.0271501}},
341 </div>
342
343 <div id="cubic3x7x">
344 {{85.4907277, 42.6604079}, {93.4752654, 38.7852218}, {63.2230996, 90.6357313}, { 14.7351715, 54.0271501}},
345 {{85.4907277, 42.6604079}, {89.2978026, 42.0578592}, {81.4704732, 52.0202764}},
346 {{81.4704732, 52.0202764}, {73.6431437, 61.9826936}, {56.4037366, 66.489545}},
347 {{56.4037366, 66.489545}, {39.1643295, 70.9963964}, {14.7351715, 54.0271501}},
348 </div>
349
350 <div id="cubic3x8">
351 {{95.2957887, 36.3209844}, {46.7852652, 19.9519225}, {31.9607143, 63.7251956}, { 29.3620354, 87.7284659}},
352 {{95.2957887, 36.3209844}, {73.0036621, 28.7988805}, {57.2191042, 37.0396513}},
353 {{57.2191042, 37.0396513}, {44.4309585, 43.7160611}, {36.8308235, 60.0949108}},
354 {{36.8308235, 60.0949108}, {30.9912846, 72.6795466}, {29.3620354, 87.7284659}},
355 </div>
356
357 <div id="cubic3x8x">
358 {{95.2957887, 36.3209844}, {46.7852652, 19.9519225}, {31.9607143, 63.7251956}, { 29.3620354, 87.7284659}},
359 {{95.2957887, 36.3209844}, {71.2392316, 28.8763825}, {57.2191042, 37.0396513}},
360 {{57.2191042, 37.0396513}, {43.1989768, 45.20292}, {36.8308235, 60.0949108}},
361 {{36.8308235, 60.0949108}, {30.4626702, 74.9869017}, {29.3620354, 87.7284659}},
362 </div>
363
364 <div id="cubic3x9">
365 {{11.6274826, 23.1005334}, {50.665531, 35.5788199}, {73.2259434, 8.43082047}, {9 6.7997166, 12.8374226}},
366 {{11.6274826, 23.1005334}, {26.8690196, 27.9724026}, {42.2684837, 25.6341105}},
367 {{42.2684837, 25.6341105}, {51.3514943, 24.254924}, {67.0182186, 18.4582098}},
368 {{67.0182186, 18.4582098}, {87.1065443, 11.0254957}, {96.7997166, 12.8374226}},
369 </div>
370
371 <div id="cubic3x9x">
372 {{11.6274826, 23.1005334}, {50.665531, 35.5788199}, {73.2259434, 8.43082047}, {9 6.7997166, 12.8374226}},
373 {{11.6274826, 23.1005334}, {28.7555518, 28.1569895}, {42.2684837, 25.6341105}},
374 {{42.2684837, 25.6341105}, {55.7814156, 23.1112314}, {67.0182186, 18.4582098}},
375 {{67.0182186, 18.4582098}, {82.5639521, 11.3566582}, {96.7997166, 12.8374226}},
376 </div>
377
378 <div id="cubic4x0">
379 {{24.2578299, 1.34695745}, {38.313885, 41.465269}, {6.77689729, 99.312693}, {48. 4308047, 76.5337766}},
380 {{24.2578299, 1.34695745}, {27.9750096, 11.9564045}, {28.1705087, 26.7539994}},
381 {{28.1705087, 26.7539994}, {28.2848367, 35.4076429}, {26.8433323, 51.6959666}},
382 {{26.8433323, 51.6959666}, {24.9672902, 72.8943612}, {27.4957684, 77.9195086}},
383 {{27.4957684, 77.9195086}, {31.4664535, 85.8109263}, {48.4308047, 76.5337766}},
384 </div>
385
386 <div id="cubic4x0x">
387 {{24.2578299, 1.34695745}, {38.313885, 41.465269}, {6.77689729, 99.312693}, {48. 4308047, 76.5337766}},
388 {{24.2578299, 1.34695745}, {28.2364584, 13.5769276}, {28.1705087, 26.7539994}},
389 {{28.1705087, 26.7539994}, {28.104559, 39.9310711}, {26.8433323, 51.6959666}},
390 {{26.8433323, 51.6959666}, {24.5051265, 69.7176532}, {27.4957684, 77.9195086}},
391 {{27.4957684, 77.9195086}, {30.4864104, 86.121364}, {48.4308047, 76.5337766}},
392 </div>
393
394 <div id="cubic4x1">
395 {{3.18338154, 3.09354817}, {93.264044, 88.7879534}, {59.132973, 47.8778685}, {83 .3354337, 18.6335197}},
396 {{3.18338154, 3.09354817}, {35.8260971, 34.1468066}, {48.9325859, 44.6922254}},
397 {{48.9325859, 44.6922254}, {62.4915199, 55.6016796}, {67.1257676, 54.3074276}},
398 {{67.1257676, 54.3074276}, {70.2512267, 53.4345498}, {72.6465479, 43.2128608}},
399 {{72.6465479, 43.2128608}, {76.4594277, 26.9419442}, {83.3354337, 18.6335197}},
400 </div>
401
402 <div id="cubic4x1x">
403 {{3.18338154, 3.09354817}, {93.264044, 88.7879534}, {59.132973, 47.8778685}, {83 .3354337, 18.6335197}},
404 {{3.18338154, 3.09354817}, {34.807442, 33.2979688}, {48.9325859, 44.6922254}},
405 {{48.9325859, 44.6922254}, {63.0577297, 56.086482}, {67.1257676, 54.3074276}},
406 {{67.1257676, 54.3074276}, {71.1938054, 52.5283732}, {72.6465479, 43.2128608}},
407 {{72.6465479, 43.2128608}, {74.0679283, 31.8888383}, {83.3354337, 18.6335197}},
408 </div>
409
410 <div id="cubic4x2">
411 {{5.3607232, 97.6747591}, {19.6754743, 85.6972941}, {14.421376, 80.0662188}, {72 .9397619, 98.5790647}},
412 {{5.3607232, 97.6747591}, {7.15867444, 96.170374}, {9.99357731, 93.4972246}},
413 {{9.99357731, 93.4972246}, {15.4658237, 88.3372129}, {19.1058065, 87.2914549}},
414 {{19.1058065, 87.2914549}, {24.5745003, 85.7203128}, {35.9606711, 88.1040392}},
415 {{35.9606711, 88.1040392}, {47.3960315, 90.4980635}, {72.9397619, 98.5790647}},
416 </div>
417
418 <div id="cubic4x2x">
419 {{5.3607232, 97.6747591}, {19.6754743, 85.6972941}, {14.421376, 80.0662188}, {72 .9397619, 98.5790647}},
420 {{5.3607232, 97.6747591}, {8.01636596, 95.4093652}, {9.99357731, 93.4972246}},
421 {{9.99357731, 93.4972246}, {14.161732, 88.9702622}, {19.1058065, 87.2914549}},
422 {{19.1058065, 87.2914549}, {24.0498811, 85.6126476}, {35.9606711, 88.1040392}},
423 {{35.9606711, 88.1040392}, {47.871461, 90.5954307}, {72.9397619, 98.5790647}},
424 </div>
425
426 <div id="cubic4x3">
427 {{18.340571, 49.9760211}, {46.9862021, 97.0991299}, {45.0770262, 9.57918773}, {9 7.4081647, 39.0235061}},
428 {{18.340571, 49.9760211}, {27.6759966, 65.333137}, {34.9254897, 64.1054159}},
429 {{34.9254897, 64.1054159}, {39.46946, 63.3358824}, {47.9840785, 52.4199142}},
430 {{47.9840785, 52.4199142}, {58.4594697, 38.9901831}, {66.2068641, 35.3036404}},
431 {{66.2068641, 35.3036404}, {79.5296469, 28.9640886}, {97.4081647, 39.0235061}},
432 </div>
433
434 <div id="cubic4x3x">
435 {{18.340571, 49.9760211}, {46.9862021, 97.0991299}, {45.0770262, 9.57918773}, {9 7.4081647, 39.0235061}},
436 {{18.340571, 49.9760211}, {28.406995, 66.1423531}, {34.9254897, 64.1054159}},
437 {{34.9254897, 64.1054159}, {41.4439844, 62.0684788}, {47.9840785, 52.4199142}},
438 {{47.9840785, 52.4199142}, {54.9532374, 41.9238105}, {66.2068641, 35.3036404}},
439 {{66.2068641, 35.3036404}, {77.4604907, 28.6834703}, {97.4081647, 39.0235061}},
440 </div>
441
442 <div id="cubic4x4">
443 {{68.0670356, 2.66693188}, {23.1241074, 46.8739094}, {9.79601006, 41.5410025}, { 79.6294187, 31.6402602}},
444 {{68.0670356, 2.66693188}, {56.7853646, 13.7638629}, {41.0137122, 27.3042275}},
445 {{41.0137122, 27.3042275}, {29.788878, 36.941033}, {31.0433353, 38.0354879}},
446 {{31.0433353, 38.0354879}, {32.2977925, 39.1299429}, {51.0493703, 36.059867}},
447 {{51.0493703, 36.059867}, {67.7999464, 33.3174024}, {79.6294187, 31.6402602}},
448 </div>
449
450 <div id="cubic4x4x">
451 {{68.0670356, 2.66693188}, {23.1241074, 46.8739094}, {9.79601006, 41.5410025}, { 79.6294187, 31.6402602}},
452 {{68.0670356, 2.66693188}, {50.940695, 19.1344928}, {41.0137122, 27.3042275}},
453 {{41.0137122, 27.3042275}, {29.4752637, 36.6674193}, {31.0433353, 38.0354879}},
454 {{31.0433353, 38.0354879}, {32.6114068, 39.4035566}, {51.0493703, 36.059867}},
455 {{51.0493703, 36.059867}, {61.9478496, 34.2106234}, {79.6294187, 31.6402602}},
456 </div>
457
458 <div id="cubic4x5">
459 {{80.6109054, 27.4877124}, {85.9817399, 95.1019056}, {77.7276185, 68.083746}, {8 3.5185407, 96.1129614}},
460 {{80.6109054, 27.4877124}, {82.5499811, 51.8990092}, {82.5259477, 65.0368853}},
461 {{82.5259477, 65.0368853}, {82.5124299, 72.4264589}, {81.7002161, 78.1564815}},
462 {{81.7002161, 78.1564815}, {81.2315331, 81.462956}, {81.4316783, 83.8990214}},
463 {{81.4316783, 83.8990214}, {81.7199102, 87.4072321}, {83.5185407, 96.1129614}},
464 </div>
465
466 <div id="cubic4x5x">
467 {{80.6109054, 27.4877124}, {85.9817399, 95.1019056}, {77.7276185, 68.083746}, {8 3.5185407, 96.1129614}},
468 {{80.6109054, 27.4877124}, {82.6925268, 54.7439407}, {82.5259477, 65.0368853}},
469 {{82.5259477, 65.0368853}, {82.3593687, 75.3298298}, {81.7002161, 78.1564815}},
470 {{81.7002161, 78.1564815}, {81.2086421, 80.6624342}, {81.4316783, 83.8990214}},
471 {{81.4316783, 83.8990214}, {81.6547145, 87.1356086}, {83.5185407, 96.1129614}},
472 </div>
473
474 <div id="cubic4x6">
475 {{70.5424749, 7.37512261}, {53.6857094, 95.7185581}, {41.8065019, 41.8776796}, { 38.1617001, 83.6927474}},
476 {{70.5424749, 7.37512261}, {64.0240124, 41.5372735}, {57.0495799, 54.4661558}},
477 {{57.0495799, 54.4661558}, {53.0372544, 61.9040203}, {46.633996, 64.0865108}},
478 {{46.633996, 64.0865108}, {42.8562175, 65.3741311}, {41.4346736, 67.9484678}},
479 {{41.4346736, 67.9484678}, {39.1777978, 72.0355437}, {38.1617001, 83.6927474}},
480 </div>
481
482 <div id="cubic4x6x">
483 {{70.5424749, 7.37512261}, {53.6857094, 95.7185581}, {41.8065019, 41.8776796}, { 38.1617001, 83.6927474}},
484 {{70.5424749, 7.37512261}, {63.0887524, 44.8198844}, {57.0495799, 54.4661558}},
485 {{57.0495799, 54.4661558}, {51.0104074, 64.1124273}, {46.633996, 64.0865108}},
486 {{46.633996, 64.0865108}, {43.5741104, 64.6069899}, {41.4346736, 67.9484678}},
487 {{41.4346736, 67.9484678}, {39.2952367, 71.2899457}, {38.1617001, 83.6927474}},
488 </div>
489
490 <div id="cubic4x7">
491 {{24.0062249, 72.6211198}, {43.1612821, 11.6690897}, {22.3913226, 30.9587957}, { 24.4801394, 37.7033828}},
492 {{24.0062249, 72.6211198}, {30.5430063, 51.8208637}, {31.8675739, 40.5026282}},
493 {{31.8675739, 40.5026282}, {32.9179067, 31.5276894}, {30.6430223, 29.7760199}},
494 {{30.6430223, 29.7760199}, {28.7741669, 28.3369942}, {26.2185506, 31.7425273}},
495 {{26.2185506, 31.7425273}, {23.6812077, 35.1237098}, {24.4801394, 37.7033828}},
496 </div>
497
498 <div id="cubic4x7x">
499 {{24.0062249, 72.6211198}, {43.1612821, 11.6690897}, {22.3913226, 30.9587957}, { 24.4801394, 37.7033828}},
500 {{24.0062249, 72.6211198}, {30.9441221, 50.1265572}, {31.8675739, 40.5026282}},
501 {{31.8675739, 40.5026282}, {32.7910257, 30.8786991}, {30.6430223, 29.7760199}},
502 {{30.6430223, 29.7760199}, {28.4950189, 28.6733406}, {26.2185506, 31.7425273}},
503 {{26.2185506, 31.7425273}, {23.9420823, 34.811714}, {24.4801394, 37.7033828}},
504 </div>
505
506 <div id="cubic4x8">
507 {{83.4128604, 19.944285}, {3.59808416, 73.0005231}, {19.791118, 29.3197498}, {77 .0346567, 21.4750355}},
508 {{83.4128604, 19.944285}, {56.4409479, 37.8736494}, {40.6945347, 43.6697281}},
509 {{40.6945347, 43.6697281}, {27.6832174, 48.4590486}, {28.8268904, 43.5475174}},
510 {{28.8268904, 43.5475174}, {29.9619906, 38.6728026}, {42.6576802, 32.0063781}},
511 {{42.6576802, 32.0063781}, {57.6563877, 24.1306537}, {77.0346567, 21.4750355}},
512 </div>
513
514 <div id="cubic4x8x">
515 {{83.4128604, 19.944285}, {3.59808416, 73.0005231}, {19.791118, 29.3197498}, {77 .0346567, 21.4750355}},
516 {{83.4128604, 19.944285}, {53.6969963, 39.3225107}, {40.6945347, 43.6697281}},
517 {{40.6945347, 43.6697281}, {27.6920731, 48.0169456}, {28.8268904, 43.5475174}},
518 {{28.8268904, 43.5475174}, {29.9617077, 39.0780892}, {42.6576802, 32.0063781}},
519 {{42.6576802, 32.0063781}, {55.3536527, 24.9346669}, {77.0346567, 21.4750355}},
520 </div>
521
522 <div id="cubic4x9">
523 {{13.6133623, 99.7800201}, {2.79733483, 14.8064674}, {52.2975031, 64.1339272}, { 98.9146078, 57.8132952}},
524 {{13.6133623, 99.7800201}, {10.1036384, 72.2067072}, {14.9007617, 60.2808941}},
525 {{14.9007617, 60.2808941}, {19.0431228, 49.9828423}, {30.5807774, 49.2954321}},
526 {{30.5807774, 49.2954321}, {37.7022355, 48.8711377}, {56.117561, 53.190874}},
527 {{56.117561, 53.190874}, {84.2814202, 59.7973522}, {98.9146078, 57.8132952}},
528 </div>
529
530 <div id="cubic4x9x">
531 {{13.6133623, 99.7800201}, {2.79733483, 14.8064674}, {52.2975031, 64.1339272}, { 98.9146078, 57.8132952}},
532 {{13.6133623, 99.7800201}, {10.0919269, 71.197946}, {14.9007617, 60.2808941}},
533 {{14.9007617, 60.2808941}, {19.7095965, 49.3638421}, {30.5807774, 49.2954321}},
534 {{30.5807774, 49.2954321}, {41.4519583, 49.2270222}, {56.117561, 53.190874}},
535 {{56.117561, 53.190874}, {76.476137, 59.3205959}, {98.9146078, 57.8132952}},
536 </div>
537
538 <div id="cubic5x0">
539 {{73.5652707, 11.5053172}, {69.8658631, 35.5604111}, {63.8300007, 90.8210508}, { 29.4000415, 26.4971589}},
540 {{73.5652707, 11.5053172}, {73.3885843, 12.654206}, {73.0163837, 15.1491032}},
541 {{73.0163837, 15.1491032}, {70.9175181, 29.2180034}, {69.2121151, 36.2586021}},
542 {{69.2121151, 36.2586021}, {66.2435432, 48.5140774}, {62.0808557, 53.3239452}},
543 {{62.0808557, 53.3239452}, {56.8541433, 59.3632637}, {49.5132747, 54.1388813}},
544 {{49.5132747, 54.1388813}, {40.9233022, 48.0255311}, {29.4000415, 26.4971589}},
545 </div>
546
547 <div id="cubic5x0x">
548 {{73.5652707, 11.5053172}, {69.8658631, 35.5604111}, {63.8300007, 90.8210508}, { 29.4000415, 26.4971589}},
549 {{73.5652707, 11.5053172}, {73.3009509, 13.2327574}, {73.0163837, 15.1491032}},
550 {{73.0163837, 15.1491032}, {71.6823308, 25.1891102}, {69.2121151, 36.2586021}},
551 {{69.2121151, 36.2586021}, {66.7418995, 47.328094}, {62.0808557, 53.3239452}},
552 {{62.0808557, 53.3239452}, {57.4198119, 59.3197964}, {49.5132747, 54.1388813}},
553 {{49.5132747, 54.1388813}, {41.6067374, 48.9579661}, {29.4000415, 26.4971589}},
554 </div>
555
556 <div id="cubic5x1">
557 {{80.7539402, 31.4736433}, {77.5229567, 28.3334108}, {99.6348716, 63.2867312}, { 60.0910899, 50.9480224}},
558 {{80.7539402, 31.4736433}, {80.1293736, 30.8666193}, {81.0927918, 33.3061348}},
559 {{81.0927918, 33.3061348}, {82.7770389, 37.5708941}, {83.4256875, 40.319949}},
560 {{83.4256875, 40.319949}, {84.5951485, 45.2762733}, {83.5574674, 48.3997103}},
561 {{83.5574674, 48.3997103}, {82.2131806, 52.4460356}, {77.2064841, 53.3431558}},
562 {{77.2064841, 53.3431558}, {71.2104332, 54.4175525}, {60.0910899, 50.9480224}},
563 </div>
564
565 <div id="cubic5x1x">
566 {{80.7539402, 31.4736433}, {77.5229567, 28.3334108}, {99.6348716, 63.2867312}, { 60.0910899, 50.9480224}},
567 {{80.7539402, 31.4736433}, {79.9741932, 30.7172975}, {81.0927918, 33.3061348}},
568 {{81.0927918, 33.3061348}, {82.2743126, 36.0212723}, {83.4256875, 40.319949}},
569 {{83.4256875, 40.319949}, {84.5770623, 44.6186258}, {83.5574674, 48.3997103}},
570 {{83.5574674, 48.3997103}, {82.5378725, 52.1807949}, {77.2064841, 53.3431558}},
571 {{77.2064841, 53.3431558}, {71.8750956, 54.5055166}, {60.0910899, 50.9480224}},
572 </div>
573
574 <div id="cubic5x2">
575 {{30.9220007, 6.06626757}, {55.7590106, 41.691652}, {11.5944877, 68.5545306}, {9 5.99508, 89.3088364}},
576 {{30.9220007, 6.06626757}, {36.6680413, 14.3081978}, {38.6632502, 23.8943374}},
577 {{38.6632502, 23.8943374}, {39.8467707, 29.5806556}, {40.109652, 40.2122054}},
578 {{40.109652, 40.2122054}, {40.4211241, 52.8088852}, {42.588681, 58.5795625}},
579 {{42.588681, 58.5795625}, {46.141784, 68.0389732}, {57.1660752, 74.8906876}},
580 {{57.1660752, 74.8906876}, {70.1317224, 82.9489754}, {95.99508, 89.3088364}},
581 </div>
582
583 <div id="cubic5x2x">
584 {{30.9220007, 6.06626757}, {55.7590106, 41.691652}, {11.5944877, 68.5545306}, {9 5.99508, 89.3088364}},
585 {{30.9220007, 6.06626757}, {37.1487855, 15.3683637}, {38.6632502, 23.8943374}},
586 {{38.6632502, 23.8943374}, {40.1777149, 32.4203112}, {40.109652, 40.2122054}},
587 {{40.109652, 40.2122054}, {39.8437309, 49.9303489}, {42.588681, 58.5795625}},
588 {{42.588681, 58.5795625}, {45.3336311, 67.2287761}, {57.1660752, 74.8906876}},
589 {{57.1660752, 74.8906876}, {68.9985192, 82.5525991}, {95.99508, 89.3088364}},
590 </div>
591
592 <div id="cubic5x3">
593 {{74.7743754, 32.9274563}, {11.7577089, 11.8127863}, {37.4985242, 37.696964}, {7 2.8744837, 1.44809908}},
594 {{74.7743754, 32.9274563}, {60.7273344, 28.2207866}, {49.5992486, 25.6169692}},
595 {{49.5992486, 25.6169692}, {43.5981152, 24.2127874}, {37.944249, 23.3667683}},
596 {{37.944249, 23.3667683}, {35.9715145, 23.0715771}, {37.4878767, 22.7373028}},
597 {{37.4878767, 22.7373028}, {44.1459136, 21.2695724}, {50.3950023, 18.2059418}},
598 {{50.3950023, 18.2059418}, {62.1391178, 12.4483612}, {72.8744837, 1.44809908}},
599 </div>
600
601 <div id="cubic5x3x">
602 {{74.7743754, 32.9274563}, {11.7577089, 11.8127863}, {37.4985242, 37.696964}, {7 2.8744837, 1.44809908}},
603 {{74.7743754, 32.9274563}, {58.4980331, 27.5812922}, {49.5992486, 25.6169692}},
604 {{49.5992486, 25.6169692}, {40.7004642, 23.6526461}, {37.944249, 23.3667683}},
605 {{37.944249, 23.3667683}, {35.0992403, 23.0813479}, {37.4878767, 22.7373028}},
606 {{37.4878767, 22.7373028}, {40.7578786, 22.4379602}, {50.3950023, 18.2059418}},
607 {{50.3950023, 18.2059418}, {60.0321261, 13.9739234}, {72.8744837, 1.44809908}},
608 </div>
609
610 <div id="cubic5x4">
611 {{72.6117562, 85.7863012}, {10.3637705, 83.8910282}, {56.5110395, 81.0400843}, { 40.6969416, 93.4977145}},
612 {{72.6117562, 85.7863012}, {59.583082, 85.3896153}, {50.1257271, 84.8566602}},
613 {{50.1257271, 84.8566602}, {45.0042708, 84.5680481}, {40.4221343, 84.1941021}},
614 {{40.4221343, 84.1941021}, {38.6138335, 84.0465275}, {39.3498335, 84.2964765}},
615 {{39.3498335, 84.2964765}, {42.6031074, 85.4013033}, {43.6650027, 86.8548971}},
616 {{43.6650027, 86.8548971}, {45.661047, 89.587217}, {40.6969416, 93.4977145}},
617 </div>
618
619 <div id="cubic5x4x">
620 {{72.6117562, 85.7863012}, {10.3637705, 83.8910282}, {56.5110395, 81.0400843}, { 40.6969416, 93.4977145}},
621 {{72.6117562, 85.7863012}, {57.6253009, 85.3070124}, {50.1257271, 84.8566602}},
622 {{50.1257271, 84.8566602}, {42.6261532, 84.4063079}, {40.4221343, 84.1941021}},
623 {{40.4221343, 84.1941021}, {37.9777583, 83.9471466}, {39.3498335, 84.2964765}},
624 {{39.3498335, 84.2964765}, {41.4441267, 84.7344658}, {43.6650027, 86.8548971}},
625 {{43.6650027, 86.8548971}, {45.8858786, 88.9753284}, {40.6969416, 93.4977145}},
626 </div>
627
628 <div id="cubic5x5">
629 {{49.5466436, 30.4382438}, {75.5627334, 82.8610433}, {45.5550553, 43.8144668}, { 89.743077, 11.8944428}},
630 {{49.5466436, 30.4382438}, {54.1919031, 39.7985093}, {58.8653675, 50.331813}},
631 {{58.8653675, 50.331813}, {61.2282341, 55.6573679}, {61.7133948, 56.0247083}},
632 {{61.7133948, 56.0247083}, {62.1985554, 56.3920486}, {62.7466525, 53.2705356}},
633 {{62.7466525, 53.2705356}, {64.4490529, 43.5750541}, {68.2227928, 36.1296005}},
634 {{68.2227928, 36.1296005}, {75.1711506, 22.4207397}, {89.743077, 11.8944428}},
635 </div>
636
637 <div id="cubic5x5x">
638 {{49.5466436, 30.4382438}, {75.5627334, 82.8610433}, {45.5550553, 43.8144668}, { 89.743077, 11.8944428}},
639 {{49.5466436, 30.4382438}, {56.3292139, 44.3383274}, {58.8653675, 50.331813}},
640 {{58.8653675, 50.331813}, {61.106944, 55.5655329}, {61.7133948, 56.0247083}},
641 {{61.7133948, 56.0247083}, {62.3198455, 56.4838837}, {62.7466525, 53.2705356}},
642 {{62.7466525, 53.2705356}, {63.1064311, 47.7098594}, {68.2227928, 36.1296005}},
643 {{68.2227928, 36.1296005}, {73.3391545, 24.5493417}, {89.743077, 11.8944428}},
644 </div>
645
646 <div id="cubic5x6">
647 {{24.3042985, 82.344259}, {59.9615856, 74.3697725}, {32.7666043, 8.31767205}, {9 5.114078, 82.3081283}},
648 {{24.3042985, 82.344259}, {33.0316107, 80.3924607}, {38.6135161, 73.199581}},
649 {{38.6135161, 73.199581}, {41.8734961, 68.9987494}, {45.7986582, 59.6541823}},
650 {{45.7986582, 59.6541823}, {49.7161349, 50.3279117}, {52.6598645, 48.50717}},
651 {{52.6598645, 48.50717}, {57.3512738, 45.6054619}, {66.2796867, 52.394109}},
652 {{66.2796867, 52.394109}, {76.3758191, 60.0706222}, {95.114078, 82.3081283}},
653 </div>
654
655 <div id="cubic5x6x">
656 {{24.3042985, 82.344259}, {59.9615856, 74.3697725}, {32.7666043, 8.31767205}, {9 5.114078, 82.3081283}},
657 {{24.3042985, 82.344259}, {33.965356, 79.8151924}, {38.6135161, 73.199581}},
658 {{38.6135161, 73.199581}, {43.2616761, 66.5839696}, {45.7986582, 59.6541823}},
659 {{45.7986582, 59.6541823}, {48.5966015, 51.6963295}, {52.6598645, 48.50717}},
660 {{52.6598645, 48.50717}, {56.7231274, 45.3180106}, {66.2796867, 52.394109}},
661 {{66.2796867, 52.394109}, {75.8362459, 59.4702074}, {95.114078, 82.3081283}},
662 </div>
663
664 <div id="cubic5x7">
665 {{14.6365061, 95.7588134}, {18.3773411, 67.9719648}, {4.8126874, 86.837213}, {73 .0391371, 68.7771361}},
666 {{14.6365061, 95.7588134}, {15.2275148, 91.3688129}, {15.5044612, 85.7525859}},
667 {{15.5044612, 85.7525859}, {15.7576453, 80.618239}, {16.904617, 79.6508905}},
668 {{16.904617, 79.6508905}, {18.0515887, 78.683542}, {24.680235, 78.0137979}},
669 {{24.680235, 78.0137979}, {33.9302732, 77.0791942}, {41.7459023, 75.745697}},
670 {{41.7459023, 75.745697}, {55.7221394, 73.3610813}, {73.0391371, 68.7771361}},
671 </div>
672
673 <div id="cubic5x7x">
674 {{14.6365061, 95.7588134}, {18.3773411, 67.9719648}, {4.8126874, 86.837213}, {73 .0391371, 68.7771361}},
675 {{14.6365061, 95.7588134}, {15.4253236, 89.2562084}, {15.5044612, 85.7525859}},
676 {{15.5044612, 85.7525859}, {15.4709024, 80.8600761}, {16.904617, 79.6508905}},
677 {{16.904617, 79.6508905}, {18.3383317, 78.4417048}, {24.680235, 78.0137979}},
678 {{24.680235, 78.0137979}, {30.2055996, 77.5914828}, {41.7459023, 75.745697}},
679 {{41.7459023, 75.745697}, {53.2862049, 73.8999113}, {73.0391371, 68.7771361}},
680 </div>
681
682 <div id="cubic5x8">
683 {{11.3940197, 99.2884769}, {41.4314282, 38.0142946}, {6.25007991, 45.0930539}, { 78.9565565, 22.8458219}},
684 {{11.3940197, 99.2884769}, {17.9356966, 85.9439202}, {21.7417223, 74.0130457}},
685 {{21.7417223, 74.0130457}, {23.9251358, 67.1686272}, {26.0700343, 57.3329391}},
686 {{26.0700343, 57.3329391}, {28.2750992, 47.2213507}, {30.7090957, 43.764797}},
687 {{30.7090957, 43.764797}, {34.2237869, 38.7735329}, {44.5059747, 34.4313542}},
688 {{44.5059747, 34.4313542}, {53.4825656, 30.6405304}, {78.9565565, 22.8458219}},
689 </div>
690
691 <div id="cubic5x8x">
692 {{11.3940197, 99.2884769}, {41.4314282, 38.0142946}, {6.25007991, 45.0930539}, { 78.9565565, 22.8458219}},
693 {{11.3940197, 99.2884769}, {18.6635437, 84.168545}, {21.7417223, 74.0130457}},
694 {{21.7417223, 74.0130457}, {24.8199009, 63.8575464}, {26.0700343, 57.3329391}},
695 {{26.0700343, 57.3329391}, {27.5370962, 48.6793447}, {30.7090957, 43.764797}},
696 {{30.7090957, 43.764797}, {33.8810951, 38.8502494}, {44.5059747, 34.4313542}},
697 {{44.5059747, 34.4313542}, {55.1308542, 30.012459}, {78.9565565, 22.8458219}},
698 </div>
699
700 <div id="cubic5x9">
701 {{69.7292014, 38.6877352}, {24.7648688, 23.1501713}, {84.9283191, 90.2588441}, { 80.392774, 61.3533852}},
702 {{69.7292014, 38.6877352}, {57.2585085, 34.3784487}, {54.0073216, 37.8534623}},
703 {{54.0073216, 37.8534623}, {51.2791269, 40.7694784}, {55.3644243, 48.2785885}},
704 {{55.3644243, 48.2785885}, {59.0228346, 55.0030454}, {65.6488241, 61.3874162}},
705 {{65.6488241, 61.3874162}, {72.4185069, 67.9102405}, {76.7088359, 68.6042477}},
706 {{76.7088359, 68.6042477}, {81.6560742, 69.4045171}, {80.392774, 61.3533852}},
707 </div>
708
709 <div id="cubic5x9x">
710 {{69.7292014, 38.6877352}, {24.7648688, 23.1501713}, {84.9283191, 90.2588441}, { 80.392774, 61.3533852}},
711 {{69.7292014, 38.6877352}, {56.5795552, 34.3837867}, {54.0073216, 37.8534623}},
712 {{54.0073216, 37.8534623}, {51.4350879, 41.3231378}, {55.3644243, 48.2785885}},
713 {{55.3644243, 48.2785885}, {59.2937606, 55.2340392}, {65.6488241, 61.3874162}},
714 {{65.6488241, 61.3874162}, {72.0038877, 67.5407932}, {76.7088359, 68.6042477}},
715 {{76.7088359, 68.6042477}, {81.413784, 69.6677022}, {80.392774, 61.3533852}},
716 </div>
717
718 <div id="cubic6x0">
719 {{60.7765365, 71.2493073}, {87.1078942, 22.3776699}, {1.49747543, 68.0695699}, { 45.2619466, 17.5360766}},
720 {{60.7765365, 71.2493073}, {66.8034381, 60.063232}, {65.7606554, 53.9755229}},
721 {{65.7606554, 53.9755229}, {64.9026034, 48.9662616}, {59.0403561, 46.9365029}},
722 {{59.0403561, 46.9365029}, {55.5624487, 45.7323037}, {47.0319968, 45.0593685}},
723 {{47.0319968, 45.0593685}, {38.6438055, 44.3976557}, {35.915024, 43.1681828}},
724 {{35.915024, 43.1681828}, {31.4270492, 41.1460923}, {32.9921574, 35.8381417}},
725 {{32.9921574, 35.8381417}, {34.8405988, 29.5692874}, {45.2619466, 17.5360766}},
726 </div>
727
728 <div id="cubic6x0x">
729 {{60.7765365, 71.2493073}, {87.1078942, 22.3776699}, {1.49747543, 68.0695699}, { 45.2619466, 17.5360766}},
730 {{60.7765365, 71.2493073}, {66.9967453, 59.4196142}, {65.7606554, 53.9755229}},
731 {{65.7606554, 53.9755229}, {64.5245656, 48.5314316}, {59.0403561, 46.9365029}},
732 {{59.0403561, 46.9365029}, {53.5561467, 45.3415741}, {47.0319968, 45.0593685}},
733 {{47.0319968, 45.0593685}, {40.2998025, 44.7818435}, {35.915024, 43.1681828}},
734 {{35.915024, 43.1681828}, {31.5302455, 41.5545222}, {32.9921574, 35.8381417}},
735 {{32.9921574, 35.8381417}, {34.4540694, 30.1217612}, {45.2619466, 17.5360766}},
736 </div>
737
738 <div id="cubic6x1">
739 {{7.56463181, 38.7667716}, {53.1298274, 53.009038}, {22.9012888, 1.96013199}, {4 3.9383991, 72.6733402}},
740 {{7.56463181, 38.7667716}, {18.0499753, 42.0441646}, {24.9041761, 41.2832621}},
741 {{24.9041761, 41.2832621}, {30.0084481, 40.7166236}, {32.7855974, 37.9676099}},
742 {{32.7855974, 37.9676099}, {34.25762, 36.5105005}, {35.0000192, 34.4010014}},
743 {{35.0000192, 34.4010014}, {35.1477005, 33.9813707}, {35.2051475, 34.7029855}},
744 {{35.2051475, 34.7029855}, {35.5299907, 38.7834725}, {36.7160087, 44.7150792}},
745 {{36.7160087, 44.7150792}, {38.9607709, 55.9417619}, {43.9383991, 72.6733402}},
746 </div>
747
748 <div id="cubic6x1x">
749 {{7.56463181, 38.7667716}, {53.1298274, 53.009038}, {22.9012888, 1.96013199}, {4 3.9383991, 72.6733402}},
750 {{7.56463181, 38.7667716}, {19.0728251, 42.1807008}, {24.9041761, 41.2832621}},
751 {{24.9041761, 41.2832621}, {30.7355271, 40.3858233}, {32.7855974, 37.9676099}},
752 {{32.7855974, 37.9676099}, {34.8356678, 35.5493964}, {35.0000192, 34.4010014}},
753 {{35.0000192, 34.4010014}, {35.1702591, 33.6960593}, {35.2051475, 34.7029855}},
754 {{35.2051475, 34.7029855}, {35.1391248, 36.1152585}, {36.7160087, 44.7150792}},
755 {{36.7160087, 44.7150792}, {38.2928925, 53.3148999}, {43.9383991, 72.6733402}},
756 </div>
757
758 <div id="cubic6x2">
759 {{53.4808373, 52.4330519}, {42.3039286, 2.12741392}, {55.4457253, 76.3045082}, { 49.8689114, 46.7937026}},
760 {{53.4808373, 52.4330519}, {50.9719376, 41.1408598}, {49.8115514, 36.9274013}},
761 {{49.8115514, 36.9274013}, {48.82027, 33.3279765}, {48.8115145, 34.8928161}},
762 {{48.8115145, 34.8928161}, {48.8045445, 36.1385203}, {49.4292469, 40.7546742}},
763 {{49.4292469, 40.7546742}, {49.7879548, 43.4052983}, {50.613269, 48.9383534}},
764 {{50.613269, 48.9383534}, {51.3518777, 53.8901197}, {51.31236, 53.9808933}},
765 {{51.31236, 53.9808933}, {51.2529165, 54.1174374}, {49.8689114, 46.7937026}},
766 </div>
767
768 <div id="cubic6x2x">
769 {{53.4808373, 52.4330519}, {42.3039286, 2.12741392}, {55.4457253, 76.3045082}, { 49.8689114, 46.7937026}},
770 {{53.4808373, 52.4330519}, {50.8474472, 40.6156325}, {49.8115514, 36.9274013}},
771 {{49.8115514, 36.9274013}, {48.7756556, 33.2391701}, {48.8115145, 34.8928161}},
772 {{48.8115145, 34.8928161}, {48.8473733, 36.5464621}, {49.4292469, 40.7546742}},
773 {{49.4292469, 40.7546742}, {50.0111204, 44.9628863}, {50.613269, 48.9383534}},
774 {{50.613269, 48.9383534}, {51.3082301, 53.5085713}, {51.31236, 53.9808933}},
775 {{51.31236, 53.9808933}, {51.31649, 54.4532153}, {49.8689114, 46.7937026}},
776 </div>
777
778 <div id="cubic6x3">
779 {{30.270176, 50.8484091}, {9.21238377, 32.534054}, {99.8452993, 99.9447358}, {71 .1751053, 39.994736}},
780 {{30.270176, 50.8484091}, {26.1998702, 47.3083881}, {27.3542845, 47.6109361}},
781 {{27.3542845, 47.6109361}, {28.1421178, 47.8174109}, {33.7377536, 50.9254737}},
782 {{33.7377536, 50.9254737}, {43.6710144, 56.4428448}, {49.5826034, 59.2306974}},
783 {{49.5826034, 59.2306974}, {60.0794163, 64.1809007}, {66.5061178, 65.1608314}},
784 {{66.5061178, 65.1608314}, {74.7232814, 66.4137682}, {76.404788, 61.2406021}},
785 {{76.404788, 61.2406021}, {78.4000331, 55.1022173}, {71.1751053, 39.994736}},
786 </div>
787
788 <div id="cubic6x3x">
789 {{30.270176, 50.8484091}, {9.21238377, 32.534054}, {99.8452993, 99.9447358}, {71 .1751053, 39.994736}},
790 {{30.270176, 50.8484091}, {26.0151068, 47.1560011}, {27.3542845, 47.6109361}},
791 {{27.3542845, 47.6109361}, {28.6934622, 48.0658712}, {33.7377536, 50.9254737}},
792 {{33.7377536, 50.9254737}, {40.3775737, 54.7374488}, {49.5826034, 59.2306974}},
793 {{49.5826034, 59.2306974}, {58.787633, 63.723946}, {66.5061178, 65.1608314}},
794 {{66.5061178, 65.1608314}, {74.2246025, 66.5977168}, {76.404788, 61.2406021}},
795 {{76.404788, 61.2406021}, {78.5849735, 55.8834875}, {71.1751053, 39.994736}},
796 </div>
797
798 <div id="cubic6x4">
799 {{52.3256249, 36.7777584}, {23.7859194, 69.9470399}, {99.9000587, 20.2858463}, { 44.2180221, 72.2977287}},
800 {{52.3256249, 36.7777584}, {46.323817, 43.7531512}, {45.7451821, 46.7544892}},
801 {{45.7451821, 46.7544892}, {45.2655359, 49.2423797}, {48.551811, 49.2476269}},
802 {{48.551811, 49.2476269}, {50.5144448, 49.2507606}, {55.9087216, 48.0313516}},
803 {{55.9087216, 48.0313516}, {62.3329105, 46.5791247}, {63.9943433, 47.0044226}},
804 {{63.9943433, 47.0044226}, {66.7468982, 47.7090289}, {62.987381, 52.8381772}},
805 {{62.987381, 52.8381772}, {58.5075376, 58.9500739}, {44.2180221, 72.2977287}},
806 </div>
807
808 <div id="cubic6x4x">
809 {{52.3256249, 36.7777584}, {23.7859194, 69.9470399}, {99.9000587, 20.2858463}, { 44.2180221, 72.2977287}},
810 {{52.3256249, 36.7777584}, {46.0840368, 44.1087946}, {45.7451821, 46.7544892}},
811 {{45.7451821, 46.7544892}, {45.4063273, 49.4001838}, {48.551811, 49.2476269}},
812 {{48.551811, 49.2476269}, {51.6972946, 49.09507}, {55.9087216, 48.0313516}},
813 {{55.9087216, 48.0313516}, {61.1409519, 46.6483554}, {63.9943433, 47.0044226}},
814 {{63.9943433, 47.0044226}, {66.8477347, 47.3604898}, {62.987381, 52.8381772}},
815 {{62.987381, 52.8381772}, {59.1270273, 58.3158645}, {44.2180221, 72.2977287}},
816 </div>
817
818 <div id="cubic6x5">
819 {{42.9059103, 19.6341859}, {91.762872, 58.5903164}, {27.4474096, 8.61261101}, {5 2.1532298, 39.3337672}},
820 {{42.9059103, 19.6341859}, {54.1145994, 28.5714415}, {58.004639, 31.7917065}},
821 {{58.004639, 31.7917065}, {62.019725, 35.1154878}, {61.7728162, 35.2682181}},
822 {{61.7728162, 35.2682181}, {61.6064162, 35.3711481}, {58.4041375, 33.5820691}},
823 {{58.4041375, 33.5820691}, {53.244257, 30.6992989}, {50.8183004, 29.6863137}},
824 {{50.8183004, 29.6863137}, {46.5331956, 27.8970204}, {46.2915313, 29.5538521}},
825 {{46.2915313, 29.5538521}, {45.9839754, 31.662432}, {52.1532298, 39.3337672}},
826 </div>
827
828 <div id="cubic6x5x">
829 {{42.9059103, 19.6341859}, {91.762872, 58.5903164}, {27.4474096, 8.61261101}, {5 2.1532298, 39.3337672}},
830 {{42.9059103, 19.6341859}, {53.8121244, 28.322992}, {58.004639, 31.7917065}},
831 {{58.004639, 31.7917065}, {62.1971535, 35.260421}, {61.7728162, 35.2682181}},
832 {{61.7728162, 35.2682181}, {61.3484789, 35.2760153}, {58.4041375, 33.5820691}},
833 {{58.4041375, 33.5820691}, {54.7626269, 31.4620033}, {50.8183004, 29.6863137}},
834 {{50.8183004, 29.6863137}, {46.8739739, 27.9106241}, {46.2915313, 29.5538521}},
835 {{46.2915313, 29.5538521}, {45.7090887, 31.1970802}, {52.1532298, 39.3337672}},
836 </div>
837
838 <div id="cubic6x6">
839 {{73.4375576, 65.030414}, {66.1679208, 84.2450892}, {7.2134248, 36.0306381}, {66 .9352454, 80.6694031}},
840 {{73.4375576, 65.030414}, {71.5866063, 69.9227391}, {65.0188473, 69.7835224}},
841 {{65.0188473, 69.7835224}, {60.0105733, 69.677362}, {52.4355896, 66.6514651}},
842 {{52.4355896, 66.6514651}, {48.2960051, 64.9978699}, {42.4281173, 61.975806}},
843 {{42.4281173, 61.975806}, {40.1794784, 60.817718}, {40.5562709, 61.1722188}},
844 {{40.5562709, 61.1722188}, {40.9330633, 61.5267196}, {45.4424567, 64.8118124}},
845 {{45.4424567, 64.8118124}, {56.3732534, 72.774897}, {66.9352454, 80.6694031}},
846 </div>
847
848 <div id="cubic6x6x">
849 {{73.4375576, 65.030414}, {66.1679208, 84.2450892}, {7.2134248, 36.0306381}, {66 .9352454, 80.6694031}},
850 {{73.4375576, 65.030414}, {71.1118808, 70.1709551}, {65.0188473, 69.7835224}},
851 {{65.0188473, 69.7835224}, {58.9258137, 69.3960897}, {52.4355896, 66.6514651}},
852 {{52.4355896, 66.6514651}, {45.9453656, 63.9068405}, {42.4281173, 61.975806}},
853 {{42.4281173, 61.975806}, {40.0852803, 60.7290928}, {40.5562709, 61.1722188}},
854 {{40.5562709, 61.1722188}, {41.0272614, 61.6153448}, {45.4424567, 64.8118124}},
855 {{45.4424567, 64.8118124}, {51.3278432, 69.0492921}, {66.9352454, 80.6694031}},
856 </div>
857
858 <div id="cubic6x7">
859 {{46.6695473, 75.0819435}, {2.22400357, 78.828021}, {62.548768, 57.1436195}, {12 .8128845, 46.150303}},
860 {{46.6695473, 75.0819435}, {36.8374139, 75.9106415}, {32.735691, 75.1220326}},
861 {{32.735691, 75.1220326}, {29.1601585, 74.4345905}, {29.1402184, 72.2922743}},
862 {{29.1402184, 72.2922743}, {29.1278273, 70.9609985}, {31.0504514, 67.4052326}},
863 {{31.0504514, 67.4052326}, {33.5289159, 62.8214769}, {33.7777617, 60.3248048}},
864 {{33.7777617, 60.3248048}, {34.2044612, 56.0437252}, {30.1210496, 52.8325143}},
865 {{30.1210496, 52.8325143}, {25.0685705, 48.8592251}, {12.8128845, 46.150303}},
866 </div>
867
868 <div id="cubic6x7x">
869 {{46.6695473, 75.0819435}, {2.22400357, 78.828021}, {62.548768, 57.1436195}, {12 .8128845, 46.150303}},
870 {{46.6695473, 75.0819435}, {36.5139384, 75.9210204}, {32.735691, 75.1220326}},
871 {{32.735691, 75.1220326}, {28.9574435, 74.3230448}, {29.1402184, 72.2922743}},
872 {{29.1402184, 72.2922743}, {29.3229933, 70.2615038}, {31.0504514, 67.4052326}},
873 {{31.0504514, 67.4052326}, {33.1016834, 64.1207271}, {33.7777617, 60.3248048}},
874 {{33.7777617, 60.3248048}, {34.45384, 56.5288825}, {30.1210496, 52.8325143}},
875 {{30.1210496, 52.8325143}, {25.7882591, 49.1361461}, {12.8128845, 46.150303}},
876 </div>
877
878 <div id="cubic6x8">
879 {{55.3467924, 13.540705}, {78.628494, 9.09824134}, {14.1422475, 88.7534345}, {78 .9736115, 9.48816133}},
880 {{55.3467924, 13.540705}, {60.6017653, 12.5379851}, {60.6776079, 17.0952733}},
881 {{60.6776079, 17.0952733}, {60.7373059, 20.6824519}, {57.5541656, 27.8149349}},
882 {{57.5541656, 27.8149349}, {55.7485732, 31.8607373}, {51.7778474, 39.2052874}},
883 {{51.7778474, 39.2052874}, {48.7947857, 44.7229805}, {49.1759091, 44.7804774}},
884 {{49.1759091, 44.7804774}, {49.7203899, 44.8626187}, {56.152876, 37.2125188}},
885 {{56.152876, 37.2125188}, {61.4648441, 30.8950413}, {78.9736115, 9.48816133}},
886 </div>
887
888 <div id="cubic6x8x">
889 {{55.3467924, 13.540705}, {78.628494, 9.09824134}, {14.1422475, 88.7534345}, {78 .9736115, 9.48816133}},
890 {{55.3467924, 13.540705}, {60.8509374, 12.7149155}, {60.6776079, 17.0952733}},
891 {{60.6776079, 17.0952733}, {60.5042785, 21.475631}, {57.5541656, 27.8149349}},
892 {{57.5541656, 27.8149349}, {54.6040527, 34.1542387}, {51.7778474, 39.2052874}},
893 {{51.7778474, 39.2052874}, {48.8652599, 44.4020133}, {49.1759091, 44.7804774}},
894 {{49.1759091, 44.7804774}, {49.4865584, 45.1589416}, {56.152876, 37.2125188}},
895 {{56.152876, 37.2125188}, {62.8191937, 29.2660961}, {78.9736115, 9.48816133}},
896 </div>
897
898 <div id="cubic6x9">
899 {{6.436938, 85.6170305}, {65.4323691, 21.8280372}, {63.8217439, 52.0501321}, {6. 57091737, 37.4082543}},
900 {{6.436938, 85.6170305}, {18.3889022, 72.6939321}, {29.5730232, 62.1640306}},
901 {{29.5730232, 62.1640306}, {35.8331919, 56.2700528}, {44.0352491, 49.2100734}},
902 {{44.0352491, 49.2100734}, {50.0664784, 44.0186496}, {50.0976641, 43.1465107}},
903 {{50.0976641, 43.1465107}, {50.1288498, 42.2743718}, {44.2847347, 42.2329622}},
904 {{44.2847347, 42.2329622}, {36.0580615, 42.1746705}, {29.7656368, 41.5603994}},
905 {{29.7656368, 41.5603994}, {18.5096561, 40.4615824}, {6.57091737, 37.4082543}},
906 </div>
907
908 <div id="cubic6x9x">
909 {{6.436938, 85.6170305}, {65.4323691, 21.8280372}, {63.8217439, 52.0501321}, {6. 57091737, 37.4082543}},
910 {{6.436938, 85.6170305}, {20.1874324, 70.8746109}, {29.5730232, 62.1640306}},
911 {{29.5730232, 62.1640306}, {38.958614, 53.4534502}, {44.0352491, 49.2100734}},
912 {{44.0352491, 49.2100734}, {50.058682, 44.2366844}, {50.0976641, 43.1465107}},
913 {{50.0976641, 43.1465107}, {50.1366462, 42.0563371}, {44.2847347, 42.2329622}},
914 {{44.2847347, 42.2329622}, {39.2093652, 42.3394209}, {29.7656368, 41.5603994}},
915 {{29.7656368, 41.5603994}, {20.3219083, 40.7813779}, {6.57091737, 37.4082543}},
916 </div>
917
918 <div id="cubic7x0">
919 {{47.0675449, 64.2273128}, {68.4467872, 85.1524572}, {57.3478562, 45.4193099}, { 62.340955, 64.4298956}},
920 {{47.0675449, 64.2273128}, {52.2209452, 69.2712543}, {55.5069225, 70.2618397}},
921 {{55.5069225, 70.2618397}, {58.2344663, 71.0840808}, {59.6132451, 69.0985913}},
922 {{59.6132451, 69.0985913}, {60.6680756, 67.5795987}, {60.901578, 64.4621115}},
923 {{60.901578, 64.4621115}, {61.029698, 62.7515845}, {60.8869865, 60.0769443}},
924 {{60.8869865, 60.0769443}, {60.8258684, 58.931493}, {60.9363129, 59.2030029}},
925 {{60.9363129, 59.2030029}, {61.0467573, 59.4745129}, {61.7705423, 62.2490239}},
926 {{61.7705423, 62.2490239}, {62.1209644, 63.5923097}, {62.340955, 64.4298956}},
927 </div>
928
929 <div id="cubic7x0x">
930 {{47.0675449, 64.2273128}, {68.4467872, 85.1524572}, {57.3478562, 45.4193099}, { 62.340955, 64.4298956}},
931 {{47.0675449, 64.2273128}, {52.5598806, 69.5095881}, {55.5069225, 70.2618397}},
932 {{55.5069225, 70.2618397}, {58.4539644, 71.0140913}, {59.6132451, 69.0985913}},
933 {{59.6132451, 69.0985913}, {60.7725259, 67.1830912}, {60.901578, 64.4621115}},
934 {{60.901578, 64.4621115}, {61.0306302, 61.7411317}, {60.8869865, 60.0769443}},
935 {{60.8869865, 60.0769443}, {60.7982573, 58.8636155}, {60.9363129, 59.2030029}},
936 {{60.9363129, 59.2030029}, {61.0743684, 59.5423904}, {61.7705423, 62.2490239}},
937 {{61.7705423, 62.2490239}, {62.0120077, 63.1760698}, {62.340955, 64.4298956}},
938 </div>
939
940 <div id="cubic7x1">
941 {{44.6639438, 66.9040647}, {56.6149349, 27.2102873}, {23.2993796, 92.6723405}, { 44.026369, 51.1832799}},
942 {{44.6639438, 66.9040647}, {47.1627908, 58.6044453}, {47.3201686, 55.4528932}},
943 {{47.3201686, 55.4528932}, {47.4533435, 52.7860125}, {45.9070214, 53.8259442}},
944 {{45.9070214, 53.8259442}, {44.6909451, 54.6437792}, {42.4058247, 57.7914576}},
945 {{42.4058247, 57.7914576}, {41.1108979, 59.5751769}, {38.7979012, 63.1176732}},
946 {{38.7979012, 63.1176732}, {37.2505608, 65.4875199}, {37.097116, 65.5770977}},
947 {{37.097116, 65.5770977}, {36.8720355, 65.7084948}, {38.3585854, 62.6270533}},
948 {{38.3585854, 62.6270533}, {39.7438195, 59.7556272}, {44.026369, 51.1832799}},
949 </div>
950
951 <div id="cubic7x1x">
952 {{44.6639438, 66.9040647}, {56.6149349, 27.2102873}, {23.2993796, 92.6723405}, { 44.026369, 51.1832799}},
953 {{44.6639438, 66.9040647}, {47.2570645, 58.1934532}, {47.3201686, 55.4528932}},
954 {{47.3201686, 55.4528932}, {47.3832726, 52.7123331}, {45.9070214, 53.8259442}},
955 {{45.9070214, 53.8259442}, {44.4307701, 54.9395554}, {42.4058247, 57.7914576}},
956 {{42.4058247, 57.7914576}, {40.3808794, 60.6433599}, {38.7979012, 63.1176732}},
957 {{38.7979012, 63.1176732}, {37.3874524, 65.3142201}, {37.097116, 65.5770977}},
958 {{37.097116, 65.5770977}, {36.8067796, 65.8399752}, {38.3585854, 62.6270533}},
959 {{38.3585854, 62.6270533}, {39.9103912, 59.4141313}, {44.026369, 51.1832799}},
960 </div>
961
962 <div id="cubic7x2">
963 {{8.53545089, 55.3230609}, {14.6846658, 5.17757498}, {19.5026836, 81.6040195}, { 18.7564744, 40.0648544}},
964 {{8.53545089, 55.3230609}, {9.80938657, 44.9343975}, {11.1496907, 40.6303968}},
965 {{11.1496907, 40.6303968}, {12.2999484, 36.9366756}, {13.510145, 37.7040519}},
966 {{13.510145, 37.7040519}, {14.4789672, 38.3183745}, {15.5359245, 41.871143}},
967 {{15.5359245, 41.871143}, {16.1464176, 43.9232035}, {17.1461401, 48.4587871}},
968 {{17.1461401, 48.4587871}, {17.9290951, 52.0109309}, {18.2017805, 52.6665884}},
969 {{18.2017805, 52.6665884}, {18.6299694, 53.6961462}, {18.7604053, 51.1306715}},
970 {{18.7604053, 51.1306715}, {18.904388, 48.2987505}, {18.7564744, 40.0648544}},
971 </div>
972
973 <div id="cubic7x2x">
974 {{8.53545089, 55.3230609}, {14.6846658, 5.17757498}, {19.5026836, 81.6040195}, { 18.7564744, 40.0648544}},
975 {{8.53545089, 55.3230609}, {9.89590602, 44.4510387}, {11.1496907, 40.6303968}},
976 {{11.1496907, 40.6303968}, {12.4034754, 36.8097549}, {13.510145, 37.7040519}},
977 {{13.510145, 37.7040519}, {14.6168146, 38.5983488}, {15.5359245, 41.871143}},
978 {{15.5359245, 41.871143}, {16.4550345, 45.1439372}, {17.1461401, 48.4587871}},
979 {{17.1461401, 48.4587871}, {17.7900216, 51.5253445}, {18.2017805, 52.6665884}},
980 {{18.2017805, 52.6665884}, {18.6135393, 53.8078322}, {18.7604053, 51.1306715}},
981 {{18.7604053, 51.1306715}, {18.9072713, 48.4535108}, {18.7564744, 40.0648544}},
982 </div>
983
984 <div id="cubic7x3">
985 {{77.2429303, 21.9290386}, {61.3518447, 40.4530391}, {94.2286334, 0.642292155}, {95.0042533, 36.4855481}},
986 {{77.2429303, 21.9290386}, {76.5648343, 22.7194849}, {75.4687566, 23.992131}},
987 {{75.4687566, 23.992131}, {73.1344126, 26.702517}, {72.9524614, 27.0039848}},
988 {{72.9524614, 27.0039848}, {72.7705102, 27.3054527}, {74.013147, 26.4038735}},
989 {{74.013147, 26.4038735}, {76.9396956, 24.2805538}, {79.071521, 23.1293275}},
990 {{79.071521, 23.1293275}, {82.9580525, 21.0305265}, {85.9547875, 20.9037075}},
991 {{85.9547875, 20.9037075}, {89.8728448, 20.737899}, {92.1150103, 23.9485892}},
992 {{92.1150103, 23.9485892}, {94.8166786, 27.8172686}, {95.0042533, 36.4855481}},
993 </div>
994
995 <div id="cubic7x3x">
996 {{77.2429303, 21.9290386}, {61.3518447, 40.4530391}, {94.2286334, 0.642292155}, {95.0042533, 36.4855481}},
997 {{77.2429303, 21.9290386}, {76.2273572, 23.1121054}, {75.4687566, 23.992131}},
998 {{75.4687566, 23.992131}, {73.1799004, 26.6271501}, {72.9524614, 27.0039848}},
999 {{72.9524614, 27.0039848}, {72.7250224, 27.3808196}, {74.013147, 26.4038735}},
1000 {{74.013147, 26.4038735}, {75.7676189, 25.0320659}, {79.071521, 23.1293275}},
1001 {{79.071521, 23.1293275}, {82.3754232, 21.226589}, {85.9547875, 20.9037075}},
1002 {{85.9547875, 20.9037075}, {89.5341519, 20.580826}, {92.1150103, 23.9485892}},
1003 {{92.1150103, 23.9485892}, {94.6958688, 27.3163524}, {95.0042533, 36.4855481}},
1004 </div>
1005
1006 <div id="cubic7x4">
1007 {{85.1880251, 55.1384624}, {12.1381459, 5.8187271}, {95.3464197, 87.2766355}, {5 8.4136199, 57.7104629}},
1008 {{85.1880251, 55.1384624}, {69.4954757, 44.5436142}, {61.7319269, 40.861468}},
1009 {{61.7319269, 40.861468}, {55.009991, 37.6733448}, {54.1223283, 39.6260005}},
1010 {{54.1223283, 39.6260005}, {53.4043154, 41.2054652}, {56.5289517, 46.3315706}},
1011 {{56.5289517, 46.3315706}, {58.3527212, 49.323546}, {63.1215192, 55.8776895}},
1012 {{63.1215192, 55.8776895}, {66.7797089, 60.9054346}, {67.68997, 62.4640064}},
1013 {{67.68997, 62.4640064}, {69.1578236, 64.9773019}, {67.3518779, 64.1520255}},
1014 {{67.3518779, 64.1520255}, {65.2740366, 63.2024988}, {58.4136199, 57.7104629}},
1015 </div>
1016
1017 <div id="cubic7x4x">
1018 {{85.1880251, 55.1384624}, {12.1381459, 5.8187271}, {95.3464197, 87.2766355}, {5 8.4136199, 57.7104629}},
1019 {{85.1880251, 55.1384624}, {68.7695663, 44.1020224}, {61.7319269, 40.861468}},
1020 {{61.7319269, 40.861468}, {54.6942874, 37.6209137}, {54.1223283, 39.6260005}},
1021 {{54.1223283, 39.6260005}, {53.5503693, 41.6310872}, {56.5289517, 46.3315706}},
1022 {{56.5289517, 46.3315706}, {59.5075341, 51.032054}, {63.1215192, 55.8776895}},
1023 {{63.1215192, 55.8776895}, {66.1706775, 59.9915119}, {67.68997, 62.4640064}},
1024 {{67.68997, 62.4640064}, {69.2092626, 64.9365008}, {67.3518779, 64.1520255}},
1025 {{67.3518779, 64.1520255}, {65.4944933, 63.3675501}, {58.4136199, 57.7104629}},
1026 </div>
1027
1028 <div id="cubic7x5">
1029 {{8.65591127, 79.9006976}, {91.0247206, 52.4786449}, {8.58452539, 80.1182901}, { 48.1023732, 56.5861463}},
1030 {{8.65591127, 79.9006976}, {10.1949106, 79.3883372}, {13.1021747, 78.4205896}},
1031 {{13.1021747, 78.4205896}, {33.3914306, 71.6668594}, {38.6134953, 69.8848279}},
1032 {{38.6134953, 69.8848279}, {45.9243859, 67.3899838}, {46.7629899, 66.8658296}},
1033 {{46.7629899, 66.8658296}, {47.3619928, 66.4914338}, {44.5359397, 66.7758818}},
1034 {{44.5359397, 66.7758818}, {40.3498242, 67.197223}, {38.6707421, 67.0021236}},
1035 {{38.6707421, 67.0021236}, {35.6941333, 66.6562593}, {37.1605001, 64.6054153}},
1036 {{37.1605001, 64.6054153}, {39.032712, 61.9869609}, {48.1023732, 56.5861463}},
1037 </div>
1038
1039 <div id="cubic7x5x">
1040 {{8.65591127, 79.9006976}, {91.0247206, 52.4786449}, {8.58452539, 80.1182901}, { 48.1023732, 56.5861463}},
1041 {{8.65591127, 79.9006976}, {10.9639426, 79.1323302}, {13.1021747, 78.4205896}},
1042 {{13.1021747, 78.4205896}, {31.0714516, 72.4500538}, {38.6134953, 69.8848279}},
1043 {{38.6134953, 69.8848279}, {46.155539, 67.319602}, {46.7629899, 66.8658296}},
1044 {{46.7629899, 66.8658296}, {47.3704409, 66.4120572}, {44.5359397, 66.7758818}},
1045 {{44.5359397, 66.7758818}, {41.5267469, 67.1697889}, {38.6707421, 67.0021236}},
1046 {{38.6707421, 67.0021236}, {35.8147372, 66.8344583}, {37.1605001, 64.6054153}},
1047 {{37.1605001, 64.6054153}, {38.5062629, 62.3763723}, {48.1023732, 56.5861463}},
1048 </div>
1049
1050 <div id="cubic7x6">
1051 {{42.8441148, 81.0382013}, {9.0486696, 80.9900212}, {99.2855478, 92.2020003}, {3 9.0193165, 97.6524087}},
1052 {{42.8441148, 81.0382013}, {36.5292256, 81.0291985}, {35.3205259, 81.5652507}},
1053 {{35.3205259, 81.5652507}, {34.274399, 82.0292026}, {36.9288084, 83.0293311}},
1054 {{36.9288084, 83.0293311}, {38.5699459, 83.647679}, {43.916545, 85.1977854}},
1055 {{43.916545, 85.1977854}, {50.735588, 87.1747884}, {53.7318941, 88.2602772}},
1056 {{53.7318941, 88.2602772}, {58.8545207, 90.11608}, {59.9920782, 91.5927712}},
1057 {{59.9920782, 91.5927712}, {61.3953813, 93.4144333}, {56.9901885, 94.8414282}},
1058 {{56.9901885, 94.8414282}, {51.9120881, 96.4864013}, {39.0193165, 97.6524087}},
1059 </div>
1060
1061 <div id="cubic7x6x">
1062 {{42.8441148, 81.0382013}, {9.0486696, 80.9900212}, {99.2855478, 92.2020003}, {3 9.0193165, 97.6524087}},
1063 {{42.8441148, 81.0382013}, {36.3303003, 81.0383861}, {35.3205259, 81.5652507}},
1064 {{35.3205259, 81.5652507}, {34.3107514, 82.0921153}, {36.9288084, 83.0293311}},
1065 {{36.9288084, 83.0293311}, {39.5468653, 83.9665469}, {43.916545, 85.1977854}},
1066 {{43.916545, 85.1977854}, {48.9996472, 86.6173008}, {53.7318941, 88.2602772}},
1067 {{53.7318941, 88.2602772}, {58.4641409, 89.9032535}, {59.9920782, 91.5927712}},
1068 {{59.9920782, 91.5927712}, {61.5200154, 93.2822889}, {56.9901885, 94.8414282}},
1069 {{56.9901885, 94.8414282}, {52.4603617, 96.4005675}, {39.0193165, 97.6524087}},
1070 </div>
1071
1072 <div id="cubic7x7">
1073 {{70.2955832, 57.867012}, {70.8709129, 27.4331047}, {68.1912432, 90.2241446}, {9 7.1991291, 25.763215}},
1074 {{70.2955832, 57.867012}, {70.3286385, 56.1184463}, {70.3691418, 53.5027125}},
1075 {{70.3691418, 53.5027125}, {70.4294268, 49.6094598}, {70.5008735, 49.1586526}},
1076 {{70.5008735, 49.1586526}, {70.5723202, 48.7078455}, {70.9407155, 49.8962556}},
1077 {{70.9407155, 49.8962556}, {71.8329974, 52.7746761}, {72.7964345, 54.1820074}},
1078 {{72.7964345, 54.1820074}, {74.5546706, 56.7503333}, {77.0780289, 56.0896348}},
1079 {{77.0780289, 56.0896348}, {80.3799099, 55.2250934}, {84.85557, 48.8673125}},
1080 {{84.85557, 48.8673125}, {90.2513448, 41.2024868}, {97.1991291, 25.763215}},
1081 </div>
1082
1083 <div id="cubic7x7x">
1084 {{70.2955832, 57.867012}, {70.8709129, 27.4331047}, {68.1912432, 90.2241446}, {9 7.1991291, 25.763215}},
1085 {{70.2955832, 57.867012}, {70.3435094, 55.2546173}, {70.3691418, 53.5027125}},
1086 {{70.3691418, 53.5027125}, {70.4115651, 49.7221615}, {70.5008735, 49.1586526}},
1087 {{70.5008735, 49.1586526}, {70.5901819, 48.5951437}, {70.9407155, 49.8962556}},
1088 {{70.9407155, 49.8962556}, {71.3958651, 51.7896844}, {72.7964345, 54.1820074}},
1089 {{72.7964345, 54.1820074}, {74.1970039, 56.5743304}, {77.0780289, 56.0896348}},
1090 {{77.0780289, 56.0896348}, {79.9590538, 55.6049393}, {84.85557, 48.8673125}},
1091 {{84.85557, 48.8673125}, {89.7520861, 42.1296858}, {97.1991291, 25.763215}},
1092 </div>
1093
1094 <div id="cubic7x8">
1095 {{50.528201, 27.4745214}, {64.2810473, 71.5620589}, {43.5236709, 2.33669765}, {7 2.8774712, 51.6581711}},
1096 {{50.528201, 27.4745214}, {53.3761101, 36.6040713}, {54.38742, 39.6099548}},
1097 {{54.38742, 39.6099548}, {55.5064406, 42.9359834}, {55.7720854, 42.9677817}},
1098 {{55.7720854, 42.9677817}, {55.9546136, 42.9896307}, {55.8827854, 40.8375726}},
1099 {{55.8827854, 40.8375726}, {55.7725733, 37.5354848}, {55.9802468, 35.9707481}},
1100 {{55.9802468, 35.9707481}, {56.3474228, 33.2042239}, {57.7009449, 33.0167369}},
1101 {{57.7009449, 33.0167369}, {59.424989, 32.7779259}, {62.7612346, 36.6782932}},
1102 {{62.7612346, 36.6782932}, {66.7088662, 41.293425}, {72.8774712, 51.6581711}},
1103 </div>
1104
1105 <div id="cubic7x8x">
1106 {{50.528201, 27.4745214}, {64.2810473, 71.5620589}, {43.5236709, 2.33669765}, {7 2.8774712, 51.6581711}},
1107 {{50.528201, 27.4745214}, {53.2265224, 36.1478361}, {54.38742, 39.6099548}},
1108 {{54.38742, 39.6099548}, {55.5483175, 43.0720735}, {55.7720854, 42.9677817}},
1109 {{55.7720854, 42.9677817}, {55.9958532, 42.8634898}, {55.8827854, 40.8375726}},
1110 {{55.8827854, 40.8375726}, {55.7402514, 38.5138013}, {55.9802468, 35.9707481}},
1111 {{55.9802468, 35.9707481}, {56.2202423, 33.4276949}, {57.7009449, 33.0167369}},
1112 {{57.7009449, 33.0167369}, {59.1816474, 32.6057789}, {62.7612346, 36.6782932}},
1113 {{62.7612346, 36.6782932}, {66.3408218, 40.7508075}, {72.8774712, 51.6581711}},
1114 </div>
1115
1116 <div id="cubic7x9">
1117 {{30.3413925, 47.7835835}, {98.6874047, 39.210338}, {8.15117029, 96.7190508}, {5 7.0872154, 64.8290379}},
1118 {{30.3413925, 47.7835835}, {46.0782555, 45.8095694}, {52.5540659, 48.2453346}},
1119 {{52.5540659, 48.2453346}, {57.9511897, 50.2753703}, {56.8130484, 55.3244869}},
1120 {{56.8130484, 55.3244869}, {55.9369414, 59.2111449}, {51.1961195, 64.811489}},
1121 {{51.1961195, 64.811489}, {48.5753558, 67.9074035}, {43.7810591, 72.4967897}},
1122 {{43.7810591, 72.4967897}, {41.2648644, 74.905441}, {42.230691, 74.4021224}},
1123 {{42.230691, 74.4021224}, {43.1965176, 73.8988039}, {51.5076718, 68.470241}},
1124 {{51.5076718, 68.470241}, {54.9756852, 66.2050527}, {57.0872154, 64.8290379}},
1125 </div>
1126
1127 <div id="cubic7x9x">
1128 {{30.3413925, 47.7835835}, {98.6874047, 39.210338}, {8.15117029, 96.7190508}, {5 7.0872154, 64.8290379}},
1129 {{30.3413925, 47.7835835}, {46.9458744, 45.8339148}, {52.5540659, 48.2453346}},
1130 {{52.5540659, 48.2453346}, {58.1622574, 50.6567543}, {56.8130484, 55.3244869}},
1131 {{56.8130484, 55.3244869}, {55.4638393, 59.9922194}, {51.1961195, 64.811489}},
1132 {{51.1961195, 64.811489}, {46.9283998, 69.6307587}, {43.7810591, 72.4967897}},
1133 {{43.7810591, 72.4967897}, {41.0234077, 75.0312707}, {42.230691, 74.4021224}},
1134 {{42.230691, 74.4021224}, {43.4379742, 73.7729742}, {51.5076718, 68.470241}},
1135 {{51.5076718, 68.470241}, {53.9259122, 66.8899375}, {57.0872154, 64.8290379}},
1136 </div>
1137
1138 <div id="cubic8x0">
1139 {{42.5967063, 22.8420382}, {6.13525533, 15.2363991}, {78.1588409, 15.6382141}, { 31.4640028, 15.4944166}},
1140 {{42.5967063, 22.8420382}, {34.7914244, 21.2139034}, {32.6593413, 19.878761}},
1141 {{32.6593413, 19.878761}, {30.8695713, 18.7579803}, {33.1023831, 17.8591237}},
1142 {{33.1023831, 17.8591237}, {34.8391625, 17.1599535}, {39.0195021, 16.5984277}},
1143 {{39.0195021, 16.5984277}, {41.3590736, 16.2841638}, {45.5043686, 15.9119743}},
1144 {{45.5043686, 15.9119743}, {47.7538437, 15.7100029}, {47.8024311, 15.6545014}},
1145 {{47.8024311, 15.6545014}, {47.8704535, 15.5767993}, {44.9932779, 15.5487509}},
1146 {{44.9932779, 15.5487509}, {42.9381525, 15.5287163}, {34.6690635, 15.5040796}},
1147 {{34.6690635, 15.5040796}, {32.6017407, 15.4979203}, {31.4640028, 15.4944166}},
1148 </div>
1149
1150 <div id="cubic8x0x">
1151 {{42.5967063, 22.8420382}, {6.13525533, 15.2363991}, {78.1588409, 15.6382141}, { 31.4640028, 15.4944166}},
1152 {{42.5967063, 22.8420382}, {34.4196308, 21.1014023}, {32.6593413, 19.878761}},
1153 {{32.6593413, 19.878761}, {30.8990517, 18.6561197}, {33.1023831, 17.8591237}},
1154 {{33.1023831, 17.8591237}, {35.3057145, 17.0621277}, {39.0195021, 16.5984277}},
1155 {{39.0195021, 16.5984277}, {42.7332897, 16.1347277}, {45.5043686, 15.9119743}},
1156 {{45.5043686, 15.9119743}, {47.6292231, 15.7339768}, {47.8024311, 15.6545014}},
1157 {{47.8024311, 15.6545014}, {47.9756391, 15.575026}, {44.9932779, 15.5487509}},
1158 {{44.9932779, 15.5487509}, {42.0109167, 15.5224759}, {34.6690635, 15.5040796}},
1159 {{34.6690635, 15.5040796}, {33.169788, 15.4996412}, {31.4640028, 15.4944166}},
1160 </div>
1161
1162 <div id="cubic8x1">
1163 {{29.0323957, 47.4745379}, {4.55778772, 2.73824763}, {21.7278637, 80.2053625}, { 11.5269861, 34.0549996}},
1164 {{29.0323957, 47.4745379}, {23.6693619, 37.6716337}, {20.3221199, 34.4936205}},
1165 {{20.3221199, 34.4936205}, {17.5126817, 31.826221}, {16.162445, 33.8631071}},
1166 {{16.162445, 33.8631071}, {15.1123784, 35.4471745}, {14.9546458, 39.8886357}},
1167 {{14.9546458, 39.8886357}, {14.8663892, 42.3737787}, {15.0999972, 46.8758445}},
1168 {{15.0999972, 46.8758445}, {15.2259779, 49.3037298}, {15.1224749, 49.3309043}},
1169 {{15.1224749, 49.3309043}, {14.9775707, 49.3689487}, {14.2215808, 46.1220869}},
1170 {{14.2215808, 46.1220869}, {13.6815881, 43.8028999}, {11.62512, 34.4989774}},
1171 {{11.62512, 34.4989774}, {11.559983, 34.2042829}, {11.5269861, 34.0549996}},
1172 </div>
1173
1174 <div id="cubic8x1x">
1175 {{29.0323957, 47.4745379}, {4.55778772, 2.73824763}, {21.7278637, 80.2053625}, { 11.5269861, 34.0549996}},
1176 {{29.0323957, 47.4745379}, {23.339767, 37.184683}, {20.3221199, 34.4936205}},
1177 {{20.3221199, 34.4936205}, {17.3044729, 31.802558}, {16.162445, 33.8631071}},
1178 {{16.162445, 33.8631071}, {15.0204171, 35.9236561}, {14.9546458, 39.8886357}},
1179 {{14.9546458, 39.8886357}, {14.8888745, 43.8536153}, {15.0999972, 46.8758445}},
1180 {{15.0999972, 46.8758445}, {15.2455546, 49.1755419}, {15.1224749, 49.3309043}},
1181 {{15.1224749, 49.3309043}, {14.9993952, 49.4862668}, {14.2215808, 46.1220869}},
1182 {{14.2215808, 46.1220869}, {13.4437665, 42.757907}, {11.62512, 34.4989774}},
1183 {{11.62512, 34.4989774}, {11.5764809, 34.2789225}, {11.5269861, 34.0549996}},
1184 </div>
1185
1186 <div id="cubic8x2">
1187 {{30.5187597, 28.7944151}, {47.7341773, 68.3182353}, {24.579915, 14.6321317}, {2 2.237118, 39.2417454}},
1188 {{30.5187597, 28.7944151}, {30.823715, 29.4945431}, {31.3959629, 30.8080078}},
1189 {{31.3959629, 30.8080078}, {34.9281707, 38.9153861}, {35.7821411, 40.9504208}},
1190 {{35.7821411, 40.9504208}, {36.9776996, 43.7994693}, {36.8148424, 43.845334}},
1191 {{36.8148424, 43.845334}, {36.6985159, 43.8780945}, {35.3792396, 41.9741019}},
1192 {{35.3792396, 41.9741019}, {33.3589087, 39.0583404}, {32.0725075, 37.4554574}},
1193 {{32.0725075, 37.4554574}, {29.7893226, 34.6105606}, {28.0338583, 33.4024856}},
1194 {{28.0338583, 33.4024856}, {25.7901854, 31.8584352}, {24.3823693, 32.9522328}},
1195 {{24.3823693, 32.9522328}, {22.7123482, 34.2497498}, {22.237118, 39.2417454}},
1196 </div>
1197
1198 <div id="cubic8x2x">
1199 {{30.5187597, 28.7944151}, {47.7341773, 68.3182353}, {24.579915, 14.6321317}, {2 2.237118, 39.2417454}},
1200 {{30.5187597, 28.7944151}, {30.9761076, 29.8443688}, {31.3959629, 30.8080078}},
1201 {{31.3959629, 30.8080078}, {34.5380678, 38.0012585}, {35.7821411, 40.9504208}},
1202 {{35.7821411, 40.9504208}, {37.0262144, 43.899583}, {36.8148424, 43.845334}},
1203 {{36.8148424, 43.845334}, {36.6034705, 43.791085}, {35.3792396, 41.9741019}},
1204 {{35.3792396, 41.9741019}, {34.0487375, 39.9904922}, {32.0725075, 37.4554574}},
1205 {{32.0725075, 37.4554574}, {30.0962775, 34.9204225}, {28.0338583, 33.4024856}},
1206 {{28.0338583, 33.4024856}, {25.9714391, 31.8845487}, {24.3823693, 32.9522328}},
1207 {{24.3823693, 32.9522328}, {22.7932996, 34.019917}, {22.237118, 39.2417454}},
1208 </div>
1209
1210 <div id="cubic8x3">
1211 {{44.0194731, 35.2849254}, {33.7413378, 90.6639866}, {89.6236054, 3.93610117}, { 54.0523993, 58.6752083}},
1212 {{44.0194731, 35.2849254}, {41.8034025, 47.2252151}, {43.4093427, 51.8147312}},
1213 {{43.4093427, 51.8147312}, {44.7573046, 55.6669869}, {48.7793294, 54.2868164}},
1214 {{48.7793294, 54.2868164}, {51.9073817, 53.2134153}, {56.6514498, 48.9586591}},
1215 {{56.6514498, 48.9586591}, {59.3060696, 46.5778416}, {63.5477208, 42.0877376}},
1216 {{63.5477208, 42.0877376}, {65.8388976, 39.6623562}, {66.0159848, 39.6831127}},
1217 {{66.0159848, 39.6831127}, {66.2639069, 39.7121719}, {64.0479481, 43.2239426}},
1218 {{64.0479481, 43.2239426}, {62.4651204, 45.7323502}, {55.9567221, 55.7452241}},
1219 {{55.9567221, 55.7452241}, {54.718939, 57.649497}, {54.0523993, 58.6752083}},
1220 </div>
1221
1222 <div id="cubic8x3x">
1223 {{44.0194731, 35.2849254}, {33.7413378, 90.6639866}, {89.6236054, 3.93610117}, { 54.0523993, 58.6752083}},
1224 {{44.0194731, 35.2849254}, {41.7846308, 47.8464432}, {43.4093427, 51.8147312}},
1225 {{43.4093427, 51.8147312}, {45.0340547, 55.7830192}, {48.7793294, 54.2868164}},
1226 {{48.7793294, 54.2868164}, {52.524604, 52.7906136}, {56.6514498, 48.9586591}},
1227 {{56.6514498, 48.9586591}, {60.7782955, 45.1267046}, {63.5477208, 42.0877376}},
1228 {{63.5477208, 42.0877376}, {65.6800669, 39.7784361}, {66.0159848, 39.6831127}},
1229 {{66.0159848, 39.6831127}, {66.3519027, 39.5877893}, {64.0479481, 43.2239426}},
1230 {{64.0479481, 43.2239426}, {61.7439935, 46.8600958}, {55.9567221, 55.7452241}},
1231 {{55.9567221, 55.7452241}, {55.0519496, 57.1371078}, {54.0523993, 58.6752083}},
1232 </div>
1233
1234 <div id="cubic8x4">
1235 {{34.4823321, 44.5556425}, {46.6831036, 2.92242272}, {17.1586486, 85.4072306}, { 39.3243103, 23.6824388}},
1236 {{34.4823321, 44.5556425}, {36.9549821, 36.1181121}, {37.4421857, 33.458373}},
1237 {{37.4421857, 33.458373}, {37.852416, 31.2188464}, {36.8498458, 33.1020754}},
1238 {{36.8498458, 33.1020754}, {36.0666826, 34.5731701}, {34.4114682, 38.5859621}},
1239 {{34.4114682, 38.5859621}, {33.4805756, 40.8427565}, {31.8332086, 45.009246}},
1240 {{31.8332086, 45.009246}, {30.8106719, 47.5954265}, {30.8033416, 47.5462886}},
1241 {{30.8033416, 47.5462886}, {30.793079, 47.4774956}, {32.1835801, 43.5816708}},
1242 {{32.1835801, 43.5816708}, {33.1767952, 40.7989388}, {37.1569859, 29.7171487}},
1243 {{37.1569859, 29.7171487}, {38.5382511, 25.8713805}, {39.3243103, 23.6824388}},
1244 </div>
1245
1246 <div id="cubic8x4x">
1247 {{34.4823321, 44.5556425}, {46.6831036, 2.92242272}, {17.1586486, 85.4072306}, { 39.3243103, 23.6824388}},
1248 {{34.4823321, 44.5556425}, {37.0635768, 35.7091664}, {37.4421857, 33.458373}},
1249 {{37.4421857, 33.458373}, {37.8207947, 31.2075797}, {36.8498458, 33.1020754}},
1250 {{36.8498458, 33.1020754}, {35.878897, 34.996571}, {34.4114682, 38.5859621}},
1251 {{34.4114682, 38.5859621}, {32.9440394, 42.1753532}, {31.8332086, 45.009246}},
1252 {{31.8332086, 45.009246}, {30.8636314, 47.4784019}, {30.8033416, 47.5462886}},
1253 {{30.8033416, 47.5462886}, {30.7430517, 47.6141753}, {32.1835801, 43.5816708}},
1254 {{32.1835801, 43.5816708}, {33.6241085, 39.5491663}, {37.1569859, 29.7171487}},
1255 {{37.1569859, 29.7171487}, {38.146263, 26.9628595}, {39.3243103, 23.6824388}},
1256 </div>
1257
1258 <div id="cubic8x5">
1259 {{67.1009526, 65.7102964}, {92.9511368, 29.7558215}, {6.09136899, 77.6386629}, { 73.0077305, 40.9268787}},
1260 {{67.1009526, 65.7102964}, {72.234988, 58.569475}, {72.0584002, 54.9887776}},
1261 {{72.0584002, 54.9887776}, {71.9092626, 51.9646911}, {67.9699024, 51.5063347}},
1262 {{67.9699024, 51.5063347}, {64.8799872, 51.1468138}, {59.401457, 52.3770387}},
1263 {{59.401457, 52.3770387}, {56.3059837, 53.072139}, {50.919062, 54.7149606}},
1264 {{50.919062, 54.7149606}, {47.1095083, 55.8767404}, {47.0889098, 55.6405516}},
1265 {{47.0889098, 55.6405516}, {47.0600718, 55.3098873}, {52.2780952, 52.3607383}},
1266 {{52.2780952, 52.3607383}, {56.0052548, 50.2542034}, {70.9344915, 42.0642523}},
1267 {{70.9344915, 42.0642523}, {72.2995322, 41.3154119}, {73.0077305, 40.9268787}},
1268 </div>
1269
1270 <div id="cubic8x5x">
1271 {{67.1009526, 65.7102964}, {92.9511368, 29.7558215}, {6.09136899, 77.6386629}, { 73.0077305, 40.9268787}},
1272 {{67.1009526, 65.7102964}, {72.4119125, 58.1790269}, {72.0584002, 54.9887776}},
1273 {{72.0584002, 54.9887776}, {71.7048879, 51.7985283}, {67.9699024, 51.5063347}},
1274 {{67.9699024, 51.5063347}, {64.2349168, 51.2141411}, {59.401457, 52.3770387}},
1275 {{59.401457, 52.3770387}, {54.5679971, 53.5399363}, {50.919062, 54.7149606}},
1276 {{50.919062, 54.7149606}, {47.3051356, 55.8776986}, {47.0889098, 55.6405516}},
1277 {{47.0889098, 55.6405516}, {46.8726839, 55.4034046}, {52.2780952, 52.3607383}},
1278 {{52.2780952, 52.3607383}, {57.6835065, 49.3180721}, {70.9344915, 42.0642523}},
1279 {{70.9344915, 42.0642523}, {71.9455119, 41.5096286}, {73.0077305, 40.9268787}},
1280 </div>
1281
1282 <div id="cubic8x6">
1283 {{34.6917773, 64.7007906}, {26.1879157, 40.299837}, {19.3601908, 86.7271998}, {2 4.0468774, 55.867852}},
1284 {{34.6917773, 64.7007906}, {32.8936408, 59.5412235}, {30.9809892, 57.9762826}},
1285 {{30.9809892, 57.9762826}, {29.3733084, 56.6608702}, {27.7048898, 57.9022642}},
1286 {{27.7048898, 57.9022642}, {26.4047253, 58.8696572}, {25.0679408, 61.4005651}},
1287 {{25.0679408, 61.4005651}, {24.3182009, 62.820033}, {23.2746043, 65.3930147}},
1288 {{23.2746043, 65.3930147}, {22.674283, 66.8731035}, {22.5736375, 66.8767729}},
1289 {{22.5736375, 66.8767729}, {22.4327337, 66.88191}, {22.7095685, 64.8303341}},
1290 {{22.7095685, 64.8303341}, {22.9073076, 63.3649228}, {23.7989097, 57.4996081}},
1291 {{23.7989097, 57.4996081}, {23.9603141, 56.4378254}, {24.0468774, 55.867852}},
1292 </div>
1293
1294 <div id="cubic8x6x">
1295 {{34.6917773, 64.7007906}, {26.1879157, 40.299837}, {19.3601908, 86.7271998}, {2 4.0468774, 55.867852}},
1296 {{34.6917773, 64.7007906}, {32.7532689, 59.2911428}, {30.9809892, 57.9762826}},
1297 {{30.9809892, 57.9762826}, {29.2087096, 56.6614223}, {27.7048898, 57.9022642}},
1298 {{27.7048898, 57.9022642}, {26.2010699, 59.1431061}, {25.0679408, 61.4005651}},
1299 {{25.0679408, 61.4005651}, {23.9348117, 63.658024}, {23.2746043, 65.3930147}},
1300 {{23.2746043, 65.3930147}, {22.7294605, 66.7981817}, {22.5736375, 66.8767729}},
1301 {{22.5736375, 66.8767729}, {22.4178145, 66.955364}, {22.7095685, 64.8303341}},
1302 {{22.7095685, 64.8303341}, {23.0013225, 62.7053042}, {23.7989097, 57.4996081}},
1303 {{23.7989097, 57.4996081}, {23.9170479, 56.7225788}, {24.0468774, 55.867852}},
1304 </div>
1305
1306 <div id="cubic8x7">
1307 {{33.7213174, 54.1809799}, {19.7290722, 86.516309}, {79.6055485, 30.4535282}, {3 2.4492169, 73.9888241}},
1308 {{33.7213174, 54.1809799}, {30.929259, 60.6332771}, {31.7178101, 63.1685506}},
1309 {{31.7178101, 63.1685506}, {32.3822203, 65.3046982}, {35.5832592, 64.6365068}},
1310 {{35.5832592, 64.6365068}, {38.0860576, 64.1140676}, {42.1661464, 61.8599641}},
1311 {{42.1661464, 61.8599641}, {44.4631798, 60.5909351}, {48.3149537, 58.1140379}},
1312 {{48.3149537, 58.1140379}, {50.7761073, 56.5313841}, {50.8756876, 56.6229029}},
1313 {{50.8756876, 56.6229029}, {51.0150999, 56.7510292}, {48.1271345, 59.4792497}},
1314 {{48.1271345, 59.4792497}, {46.064302, 61.4279786}, {37.7133917, 69.1313755}},
1315 {{37.7133917, 69.1313755}, {34.3790695, 72.2071608}, {32.4492169, 73.9888241}},
1316 </div>
1317
1318 <div id="cubic8x7x">
1319 {{33.7213174, 54.1809799}, {19.7290722, 86.516309}, {79.6055485, 30.4535282}, {3 2.4492169, 73.9888241}},
1320 {{33.7213174, 54.1809799}, {30.8583849, 60.9640583}, {31.7178101, 63.1685506}},
1321 {{31.7178101, 63.1685506}, {32.5772353, 65.3730429}, {35.5832592, 64.6365068}},
1322 {{35.5832592, 64.6365068}, {38.589283, 63.8999708}, {42.1661464, 61.8599641}},
1323 {{42.1661464, 61.8599641}, {45.7430098, 59.8199575}, {48.3149537, 58.1140379}},
1324 {{48.3149537, 58.1140379}, {50.6281545, 56.5876371}, {50.8756876, 56.6229029}},
1325 {{50.8756876, 56.6229029}, {51.1232206, 56.6581687}, {48.1271345, 59.4792497}},
1326 {{48.1271345, 59.4792497}, {45.1310483, 62.3003307}, {37.7133917, 69.1313755}},
1327 {{37.7133917, 69.1313755}, {35.340896, 71.3195506}, {32.4492169, 73.9888241}},
1328 </div>
1329
1330 <div id="cubic8x8">
1331 {{53.9853472, 31.729689}, {80.8833995, 7.2950833}, {8.46509939, 72.9253675}, {56 .6511208, 35.3872682}},
1332 {{53.9853472, 31.729689}, {54.6892116, 31.0902877}, {55.8968586, 29.9930402}},
1333 {{55.8968586, 29.9930402}, {59.7242319, 26.5155538}, {60.0744106, 26.2078693}},
1334 {{60.0744106, 26.2078693}, {60.4245892, 25.9001849}, {58.6982878, 27.5315648}},
1335 {{58.6982878, 27.5315648}, {54.8548255, 31.1636922}, {52.2592609, 33.6639071}},
1336 {{52.2592609, 33.6639071}, {47.5369986, 38.2126941}, {44.5524326, 41.278553}},
1337 {{44.5524326, 41.278553}, {40.6568202, 45.2802731}, {39.8604011, 46.6125979}},
1338 {{39.8604011, 46.6125979}, {38.901811, 48.2162178}, {42.4657645, 45.9031378}},
1339 {{42.4657645, 45.9031378}, {46.5800498, 43.232881}, {56.6511208, 35.3872682}},
1340 </div>
1341
1342 <div id="cubic8x8x">
1343 {{53.9853472, 31.729689}, {80.8833995, 7.2950833}, {8.46509939, 72.9253675}, {56 .6511208, 35.3872682}},
1344 {{53.9853472, 31.729689}, {55.0401587, 30.7714526}, {55.8968586, 29.9930402}},
1345 {{55.8968586, 29.9930402}, {59.6366873, 26.5924749}, {60.0744106, 26.2078693}},
1346 {{60.0744106, 26.2078693}, {60.5121339, 25.8232638}, {58.6982878, 27.5315648}},
1347 {{58.6982878, 27.5315648}, {56.3310494, 29.756797}, {52.2592609, 33.6639071}},
1348 {{52.2592609, 33.6639071}, {48.1874723, 37.5710172}, {44.5524326, 41.278553}},
1349 {{44.5524326, 41.278553}, {40.9173929, 44.9860887}, {39.8604011, 46.6125979}},
1350 {{39.8604011, 46.6125979}, {38.8034093, 48.2391072}, {42.4657645, 45.9031378}},
1351 {{42.4657645, 45.9031378}, {46.1281196, 43.5671684}, {56.6511208, 35.3872682}},
1352 </div>
1353
1354 <div id="cubic8x9">
1355 {{73.1810322, 53.6088109}, {3.28446082, 1.93300047}, {87.9389074, 89.2160727}, { 54.5340817, 54.3107021}},
1356 {{73.1810322, 53.6088109}, {58.5574459, 42.7973267}, {51.3867695, 38.9320081}},
1357 {{51.3867695, 38.9320081}, {45.1924119, 35.5929695}, {44.6615376, 37.4897176}},
1358 {{44.6615376, 37.4897176}, {44.2222697, 39.0591673}, {47.6643015, 44.1654891}},
1359 {{47.6643015, 44.1654891}, {50.2846557, 48.0528359}, {55.0540263, 53.8428721}},
1360 {{55.0540263, 53.8428721}, {57.6549797, 57.0004406}, {61.4896769, 61.4054165}},
1361 {{61.4896769, 61.4054165}, {62.8763033, 62.9982556}, {62.6160157, 62.7489128}},
1362 {{62.6160157, 62.7489128}, {62.3557281, 62.49957}, {59.4073763, 59.4106743}},
1363 {{59.4073763, 59.4106743}, {56.5808171, 56.449377}, {54.5340817, 54.3107021}},
1364 </div>
1365
1366 <div id="cubic8x9x">
1367 {{73.1810322, 53.6088109}, {3.28446082, 1.93300047}, {87.9389074, 89.2160727}, { 54.5340817, 54.3107021}},
1368 {{73.1810322, 53.6088109}, {57.8490138, 42.3222252}, {51.3867695, 38.9320081}},
1369 {{51.3867695, 38.9320081}, {44.9245252, 35.5417911}, {44.6615376, 37.4897176}},
1370 {{44.6615376, 37.4897176}, {44.3985499, 39.4376442}, {47.6643015, 44.1654891}},
1371 {{47.6643015, 44.1654891}, {50.9300531, 48.893334}, {55.0540263, 53.8428721}},
1372 {{55.0540263, 53.8428721}, {59.1779995, 58.7924103}, {61.4896769, 61.4054165}},
1373 {{61.4896769, 61.4054165}, {62.9413752, 63.0605913}, {62.6160157, 62.7489128}},
1374 {{62.6160157, 62.7489128}, {62.2906562, 62.4372343}, {59.4073763, 59.4106743}},
1375 {{59.4073763, 59.4106743}, {57.5885087, 57.5036974}, {54.5340817, 54.3107021}},
1376 </div>
1377
1378 <div id="cubic4">
1379 {{24.2578299, 1.34695745}, {6.77689729, 99.312693}, {3.18338154, 3.09354817}, {5 9.132973, 47.8778685}},
1380 {{38.313885, 41.465269}, {48.4308047, 76.5337766}, {93.264044, 88.7879534}, {83. 3354337, 18.6335197}}
1381 </div>
1382
1383 <div id="cubic5">
1384 {{24.0062249, 72.6211198}, {22.3913226, 30.9587957}, {80.7539402, 31.4736433}, { 99.6348716, 63.2867312}},
1385 {{43.1612821, 11.6690897}, {24.4801394, 37.7033828}, {77.5229567, 28.3334108}, { 60.0910899, 50.9480224}}
1386 $6 = {{x = 24.006224853920855, y = 72.621119847810419}, {x = 24.119692298829129, y = 51.890688643515688}, {x = 38.700154924642845, y = 44.614929583485953}}
1387 (gdb) p q2
1388 $7 = {{x = 24.006224853920855, y = 72.621119847810419}, {x = 29.758671200376888, y = 31.764642512385173}, {x = 71.277052443896736, y = 42.309313461363033}}
1389 </div>
1390
1391 <div id="quad1">
1392 {{x = 34.879150914024962, y = 83.862726601601125}, {x = 35.095810134304429, y = 83.693473210169543}, {x = 35.359284111931586, y = 83.488069234177502}}
1393 {{x = 54.503204203015471, y = 76.094098492518242}, {x = 51.366889541918894, y = 71.609856061299155}, {x = 46.53086955445437, y = 69.949863036494207}}
1394 </div>
1395
1396 <div id="cubic6">
1397 {{x = 54.080923997834752, y = 38.089631608729078}, {x = 10.447347774378651, y = 88.574043981998258}, {x = 33.294667831293616, y = 83.482240551841556}, {x = 25.6 49263209500006, y = 87.166762066617025}}
1398 </div>
1399
1400 <div id="quad2">
1401 {{x = 25.367434474345036, y = 50.4712103169743}, {x = 17.865013304933097, y = 37 .356741010559439}, {x = 16.818988838905465, y = 37.682915484123129}}
1402 {{x = 16.818988838905465, y = 37.682915484123129}, {x = 15.772964372877833, y = 38.009089957686811}, {x = 20.624104547604965, y = 41.825131596683121}}
1403 </div>
1404
1405 <div id="cubic7">
1406 {{x = 25.367434474345036, y = 50.4712103169743}, {x = 5.2367042308844178, y = 13 .28800847441331}, {x = 21.031375239152169, y = 74.32364443052731}, {x = 60.82116 3496384933, y = 21.294883741668837}}
1407 </div>
1408
1409 <div id="quad3">
1410 {{x = 36.148792695174222, y = 70.336952793070424}, {x = 36.141613037691357, y = 70.711654739870085}, {x = 36.154708826402597, y = 71.088492662905836}}
1411 {{x = 35.216235592661825, y = 70.580199617313212}, {x = 36.244476835123969, y = 71.010897787304074}, {x = 37.230244263238326, y = 71.423156953613102}}
1412 </div>
1413
1414 <div id="quad4">
1415 {{x = 369.84860200000003, y = 145.68026699999999}, {x = 382.36041299999999, y = 121.298294}, {x = 406.20770299999998, y = 121.298294}}
1416 {{x = 369.850525, y = 145.67596399999999}, {x = 382.36291499999999, y = 121.2928 6999999999}, {x = 406.21127300000001, y = 121.29286999999999}}
1417 </div>
1418
1419 <div id="quad5">
1420 {{x = 67.25299631583178, y = 21.109080184767524}, {x = 43.617595267398613, y = 3 3.658034168577529}, {x = 33.38371819435676, y = 44.214192553988745}}
1421 {{x = 40.476838859398541, y = 39.543209911285999}, {x = 36.701186108431131, y = 34.8817994016458}, {x = 30.102144288878023, y = 26.739063172945315}}
1422 </div>
1423
1424 <div id="quad6">
1425 {{x = 59.981867574297752, y = 19.243986850744687}, {x = 59.992798861020468, y = 19.257454808070786}, {x = 60.003741189575571, y = 19.270930807443623}}
1426 {{x = 47.800898294803176, y = 89.697640756935641}, {x = 38.74069898238357, y = 5 8.416865487251982}, {x = 37.639862598936119, y = 44.208141075385868}}
1427 </div>
1428
1429 <div id="cubic8">
1430 {{x = 53.674595921148828, y = 8.9336467482771944}, {x = 48.248201817389678, y = 7.5279448682106773}, {x = 89.942031162763953, y = 55.717752573880254}, {x = 81.4 02728418541486, y = 35.656530426655216}}
1431 {{x = 47.800898294803176, y = 89.697640756935641}, {x = 22.169400016856102, y = 1.1060833004797266}, {x = 48.267509205391399, y = 32.027215013293187}, {x = 79.3 06880794142785, y = 10.745507157754854}}
1432 </div>
1433
1434 <div id="quad7">
1435 {{x = 33.567436351153468, y = 62.336347586395924}, {x = 35.200980274619084, y = 65.038561460144479}, {x = 36.479571811084995, y = 67.632178905412445}}
1436 {{x = 41.349524945572696, y = 67.886658677862641}, {x = 39.125562529359087, y = 67.429772735149214}, {x = 35.600314083992416, y = 66.705372160552685}}
1437 </div>
1438
1439 <div id="quad8">
1440 {{x = 36.148792695174222, y = 70.336952793070424}, {x = 36.141613037691357, y = 70.711654739870085}, {x = 36.154708826402597, y = 71.088492662905836}}
1441 {{x = 35.216235592661825, y = 70.580199617313212}, {x = 36.244476835123969, y = 71.010897787304074}, {x = 37.230244263238326, y = 71.423156953613102}}
1442 </div>
1443
1444 <div id="quad9">
1445 {{353.2948,194.351074}, {353.2948,173.767563}, {364.167572,160.819855}},
1446 {{360.416077,166.795715}, {370.126831,147.872162}, {388.635406,147.872162}},
1447 </div>
1448
1449 <div id="quad10">
1450 {{8, 8}, {10, 10}, {8, -10}},
1451 {{8, 8}, {12, 12}, {14, 4}},
1452 </div>
1453
1454 <div id="quad11">
1455 {{x = 50.934805397717923, y = 51.52391952648901}, {x = 56.803308902971423, y = 4 4.246234610627596}, {x = 69.776888596721406, y = 40.166645096692555}}
1456 {{x = 50.230212796400401, y = 38.386469101526998}, {x = 49.855620812184917, y = 38.818990392153609}, {x = 56.356567496227363, y = 47.229909093319407}}
1457 </div>
1458
1459 <div id="cubic9">
1460 {{18.1312339, 31.6473732}, {95.5711034, 63.5350219}, {92.3283165, 62.0158945}, { 18.5656052, 32.1268808}},
1461 {{97.402018, 35.7169972}, {33.1127443, 25.8935163}, {1.13970027, 54.9424981}, {5 6.4860195, 60.529264}},
1462 </div>
1463
1464 <div id="cubic10">
1465 {{67.4265481, 37.9937726}, {23.4836959, 90.4768632}, {35.5970651, 79.8724826}, { 75.3863417, 18.24489}},
1466 {{61.3365082, 82.6931328}, {44.6393809, 54.0748258}, {16.8156155, 20.0497047}, { 41.866885, 56.7355037}},
1467 </div>
1468
1469 <div id="cubic11">
1470 {{40.3684631, 72.7588382}, {85.2198593, 90.174892}, {31.9101421, 13.7580149}, {7 2.0483425, 16.4930846}},
1471 {{57.7943379, 49.4368549}, {69.4103137, 79.1415428}, {30.9563231, 82.9221187}, { 99.2731298, 83.4922981}},
1472 </div>
1473
1474 <div id="cubic12">
1475 {{98.3415562, 26.5353662}, {15.3721551, 59.8107939}, {77.1895742, 25.1742572}, { 11.7326863, 91.2589209}},
1476 {{79.899867, 77.0640431}, {40.0129651, 97.9042774}, {3.74105489, 75.9095456}, {8 8.6837571, 7.90615282}},
1477 </div>
1478
1479 <div id="cubic13">
1480 {{95.6513419, 12.1029701}, {63.4801516, 10.9081754}, {41.0209588, 39.2537121}, { 65.9441362, 23.0970739}},
1481 {{14.6179238, 83.4452002}, {33.7032426, 50.3981092}, {37.1399002, 10.3032037}, { 92.5218685, 15.0431467}},
1482 </div>
1483
1484 <div id="cubic14">
1485 {{67.4265481, 37.9937726}, {23.4836959, 90.4768632}, {35.5970651, 79.8724826}, { 75.3863417, 18.24489}},
1486 {{61.3365082, 82.6931328}, {44.6393809, 54.0748258}, {16.8156155, 20.0497047}, { 41.866885, 56.7355037}},
1487 {{67.4265481,37.9937726}, {51.1295132,57.5422812}, {44.5947482,65.6442673}},
1488 {{44.5947482,65.6442673}, {35.2387481,77.3910511}, {43.2346162,66.2224493}},
1489 {{43.2346162,66.2224493}, {51.8234203,54.2750917}, {75.3863417,18.24489}},
1490 {{61.3365082,82.6931328}, {54.8250789,71.6639328}, {47.7274442,61.4049645}},
1491 {{47.7274442,61.4049645}, {40.6298095,51.1459962}, {35.9460478,45.2252785}},
1492 {{35.9460478,45.2252785}, {31.2622861,39.3045608}, {31.9924758,41.2901124}},
1493 {{31.9924758,41.2901124}, {32.7226655,43.275664}, {41.866885,56.7355037}},
1494 </div>
1495
1496 <div id="quad12">
1497 {{x = 67.426548091427676, y = 37.993772624988935}, {x = 51.129513170665042, y = 57.542281234563646}, {x = 44.594748190899182, y = 65.644267382683879}}
1498 {{x = 61.336508189019057, y = 82.693132843213675}, {x = 54.825078921449354, y = 71.663932799212432}, {x = 47.727444217558926, y = 61.4049645128392}}
1499 </div>
1500
1501 <div id="quad13">
1502 {{x = 53.774852327053594, y = 53.318060789841951}, {x = 45.787877803416805, y = 51.393492026284981}, {x = 46.703936967162392, y = 53.06860709822206}}
1503 {{x = 46.703936967162392, y = 53.06860709822206}, {x = 47.619996130907957, y = 5 4.74372217015916}, {x = 53.020051653535361, y = 48.633140968832024}}
1504 </div>
1505
1506 <div id="cubic15">
1507 {{40.3684631, 72.7588382}, {85.2198593, 90.174892}, {31.9101421, 13.7580149}, {7 2.0483425, 16.4930846}},
1508 {{57.7943379, 49.4368549}, {69.4103137, 79.1415428}, {30.9563231, 82.9221187}, { 99.2731298, 83.4922981}},
1509 </div>
1510
1511 <div id="cubic16">
1512 {{98.3415562, 26.5353662}, {15.3721551, 59.8107939}, {77.1895742, 25.1742572}, { 11.7326863, 91.2589209}},
1513 {{79.899867, 77.0640431}, {40.0129651, 97.9042774}, {3.74105489, 75.9095456}, {8 8.6837571, 7.90615282}},
1514 </div>
1515
1516 <div id="cubic17">
1517 {{95.6513419, 12.1029701}, {63.4801516, 10.9081754}, {41.0209588, 39.2537121}, { 65.9441362, 23.0970739}},
1518 {{14.6179238, 83.4452002}, {33.7032426, 50.3981092}, {37.1399002, 10.3032037}, { 92.5218685, 15.0431467}},
1519 {{95.6513419,12.1029701}, {79.216947,12.1911515}, {68.1126831,18.0126375}},
1520 {{68.1126831,18.0126375}, {57.0084192,23.8341235}, {55.4198832,27.1619689}},
1521 {{55.4198832,27.1619689}, {53.8313472,30.4898143}, {65.9441362,23.0970739}},
1522 {{14.6179238,83.4452002}, {20.3825754,73.0912112}, {25.0377248,62.5209893}},
1523 {{25.0377248,62.5209893}, {33.2090045,41.6303758}, {46.9147771,27.3313746}},
1524 {{46.9147771,27.3313746}, {60.6205496,13.0323735}, {92.5218685,15.0431467}},
1525 </div>
1526
1527 <div id="cubic18">
1528 {{55.7513494, 12.929877}, {46.4296358, 42.8887602}, {16.8160022, 26.5487217}, {4 .93643419, 66.6494508}},
1529 {{12.4426199, 23.1121812}, {31.3921366, 7.64067448}, {4.36561578, 72.9044408}, { 77.3190123, 0.63959742}},
1530
1531 {{55.7513494,12.929877}, {52.399261,23.0070161}, {46.4958203,27.5595279}},
1532 {{46.4958203,27.5595279}, {40.5923795,32.1120397}, {33.5495747,34.9548738}},
1533 {{33.5495747,34.9548738}, {25.3214643,38.1279717}, {17.6150117,44.5570525}},
1534 {{17.6150117,44.5570525}, {9.90855921,50.9861334}, {4.93643419,66.6494508}},
1535
1536 {{12.4426199,23.1121812}, {17.0040168,19.5021098}, {18.7553606,21.0894159}},
1537 {{18.7553606,21.0894159}, {20.5067044,22.676722}, {21.4650431,26.4450934}},
1538 {{21.4650431,26.4450934}, {22.5692754,31.7464864}, {26.4671516,34.648351}},
1539 {{26.4671516,34.648351}, {30.3650278,37.5502156}, {41.873704,30.8489321}},
1540 {{41.873704,30.8489321}, {53.3823801,24.1476487}, {77.3190123,0.63959742}},
1541 </div>
1542
1543 <div id="quad14">
1544 {{67.4265481,37.9937726}, {51.1295132,57.5422812}, {44.5947482,65.6442674}},
1545 {{61.3365082,82.6931328}, {54.8250789,71.6639328}, {47.7274442,61.4049645}},
1546 </div>
1547
1548 <div id="quad15">
1549 {{x = 80.897794748143198, y = 49.236332042718459}, {x = 81.082078218891212, y = 64.066749904488631}, {x = 69.972305057149981, y = 72.968595519850993}}
1550 {{x = 72.503745601281395, y = 32.952320736577882}, {x = 88.030880716061645, y = 38.137194847810164}, {x = 73.193774825517906, y = 67.773492479591397}}
1551 </div>
1552
1553 <div id="cubic19">
1554 {{x = 34.560092601254624, y = 51.476349286491221}, {x = 27.498466254909744, y = 66.722346267999313}, {x = 42.500359724508769, y = 3.5458898188294325}, {x = 73.3 7353619438295, y = 89.022818994253328}}
1555 {{x = 63.002458057833124, y = 82.312578001205154}, {x = 2.4737262644217006, y = 75.917326135522373}, {x = 95.77018506628005, y = 9.5004089686555826}, {x = 6.518 8364156143912, y = 62.083637231068508}}
1556 </div>
1557
1558 <div id="cubic20">
1559 {{x = 42.449716172390481, y = 52.379709366885805}, {x = 27.896043159019225, y = 48.797373636065686}, {x = 92.770268299044233, y = 89.899302036454571}, {x = 12. 102066544863426, y = 99.43241951960718}}
1560 {{x = 45.77532924980639, y = 45.958701495993274}, {x = 37.458701356062065, y = 6 8.393691335056758}, {x = 37.569326692060258, y = 27.673713456687381}, {x = 60.67 4866037757539, y = 62.47349659096146}}
1561 </div>
1562
1563 <div id="cubic21">
1564 {{x = 26.192053931854691, y = 9.8504326817814416}, {x = 10.174241480498686, y = 98.476562741434464}, {x = 21.177712558385782, y = 33.814968789841501}, {x = 75.3 29030899018534, y = 55.02231980442177}}
1565 {{x = 56.222082700683771, y = 24.54395039218662}, {x = 95.589995289030483, y = 8 1.050822735322086}, {x = 28.180450866082897, y = 28.837706255185282}, {x = 60.12 8952916771617, y = 87.311672180570511}}
1566 </div>
1567
1568 <div id="quad16">
1569 {{x = 67.965974918365831, y = 52.573040929556633}, {x = 67.973015821010591, y = 52.57495862082331}, {x = 67.980057838863502, y = 52.576878275262274}}
1570 {{x = 67.975025709349239, y = 52.572750461020817}, {x = 67.973101328974863, y = 52.57506284863603}, {x = 67.971173663444745, y = 52.577372136133093}}
1571 </div>
1572
1573 <div id="quad17">
1574 {{x = 52.14807018377202, y = 65.012420045148644}, {x = 44.778669050208237, y = 6 6.315562705604378}, {x = 51.619118408823567, y = 63.787827046262684}}
1575 {{x = 30.004993234763383, y = 93.921296668202288}, {x = 53.384822003076991, y = 60.732180341802753}, {x = 58.652998934338584, y = 43.111073088306185}}
1576 </div>
1577
1578 <div id="quad18">
1579 {{x = 369.850525, y = 145.67596399999999}, {x = 382.36291499999999, y = 121.2928 6999999999}, {x = 406.21127300000001, y = 121.29286999999999}}
1580 {{x = 369.962311, y = 137.976044}, {x = 383.97189300000002, y = 121.292869999999 99}, {x = 406.21612499999998, y = 121.29286999999999}}
1581 </div>
1582
1583 <div id="quad19">
1584 {{x = 406.23635899999999, y = 121.254936}, {x = 409.44567899999998, y = 121.2549 36}, {x = 412.97595200000001, y = 121.789818}}
1585 {{x = 406.23599200000001, y = 121.254936}, {x = 425.70590199999998, y = 121.2549 36}, {x = 439.71994000000001, y = 137.087616}}
1586 </div>
1587
1588 <div id="cubic22">
1589 {{x = 7.5374809128872498, y = 82.441702896003477}, {x = 22.444346930107265, y = 22.138854312775123}, {x = 66.76091829629658, y = 50.753805856571446}, {x = 78.19 3478508942519, y = 97.7932997968948}}
1590 {{x = 97.700573130371311, y = 53.53260215070685}, {x = 87.72443481149358, y = 84 .575876772671876}, {x = 19.215031396232092, y = 47.032676472809484}, {x = 11.989 686410869325, y = 10.659507480757082}}
1591 {{7.53748091,82.4417029}, {15.5677076,52.942994}, {29.9404074,49.1672596}},
1592 {{29.9404074,49.1672596}, {44.3131071,45.3915253}, {58.1067559,59.5061814}},
1593 {{58.1067559,59.5061814}, {71.9004047,73.6208375}, {78.1934785,97.7932998}},
1594
1595 {{97.7005731,53.5326022}, {91.6030843,68.4083459}, {72.6510251,64.2972928}},
1596 {{72.6510251,64.2972928}, {53.6989659,60.1862397}, {35.2053722,44.8391126}},
1597 {{35.2053722,44.8391126}, {16.7117786,29.4919856}, {11.9896864,10.6595075}},
1598 </div>
1599
1600 <div id="quad20">
1601 {{29.9404074,49.1672596}, {44.3131071,45.3915253}, {58.1067559,59.5061814}},
1602 {{72.6510251,64.2972928}, {53.6989659,60.1862397}, {35.2053722,44.8391126}},
1603 </div>
1604
1605 <div id="cubic23">
1606 {{x = 32.484981432782945, y = 75.082940782924624}, {x = 42.467313093350882, y = 48.131159948246157}, {x = 3.5963115764764657, y = 43.208665839959245}, {x = 79.4 42476890721579, y = 89.709102357602262}}
1607 {{x = 18.98573861410177, y = 93.308887208490106}, {x = 40.405250173250792, y = 9 1.039661826118675}, {x = 8.0467721950480584, y = 42.100282172719147}, {x = 40.88 3324221187891, y = 26.030185504830527}}
1608 {{32.4849814,75.0829408}, {35.4553509,65.5763004}, {33.5767697,60.2097835}},
1609 {{33.5767697,60.2097835}, {31.6981886,54.8432666}, {31.1663962,54.7302484}},
1610 {{31.1663962,54.7302484}, {31.1662882,54.7301074}, {31.1663969,54.7302485}},
1611 {{31.1663969,54.7302485}, {30.4117445,54.6146017}, {40.1631726,62.9428436}},
1612 {{40.1631726,62.9428436}, {49.9146008,71.2710854}, {79.4424769,89.7091024}},
1613
1614 {{18.9857386,93.3088872}, {25.7662938,92.3417699}, {26.5917262,85.8225583}},
1615 {{26.5917262,85.8225583}, {27.4171586,79.3033467}, {26.141946,69.8089528}},
1616 {{26.141946,69.8089528}, {24.2922348,57.665767}, {26.0404936,45.4260361}},
1617 {{26.0404936,45.4260361}, {27.7887523,33.1863051}, {40.8833242,26.0301855}},
1618 </div>
1619
1620 <div id="quad21">
1621 {{31.1663962,54.7302484}, {31.1662882,54.7301074}, {31.1663969,54.7302485}},
1622 {{26.0404936,45.4260361}, {27.7887523,33.1863051}, {40.8833242,26.0301855}},
1623 </div>
1624
1625 <div id="cubic24">
1626 {{x = 65.454505973241524, y = 93.881892270353575}, {x = 45.867360264932437, y = 92.723972719499827}, {x = 2.1464054482739447, y = 74.636369140183717}, {x = 33.7 74068594804994, y = 40.770872887582925}}
1627 {{x = 72.963387832494163, y = 95.659300729473728}, {x = 11.809496633619768, y = 82.209921247423594}, {x = 13.456139067865974, y = 57.329313623406605}, {x = 36.0 60621606214262, y = 70.867335643091849}}
1628 {{65.454506,93.8818923}, {54.7397995,93.2922678}, {41.5072916,87.1234036}},
1629 {{41.5072916,87.1234036}, {28.2747836,80.9545395}, {23.5780771,69.3344126}},
1630 {{23.5780771,69.3344126}, {18.8813706,57.7142857}, {33.7740686,40.7708729}},
1631
1632 {{72.9633878,95.6593007}, {42.7738746,88.4730382}, {31.1932785,80.2458029}},
1633 {{31.1932785,80.2458029}, {19.6126823,72.0185676}, {21.9918152,68.2892325}},
1634 {{21.9918152,68.2892325}, {24.370948,64.5598974}, {36.0606216,70.8673356}},
1635 </div>
1636
1637 <div id="quad22">
1638 {{41.5072916,87.1234036}, {28.2747836,80.9545395}, {23.5780771,69.3344126}},
1639 {{72.9633878,95.6593007}, {42.7738746,88.4730382}, {31.1932785,80.2458029}},
1640 </div>
1641
1642 <div id="cubic25">
1643 {{x = 39.765160968417838, y = 33.060396198677083}, {x = 5.1922921581157908, y = 66.854301452103215}, {x = 31.619281802149157, y = 25.269248720849514}, {x = 81.5 41621071073038, y = 70.025341524754353}}
1644 {{x = 46.078911165743556, y = 48.259962651999651}, {x = 20.24450549867214, y = 4 9.403916182650214}, {x = 0.26325131778756683, y = 24.46489805563581}, {x = 15.91 5006546264051, y = 83.515023059917155}}
1645 {{39.765161,33.0603962}, {30.6426004,41.804305}, {26.9359756,44.8138368}},
1646 {{26.9359756,44.8138368}, {21.5667569,48.8605535}, {26.2727712,47.6735862}},
1647 {{26.2727712,47.6735862}, {31.3832959,46.2642047}, {45.8264929,49.1528875}},
1648 {{45.8264929,49.1528875}, {60.2696898,52.0415702}, {81.5416211,70.0253415}},
1649
1650 {{46.0789112,48.2599627}, {35.5887068,48.1941457}, {27.2014026,45.6924463}},
1651 {{27.2014026,45.6924463}, {19.5490336,43.4817863}, {15.020365,44.2719744}},
1652 {{15.020365,44.2719744}, {10.4916964,45.0621625}, {10.3896311,53.6689795}},
1653 {{10.3896311,53.6689795}, {10.2875658,62.2757965}, {15.9150065,83.5150231}},
1654 </div>
1655
1656 <div id="cubic26">
1657 {{x = 95.837747722788592, y = 45.025976907939643}, {x = 16.564570095652982, y = 0.72959763963222402}, {x = 63.209855865319199, y = 68.047528419665767}, {x = 57. 640240647662544, y = 59.524565264361243}}
1658 {{x = 51.593891741518817, y = 38.53849970667553}, {x = 62.34752929878772, y = 74 .924924725166022}, {x = 74.810149322641152, y = 34.17966562983564}, {x = 29.3683 98119401373, y = 94.66719277886078}}
1659 {{95.8377477,45.0259769}, {72.4120612,32.1119735}, {61.9589898,30.3422249}},
1660 {{61.9589898,30.3422249}, {51.5059185,28.5724763}, {49.7502617,33.4480576}},
1661 {{49.7502617,33.4480576}, {47.9946048,38.3236388}, {50.6611618,45.345625}},
1662 {{50.6611618,45.345625}, {53.3277187,52.3676112}, {56.1412886,57.0370775}},
1663 {{56.1412886,57.0370775}, {58.9548585,61.7065438}, {57.6402406,59.5245653}},
1664
1665 {{51.5938917,38.5384997}, {54.39659,47.5609728}, {56.9124968,51.2509862}},
1666 {{56.9124968,51.2509862}, {59.4284036,54.9409997}, {60.7901347,55.8937858}},
1667 {{60.7901347,55.8937858}, {63.1940269,56.8659601}, {59.551481,59.5998651}},
1668 {{59.551481,59.5998651}, {56.8806183,61.8512737}, {49.6576236,69.6523525}},
1669 {{49.6576236,69.6523525}, {42.434629,77.4534313}, {29.3683981,94.6671928}},
1670 </div>
1671
1672 <div id="quad23">
1673 {{x = 56.14128857485079, y = 57.037077517172825}, {x = 58.954858484191291, y = 6 1.706543802985237}, {x = 57.640240647662544, y = 59.524565264361243}}
1674 {{x = 59.551480981235549, y = 59.599865066889976}, {x = 56.880618274428095, y = 61.851273706132794}, {x = 49.657623623535379, y = 69.652352522894546}}
1675 </div>
1676
1677 <div id="cubic27">
1678 {{x = 56.14128857485079, y = 57.037077517172825}, {x = 57.779490695232283, y = 5 9.900114769069532}, {x = 58.754163691193881, y = 61.229157895422141}, {x = 57.64 0240647662544, y = 59.524565264361243}}
1679 {{x = 56.14128857485079, y = 57.037077517172825}, {x = 58.954858484191291, y = 6 1.706543802985237}, {x = 57.640240647662544, y = 59.524565264361243}}
1680 </div>
1681
1682 <div id="testCubic1">
1683 {{0, 0}, {0, 1}, {1, 1}, {1, 0}},
1684 {{1, 0}, {0, 0}, {0, 1}, {1, 1}},
1685
1686 {{0,0}, {0.0185185185,0.5}, {0.259259259,0.666666667}},
1687 {{0.259259259,0.666666667}, {0.5,0.833333333}, {0.740740741,0.666666667}},
1688 {{0.740740741,0.666666667}, {0.981481481,0.5}, {1,0}},
1689
1690 {{1,0}, {0.5,0.0185185185}, {0.333333333,0.259259259}},
1691 {{0.333333333,0.259259259}, {0.166666667,0.5}, {0.333333333,0.740740741}},
1692 {{0.333333333,0.740740741}, {0.5,0.981481481}, {1,1}},
1693 </div>
1694
1695 <div id="testCubic1a">
1696 {{x = 0.30075438676757493, y = 0.69070348972827045}, {x = 0.30339450221247349, y = 0.69543451478800855}, {x = 0.30613761677734441, y = 0.7001387457168422}, {x = 0.30898373046218741, y = 0.70481409186990207}}
1697 {{x = 0.29518590813009821, y = 0.69101626953781281}, {x = 0.29986125428315819, y = 0.69386238322265548}, {x = 0.30456548521199123, y = 0.69660549778752689}, {x = 0.30929651027172955, y = 0.69924561323242507}}
1698 </div>
1699
1700 <div id="testCubic1b">
1701 {{x = 0.3039751936710845, y = 0.69622610811401087}, {x = 0.3037698832307662, y = 0.69610758676672113}}
1702 {{x = 0.3037698832307662, y = 0.69610758676672113}, {x = 0.30387252963474076, y = 0.69616688005807803}}
1703 {{x = 0.30387252963474076, y = 0.69616688005807803}, {x = 0.3039751936710845, y = 0.69622610811401087}}
1704 </div>
1705
1706 <div id="cubicOp1d">
1707 {{0, 1}, {0, 2}, {1, 0}, {1, 0}},
1708 {{0, 1}, {0, 1}, {1, 0}, {2, 0}},
1709
1710 {{0,1}, {0.0078125,1.35546875}, {0.15625,1.265625}},
1711 {{0.15625,1.265625}, {0.3046875,1.17578125}, {0.5,0.875}},
1712 {{0.5,0.875}, {0.6953125,0.57421875}, {0.84375,0.296875}},
1713 {{0.84375,0.296875}, {0.9921875,0.01953125}, {1,0}},
1714
1715 {{0,1}, {0.00925925926,0.981481481}, {0.296296296,0.740740741}},
1716 {{0.296296296,0.740740741}, {0.583333333,0.5}, {1.03703704,0.259259259}},
1717 {{1.03703704,0.259259259}, {1.49074074,0.0185185185}, {2,0}},
1718 </div>
1719
1720 <div id="cubicTest1">
1721 {{0, 1}, {5, 6}, {1, 0}, {1, 0}},
1722 {{0, 1}, {0, 1}, {1, 0}, {6, 5}},
1723 {{0,1}, {1.474,2.466}, {2.024,2.816}},
1724 {{2.024,2.816}, {2.574,3.166}, {2.512,2.808}},
1725 {{2.512,2.808}, {2.45,2.45}, {2.088,1.792}},
1726 {{2.088,1.792}, {1.726,1.134}, {1.376,0.584}},
1727 {{1.376,0.584}, {1.026,0.034}, {1,0}},
1728
1729 {{0,1}, {-0.0277777778,0.935185185}, {0.444444444,0.925925926}},
1730 {{0.444444444,0.925925926}, {0.916666667,0.916666667}, {2.22222222,1.74074074} },
1731 {{2.22222222,1.74074074}, {3.52777778,2.56481481}, {6,5}},
1732 </div>
1733
1734 <div id="cubicTest2">
1735 {{fX = 0, fY = 1}, {fX = 0, fY = 2}, {fX = 1, fY = 0}, {fX = 5, fY = 0}}
1736 {{fX = 0, fY = 1}, {fX = 0, fY = 5}, {fX = 1, fY = 0}, {fX = 2, fY = 0}}
1737 </div>
1738
1739 <div id="cubicTest3">
1740 {{x = 0, y = 1}, {x = 1, y = 6}, {x = 1, y = 0}, {x = 2, y = 0}}
1741 {{x = 0, y = 1}, {x = 0, y = 2}, {x = 1, y = 0}, {x = 6, y = 1}}
1742 {{0,1}, {0.296,2.466}, {0.496,2.816}},
1743 {{0.496,2.816}, {0.696,3.166}, {0.848,2.808}},
1744 {{0.848,2.808}, {1,2.45}, {1.152,1.792}},
1745 {{1.152,1.792}, {1.304,1.134}, {1.504,0.584}},
1746 {{1.504,0.584}, {1.704,0.034}, {2,0}},
1747
1748 {{0,1}, {-0.040150997,1.4850292}, {0.586736465,1.17347293}},
1749 {{0.586736465,1.17347293}, {1.11546634,0.936942311}, {2.40073788,0.7574854}},
1750 {{2.40073788,0.7574854}, {3.68600943,0.578028489}, {6,1}},
1751 </div>
1752
1753 <div id="lineTest1">
1754 {{x = 1.3834888994942065, y = 0.93137912059586503}, {x = 1.3835184247369658, y = 0.93128386633972826}}
1755 {{x = 1.3834889487833637, y = 0.93138119876148517}, {x = 1.3835243637966514, y = 0.93137251518247632}}
1756 </div>
1757
1758 <div id="lineQuad1">
1759 {{x = 0.5, y = 0.875}, {x = 0.65728065326954233, y = 0.63483143515742313}, {x = 0.78907579690950191, y = 0.3959256577144401}}
1760 {{x = 0.78906720197447666, y = 0.39595053259806418}, {x = 0.78966023971986588, y = 0.39559384654294}}}
1761 </div>
1762
1763 <div id="lineQuad2">
1764 {{x = 0.78907579690950191, y = 0.3959256577144401}, {x = 0.78953800250469452, y = 0.39509830801181633}}
1765 {{x = 0.29629629629629628, y = 0.74074074074074081}, {x = 0.49667506598603178, y = 0.57646999653254238}, {x = 0.78906720197447666, y = 0.39595053259806418}}
1766 </div>
1767
1768 <div id="x1">
1769 {{0.5,0.875}, {0.657581172,0.634357518}, {0.789538003,0.395098308}},
1770 {{0.296296296,0.740740741}, {0.496887363,0.576287939}, {0.78966024,0.395593847}} ,
1771 </div>
1772
1773 <div id="x2">
1774 {{0.5,0.875}, {0.657280653,0.634831435}, {0.789075797,0.395925658}},
1775 {{0.296296296,0.740740741}, {0.496675066,0.576469997}, {0.789067202,0.395950533} },
1776 </div>
1777
1778 <div id="x3">
1779 {{0.789075797,0.395925658}, {0.789538003,0.395098308}},
1780 {{0.296296296,0.740740741}, {0.496675066,0.576469997}, {0.789067202,0.395950533} },
1781 </div>
1782
1783 <div id="x4">
1784 {{0.789538003,0.395098308}, {0.818060471,0.344004048}, {0.84375,0.296875}},
1785 {{0.296296296,0.740740741}, {0.496887363,0.576287939}, {0.78966024,0.395593847}} ,
1786 </div>
1787
1788 <div id="x5">
1789 {{0.789538003,0.395098308}, {0.818060471,0.344004048}, {0.84375,0.296875}},
1790 {{0.78966024,0.395593847}, {0.908006316,0.324112697}, {1.03703704,0.259259259}},
1791 </div>
1792
1793 <div id="cubicX">
1794 {{x = 0, y = 1}, {x = 0, y = 2}, {x = 1, y = 0}, {x = 1, y = 0}}
1795 {{x = 0, y = 1}, {x = 0, y = 2}, {x = 1, y = 0}, {x = 6, y = 1}}
1796 </div>
1797
1798 <div id="cubicOp2d">
1799 {{0,2}, {0,1}, {1,0}, {1,0}},
1800 {{0,1}, {0,1}, {2,0}, {1,0}},
1801 {{0,2}, {0.0185185185,1.49074074}, {0.259259259,1.03703704}},
1802 {{0.259259259,1.03703704}, {0.5,0.583333333}, {0.740740741,0.296296296}},
1803 {{0.740740741,0.296296296}, {0.981481481,0.00925925926}, {1,0}},
1804
1805 {{0,1}, {0.01953125,0.9921875}, {0.296875,0.84375}},
1806 {{0.296875,0.84375}, {0.57421875,0.6953125}, {0.875,0.5}},
1807 {{0.875,0.5}, {1.17578125,0.3046875}, {1.265625,0.15625}},
1808 {{1.265625,0.15625}, {1.35546875,0.0078125}, {1,0}},
1809 </div>
1810
1811 <div id="cubicOp2da">
1812 {{0.395593847,0.78966024}, {0.576287939,0.496887363}, {0.740740741,0.296296296}} ,
1813 {{0.395098308,0.789538003}, {0.634357518,0.657581172}, {0.875,0.5}},
1814 </div>
1815
1816 <div id="cubicOp3d">
1817 {{0,1}, {2,3}, {1,0}, {1,0}},
1818 {{0,1}, {0,1}, {1,0}, {3,2}},
1819 {{0,1}, {0.592,1.584}, {0.872,1.664}},
1820 {{0.872,1.664}, {1.152,1.744}, {1.216,1.512}},
1821 {{1.216,1.512}, {1.28,1.28}, {1.224,0.928}},
1822 {{1.224,0.928}, {1.168,0.576}, {1.088,0.296}},
1823 {{1.088,0.296}, {1.008,0.016}, {1,0}},
1824
1825 {{0,1}, {0,0.962962963}, {0.333333333,0.814814815}},
1826 {{0.333333333,0.814814815}, {0.666666667,0.666666667}, {1.33333333,0.851851852 }},
1827 {{1.33333333,0.851851852}, {2,1.03703704}, {3,2}},
1828 </div>
1829
1830 <div id="cubicOp3da">
1831 {{1.224,0.928}, {1.17328164,0.604609714}, {1.09894996,0.336624845}},
1832 {{1.09895195,0.33662897}, {1.22307655,0.2359436}, {1.265625,0.15625}},
1833 </div>
1834
1835 <div id="cubicOp3db">
1836 {{x = 1.2071879545809394, y = 0.82163474041730045}, {x = 1.1534203513372994, y = 0.52790870069930229}, {x = 1.0880000000000001, y = 0.29599999999999982}}
1837 {{x = 1.205732763658403, y = 0.81345617746834109}, {x = 1.267928895828891, y = 0 .83008534558465619}, {x = 1.3333333333333333, y = 0.85185185185185175}}
1838 </div>
1839
1840 <div id="cubicOp3dc">
1841 part=(1.20718795,0.82163474 1.17452925,0.632190117 1.1284272,0.444233064 1.088,0 .296)
1842 quad=(1.20718795,0.82163474 1.15342035,0.527908701 1.088,0.296)
1843 part=(1.20573276,0.813456177 1.24719685,0.824565605 1.28973037,0.837317532 1.333 33333,0.851851852)
1844 quad=(1.20573276,0.813456177 1.2679289,0.830085346 1.33333333,0.851851852)
1845 </div>
1846
1847 <div id="cubicOp3dd">
1848 {{1.20718795,0.82163474 1.17452925,0.632190117 1.1284272,0.444233064 1.088,0.296 )
1849 {{1.20718795,0.82163474 1.15342035,0.527908701 1.088,0.296)
1850 {{1.20568441,0.813443223 1.20570053,0.813447541 1.20571665,0.813451859 1.2057327 6,0.813456177)
1851 {{1.20568441,0.813443223 1.20570859,0.8134497 1.20573276,0.813456177)
1852 {{0.33333333333333326, y = 0.81481481481481488}, {x = 0.63396444791444551, y = 0 .68743368362444768}, {x = 1.205732763658403, y = 0.81345617746834109}}
1853 </div>
1854
1855 <div id="cubicOp3de">
1856 {{1.2071879545809394,0.82163474041730045}, {1.2065040319428038,0.817667532591199 95}, {1.2058123269101506,0.81370135061854221}},
1857 {{1.205684411948591,0.81344322326274499}, {1.2057085875611198,0.8134496999932925 3}, {1.205732763658403,0.81345617746834109}},
1858 </div>
1859
1860 <div id="cubicOp7">
1861 {{0,1}, {3,4}, {1,0}, {3,0}},
1862 {{0,1}, {0,3}, {1,0}, {4,3}},
1863
1864 {{0,1}, {0.837764189,1.83435757}, {1.22841861,2.02640973}},
1865 {{1.22841861,2.02640973}, {1.61907304,2.21846188}, {1.74657491,1.9930452}},
1866 {{1.74657491,1.9930452}, {1.87407679,1.76762853}, {1.92238332,1.34957962}},
1867 {{1.92238332,1.34957962}, {1.97220681,0.867804601}, {2.17393047,0.447689071}},
1868 {{2.17393047,0.447689071}, {2.37565413,0.0275735418}, {3,0}},
1869
1870 {{0,1}, {-0.00234073071,1.60655471}, {0.142631845,1.70125304}},
1871 {{0.142631845,1.70125304}, {0.28760442,1.79595137}, {0.60797907,1.68776977}},
1872 {{0.60797907,1.68776977}, {1.0447864,1.50810914}, {1.87464474,1.63655092}},
1873 {{1.87464474,1.63655092}, {2.70450308,1.76499271}, {4,3}},
1874 </div>
1875
1876 <div id="cubicOp7a">
1877 {{x = 1.7465749139282332, y = 1.9930452039527999}, {x = 1.8417960084006277, y = 1.8552583419678612}, {x = 1.8799591210677749, y = 1.6157879692142081}, {x = 1.92 23833226085514, y = 1.3495796165215643}}
1878 {{x = 0.6079790696638232, y = 1.6877697663020552}, {x = 0.90321659591661663, y = 1.6123550739533821}, {x = 1.3173732025571312, y = 1.5065640064343382}, {x = 1.8 746447406062119, y = 1.636550924974228}}
1879
1880 {{x = 1.7465749139282332, y = 1.9930452039527999}, {x = 1.8740767879671056, y = 1.7676285282679607}, {x = 1.9223833226085514, y = 1.3495796165215643}}
1881 {{x = 0.6079790696638232, y = 1.6877697663020552}, {x = 1.0447863962878021, y = 1.5081091374717195}, {x = 1.8746447406062119, y = 1.636550924974228}}
1882 </div>
1883
1884 <div id="cubicOp7b">
1885 {{x = 1.7465749139282332, y = 1.9930452039527999}, {x = 1.8417960084006277, y = 1.8552583419678612}, {x = 1.8799591210677749, y = 1.6157879692142081}, {x = 1.92 23833226085514, y = 1.3495796165215643}}
1886 {{x = 1.8746447406062119, y = 1.636550924974228}, {x = 2.4319162786552919, y = 1 .7665378435141166}, {x = 3.1323027481129411, y = 2.1323027481129406}, {x = 4, y = 3}}
1887 {{x = 1.7465749139282332, y = 1.9930452039527999}, {x = 1.8740767879671056, y = 1.7676285282679607}, {x = 1.9223833226085514, y = 1.3495796165215643}}
1888 {{x = 1.8746447406062119, y = 1.636550924974228}, {x = 2.7045030849246219, y = 1 .7649927124767357}, {x = 4, y = 3}}
1889 </div>
1890
1891 <div id="cubicOp8">
1892 {{0,1}, {0,5}, {1,0}, {4,0}},
1893 {{0,1}, {0,4}, {1,0}, {5,0}},
1894
1895 {{0,1}, {-0.00421781142,2.47981485}, {0.214213168,2.53784857}},
1896 {{0.214213168,2.53784857}, {0.432644147,2.59588228}, {0.924337655,1.94072717}} ,
1897 {{0.924337655,1.94072717}, {1.39158994,1.32418496}, {2.14967426,0.687365435}},
1898 {{2.14967426,0.687365435}, {2.90775858,0.0505459108}, {4,0}},
1899
1900 {{0,1}, {-0.00720132722,2.05525633}, {0.206394399,2.10503282}},
1901 {{0.206394399,2.10503282}, {0.419990125,2.15480931}, {0.940798831,1.67439357}} ,
1902 {{0.940798831,1.67439357}, {1.48941875,1.16280321}, {2.47884711,0.60465921}},
1903 {{2.47884711,0.60465921}, {3.46827548,0.0465152042}, {5,0}},
1904 </div>
1905
1906 <div id="cubicOp8a">
1907 {{x = 0.92433765471479945, y = 1.9407271660071879}, {x = 1.2518504275349398, y = 1.5283649441281617}, {x = 1.7179390069715588, y = 1.0614995059145118}}
1908 {{x = 0.94079883097732186, y = 1.6743935703752681}, {x = 1.2598825072629554, y = 1.3977856697533602}, {x = 1.7179167190286528, y = 1.0665031295527474}}
1909 </div>
1910
1911 <div id="cubicOp9d">
1912 {{0,1}, {1,2}, {1,0}, {6,1}},
1913 {{0,1}, {1,6}, {1,0}, {2,1}},
1914 </div>
1915
1916 <div id="cubicOp11d">
1917 Cubic cubic1 = {{0,1}, {3,4}, {1,0}, {5,1}};
1918 Cubic cubic2 = {{0,1}, {1,5}, {1,0}, {4,3}};
1919
1920 {{0,1}, {1.10659493,2.10239153}, {1.50615334,2.12918252}},
1921 {{1.50615334,2.12918252}, {1.90571174,2.15597351}, {2.1530827,1.71245386}},
1922 {{2.1530827,1.71245386}, {2.39265628,1.2948736}, {2.98481198,0.986316183}},
1923 {{2.98481198,0.986316183}, {3.57696768,0.677758769}, {5,1}},
1924
1925 {{0,1}, {0.351042317,2.40055211}, {0.610765407,2.56687524}},
1926 {{0.610765407,2.56687524}, {0.870488497,2.73319838}, {1.21251591,2.40319262}},
1927 {{1.21251591,2.40319262}, {1.57068059,2.04916077}, {2.21702741,1.98363478}},
1928 {{2.21702741,1.98363478}, {2.86337424,1.91810879}, {4,3}},
1929 </div>
1930
1931 <div id="cubicOp12d">
1932 {{0, 1}, {1, 6}, {1, 0}, {1, 0}},
1933 {{0, 1}, {0, 1}, {1, 0}, {6, 1}},
1934
1935 {{0,1}, {0.298,2.466}, {0.488,2.816}},
1936 {{0.488,2.816}, {0.678,3.166}, {0.784,2.808}},
1937 {{0.784,2.808}, {0.89,2.45}, {0.936,1.792}},
1938 {{0.936,1.792}, {0.982,1.134}, {0.992,0.584}},
1939 {{0.992,0.584}, {1.002,0.034}, {1,0}},
1940
1941 {{0,1}, {-0.0277777778,0.972222222}, {0.444444444,0.777777778}},
1942 {{0.444444444,0.777777778}, {0.916666667,0.583333333}, {2.22222222,0.555555556 }},
1943 {{2.22222222,0.555555556}, {3.52777778,0.527777778}, {6,1}},
1944 </div>
1945
1946 <div id="cubicOp13d">
1947 {{0,1}, {4,5}, {1,0}, {5,3}},
1948 {{0,1}, {3,5}, {1,0}, {5,4}},
1949
1950 {{0,1}, {1.48018645,2.46752265}, {1.93281168,2.58856757}},
1951 {{1.93281168,2.58856757}, {2.38543691,2.7096125}, {2.51967352,2.34531784}},
1952 {{2.51967352,2.34531784}, {2.65263731,2.00639194}, {3.1212119,1.98608967}},
1953 {{3.1212119,1.98608967}, {3.5897865,1.96578739}, {5,3}},
1954
1955 {{0,1}, {1.05556321,2.39540407}, {1.46049052,2.58073968}},
1956 {{1.46049052,2.58073968}, {1.86541784,2.76607529}, {2.09544533,2.51981963}},
1957 {{2.09544533,2.51981963}, {2.33331524,2.25252128}, {2.92003302,2.39442311}},
1958 {{2.92003302,2.39442311}, {3.5067508,2.53632493}, {5,4}},
1959 </div>
1960
1961 <div id="cubicTest4">
1962 {{x = 0, y = 1}, {x = 4, y = 5}, {x = 1, y = 0}, {x = 5, y = 3}}
1963 {{x = 0, y = 1}, {x = 1, y = 6}, {x = 1, y = 0}, {x = 2, y = 0}}
1964 </div>
1965
1966 <div id="cubicTest5">
1967 {{x = 0, y = 1}, {x = 1, y = 6}, {x = 1, y = 0}, {x = 1, y = 0}}
1968 {{x = 0, y = 1}, {x = 1, y = 6}, {x = 1, y = 0}, {x = 2, y = 1}}
1969 </div>
1970
1971 <div id="cubicTest6">
1972 {{x = 0, y = 1}, {x = 4, y = 5}, {x = 1, y = 0}, {x = 5, y = 3}}
1973 {{x = 4, y = 4}, {x = 3, y = 4}, {x = 1, y = 2}, {x = 0, y = 0}}
1974 </div>
1975
1976 <div id="cubicTest7">
1977 {{x = 0, y = 1}, {x = 1.9274705288631189e-19, y = 1.0000000000000002}, {x = 0.00 17190297609673323, y = 0.99828097023903239}, {x = 0.0053709083094631276, y = 0.9 9505672974365911}}
1978 </div>
1979
1980 <div id="cubicOp16d">
1981 {{0,2},{0,1},{3,0},{1,0}},
1982 {{0,3},{0,1},{2,0},{1,0}},
1983
1984 {{0,2}, {0.0229970175,1.6585632}, {0.366509308,1.33437416}},
1985 {{0.366509308,1.33437416}, {0.710021598,1.01018513}, {1.09808495,0.737739381}} ,
1986 {{1.09808495,0.737739381}, {1.40607875,0.517813127}, {1.57937247,0.352342403}} ,
1987 {{1.57937247,0.352342403}, {1.75266619,0.186871679}, {1.64451042,0.0942001592} },
1988 {{1.64451042,0.0942001592}, {1.53635465,0.00152863961}, {1,0}},
1989
1990 {{0,3}, {0.0263932023,2.17082039}, {0.352786405,1.57082039}},
1991 {{0.352786405,1.57082039}, {0.679179607,0.970820393}, {0.988854382,0.6}},
1992 {{0.988854382,0.6}, {1.23200941,0.3}, {1.27672209,0.15}},
1993 {{1.27672209,0.15}, {1.32143477,9.25185854e-17}, {1,0}},
1994 </div>
1995
1996 <div id="quadOp16d">
1997 {{1.64451042,0.0942001592}, {1.53635465,0.00152863961}, {1,0}},
1998 {{1.27672209,0.15}, {1.32143477,9.25185854e-17}, {1,0}},
1999 </div>
2000
2001 <div id="cubicOp20d">
2002 {{0,6},{1,2},{1,0},{1,0}},
2003 {{0,1},{0,1},{6,0},{2,1}},
2004
2005 {{0,6}, {0.71875,3}, {0.875,1.5}},
2006 {{0.875,1.5}, {1.03125,1.11022302e-16}, {1,0}},
2007
2008 {{0,1}, {0.0625,0.98828125}, {0.875,0.859375}},
2009 {{0.875,0.859375}, {1.6875,0.73046875}, {2.5,0.625}},
2010 {{2.5,0.625}, {3.3125,0.51953125}, {3.375,0.578125}},
2011 {{3.375,0.578125}, {3.4375,0.63671875}, {2,1}},
2012 </div>
2013
2014 <div id="cubicOp21d">
2015 {{1,2},{5,6},{1,0},{1,0}},
2016 {{0,1},{0,1},{2,1},{6,5}},
2017
2018 {{1,2}, {2.176,3.168}, {2.536,3.328}},
2019 {{2.536,3.328}, {2.896,3.488}, {2.728,3.024}},
2020 {{2.728,3.024}, {2.56,2.56}, {2.152,1.856}},
2021 {{2.152,1.856}, {1.744,1.152}, {1.384,0.592}},
2022 {{1.384,0.592}, {1.024,0.032}, {1,0}},
2023
2024 {{0,1}, {7.40148683e-17,0.962962963}, {0.666666667,1.14814815}},
2025 {{0.666666667,1.14814815}, {1.33333333,1.33333333}, {2.66666667,2.18518519}},
2026 {{2.66666667,2.18518519}, {4,3.03703704}, {6,5}},
2027 </div>
2028
2029 <div id="quadOp21d">
2030 {{2.728,3.024}, {2.56,2.56}, {2.152,1.856}},
2031 {{0.666666667,1.14814815}, {1.33333333,1.33333333}, {2.66666667,2.18518519}},
2032 </div>
2033
2034 <div id="cubicSelf1">
2035 {{3.34,8.98}, {1.95,10.27}, {3.76,7.65}, {4.96,10.64}},
2036
2037 {{3.34,8.98}, {2.83363281,9.4265625}, {2.83796875,9.363125}},
2038 {{2.83796875,9.363125}, {2.84230469,9.2996875}, {3.17875,9.1725}},
2039 {{3.17875,9.1725}, {3.51519531,9.0453125}, {4.00515625,9.300625}},
2040 {{4.00515625,9.300625}, {4.49511719,9.5559375}, {4.96,10.64}},
2041 </div>
2042
2043 <div id="quadSelf1">
2044 {{3.34,8.98}, {2.83363281,9.4265625}, {2.83796875,9.363125}},
2045 {{2.83796875,9.363125}, {2.84230469,9.2996875}, {3.17875,9.1725}},
2046 </div>
2047
2048 <div id="cubicOp27d">
2049 {{0,1}, {3,6}, {1,0}, {5,2}},
2050 {{0,1}, {2,5}, {1,0}, {6,3}},
2051
2052 {{0,1}, {1.11687388,2.858568}, {1.5151589,3.0010603}},
2053 {{1.5151589,3.0010603}, {1.91344391,3.14355261}, {2.16505631,2.55782454}},
2054 {{2.16505631,2.55782454}, {2.40541285,2.02193091}, {2.99836023,1.68247638}},
2055 {{2.99836023,1.68247638}, {3.5913076,1.34302184}, {5,2}},
2056
2057 {{0,1}, {0.691228423,2.3859516}, {1.0489054,2.56156367}},
2058 {{1.0489054,2.56156367}, {1.40658238,2.73717574}, {1.80814127,2.41537795}},
2059 {{1.80814127,2.41537795}, {2.23475077,2.05922313}, {3.16529668,1.98358763}},
2060 {{3.16529668,1.98358763}, {4.0958426,1.90795214}, {6,3}},
2061 </div>
2062
2063 <div id="quadOp27d">
2064 {{1.80814127,2.41537795}, {2.23475077,2.05922313}, {3.16529668,1.98358763}},
2065 {{2.16505631,2.55782454}, {2.40541285,2.02193091}, {2.99836023,1.68247638}},
2066 </div>
2067
2068 <div id="cubicOp30d">
2069 {{0,1}, {2,5}, {6,0}, {5,3}},
2070 {{0,6}, {3,5}, {1,0}, {5,2}},
2071
2072 {{0,1}, {0.585028897,2.1161006}, {1.31572211,2.42528354}},
2073 {{1.31572211,2.42528354}, {2.04641532,2.73446648}, {2.77656625,2.5918049}},
2074 {{2.77656625,2.5918049}, {3.50671719,2.44914333}, {4.09011926,2.20971038}},
2075 {{4.09011926,2.20971038}, {4.74608133,1.9335932}, {5.02469918,2.00694987}},
2076 {{5.02469918,2.00694987}, {5.30331702,2.08030653}, {5,3}},
2077
2078 {{0,6}, {0.946962644,5.64705935}, {1.35765232,4.89865813}},
2079 {{1.35765232,4.89865813}, {1.768342,4.1502569}, {1.97833659,3.34197296}},
2080 {{1.97833659,3.34197296}, {2.2269947,2.25886123}, {2.79472921,1.73568666}},
2081 {{2.79472921,1.73568666}, {3.36246373,1.21251209}, {5,2}},
2082 </div>
2083
2084 <div id="quadOp30d">
2085 {{4.09011926,2.20971038}, {4.74608133,1.9335932}, {5.02469918,2.00694987}},
2086 {{2.79472921,1.73568666}, {3.36246373,1.21251209}, {5,2}},
2087 </div>
2088
2089 <div id="cubicOp34d">
2090 {{x = 1.0097960937999808, y = 2.2108396209439607}, {x = 1, y = 2.196908523371222 9}, {x = 1, y = 2.1347920612232207}, {x = 1, y = 2}}
2091 {{x = 1.0097960937999808, y = 2.2108396209439607}, {x = 1.0242251996917398, y = 2.2313593593386498}, {x = 1.0599075827658746, y = 2.1473377437648784}, {x = 1.14 81481481481481, y = 2.0370370370370372}}
2092 {{x = 1.0097960958786989, y = 2.2108396260650962}, {x = 0.73607693096853644, y = 1.9329854848088734}, {x = 0.40437628284615079, y = 1.5391683771282005}, {x = 0, y = 1}}
2093 {{x = 1.0097960958786989, y = 2.2108396260650962}, {x = 1.8566294376993437, y = 3.0704657726520206}, {x = 2.1484860084122528, y = 2.8201383770234716}, {x = 2.32 0499529631658, y = 2.3301248824079162}}
2094 </div>
2095
2096 <div id="cubicOp34da">
2097 {{x = 1.0097960937999808, y = 2.2108396209439607}, {x = 1, y = 2.196908523371222 9}, {x = 1, y = 2.1347920612232207}, {x = 1, y = 2}}
2098 {{x = 1.0097960937999808, y = 2.2108396209439607}, {x = 1.0242251996917398, y = 2.2313593593386498}, {x = 1.0599075827658746, y = 2.1473377437648784}, {x = 1.14 81481481481481, y = 2.0370370370370372}}
2099 </div>
2100
2101 <div id="cubicOp34db">
2102 {{1,2}, {1,3}, {1,0}, {5,3}},
2103 {{0,1}, {3,5}, {2,1}, {3,1}},
2104
2105 {{1,2}, {0.984375,2.3359375}, {1.0625,2.15625}},
2106 {{1.0625,2.15625}, {1.140625,1.9765625}, {1.5,1.75}},
2107 {{1.5,1.75}, {1.859375,1.5234375}, {2.6875,1.71875}},
2108 {{2.6875,1.71875}, {3.515625,1.9140625}, {5,3}},
2109
2110 {{0,1}, {0.983539095,2.30041152}, {1.47325103,2.61316872}},
2111 {{1.47325103,2.61316872}, {1.96296296,2.92592593}, {2.1563786,2.64609053}},
2112 {{2.1563786,2.64609053}, {2.34979424,2.36625514}, {2.44444444,1.88888889}},
2113 {{2.44444444,1.88888889}, {2.52083333,1.54166667}, {2.63888889,1.27777778}},
2114 {{2.63888889,1.27777778}, {2.75694444,1.01388889}, {3,1}},
2115 </div>
2116
2117 <div id="quadOp34d">
2118 {{1,2}, {0.984375,2.3359375}, {1.0625,2.15625}},
2119 {{0,1}, {0.983539095,2.30041152}, {1.47325103,2.61316872}},
2120 </div>
2121
2122 <div id="cubicOp35d">
2123 {{0,1}, {1,5}, {2,1}, {4,0}},
2124 {{1,2}, {0,4}, {1,0}, {5,1}},
2125
2126 {{0,1}, {0.324417544,2.27953848}, {0.664376547,2.58940267}},
2127 {{0.664376547,2.58940267}, {1.00433555,2.89926686}, {1.39091893,2.58136885}},
2128 {{1.39091893,2.58136885}, {1.7775023,2.26347084}, {2.24179297,1.65972271}},
2129 {{2.24179297,1.65972271}, {2.61097963,1.18900727}, {3.04664862,0.731366192}},
2130 {{3.04664862,0.731366192}, {3.48231762,0.273725118}, {4,0}},
2131
2132 {{1,2}, {0.62109375,2.70703125}, {0.640625,2.546875}},
2133 {{0.640625,2.546875}, {0.66015625,2.38671875}, {1.125,1.875}},
2134 {{1.125,1.875}, {1.58984375,1.36328125}, {2.546875,1.015625}},
2135 {{2.546875,1.015625}, {3.50390625,0.66796875}, {5,1}},
2136 </div>
2137
2138 <div id="cubicOp35da">
2139
2140 {{x = 0.44618727783085621, y = 2.2840286415243063}, {x = 0.51170845243761109, y = 2.4044088819954914}, {x = 0.57783675570457882, y = 2.4985733182515446}, {x = 0 .64483584772311509, y = 2.5694222112973661}}
2141 {{x = 0.64244110111854291, y = 2.5673840215265367}, {x = 0.63479413812245555, y = 2.5620057200094775}, {x = 0.64115438240274059, y = 2.533597555954064}, {x = 0. 6620248993310307, y = 2.4876932484482714}}
2142
2143 </div>
2144
2145 <div id="line0">
2146 {{2, 1}, {2, 1}},
2147 </div>
2148
2149 <div id="line1">
2150 {{2, 1}, {1, 1}},
2151 </div>
2152
2153 <div id="line2">
2154 {{2, 1}, {2, 2}}
2155 </div>
2156
2157 <div id="line3">
2158 {{1, 1}, {2, 2}},
2159 </div>
2160
2161 <div id="line4">
2162 {{3, 0}, {2, 1}},
2163 </div>
2164
2165 <div id="line5">
2166 {{3, 2}, {1, 1}},
2167 </div>
2168
2169 <div id="tri0">
2170 {{2, 0}, {3, 1}},
2171 {{3, 1}, {2, 2}},
2172 {{2, 2}, {2, 0}},
2173 </div>
2174 <div id="tri1">
2175 {{3, 1}, {2, 2}},
2176 {{2, 2}, {1, 1}},
2177 {{1, 1}, {3, 1}},
2178 </div>
2179 <div id="tri2">
2180 {{3, 0}, {2, 1}},
2181 {{2, 1}, {3, 2}},
2182 {{3, 2}, {3, 0}},
2183 </div>
2184 <div id="testQuad0">
2185 {{1, 1}, {2, 1}, {0, 2}},
2186 </div>
2187 <div id="testQuad1">
2188 {{0, 0}, {1, 1}, {3, 1}},
2189 </div>
2190 <div id="testQuad2">
2191 {{2, 0}, {1, 1}, {2, 2}},
2192 </div>
2193 <div id="testQuad3">
2194 {{4, 0}, {0, 1}, {4, 2}},
2195 </div>
2196 <div id="testQuad4">
2197 {{0, 0}, {0, 1}, {1, 1}},
2198 </div>
2199
2200 <div id="cubicOp65d">
2201 {{0,1}, {1,5}, {1,0}, {1,0}},
2202 {{0,1}, {0,1}, {1,0}, {5,1}},
2203 </div>
2204
2205 </div>
2206
2207 <script type="text/javascript">
2208
2209 var testDivs = [
2210 cubicOp65d,
2211 testQuad0,
2212 testQuad1,
2213 testQuad2,
2214 testQuad3,
2215 testQuad4,
2216 tri0,
2217 tri1,
2218 tri2,
2219 line0,
2220 line1,
2221 line2,
2222 line3,
2223 line4,
2224 line5,
2225 cubicOp35da,
2226 cubicOp35d,
2227 quadOp34d,
2228 cubicOp34db,
2229 cubicOp34d,
2230 cubicOp34da,
2231 quadOp30d,
2232 cubicOp30d,
2233 quadOp27d,
2234 cubicOp27d,
2235 quadSelf1,
2236 cubicSelf1,
2237 quadOp21d,
2238 cubicOp21d,
2239 cubicOp20d,
2240 quadOp16d,
2241 cubicOp16d,
2242 cubicTest7,
2243 cubicTest6,
2244 cubicTest5,
2245 cubicTest4,
2246 cubicOp13d,
2247 cubicOp12d,
2248 cubicOp11d,
2249 cubicOp9d,
2250 cubicOp8a,
2251 cubicOp8,
2252 cubicOp7b,
2253 cubicOp7a,
2254 cubicOp7,
2255 cubicOp3de,
2256 cubicOp3dd,
2257 cubicOp3dc,
2258 cubicOp3db,
2259 cubicOp3da,
2260 cubicOp3d,
2261 cubicOp2da,
2262 cubicOp2d,
2263 cubicX,
2264 x1,
2265 x2,
2266 x3,
2267 x4,
2268 x5,
2269 lineQuad2,
2270 lineQuad1,
2271 lineTest1,
2272 cubicTest3,
2273 cubicTest2,
2274 cubicTest1,
2275 cubicOp1d,
2276 testCubic1b,
2277 testCubic1a,
2278 testCubic1,
2279 cubic27,
2280 cubic26,
2281 quad23,
2282 cubic25,
2283 quad22,
2284 cubic24,
2285 quad21,
2286 cubic23,
2287 quad20,
2288 cubic22,
2289 quad19,
2290 quad18,
2291 quad17,
2292 quad16,
2293 cubic21,
2294 cubic20,
2295 cubic19,
2296 quad15,
2297 quad14,
2298 cubic18,
2299 cubic17,
2300 cubic16,
2301 cubic15,
2302 quad13,
2303 quad12,
2304 cubic14,
2305 cubic13,
2306 cubic12,
2307 cubic11,
2308 cubic10,
2309 cubic9,
2310 quad11,
2311 quad10,
2312 quad9,
2313 quad8,
2314 quad7,
2315 cubic8,
2316 quad6,
2317 quad5,
2318 quad4,
2319 quad3,
2320 cubic7,
2321 quad2,
2322 cubic6,
2323 quad1,
2324 cubic5,
2325 cubic4,
2326 cubic1x0,
2327 cubic1x0x,
2328 cubic1x1,
2329 cubic1x1x,
2330 cubic1x2,
2331 cubic1x2x,
2332 cubic1x3,
2333 cubic1x3x,
2334 cubic1x4,
2335 cubic1x4x,
2336 cubic1x5,
2337 cubic1x5x,
2338 cubic1x6,
2339 cubic1x6x,
2340 cubic1x7,
2341 cubic1x7x,
2342 cubic1x8,
2343 cubic1x8x,
2344 cubic1x9,
2345 cubic1x9x,
2346 cubic2x0,
2347 cubic2x0x,
2348 cubic2x1,
2349 cubic2x1x,
2350 cubic2x2,
2351 cubic2x2x,
2352 cubic2x3,
2353 cubic2x3x,
2354 cubic2x4,
2355 cubic2x4x,
2356 cubic2x5,
2357 cubic2x5x,
2358 cubic2x6,
2359 cubic2x6x,
2360 cubic2x7,
2361 cubic2x7x,
2362 cubic2x8,
2363 cubic2x8x,
2364 cubic2x9,
2365 cubic2x9x,
2366 cubic3x0,
2367 cubic3x0x,
2368 cubic3x1,
2369 cubic3x1x,
2370 cubic3x2,
2371 cubic3x2x,
2372 cubic3x3,
2373 cubic3x3x,
2374 cubic3x4,
2375 cubic3x4x,
2376 cubic3x5,
2377 cubic3x5x,
2378 cubic3x6,
2379 cubic3x6x,
2380 cubic3x7,
2381 cubic3x7x,
2382 cubic3x8,
2383 cubic3x8x,
2384 cubic3x9,
2385 cubic3x9x,
2386 cubic4x0,
2387 cubic4x0x,
2388 cubic4x1,
2389 cubic4x1x,
2390 cubic4x2,
2391 cubic4x2x,
2392 cubic4x3,
2393 cubic4x3x,
2394 cubic4x4,
2395 cubic4x4x,
2396 cubic4x5,
2397 cubic4x5x,
2398 cubic4x6,
2399 cubic4x6x,
2400 cubic4x7,
2401 cubic4x7x,
2402 cubic4x8,
2403 cubic4x8x,
2404 cubic4x9,
2405 cubic4x9x,
2406 cubic5x0,
2407 cubic5x0x,
2408 cubic5x1,
2409 cubic5x1x,
2410 cubic5x2,
2411 cubic5x2x,
2412 cubic5x3,
2413 cubic5x3x,
2414 cubic5x4,
2415 cubic5x4x,
2416 cubic5x5,
2417 cubic5x5x,
2418 cubic5x6,
2419 cubic5x6x,
2420 cubic5x7,
2421 cubic5x7x,
2422 cubic5x8,
2423 cubic5x8x,
2424 cubic5x9,
2425 cubic5x9x,
2426 cubic6x0,
2427 cubic6x0x,
2428 cubic6x1,
2429 cubic6x1x,
2430 cubic6x2,
2431 cubic6x2x,
2432 cubic6x3,
2433 cubic6x3x,
2434 cubic6x4,
2435 cubic6x4x,
2436 cubic6x5,
2437 cubic6x5x,
2438 cubic6x6,
2439 cubic6x6x,
2440 cubic6x7,
2441 cubic6x7x,
2442 cubic6x8,
2443 cubic6x8x,
2444 cubic6x9,
2445 cubic6x9x,
2446 cubic7x0,
2447 cubic7x0x,
2448 cubic7x1,
2449 cubic7x1x,
2450 cubic7x2,
2451 cubic7x2x,
2452 cubic7x3,
2453 cubic7x3x,
2454 cubic7x4,
2455 cubic7x4x,
2456 cubic7x5,
2457 cubic7x5x,
2458 cubic7x6,
2459 cubic7x6x,
2460 cubic7x7,
2461 cubic7x7x,
2462 cubic7x8,
2463 cubic7x8x,
2464 cubic7x9,
2465 cubic7x9x,
2466 cubic8x0,
2467 cubic8x0x,
2468 cubic8x1,
2469 cubic8x1x,
2470 cubic8x2,
2471 cubic8x2x,
2472 cubic8x3,
2473 cubic8x3x,
2474 cubic8x4,
2475 cubic8x4x,
2476 cubic8x5,
2477 cubic8x5x,
2478 cubic8x6,
2479 cubic8x6x,
2480 cubic8x7,
2481 cubic8x7x,
2482 cubic8x8,
2483 cubic8x8x,
2484 cubic8x9,
2485 cubic8x9x,
2486 cubic3,
2487 cubic2,
2488 cubic1,
2489 ];
2490
2491 var scale, columns, rows, xStart, yStart;
2492
2493 var ticks = 10;
2494 var at_x = 13 + 0.5;
2495 var at_y = 23 + 0.5;
2496 var decimal_places = 3;
2497 var tests = [];
2498 var testTitles = [];
2499 var testIndex = 0;
2500 var ctx;
2501 var minScale = 1;
2502 var subscale = 1;
2503 var curveT = -1;
2504 var drawCubics = true;
2505 var drawQuads = true;
2506 var drawControlLines = true;
2507 var drawTangents = false;
2508 var drawGrid = true;
2509 var xmin, xmax, ymin, ymax;
2510
2511 function parse(test, title) {
2512 var curveStrs = test.split("{{");
2513 if (curveStrs.length == 1)
2514 curveStrs = test.split("=(");
2515 var pattern = /[a-z$=]?-?\d+\.*\d*e?-?\d*/g;
2516 var curves = [];
2517 for (var c in curveStrs) {
2518 var curveStr = curveStrs[c];
2519 var points = curveStr.match(pattern);
2520 var pts = [];
2521 for (var wd in points) {
2522 var num = parseFloat(points[wd]);
2523 if (isNaN(num)) continue;
2524 pts.push(num);
2525 }
2526 if (pts.length > 2)
2527 curves.push(pts);
2528 }
2529 if (curves.length >= 1) {
2530 tests.push(curves);
2531 testTitles.push(title);
2532 }
2533 }
2534
2535 function init(test) {
2536 var canvas = document.getElementById('canvas');
2537 if (!canvas.getContext) return;
2538 canvas.width = window.innerWidth - at_x;
2539 canvas.height = window.innerHeight - at_y;
2540 ctx = canvas.getContext('2d');
2541 xmin = Infinity;
2542 xmax = -Infinity;
2543 ymin = Infinity;
2544 ymax = -Infinity;
2545 for (var curves in test) {
2546 var curve = test[curves];
2547 var last = curve.length;
2548 for (var idx = 0; idx < last; idx += 2) {
2549 xmin = Math.min(xmin, curve[idx]);
2550 xmax = Math.max(xmax, curve[idx]);
2551 ymin = Math.min(ymin, curve[idx + 1]);
2552 ymax = Math.max(ymax, curve[idx + 1]);
2553 }
2554 }
2555 var testW = xmax - xmin;
2556 var testH = ymax - ymin;
2557 subscale = 1;
2558 while (testW * subscale < 0.1 && testH * subscale < 0.1) {
2559 subscale *= 10;
2560 }
2561 while (testW * subscale > 10 && testH * subscale > 10) {
2562 subscale /= 10;
2563 }
2564 calcFromScale();
2565 }
2566
2567 function calcFromScale() {
2568 xStart = Math.floor(xmin * subscale) / subscale;
2569 yStart = Math.floor(ymin * subscale) / subscale;
2570 var xEnd = Math.ceil(xmin * subscale) / subscale;
2571 var yEnd = Math.ceil(ymin * subscale) / subscale;
2572 var cCelsW = Math.floor(ctx.canvas.width / 10);
2573 var cCelsH = Math.floor(ctx.canvas.height / 10);
2574 var testW = xEnd - xStart;
2575 var testH = yEnd - yStart;
2576 var scaleWH = 1;
2577 while (cCelsW > testW * scaleWH * 10 && cCelsH > testH * scaleWH * 10) {
2578 scaleWH *= 10;
2579 }
2580 while (cCelsW * 10 < testW * scaleWH && cCelsH * 10 < testH * scaleWH) {
2581 scaleWH /= 10;
2582 }
2583
2584 columns = Math.ceil(xmax * subscale) - Math.floor(xmin * subscale) + 1;
2585 rows = Math.ceil(ymax * subscale) - Math.floor(ymin * subscale) + 1;
2586
2587 var hscale = ctx.canvas.width / columns / ticks;
2588 var vscale = ctx.canvas.height / rows / ticks;
2589 minScale = Math.floor(Math.min(hscale, vscale));
2590 scale = minScale * subscale;
2591 }
2592
2593 function drawPoint(px, py, xoffset, yoffset, unit) {
2594 var label = px.toFixed(decimal_places) + ", " + py.toFixed(decimal_places);
2595 var _px = px * unit + xoffset;
2596 var _py = py * unit + yoffset;
2597 ctx.beginPath();
2598 ctx.arc(_px, _py, 3, 0, Math.PI*2, true);
2599 ctx.closePath();
2600 ctx.fill();
2601 ctx.fillText(label, _px + 5, _py);
2602 }
2603
2604 function draw(test, title, scale) {
2605 ctx.fillStyle = "rgba(0,0,0, 0.1)";
2606 ctx.font = "normal 50px Arial";
2607 ctx.fillText(title, 50, 50);
2608 ctx.font = "normal 10px Arial";
2609
2610 var unit = scale * ticks;
2611 ctx.lineWidth = 1;
2612 if (drawGrid) {
2613 var i;
2614 for (i = 0; i <= rows * ticks; ++i) {
2615 ctx.strokeStyle = (i % ticks) != 0 ? "rgb(200,200,200)" : "black";
2616 ctx.beginPath();
2617 ctx.moveTo(at_x + 0, at_y + i * minScale);
2618 ctx.lineTo(at_x + ticks * columns * minScale, at_y + i * minScale);
2619 ctx.stroke();
2620 }
2621 for (i = 0; i <= columns * ticks; ++i) {
2622 ctx.strokeStyle = (i % ticks) != 0 ? "rgb(200,200,200)" : "black";
2623 ctx.beginPath();
2624 ctx.moveTo(at_x + i * minScale, at_y + 0);
2625 ctx.lineTo(at_x + i * minScale, at_y + ticks * rows * minScale);
2626 ctx.stroke();
2627 }
2628 }
2629 var xoffset = xStart * -unit + at_x;
2630 var yoffset = yStart * -unit + at_y;
2631
2632 ctx.fillStyle = "rgb(40,80,60)"
2633 if (drawGrid) {
2634 for (i = 0; i <= columns; i += 1)
2635 {
2636 num = xStart + i / subscale;
2637 ctx.fillText(num.toFixed(decimal_places), xoffset + num * unit - 5, 10);
2638 }
2639 for (i = 0; i <= rows; i += 1)
2640 {
2641 num = yStart + i / subscale;
2642 ctx.fillText(num.toFixed(decimal_places), 0, yoffset + num * unit + 0);
2643 }
2644 }
2645 var curves, pts;
2646 for (curves in test) {
2647 var curve = test[curves];
2648 if (curve.length == 6 && !drawQuads) {
2649 continue;
2650 }
2651 if (curve.length == 8 && !drawCubics) {
2652 continue;
2653 }
2654 ctx.beginPath();
2655 ctx.moveTo(xoffset + curve[0] * unit, yoffset + curve[1] * unit);
2656 switch (curve.length) {
2657 case 4:
2658 ctx.lineTo(
2659 xoffset + curve[2] * unit, yoffset + curve[3] * unit);
2660 break;
2661 case 6:
2662 ctx.quadraticCurveTo(
2663 xoffset + curve[2] * unit, yoffset + curve[3] * unit,
2664 xoffset + curve[4] * unit, yoffset + curve[5] * unit);
2665 break;
2666 case 8:
2667 ctx.bezierCurveTo(
2668 xoffset + curve[2] * unit, yoffset + curve[3] * unit,
2669 xoffset + curve[4] * unit, yoffset + curve[5] * unit,
2670 xoffset + curve[6] * unit, yoffset + curve[7] * unit);
2671 break;
2672 }
2673 ctx.strokeStyle = drawQuads && drawCubics && curve.length == 6 ? "red" : "black";
2674 if (curve.length == 4) {
2675 ctx.strokeStyle = "blue";
2676 }
2677 ctx.stroke();
2678 if (drawControlLines && (curve.length == 6 || curve.length == 8)) {
2679 ctx.strokeStyle = "rgba(0,0,0, 0.3)";
2680 ctx.beginPath();
2681 ctx.moveTo(xoffset + curve[0] * unit, yoffset + curve[1] * unit);
2682 ctx.lineTo(xoffset + curve[2] * unit, yoffset + curve[3] * unit);
2683 ctx.lineTo(xoffset + curve[4] * unit, yoffset + curve[5] * unit);
2684 if (curve.length == 8)
2685 ctx.lineTo(xoffset + curve[6] * unit, yoffset + curve[7] * unit) ;
2686 // ctx.lineTo(xoffset + curve[0] * unit, yoffset + curve[1] * unit);
2687 ctx.stroke();
2688 }
2689 if (curveT >= 0 && curveT <= 1) {
2690 var x, y;
2691 var t = curveT;
2692 switch (curve.length) {
2693 case 4:
2694 var a = 1 - t;
2695 var b = t;
2696 x = a * curve[0] + b * curve[2];
2697 y = a * curve[1] + b * curve[3];
2698 break;
2699 case 6:
2700 var one_t = 1 - t;
2701 var a = one_t * one_t;
2702 var b = 2 * one_t * t;
2703 var c = t * t;
2704 x = a * curve[0] + b * curve[2] + c * curve[4];
2705 y = a * curve[1] + b * curve[3] + c * curve[5];
2706 break;
2707 case 8:
2708 var one_t = 1 - t;
2709 var one_t2 = one_t * one_t;
2710 var a = one_t2 * one_t;
2711 var b = 3 * one_t2 * t;
2712 var t2 = t * t;
2713 var c = 3 * one_t * t2;
2714 var d = t2 * t;
2715 x = a * curve[0] + b * curve[2] + c * curve[4] + d * curve[6 ];
2716 y = a * curve[1] + b * curve[3] + c * curve[5] + d * curve[7 ];
2717 break;
2718 }
2719 drawPoint(x, y, xoffset, yoffset, unit);
2720 var num = curveT.toFixed(decimal_places);
2721 ctx.beginPath();
2722 ctx.rect(200,10,200,10);
2723 ctx.fillStyle="white";
2724 ctx.fill();
2725 ctx.fillStyle="black";
2726 ctx.fillText(num, 230, 18);
2727 if (drawTangents && curve.length == 8) {
2728 var one_t = 1 - t;
2729 var a = curve[0];
2730 var b = curve[2];
2731 var c = curve[4];
2732 var d = curve[6];
2733 var dx = (b - a) * one_t * one_t + 2 * (c - b) * t * one_t + (d - c) * t * t;
2734 a = curve[1];
2735 b = curve[3];
2736 c = curve[5];
2737 d = curve[7];
2738 var dy = (b - a) * one_t * one_t + 2 * (c - b) * t * one_t + (d - c) * t * t;
2739 ctx.beginPath();
2740 ctx.moveTo(xoffset + (x - dx) * unit, yoffset + (y - dy) * unit) ;
2741 ctx.lineTo(xoffset + (x + dx) * unit, yoffset + (y + dy) * unit) ;
2742 ctx.stroke();
2743 }
2744 }
2745 }
2746 }
2747
2748 function drawTop() {
2749 init(tests[testIndex]);
2750 redraw();
2751 }
2752
2753 function redraw() {
2754 ctx.beginPath();
2755 ctx.rect(0, 0, ctx.canvas.width, ctx.canvas.height);
2756 ctx.fillStyle="white";
2757 ctx.fill();
2758 draw(tests[testIndex], testTitles[testIndex], scale);
2759 }
2760
2761 function doKeyPress(evt) {
2762 var char = String.fromCharCode(evt.charCode);
2763 switch (char) {
2764 case 'c':
2765 drawCubics ^= true;
2766 redraw();
2767 break;
2768 case 'd':
2769 decimal_places++;
2770 redraw();
2771 break;
2772 case 'D':
2773 decimal_places--;
2774 if (decimal_places < 1) {
2775 decimal_places = 1;
2776 }
2777 redraw();
2778 break;
2779 case 'g':
2780 drawGrid ^= true;
2781 redraw();
2782 break;
2783 case 'l':
2784 drawControlLines ^= true;
2785 redraw();
2786 break;
2787 case 'N':
2788 testIndex += 9;
2789 case 'n':
2790 if (++testIndex >= tests.length)
2791 testIndex = 0;
2792 mouseX = Infinity;
2793 drawTop();
2794 break;
2795 case 'P':
2796 testIndex -= 9;
2797 case 'p':
2798 if (--testIndex < 0)
2799 testIndex = tests.length - 1;
2800 mouseX = Infinity;
2801 drawTop();
2802 break;
2803 case 'q':
2804 drawQuads ^= true;
2805 redraw();
2806 break;
2807 case 't':
2808 drawTangents ^= true;
2809 redraw();
2810 break;
2811 case 'x':
2812 drawCubics ^= true;
2813 drawQuads ^= true;
2814 redraw();
2815 break;
2816 case '-':
2817 case '_':
2818 subscale /= 2;
2819 calcFromScale();
2820 redraw();
2821 break;
2822 case '+':
2823 case '=':
2824 subscale *= 2;
2825 calcFromScale();
2826 redraw();
2827 break;
2828 }
2829 }
2830
2831 function handleMouseClick() {
2832 var e = window.event;
2833 var tgt = e.target || e.srcElement;
2834 var min = tgt.offsetTop + Math.ceil(at_y);
2835 var max = min + ticks * rows * minScale;
2836 curveT = (e.clientY - min) / (max - min);
2837 redraw();
2838 }
2839
2840 function calcXY() {
2841 var e = window.event;
2842 var tgt = e.target || e.srcElement;
2843 var left = tgt.offsetLeft;
2844 var top = tgt.offsetTop;
2845 var unit = scale * ticks;
2846 mouseX = (e.clientX - left - Math.ceil(at_x) + 1) / unit + xStart;
2847 mouseY = (e.clientY - top - Math.ceil(at_y)) / unit + yStart;
2848 }
2849
2850 function handleMouseOver() {
2851 calcXY();
2852 var num = mouseX.toFixed(decimal_places) + ", " + mouseY.toFixed(decimal_pla ces);
2853 ctx.beginPath();
2854 ctx.rect(30,10,200,10);
2855 ctx.fillStyle="white";
2856 ctx.fill();
2857 ctx.fillStyle="black";
2858 ctx.fillText(num, 30, 18);
2859 }
2860
2861 function start() {
2862 for (i = 0; i < testDivs.length; ++i) {
2863 var title = testDivs[i].id.toString();
2864 var str = testDivs[i].firstChild.data;
2865 parse(str, title);
2866 }
2867 drawTop();
2868 window.addEventListener('keypress', doKeyPress, true);
2869 window.onresize = function() {
2870 drawTop();
2871 }
2872 }
2873
2874 </script>
2875 </head>
2876
2877 <body onLoad="start();">
2878 <canvas id="canvas" width="750" height="500"
2879 onmousemove="handleMouseOver()"
2880 onclick="handleMouseClick()"
2881 ></canvas >
2882 </body>
2883 </html>
OLDNEW
« no previous file with comments | « experimental/Intersection/op.htm ('k') | experimental/Intersection/thingsToDo.txt » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698