blob: 5f0b4c367e5c18d27f66771956d56885f80671f9 [file] [log] [blame]
Hal Canary6c8422c2020-01-10 15:22:09 -05001// Copyright 2020 Google LLC.
2// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
3#include "tools/fiddle/examples.h"
4REG_FIDDLE(bug583299, 350, 256, false, 0) {
5struct PieWedge {
6 double fMove[2];
7 double fLine1[2];
8 double fArc1Angles[2];
9 double fLine2[2];
10 double fArc2Angles[2];
11 unsigned char fRGB[3];
12} wedges[] = {
13 {{209, 62},
14 {208.99999999999997, 15},
15 {4.71238898038469, 4.864188625411087},
16 {214.8974757323885, 62.4484788888183},
17 {4.864188625411087, 4.71238898038469},
18 {66, 165, 245}},
19 {{214.8974757323885, 62.4484788888183},
20 {222.00469007654902, 15.988953447137789},
21 {4.864188625411087, 5.939986109728601},
22 {245.72563512075425, 87.87644388981317},
23 {5.939986109728601, 4.864188625411087},
24 {239, 83, 80}},
25 {{245.72563512075425, 87.87644388981317},
26 {289.9847338560222, 72.06087626984443},
27 {5.939986109728601, 0.6071985801055906},
28 {241.02873602896423, 123.25219244000306},
29 {0.6071985801055906, 5.939986109728601},
30 {255, 202, 40}},
31 {{241.02873602896423, 123.25219244000306},
32 {279.62746919207495, 150.06893717539134},
33 {0.6071985801055906, 1.2143971602111803},
34 {222.6071759801575, 137.54921013982414},
35 {1.2143971602111803, 0.6071985801055906},
36 {102, 187, 106}},
37 {{222.6071759801575, 137.54921013982414},
38 {239.00556754598836, 181.59569415448402},
39 {1.2143971602111803, 1.5905962804939922},
40 {208.2278522599403, 139.99235550550287},
41 {1.5905962804939922, 1.2143971602111803},
42 {171, 71, 188}},
43 {{208.2278522599403, 139.99235550550287},
44 {207.29731523986837, 186.98314290957046},
45 {1.5905962804939922, 1.8479956785822313},
46 {198.32714338718876, 138.51120008373994},
47 {1.8479956785822313, 1.5905962804939922},
48 {38, 198, 218}},
49 {{198.32714338718876, 138.51120008373994},
50 {185.46498285380088, 183.71700531286245},
51 {1.8479956785822313, 2.0657951692722794},
52 {190.473805325209, 135.3188011281243},
53 {2.0657951692722794, 1.8479956785822313},
54 {255, 110, 64}},
55 {{190.47380532520896, 135.31880112812428},
56 {168.1473655889223, 176.6773563338125},
57 {2.065795169272281, 2.296794629095059},
58 {183.10858870915067, 130.16564453887622},
59 {2.296794629095059, 2.065795169272281},
60 {212, 225, 87}},
61 {{183.10858870915067, 130.16564453887622},
62 {151.90611869197326, 165.31398539341933},
63 {2.296794629095059, 2.461794243254186},
64 {178.66972101612106, 125.51681416416235},
65 {2.461794243254186, 2.296794629095059},
66 {189, 189, 189}},
67 {{178.66972101612106, 125.51681416416235},
68 {142.1178463432413, 155.06271841328106},
69 {2.461794243254186, 2.5937939345814893},
70 {175.7067515538738, 121.31156340374902},
71 {2.5937939345814893, 2.461794243254186},
72 {92, 107, 192}},
73 {{175.70675155387386, 121.31156340374908},
74 {135.58411881110644, 145.78960135185693},
75 {2.5937939345814875, 2.719193641342425},
76 {173.4277844354395, 116.98804177591612},
77 {2.719193641342425, 2.5937939345814875},
78 {79, 195, 247}},
79 {{173.4277844354395, 116.98804177591612},
80 {130.55870413968708, 136.25568186484068},
81 {2.719193641342425, 2.831393378970633},
82 {171.86136233918353, 112.90468784549111},
83 {2.831393378970633, 2.719193641342425},
84 {255, 167, 38}},
85 {{171.86136233918353, 112.90468784549111},
86 {127.104542594097, 127.25136294133937},
87 {2.831393378970633, 2.9435931165988407},
88 {170.76198015985182, 108.67162555814826},
89 {2.9435931165988407, 2.831393378970633},
90 {66, 165, 245}},
91 {{170.76198015985182, 108.67162555814826},
92 {124.68026394223733, 117.91691789745515},
93 {2.9435931165988407, 2.99639299312976},
94 {170.41039556773984, 106.64290968930811},
95 {2.99639299312976, 2.9435931165988407},
96 {239, 83, 80}},
97 {{170.41039556773984, 106.64290968930811},
98 {123.90497484168273, 113.44333931488454},
99 {2.99639299312976, 3.095392761625238},
100 {170.04161398270747, 102.80115488718383},
101 {3.095392761625238, 2.99639299312976},
102 {255, 202, 40}},
103 {{170.04161398270747, 102.80115488718383},
104 {123.09176416699597, 104.97177744353357},
105 {3.095392761625238, 3.194392530120716},
106 {170.05434999746018, 98.9417614619119},
107 {3.194392530120716, 3.095392761625238},
108 {102, 187, 106}},
109 {{170.05434999746018, 98.94176146191197},
110 {123.1198487123481, 96.46132014678024},
111 {3.194392530120714, 3.2735923449170947},
112 {170.33927335887392, 95.86694870665369},
113 {3.2735923449170947, 3.194392530120714},
114 {171, 71, 188}},
115 {{170.33927335887392, 95.86694870665369},
116 {123.74814125290146, 89.68096381467222},
117 {3.2735923449170947, 3.352792159713477},
118 {170.86657367205342, 92.82431675692668},
119 {3.352792159713477, 3.2735923449170947},
120 {38, 198, 218}},
121 {{170.86657367205342, 92.82431675692668},
122 {124.9109060460665, 82.97157028450496},
123 {3.352792159713477, 3.412192020810762},
124 {171.41917672588357, 90.57494738432324},
125 {3.412192020810762, 3.352792159713477},
126 {255, 110, 64}},
127 {{171.41917672588357, 90.57494738432324},
128 {126.12946662630736, 78.0114224372256},
129 {3.412192020810762, 3.471591881908047},
130 {172.1043388501384, 88.36235036430459},
131 {3.471591881908047, 3.412192020810762},
132 {212, 225, 87}},
133 {{172.1043388501384, 88.36235036430453},
134 {127.64033695158726, 73.13236234179972},
135 {3.471591881908049, 3.5375917275716997},
136 {173.01814557458636, 85.9565246000686},
137 {3.5375917275716997, 3.471591881908049},
138 {189, 189, 189}},
139 {{173.01814557458636, 85.9565246000686},
140 {129.65539793370326, 67.82720809245897},
141 {3.5375917275716997, 3.5441917121380655},
142 {173.11821523751334, 85.71937428445484},
143 {3.5441917121380655, 3.5375917275716997},
144 {92, 107, 192}},
145 {{173.11821523751334, 85.71937428445484},
146 {129.8760643699012, 67.30426124264403},
147 {3.5441917121380655, 3.5969915886689847},
148 {173.97466004891183, 83.84699556023183},
149 {3.5969915886689847, 3.5441917121380655},
150 {79, 195, 247}},
151 {{173.97466004891183, 83.84699556023183},
152 {131.7646349796517, 63.17542610717788},
153 {3.5969915886689847, 3.6497914651999075},
154 {174.9287267647916, 82.02242533589258},
155 {3.6497914651999075, 3.5969915886689847},
156 {255, 167, 38}},
157 {{174.9287267647916, 82.02242533589258},
158 {133.86847440441224, 59.15201484325031},
159 {3.6497914651999075, 3.689391372598097},
160 {175.7067515538738, 80.688436596251},
161 {3.689391372598097, 3.6497914651999075},
162 {66, 165, 245}},
163 {{175.70675155387386, 80.68843659625094},
164 {135.5841188111064, 56.210398648143084},
165 {3.6893913725980987, 3.728991279996288},
166 {176.53697841699477, 79.38629532677618},
167 {3.728991279996288, 3.6893913725980987},
168 {239, 83, 80}},
169 {{176.53697841699477, 79.38629532677618},
170 {137.41487548362952, 53.33901020776284},
171 {3.728991279996288, 3.7619912028281135},
172 {177.26777398454274, 78.32698008416307},
173 {3.7619912028281135, 3.728991279996288},
174 {255, 202, 40}},
175 {{177.26777398454274, 78.32698008416307},
176 {139.0263734018122, 51.003084288154476},
177 {3.7619912028281135, 3.788391141093573},
178 {177.87732813607064, 77.49724918120904},
179 {3.788391141093573, 3.7619912028281135},
180 {102, 187, 106}},
181 {{177.87732813607064, 77.49724918120904},
182 {140.37051845389936, 49.17342127138402},
183 {3.788391141093573, 3.8147910793590345},
184 {178.50857218374682, 76.68389772750939},
185 {3.8147910793590345, 3.788391141093573},
186 {171, 71, 188}},
187 {{178.50857218374682, 76.68389772750939},
188 {141.7624925077494, 47.379877040148926},
189 {3.8147910793590345, 3.83459103305813},
190 {178.99597513166773, 76.0849745795735},
191 {3.83459103305813, 3.8147910793590345},
192 {38, 198, 218}},
193 {{178.99597513166773, 76.0849745795735},
194 {142.83727849547242, 46.05917471393132},
195 {3.83459103305813, 3.8543909867572257},
196 {179.49514041820387, 75.49581875341823},
197 {3.8543909867572257, 3.83459103305813},
198 {255, 110, 64}},
199 {{179.49514041820387, 75.49581875341823},
200 {143.93800194783418, 44.76001058446072},
201 {3.8543909867572257, 3.8741909404563213},
202 {180.0058723579047, 74.91666121306773},
203 {3.8741909404563213, 3.8543909867572257},
204 {212, 225, 87}},
205 {{180.00587235790465, 74.91666121306778},
206 {145.0642313533282, 43.482893957021275},
207 {3.8741909404563195, 3.893990894155415},
208 {180.52797073089823, 74.34772900296463},
209 {3.893990894155415, 3.8741909404563195},
210 {189, 189, 189}},
211 {{180.52797073089823, 74.34772900296463},
212 {146.21552520146793, 42.22832549371687},
213 {3.893990894155415, 3.9137908478545107},
214 {181.06123086138257, 73.78924515896263},
215 {3.9137908478545107, 3.893990894155415},
216 {92, 107, 192}},
217 {{181.06123086138257, 73.78924515896263},
218 {147.39143215586927, 40.996797017199654},
219 {3.9137908478545107, 3.9335908015536063},
220 {181.60544369786365, 73.24142862089114},
221 {3.9335908015536063, 3.9137908478545107},
222 {79, 195, 247}},
223 {{181.60544369786365, 73.24142862089114},
224 {148.59149123118652, 39.78879131786252},
225 {3.9335908015536063, 3.953390755252702},
226 {182.16039589510896, 72.70449414672505},
227 {3.953390755252702, 3.9335908015536063},
228 {255, 167, 38}},
229 {{182.16039589510896, 72.70449414672505},
230 {149.81523197383004, 38.604781964573206},
231 {3.953390755252702, 3.9731907089517975},
232 {182.72586989778426, 72.1786522283943},
233 {3.9731907089517975, 3.953390755252702},
234 {66, 165, 245}},
235 {{182.72586989778426, 72.1786522283943},
236 {151.0621746463961, 37.44523311902331},
237 {3.9731907089517975, 3.9863906780845255},
238 {183.1085887091506, 71.83435546112383},
239 {3.9863906780845255, 3.9731907089517975},
240 {239, 83, 80}},
241 {{183.10858870915067, 71.83435546112379},
242 {151.90611869197326, 36.68601460658067},
243 {3.9863906780845273, 3.999590647217257},
244 {183.49581875341823, 71.49514041820387},
245 {3.999590647217257, 3.9863906780845273},
246 {255, 202, 40}},
247 {{183.49581875341823, 71.49514041820387},
248 {152.7600105844607, 35.938001947834195},
249 {3.999590647217257, 4.012790616349987},
250 {183.88749256091927, 71.161066203329},
251 {4.012790616349987, 3.999590647217257},
252 {102, 187, 106}},
253 {{183.8874925609193, 71.16106620332897},
254 {153.6237015445913, 35.20132547400746},
255 {4.012790616349989, 4.025990585482717},
256 {184.28354188771962, 70.83219102447296},
257 {4.025990585482717, 4.012790616349989},
258 {171, 71, 188}},
259 {{184.28354188771968, 70.83219102447292},
260 {154.49704108574082, 34.47611354114541},
261 {4.0259905854827185, 4.039190554615448},
262 {184.6838977275094, 70.50857218374685},
263 {4.039190554615448, 4.0259905854827185},
264 {38, 198, 218}},
265 {{184.6838977275094, 70.50857218374685},
266 {155.3798770401489, 33.76249250774944},
267 {4.039190554615448, 4.052390523748178},
268 {185.08849032362605, 70.19026606741508},
269 {4.052390523748178, 4.039190554615448},
270 {255, 110, 64}},
271 {{185.0884903236261, 70.19026606741504},
272 {156.2720555854319, 33.06058671276138},
273 {4.05239052374818, 4.065590492880908},
274 {185.49724918120899, 69.87732813607067},
275 {4.065590492880908, 4.05239052374818},
276 {212, 225, 87}},
277 {{185.49724918120899, 69.87732813607067},
278 {157.1734212713839, 32.37051845389945},
279 {4.065590492880908, 4.0787904620136395},
280 {185.91010307948213, 69.56981291497203},
281 {4.0787904620136395, 4.065590492880908},
282 {189, 189, 189}},
283 {{185.91010307948213, 69.56981291497203},
284 {158.08381704706312, 31.692407966348583},
285 {4.0787904620136395, 4.091990431146369},
286 {186.32698008416307, 69.26777398454276},
287 {4.091990431146369, 4.0787904620136395},
288 {92, 107, 192}},
289 {{186.32698008416307, 69.26777398454276},
290 {159.00308428815444, 31.026373401812222},
291 {4.091990431146369, 4.105190400279099},
292 {186.74780755999694, 68.97126397103578},
293 {4.105190400279099, 4.091990431146369},
294 {79, 195, 247}},
295 {{186.74780755999694, 68.97126397103578},
296 {159.93106282460863, 30.37253080792506},
297 {4.105190400279099, 4.118390369411829},
298 {187.17251218341195, 68.68033453736409},
299 {4.118390369411829, 4.105190400279099},
300 {255, 167, 38}},
301 {{187.172512183412, 68.68033453736405},
302 {160.86759096854956, 29.730994108033556},
303 {4.118390369411831, 4.131590338544559},
304 {187.60101995529507, 68.3950363740991},
305 {4.131590338544559, 4.118390369411831},
306 {66, 165, 245}},
307 {{187.60101995529507, 68.3950363740991},
308 {161.81250554244556, 29.101875081346734},
309 {4.131590338544559, 4.14479030767729},
310 {188.0332562138855, 68.11541919063848},
311 {4.14479030767729, 4.131590338544559},
312 {239, 83, 80}},
313 {{188.0332562138855, 68.11541919063848},
314 {162.76564190754235, 28.4852833434592},
315 {4.14479030767729, 4.151390292243654},
316 {188.25074901590185, 67.97775623009694},
317 {4.151390292243654, 4.14479030767729},
318 {255, 202, 40}},
319 {{188.25074901590185, 67.97775623009694},
320 {163.24524141968098, 28.181718866367618},
321 {4.151390292243654, 4.15799027681002},
322 {188.4691456477831, 67.84153170654506},
323 {4.15799027681002, 4.151390292243654},
324 {102, 187, 106}},
325 {{188.4691456477831, 67.84153170654506},
326 {163.72683399254737, 27.88132632725319},
327 {4.15799027681002, 4.164590261376386},
328 {188.688436596251, 67.70675155387381},
329 {4.164590261376386, 4.15799027681002},
330 {171, 71, 188}},
331 {{188.688436596251, 67.70675155387381},
332 {164.21039864814318, 27.584118811106364},
333 {4.164590261376386, 4.17119024594275},
334 {188.90861230907103, 67.57342164305794},
335 {4.17119024594275, 4.164590261376386},
336 {38, 198, 218}},
337 {{188.90861230907103, 67.57342164305794},
338 {164.6959143225669, 27.290109264179037},
339 {4.17119024594275, 4.177790230509116},
340 {189.129663195469, 67.44154778190001},
341 {4.177790230509116, 4.17119024594275},
342 {255, 110, 64}},
343 {{189.129663195469, 67.44154778190001},
344 {165.1833598669316, 26.999310493420538},
345 {4.177790230509116, 4.1843902150754815},
346 {189.35157962654816, 67.31113571477775},
347 {4.1843902150754815, 4.177790230509116},
348 {212, 225, 87}},
349 {{189.35157962654816, 67.31113571477775},
350 {165.6727140482857, 26.711735165920174},
351 {4.1843902150754815, 4.1909901996418455},
352 {189.57435193570907, 67.18219112239366},
353 {4.1909901996418455, 4.1843902150754815},
354 {189, 189, 189}},
355 {{189.57435193570907, 67.18219112239366},
356 {166.16395555053796, 26.427395808355243},
357 {4.1909901996418455, 4.1975901842082095},
358 {189.7979704190706, 67.05471962152747},
359 {4.1975901842082095, 4.1909901996418455},
360 {92, 107, 192}},
361 {{189.7979704190706, 67.05471962152747},
362 {166.65706297538645, 26.146304806445187},
363 {4.1975901842082095, 4.204190168774575},
364 {190.02242533589256, 66.9287267647916},
365 {4.204190168774575, 4.1975901842082095},
366 {79, 195, 247}},
367 {{190.02242533589262, 66.92872676479158},
368 {167.1520148432504, 25.868474404412183},
369 {4.204190168774577, 4.210790153340941},
370 {190.247706909, 66.80421804038936},
371 {4.210790153340941, 4.204190168774577},
372 {255, 167, 38}},
373 {{190.247706909, 66.80421804038936},
374 {167.64878959420508, 25.593916704448333},
375 {4.210790153340941, 4.217390137907305},
376 {190.47380532520896, 66.68119887187574},
377 {4.217390137907305, 4.210790153340941},
378 {66, 165, 245}},
379 {{190.47380532520896, 66.68119887187574},
380 {168.1473655889223, 25.322643666187517},
381 {4.217390137907305, 4.223990122473671},
382 {190.7007107357544, 66.55967461792113},
383 {4.223990122473671, 4.217390137907305},
384 {239, 83, 80}},
385 {{190.70071073575446, 66.5596746179211},
386 {168.6477211096124, 25.054667106185008},
387 {4.223990122473673, 4.230590107040037},
388 {190.9284132567187, 66.43965057207814},
389 {4.230590107040037, 4.223990122473673},
390 {255, 202, 40}},
391 {{190.9284132567187, 66.43965057207814},
392 {169.14983436096944, 24.789998697403064},
393 {4.230590107040037, 4.237190091606401},
394 {191.15690296946235, 66.32113196255075},
395 {4.237190091606401, 4.230590107040037},
396 {102, 187, 106}},
397 {{191.15690296946235, 66.32113196255075},
398 {169.65368347112212, 24.528649968701657},
399 {4.237190091606401, 4.2437900761727665},
400 {191.3861699210563, 66.2041239519667},
401 {4.2437900761727665, 4.237190091606401},
402 {171, 71, 188}},
403 {{191.38616992105636, 66.20412395196666},
404 {170.15924649258585, 24.27063230433673},
405 {4.243790076172768, 4.250390060739132},
406 {191.616204124715, 66.08863163715256},
407 {4.250390060739132, 4.243790076172768},
408 {38, 198, 218}},
409 {{191.616204124715, 66.08863163715256},
410 {170.66650140321772, 24.01595694346463},
411 {4.250390060739132, 4.256990045305496},
412 {191.84699556023176, 65.97466004891186},
413 {4.256990045305496, 4.250390060739132},
414 {255, 110, 64}},
415 {{191.84699556023176, 65.97466004891186},
416 {171.1754261071777, 23.764634979651802},
417 {4.256990045305496, 4.263590029871862},
418 {192.07853417441524, 65.86221415180566},
419 {4.263590029871862, 4.256990045305496},
420 {212, 225, 87}},
421 {{192.07853417441524, 65.86221415180566},
422 {171.68599843588999, 23.516677360391967},
423 {4.263590029871862, 4.270190014438228},
424 {192.31080988152712, 65.75129884393658},
425 {4.270190014438228, 4.263590029871862},
426 {189, 189, 189}},
427 {{192.31080988152712, 65.75129884393658},
428 {172.1981961490085, 23.272094886629375},
429 {4.270190014438228, 4.276789999004592},
430 {192.54381256372162, 65.64191895673532},
431 {4.276789999004592, 4.270190014438228},
432 {92, 107, 192}},
433 {{192.54381256372162, 65.64191895673532},
434 {172.7119969353861, 23.03089821228815},
435 {4.276789999004592, 4.283389983570958},
436 {192.7775320714863, 65.53407925475014},
437 {4.283389983570958, 4.276789999004592},
438 {79, 195, 247}},
439 {{192.7775320714863, 65.53407925475014},
440 {173.2273784140467, 22.793097843808},
441 {4.283389983570958, 4.2899899681373235},
442 {193.01195822408394, 65.42778443543946},
443 {4.2899899681373235, 4.283389983570958},
444 {255, 167, 38}},
445 {{193.01195822408394, 65.42778443543946},
446 {173.74431813515946, 22.558704139687023},
447 {4.2899899681373235, 4.2965899527036875},
448 {193.24708080999608, 65.3230391289672},
449 {4.2965899527036875, 4.2899899681373235},
450 {66, 165, 245}},
451 {{193.24708080999608, 65.3230391289672},
452 {174.262793581017, 22.327727310030212},
453 {4.2965899527036875, 4.3031899372700515},
454 {193.48288958736805, 65.21984789800092},
455 {4.3031899372700515, 4.2965899527036875},
456 {239, 83, 80}},
457 {{193.48288958736805, 65.21984789800092},
458 {174.7827821670167, 22.1001774161046},
459 {4.3031899372700515, 4.309789921836417},
460 {193.71937428445483, 65.11821523751334},
461 {4.309789921836417, 4.3031899372700515},
462 {255, 202, 40}},
463 {{193.7193742844549, 65.11821523751331},
464 {175.30426124264415, 21.876064369901144},
465 {4.309789921836419, 4.316389906402783},
466 {193.95652460006858, 65.01814557458637},
467 {4.316389906402783, 4.309789921836419},
468 {102, 187, 106}},
469 {{193.95652460006858, 65.01814557458637},
470 {175.82720809245893, 21.65539793370327},
471 {4.316389906402783, 4.322989890969147},
472 {194.1943302040273, 64.91964326821835},
473 {4.322989890969147, 4.316389906402783},
474 {171, 71, 188}},
475 {{194.1943302040273, 64.91964326821835},
476 {176.35159993708584, 21.438187719660974},
477 {4.322989890969147, 4.329589875535513},
478 {194.43278073760504, 64.82271260913404},
479 {4.329589875535513, 4.322989890969147},
480 {38, 198, 218}},
481 {{194.43278073760504, 64.82271260913404},
482 {176.87741393420595, 21.224443189372508},
483 {4.329589875535513, 4.336189860101879},
484 {194.67186581398275, 64.72735781959793},
485 {4.336189860101879, 4.329589875535513},
486 {255, 110, 64}},
487 {{194.67186581398275, 64.72735781959793},
488 {177.4046271795517, 21.01417365347234},
489 {4.336189860101879, 4.342789844668243},
490 {194.911575018701, 64.63358305323013},
491 {4.342789844668243, 4.336189860101879},
492 {212, 225, 87}},
493 {{194.911575018701, 64.63358305323013},
494 {177.93321670790476, 20.807388271225435},
495 {4.342789844668243, 4.3493898292346085},
496 {195.15189791011366, 64.54139239482552},
497 {4.3493898292346085, 4.342789844668243},
498 {189, 189, 189}},
499 {{195.15189791011366, 64.54139239482552},
500 {178.46315949409683, 20.604096050128078},
501 {4.3493898292346085, 4.355989813800974},
502 {195.39282401984252, 64.45078986017583},
503 {4.355989813800974, 4.3493898292346085},
504 {92, 107, 192}},
505 {{195.39282401984252, 64.45078986017583},
506 {178.9944324540117, 20.40430584551595},
507 {4.355989813800974, 4.362589798367338},
508 {195.6343428532333, 64.36177939589473},
509 {4.362589798367338, 4.355989813800974},
510 {79, 195, 247}},
511 {{195.6343428532333, 64.36177939589473},
512 {179.52701244559137, 20.20802636017811},
513 {4.362589798367338, 4.369189782933702},
514 {195.87644388981312, 64.27436487924578},
515 {4.369189782933702, 4.362589798367338},
516 {255, 167, 38}},
517 {{195.87644388981317, 64.27436487924575},
518 {180.0608762698444, 20.01526614397781},
519 {4.369189782933704, 4.37578976750007},
520 {196.1191165837485, 64.18855011797365},
521 {4.37578976750007, 4.369189782933704},
522 {66, 165, 245}},
523 {{196.1191165837485, 64.18855011797365},
524 {180.59600067185568, 19.826033593480375},
525 {4.37578976750007, 4.382389752066434},
526 {196.36235036430452, 64.10433885013842},
527 {4.382389752066434, 4.37578976750007},
528 {239, 83, 80}},
529 {{196.36235036430452, 64.10433885013842},
530 {181.1323623417997, 19.640336951587273},
531 {4.382389752066434, 4.388989736632798},
532 {196.60613463630577, 64.02173474395235},
533 {4.388989736632798, 4.382389752066434},
534 {255, 202, 40}},
535 {{196.60613463630577, 64.02173474395235},
536 {181.66993791595633, 19.458184307176978},
537 {4.388989736632798, 4.395589721199164},
538 {196.8504587805977, 63.94074139762042},
539 {4.395589721199164, 4.388989736632798},
540 {102, 187, 106}},
541 {{196.8504587805977, 63.94074139762042},
542 {182.20870397772828, 19.279583594752737},
543 {4.395589721199164, 4.4021897057655295},
544 {197.0953121545089, 63.86136233918352},
545 {4.4021897057655295, 4.395589721199164},
546 {171, 71, 188}},
547 {{197.0953121545089, 63.86136233918352},
548 {182.74863705866062, 19.104542594096998},
549 {4.4021897057655295, 4.4087896903318935},
550 {197.34068409231492, 63.783601026364714},
551 {4.4087896903318935, 4.4021897057655295},
552 {38, 198, 218}},
553 {{197.34068409231492, 63.783601026364714},
554 {183.28971363946366, 18.933068929932446},
555 {4.4087896903318935, 4.415389674898259},
556 {197.5865639057031, 63.70746084641862},
557 {4.415389674898259, 4.4087896903318935},
558 {255, 110, 64}},
559 {{197.5865639057031, 63.70746084641862},
560 {183.83191015103756, 18.76517007158978},
561 {4.415389674898259, 4.421989659464625},
562 {197.83294088423762, 63.632945115983944},
563 {4.421989659464625, 4.415389674898259},
564 {212, 225, 87}},
565 {{197.83294088423762, 63.632945115983944},
566 {184.37520297549833, 18.600853332682547},
567 {4.421989659464625, 4.428589644030989},
568 {198.07980429582642, 63.56005708093896},
569 {4.428589644030989, 4.421989659464625},
570 {189, 189, 189}},
571 {{198.07980429582642, 63.56005708093896},
572 {184.91956844720698, 18.440125870788478},
573 {4.428589644030989, 4.435189628597355},
574 {198.32714338718876, 63.48879991626006},
575 {4.435189628597355, 4.428589644030989},
576 {92, 107, 192}},
577 {{198.32714338718876, 63.48879991626006},
578 {185.46498285380085, 18.28299468713756},
579 {4.435189628597355, 4.441789613163721},
580 {198.57494738432322, 63.419176725883574},
581 {4.441789613163721, 4.435189628597355},
582 {79, 195, 247}},
583 {{198.57494738432322, 63.419176725883574},
584 {186.01142243722558, 18.129466626307362},
585 {4.441789613163721, 4.448389597730085},
586 {198.8232054929773, 63.3511905425705},
587 {4.448389597730085, 4.441789613163721},
588 {255, 167, 38}},
589 {{198.8232054929773, 63.3511905425705},
590 {186.5588633947705, 17.97954837592468},
591 {4.448389597730085, 4.461589566862816},
592 {199.3210407694013, 63.220140971512244},
593 {4.461589566862816, 4.448389597730085},
594 {66, 165, 245}},
595 {{199.3210407694013, 63.220140971512244},
596 {187.6566540043208, 17.690567270514165},
597 {4.461589566862816, 4.46818955142918},
598 {199.57059625164655, 63.15708329223899},
599 {4.46818955142918, 4.461589566862816},
600 {239, 83, 80}},
601 {{199.57059625164655, 63.15708329223899},
602 {188.20695583696417, 17.551517003398786},
603 {4.46818955142918, 4.474789535995544},
604 {199.8205624753071, 63.095674036724255},
605 {4.474789535995544, 4.46818955142918},
606 {255, 202, 40}},
607 {{199.82056247530716, 63.09567403672424},
608 {188.75816340708758, 17.416101722007298},
609 {4.474789535995546, 4.481389520561912},
610 {200.0709285519448, 63.03591587993297},
611 {4.481389520561912, 4.474789535995546},
612 {102, 187, 106}},
613 {{200.0709285519448, 63.03591587993297},
614 {189.31025270428856, 17.284327324980396},
615 {4.481389520561912, 4.487989505128276},
616 {200.32168357570373, 62.97781142490888},
617 {4.487989505128276, 4.481389520561912},
618 {171, 71, 188}},
619 {{200.32168357570373, 62.97781142490888},
620 {189.86319967975695, 17.156199552363162},
621 {4.487989505128276, 4.49458948969464},
622 {200.57281662378588, 62.921363202660984},
623 {4.49458948969464, 4.487989505128276},
624 {38, 198, 218}},
625 {{200.57281662378588, 62.921363202660984},
626 {190.41698024732275, 17.031723985355},
627 {4.49458948969464, 4.501189474261006},
628 {200.82431675692666, 62.86657367205342},
629 {4.501189474261006, 4.49458948969464},
630 {255, 110, 64}},
631 {{200.82431675692672, 62.8665736720534},
632 {190.9715702845051, 16.910906046066472},
633 {4.5011894742610075, 4.5077894588273715},
634 {201.07617301987116, 62.8134452196983},
635 {4.5077894588273715, 4.5011894742610075},
636 {212, 225, 87}},
637 {{201.07617301987116, 62.8134452196983},
638 {191.52694563356206, 16.79375099728344},
639 {4.5077894588273715, 4.5143894433937355},
640 {201.32837444185168, 62.76198015985183},
641 {4.5143894433937355, 4.5077894588273715},
642 {189, 189, 189}},
643 {{201.32837444185168, 62.76198015985183},
644 {192.0830821025447, 16.68026394223736},
645 {4.5143894433937355, 4.520989427960101},
646 {201.5809100370656, 62.71218073431335},
647 {4.520989427960101, 4.5143894433937355},
648 {92, 107, 192}},
649 {{201.5809100370656, 62.71218073431335},
650 {192.6399554663498, 16.570449824383275},
651 {4.520989427960101, 4.527589412526467},
652 {201.83376880515377, 62.664049112327824},
653 {4.527589412526467, 4.520989427960101},
654 {79, 195, 247}},
655 {{201.83376880515377, 62.664049112327824},
656 {193.19754146777498, 16.464313427184436},
657 {4.527589412526467, 4.534189397092831},
658 {202.08693973167965, 62.61758739049132},
659 {4.534189397092831, 4.527589412526467},
660 {255, 167, 38}},
661 {{202.08693973167965, 62.61758739049132},
662 {193.75581581857563, 16.36185937390394},
663 {4.534189397092831, 4.540789381659197},
664 {202.34041178860943, 62.5727975926596},
665 {4.540789381659197, 4.534189397092831},
666 {66, 165, 245}},
667 {{202.34041178860943, 62.5727975926596},
668 {194.31475420052337, 16.263092127403226},
669 {4.540789381659197, 4.547389366225563},
670 {202.59417393479197, 62.529681669860054},
671 {4.547389366225563, 4.540789381659197},
672 {239, 83, 80}},
673 {{202.59417393479197, 62.529681669860054},
674 {194.87433226646434, 16.16801598994782},
675 {4.547389366225563, 4.553989350791927},
676 {202.84821511643992, 62.4882415002067},
677 {4.553989350791927, 4.547389366225563},
678 {255, 202, 40}},
679 {{202.84821511643992, 62.4882415002067},
680 {195.43452564138033, 16.076635103019896},
681 {4.553989350791927, 4.560589335358291},
682 {203.10252426761141, 62.44847888881831},
683 {4.560589335358291, 4.553989350791927},
684 {102, 187, 106}},
685 {{203.10252426761141, 62.44847888881831},
686 {195.99530992345078, 15.988953447137803},
687 {4.560589335358291, 4.5671893199246565},
688 {203.3570903106919, 62.41039556773984},
689 {4.5671893199246565, 4.560589335358291},
690 {171, 71, 188}},
691 {{203.35709031069194, 62.41039556773983},
692 {196.5566606851156, 15.904974841682716},
693 {4.567189319924658, 4.573789304491022},
694 {203.6119021568766, 62.373993195867},
695 {4.573789304491022, 4.567189319924658},
696 {38, 198, 218}},
697 {{203.6119021568766, 62.373993195867},
698 {197.1185534741381, 15.824702944732365},
699 {4.573789304491022, 4.580389289057386},
700 {203.8669487066536, 62.33927335887393},
701 {4.580389289057386, 4.573789304491022},
702 {255, 110, 64}},
703 {{203.8669487066536, 62.33927335887393},
704 {197.68096381467205, 15.74814125290149},
705 {4.580389289057386, 4.586989273623752},
706 {204.12221885028765, 62.30623756914416},
707 {4.586989273623752, 4.580389289057386},
708 {212, 225, 87}},
709 {{204.12221885028765, 62.30623756914416},
710 {198.24386720832663, 15.67529310118968},
711 {4.586989273623752, 4.593589258190118},
712 {204.3777014683036, 62.274887265704734},
713 {4.593589258190118, 4.586989273623752},
714 {189, 189, 189}},
715 {{204.3777014683036, 62.274887265704734},
716 {198.80723913523357, 15.606161662836087},
717 {4.593589258190118, 4.600189242756482},
718 {204.63338543197096, 62.245223814163545},
719 {4.600189242756482, 4.593589258190118},
720 {92, 107, 192}},
721 {{204.63338543197096, 62.245223814163545},
722 {199.37105505511542, 15.540749949181148},
723 {4.600189242756482, 4.606789227322848},
724 {204.88925960378893, 62.21724850664979},
725 {4.606789227322848, 4.600189242756482},
726 {79, 195, 247}},
727 {{204.88925960378893, 62.21724850664979},
728 {199.93529040835506, 15.479060809535426},
729 {4.606789227322848, 4.6133892118892135},
730 {205.1453128379711, 62.190962561757736},
731 {4.6133892118892135, 4.606789227322848},
732 {255, 167, 38}},
733 {{205.1453128379711, 62.190962561757736},
734 {200.49992061706448, 15.42109693105553},
735 {4.6133892118892135, 4.6199891964555775},
736 {205.4015339809312, 62.166367124493654},
737 {4.6199891964555775, 4.6133892118892135},
738 {66, 165, 245}},
739 {{205.4015339809312, 62.166367124493654},
740 {201.06492108615595, 15.366860838627034},
741 {4.6199891964555775, 4.626589181021943},
742 {205.65791187176904, 62.14346326622588},
743 {4.626589181021943, 4.6199891964555775},
744 {239, 83, 80}},
745 {{205.65791187176904, 62.14346326622588},
746 {201.6302672044138, 15.316354894754497},
747 {4.626589181021943, 4.633189165588309},
748 {205.91443534275646, 62.12225198463818},
749 {4.633189165588309, 4.626589181021943},
750 {255, 202, 40}},
751 {{205.91443534275646, 62.12225198463818},
752 {202.19593434556555, 15.269581299458551},
753 {4.633189165588309, 4.639789150154673},
754 {206.17109321982377, 62.10273420368633},
755 {4.639789150154673, 4.633189165588309},
756 {102, 187, 106}},
757 {{206.17109321982377, 62.10273420368633},
758 {202.761897869355, 15.226542090180118},
759 {4.639789150154673, 4.646389134721039},
760 {206.4278743230469, 62.084910773557795},
761 {4.646389134721039, 4.639789150154673},
762 {171, 71, 188}},
763 {{206.4278743230469, 62.084910773557795},
764 {203.3281331226162, 15.187239141691535},
765 {4.646389134721039, 4.652989119287405},
766 {206.68476746713378, 62.06878247063473},
767 {4.652989119287405, 4.646389134721039},
768 {38, 198, 218}},
769 {{206.68476746713378, 62.06878247063473},
770 {203.89461544034626, 15.151674166015042},
771 {4.652989119287405, 4.659589103853769},
772 {206.94176146191197, 62.054349997460186},
773 {4.659589103853769, 4.652989119287405},
774 {255, 110, 64}},
775 {{206.94176146191197, 62.054349997460186},
776 {204.46132014678022, 15.119848712348102},
777 {4.659589103853769, 4.666189088420133},
778 {207.19884511281612, 62.041613982707474},
779 {4.666189088420133, 4.659589103853769},
780 {212, 225, 87}},
781 {{207.19884511281617, 62.041613982707474},
782 {205.02822255646643, 15.091764166995972},
783 {4.6661890884201345, 4.6727890729865},
784 {207.45600722137553, 62.03057498115278},
785 {4.6727890729865, 4.6661890884201345},
786 {189, 189, 189}},
787 {{207.45600722137553, 62.03057498115278},
788 {205.5952979753409, 15.067421753311265},
789 {4.6727890729865, 4.679389057552864},
790 {207.71323658570157, 62.02123347365103},
791 {4.679389057552864, 4.6727890729865},
792 {92, 107, 192}},
793 {{207.71323658570157, 62.02123347365103},
794 {206.16252170180348, 15.046822531640728},
795 {4.679389057552864, 4.685989042119228},
796 {207.97052200097633, 62.0135898671149},
797 {4.685989042119228, 4.679389057552864},
798 {79, 195, 247}},
799 {{207.97052200097633, 62.0135898671149},
800 {206.72986902779397, 15.029967399279002},
801 {4.685989042119228, 4.692589026685594},
802 {208.2278522599403, 62.00764449449712},
803 {4.692589026685594, 4.685989042119228},
804 {255, 167, 38}},
805 {{208.2278522599403, 62.00764449449712},
806 {207.29731523986834, 15.016857090429554},
807 {4.692589026685594, 4.69918901125196},
808 {208.4852161533804, 62.003397614775984},
809 {4.69918901125196, 4.692589026685594},
810 {66, 165, 245}},
811 {{208.4852161533804, 62.003397614775984},
812 {207.86483562027476, 15.00749217617269},
813 {4.69918901125196, 4.705788995818324},
814 {208.74260247061855, 62.00084941294403},
815 {4.705788995818324, 4.69918901125196},
816 {239, 83, 80}},
817 {{208.74260247061855, 62.00084941294403},
818 {208.43240544803064, 15.001873064440673},
819 {4.705788995818324, 4.71238898038469},
820 {209, 62},
821 {4.71238898038469, 4.705788995818324},
822 {255, 202, 40}},
823};
824void draw(SkCanvas* canvas) {
825 SkRect oval1 = {209 - 86, 101 - 86, 209 + 86, 101 + 86};
826 SkRect oval2 = {209 - 39, 101 - 39, 209 + 39, 101 + 39};
827 for (const auto& wedge : wedges) {
828 SkPath path;
829 path.moveTo(SkDoubleToScalar(wedge.fMove[0]), SkDoubleToScalar(wedge.fMove[1]));
830 path.lineTo(SkDoubleToScalar(wedge.fLine1[0]), SkDoubleToScalar(wedge.fLine1[1]));
831 SkASSERT(wedge.fArc1Angles[0] == wedge.fArc2Angles[1]);
832 SkASSERT(wedge.fArc1Angles[1] == wedge.fArc2Angles[0]);
833 SkScalar start = SkDoubleToScalar(wedge.fArc1Angles[0] * 180.f / SK_ScalarPI);
834 SkScalar end = SkDoubleToScalar(wedge.fArc1Angles[1] * 180.f / SK_ScalarPI);
835 if (end < start) {
836 end += 360;
837 }
838 path.arcTo(oval1, start, end - start, false);
839 path.lineTo(SkDoubleToScalar(wedge.fLine2[0]), SkDoubleToScalar(wedge.fLine2[1]));
840 path.arcTo(oval2, end, start - end, false);
841 path.close();
842 SkPaint paint;
843 paint.setAntiAlias(true);
844 paint.setARGB(255, wedge.fRGB[0], wedge.fRGB[1], wedge.fRGB[2]);
845 canvas->drawPath(path, paint);
846 }
847}
848} // END FIDDLE