849 lines
34 KiB
C++
849 lines
34 KiB
C++
|
// Copyright 2020 Google LLC.
|
||
|
// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
|
||
|
#include "tools/fiddle/examples.h"
|
||
|
REG_FIDDLE(bug583299, 350, 256, false, 0) {
|
||
|
struct PieWedge {
|
||
|
double fMove[2];
|
||
|
double fLine1[2];
|
||
|
double fArc1Angles[2];
|
||
|
double fLine2[2];
|
||
|
double fArc2Angles[2];
|
||
|
unsigned char fRGB[3];
|
||
|
} wedges[] = {
|
||
|
{{209, 62},
|
||
|
{208.99999999999997, 15},
|
||
|
{4.71238898038469, 4.864188625411087},
|
||
|
{214.8974757323885, 62.4484788888183},
|
||
|
{4.864188625411087, 4.71238898038469},
|
||
|
{66, 165, 245}},
|
||
|
{{214.8974757323885, 62.4484788888183},
|
||
|
{222.00469007654902, 15.988953447137789},
|
||
|
{4.864188625411087, 5.939986109728601},
|
||
|
{245.72563512075425, 87.87644388981317},
|
||
|
{5.939986109728601, 4.864188625411087},
|
||
|
{239, 83, 80}},
|
||
|
{{245.72563512075425, 87.87644388981317},
|
||
|
{289.9847338560222, 72.06087626984443},
|
||
|
{5.939986109728601, 0.6071985801055906},
|
||
|
{241.02873602896423, 123.25219244000306},
|
||
|
{0.6071985801055906, 5.939986109728601},
|
||
|
{255, 202, 40}},
|
||
|
{{241.02873602896423, 123.25219244000306},
|
||
|
{279.62746919207495, 150.06893717539134},
|
||
|
{0.6071985801055906, 1.2143971602111803},
|
||
|
{222.6071759801575, 137.54921013982414},
|
||
|
{1.2143971602111803, 0.6071985801055906},
|
||
|
{102, 187, 106}},
|
||
|
{{222.6071759801575, 137.54921013982414},
|
||
|
{239.00556754598836, 181.59569415448402},
|
||
|
{1.2143971602111803, 1.5905962804939922},
|
||
|
{208.2278522599403, 139.99235550550287},
|
||
|
{1.5905962804939922, 1.2143971602111803},
|
||
|
{171, 71, 188}},
|
||
|
{{208.2278522599403, 139.99235550550287},
|
||
|
{207.29731523986837, 186.98314290957046},
|
||
|
{1.5905962804939922, 1.8479956785822313},
|
||
|
{198.32714338718876, 138.51120008373994},
|
||
|
{1.8479956785822313, 1.5905962804939922},
|
||
|
{38, 198, 218}},
|
||
|
{{198.32714338718876, 138.51120008373994},
|
||
|
{185.46498285380088, 183.71700531286245},
|
||
|
{1.8479956785822313, 2.0657951692722794},
|
||
|
{190.473805325209, 135.3188011281243},
|
||
|
{2.0657951692722794, 1.8479956785822313},
|
||
|
{255, 110, 64}},
|
||
|
{{190.47380532520896, 135.31880112812428},
|
||
|
{168.1473655889223, 176.6773563338125},
|
||
|
{2.065795169272281, 2.296794629095059},
|
||
|
{183.10858870915067, 130.16564453887622},
|
||
|
{2.296794629095059, 2.065795169272281},
|
||
|
{212, 225, 87}},
|
||
|
{{183.10858870915067, 130.16564453887622},
|
||
|
{151.90611869197326, 165.31398539341933},
|
||
|
{2.296794629095059, 2.461794243254186},
|
||
|
{178.66972101612106, 125.51681416416235},
|
||
|
{2.461794243254186, 2.296794629095059},
|
||
|
{189, 189, 189}},
|
||
|
{{178.66972101612106, 125.51681416416235},
|
||
|
{142.1178463432413, 155.06271841328106},
|
||
|
{2.461794243254186, 2.5937939345814893},
|
||
|
{175.7067515538738, 121.31156340374902},
|
||
|
{2.5937939345814893, 2.461794243254186},
|
||
|
{92, 107, 192}},
|
||
|
{{175.70675155387386, 121.31156340374908},
|
||
|
{135.58411881110644, 145.78960135185693},
|
||
|
{2.5937939345814875, 2.719193641342425},
|
||
|
{173.4277844354395, 116.98804177591612},
|
||
|
{2.719193641342425, 2.5937939345814875},
|
||
|
{79, 195, 247}},
|
||
|
{{173.4277844354395, 116.98804177591612},
|
||
|
{130.55870413968708, 136.25568186484068},
|
||
|
{2.719193641342425, 2.831393378970633},
|
||
|
{171.86136233918353, 112.90468784549111},
|
||
|
{2.831393378970633, 2.719193641342425},
|
||
|
{255, 167, 38}},
|
||
|
{{171.86136233918353, 112.90468784549111},
|
||
|
{127.104542594097, 127.25136294133937},
|
||
|
{2.831393378970633, 2.9435931165988407},
|
||
|
{170.76198015985182, 108.67162555814826},
|
||
|
{2.9435931165988407, 2.831393378970633},
|
||
|
{66, 165, 245}},
|
||
|
{{170.76198015985182, 108.67162555814826},
|
||
|
{124.68026394223733, 117.91691789745515},
|
||
|
{2.9435931165988407, 2.99639299312976},
|
||
|
{170.41039556773984, 106.64290968930811},
|
||
|
{2.99639299312976, 2.9435931165988407},
|
||
|
{239, 83, 80}},
|
||
|
{{170.41039556773984, 106.64290968930811},
|
||
|
{123.90497484168273, 113.44333931488454},
|
||
|
{2.99639299312976, 3.095392761625238},
|
||
|
{170.04161398270747, 102.80115488718383},
|
||
|
{3.095392761625238, 2.99639299312976},
|
||
|
{255, 202, 40}},
|
||
|
{{170.04161398270747, 102.80115488718383},
|
||
|
{123.09176416699597, 104.97177744353357},
|
||
|
{3.095392761625238, 3.194392530120716},
|
||
|
{170.05434999746018, 98.9417614619119},
|
||
|
{3.194392530120716, 3.095392761625238},
|
||
|
{102, 187, 106}},
|
||
|
{{170.05434999746018, 98.94176146191197},
|
||
|
{123.1198487123481, 96.46132014678024},
|
||
|
{3.194392530120714, 3.2735923449170947},
|
||
|
{170.33927335887392, 95.86694870665369},
|
||
|
{3.2735923449170947, 3.194392530120714},
|
||
|
{171, 71, 188}},
|
||
|
{{170.33927335887392, 95.86694870665369},
|
||
|
{123.74814125290146, 89.68096381467222},
|
||
|
{3.2735923449170947, 3.352792159713477},
|
||
|
{170.86657367205342, 92.82431675692668},
|
||
|
{3.352792159713477, 3.2735923449170947},
|
||
|
{38, 198, 218}},
|
||
|
{{170.86657367205342, 92.82431675692668},
|
||
|
{124.9109060460665, 82.97157028450496},
|
||
|
{3.352792159713477, 3.412192020810762},
|
||
|
{171.41917672588357, 90.57494738432324},
|
||
|
{3.412192020810762, 3.352792159713477},
|
||
|
{255, 110, 64}},
|
||
|
{{171.41917672588357, 90.57494738432324},
|
||
|
{126.12946662630736, 78.0114224372256},
|
||
|
{3.412192020810762, 3.471591881908047},
|
||
|
{172.1043388501384, 88.36235036430459},
|
||
|
{3.471591881908047, 3.412192020810762},
|
||
|
{212, 225, 87}},
|
||
|
{{172.1043388501384, 88.36235036430453},
|
||
|
{127.64033695158726, 73.13236234179972},
|
||
|
{3.471591881908049, 3.5375917275716997},
|
||
|
{173.01814557458636, 85.9565246000686},
|
||
|
{3.5375917275716997, 3.471591881908049},
|
||
|
{189, 189, 189}},
|
||
|
{{173.01814557458636, 85.9565246000686},
|
||
|
{129.65539793370326, 67.82720809245897},
|
||
|
{3.5375917275716997, 3.5441917121380655},
|
||
|
{173.11821523751334, 85.71937428445484},
|
||
|
{3.5441917121380655, 3.5375917275716997},
|
||
|
{92, 107, 192}},
|
||
|
{{173.11821523751334, 85.71937428445484},
|
||
|
{129.8760643699012, 67.30426124264403},
|
||
|
{3.5441917121380655, 3.5969915886689847},
|
||
|
{173.97466004891183, 83.84699556023183},
|
||
|
{3.5969915886689847, 3.5441917121380655},
|
||
|
{79, 195, 247}},
|
||
|
{{173.97466004891183, 83.84699556023183},
|
||
|
{131.7646349796517, 63.17542610717788},
|
||
|
{3.5969915886689847, 3.6497914651999075},
|
||
|
{174.9287267647916, 82.02242533589258},
|
||
|
{3.6497914651999075, 3.5969915886689847},
|
||
|
{255, 167, 38}},
|
||
|
{{174.9287267647916, 82.02242533589258},
|
||
|
{133.86847440441224, 59.15201484325031},
|
||
|
{3.6497914651999075, 3.689391372598097},
|
||
|
{175.7067515538738, 80.688436596251},
|
||
|
{3.689391372598097, 3.6497914651999075},
|
||
|
{66, 165, 245}},
|
||
|
{{175.70675155387386, 80.68843659625094},
|
||
|
{135.5841188111064, 56.210398648143084},
|
||
|
{3.6893913725980987, 3.728991279996288},
|
||
|
{176.53697841699477, 79.38629532677618},
|
||
|
{3.728991279996288, 3.6893913725980987},
|
||
|
{239, 83, 80}},
|
||
|
{{176.53697841699477, 79.38629532677618},
|
||
|
{137.41487548362952, 53.33901020776284},
|
||
|
{3.728991279996288, 3.7619912028281135},
|
||
|
{177.26777398454274, 78.32698008416307},
|
||
|
{3.7619912028281135, 3.728991279996288},
|
||
|
{255, 202, 40}},
|
||
|
{{177.26777398454274, 78.32698008416307},
|
||
|
{139.0263734018122, 51.003084288154476},
|
||
|
{3.7619912028281135, 3.788391141093573},
|
||
|
{177.87732813607064, 77.49724918120904},
|
||
|
{3.788391141093573, 3.7619912028281135},
|
||
|
{102, 187, 106}},
|
||
|
{{177.87732813607064, 77.49724918120904},
|
||
|
{140.37051845389936, 49.17342127138402},
|
||
|
{3.788391141093573, 3.8147910793590345},
|
||
|
{178.50857218374682, 76.68389772750939},
|
||
|
{3.8147910793590345, 3.788391141093573},
|
||
|
{171, 71, 188}},
|
||
|
{{178.50857218374682, 76.68389772750939},
|
||
|
{141.7624925077494, 47.379877040148926},
|
||
|
{3.8147910793590345, 3.83459103305813},
|
||
|
{178.99597513166773, 76.0849745795735},
|
||
|
{3.83459103305813, 3.8147910793590345},
|
||
|
{38, 198, 218}},
|
||
|
{{178.99597513166773, 76.0849745795735},
|
||
|
{142.83727849547242, 46.05917471393132},
|
||
|
{3.83459103305813, 3.8543909867572257},
|
||
|
{179.49514041820387, 75.49581875341823},
|
||
|
{3.8543909867572257, 3.83459103305813},
|
||
|
{255, 110, 64}},
|
||
|
{{179.49514041820387, 75.49581875341823},
|
||
|
{143.93800194783418, 44.76001058446072},
|
||
|
{3.8543909867572257, 3.8741909404563213},
|
||
|
{180.0058723579047, 74.91666121306773},
|
||
|
{3.8741909404563213, 3.8543909867572257},
|
||
|
{212, 225, 87}},
|
||
|
{{180.00587235790465, 74.91666121306778},
|
||
|
{145.0642313533282, 43.482893957021275},
|
||
|
{3.8741909404563195, 3.893990894155415},
|
||
|
{180.52797073089823, 74.34772900296463},
|
||
|
{3.893990894155415, 3.8741909404563195},
|
||
|
{189, 189, 189}},
|
||
|
{{180.52797073089823, 74.34772900296463},
|
||
|
{146.21552520146793, 42.22832549371687},
|
||
|
{3.893990894155415, 3.9137908478545107},
|
||
|
{181.06123086138257, 73.78924515896263},
|
||
|
{3.9137908478545107, 3.893990894155415},
|
||
|
{92, 107, 192}},
|
||
|
{{181.06123086138257, 73.78924515896263},
|
||
|
{147.39143215586927, 40.996797017199654},
|
||
|
{3.9137908478545107, 3.9335908015536063},
|
||
|
{181.60544369786365, 73.24142862089114},
|
||
|
{3.9335908015536063, 3.9137908478545107},
|
||
|
{79, 195, 247}},
|
||
|
{{181.60544369786365, 73.24142862089114},
|
||
|
{148.59149123118652, 39.78879131786252},
|
||
|
{3.9335908015536063, 3.953390755252702},
|
||
|
{182.16039589510896, 72.70449414672505},
|
||
|
{3.953390755252702, 3.9335908015536063},
|
||
|
{255, 167, 38}},
|
||
|
{{182.16039589510896, 72.70449414672505},
|
||
|
{149.81523197383004, 38.604781964573206},
|
||
|
{3.953390755252702, 3.9731907089517975},
|
||
|
{182.72586989778426, 72.1786522283943},
|
||
|
{3.9731907089517975, 3.953390755252702},
|
||
|
{66, 165, 245}},
|
||
|
{{182.72586989778426, 72.1786522283943},
|
||
|
{151.0621746463961, 37.44523311902331},
|
||
|
{3.9731907089517975, 3.9863906780845255},
|
||
|
{183.1085887091506, 71.83435546112383},
|
||
|
{3.9863906780845255, 3.9731907089517975},
|
||
|
{239, 83, 80}},
|
||
|
{{183.10858870915067, 71.83435546112379},
|
||
|
{151.90611869197326, 36.68601460658067},
|
||
|
{3.9863906780845273, 3.999590647217257},
|
||
|
{183.49581875341823, 71.49514041820387},
|
||
|
{3.999590647217257, 3.9863906780845273},
|
||
|
{255, 202, 40}},
|
||
|
{{183.49581875341823, 71.49514041820387},
|
||
|
{152.7600105844607, 35.938001947834195},
|
||
|
{3.999590647217257, 4.012790616349987},
|
||
|
{183.88749256091927, 71.161066203329},
|
||
|
{4.012790616349987, 3.999590647217257},
|
||
|
{102, 187, 106}},
|
||
|
{{183.8874925609193, 71.16106620332897},
|
||
|
{153.6237015445913, 35.20132547400746},
|
||
|
{4.012790616349989, 4.025990585482717},
|
||
|
{184.28354188771962, 70.83219102447296},
|
||
|
{4.025990585482717, 4.012790616349989},
|
||
|
{171, 71, 188}},
|
||
|
{{184.28354188771968, 70.83219102447292},
|
||
|
{154.49704108574082, 34.47611354114541},
|
||
|
{4.0259905854827185, 4.039190554615448},
|
||
|
{184.6838977275094, 70.50857218374685},
|
||
|
{4.039190554615448, 4.0259905854827185},
|
||
|
{38, 198, 218}},
|
||
|
{{184.6838977275094, 70.50857218374685},
|
||
|
{155.3798770401489, 33.76249250774944},
|
||
|
{4.039190554615448, 4.052390523748178},
|
||
|
{185.08849032362605, 70.19026606741508},
|
||
|
{4.052390523748178, 4.039190554615448},
|
||
|
{255, 110, 64}},
|
||
|
{{185.0884903236261, 70.19026606741504},
|
||
|
{156.2720555854319, 33.06058671276138},
|
||
|
{4.05239052374818, 4.065590492880908},
|
||
|
{185.49724918120899, 69.87732813607067},
|
||
|
{4.065590492880908, 4.05239052374818},
|
||
|
{212, 225, 87}},
|
||
|
{{185.49724918120899, 69.87732813607067},
|
||
|
{157.1734212713839, 32.37051845389945},
|
||
|
{4.065590492880908, 4.0787904620136395},
|
||
|
{185.91010307948213, 69.56981291497203},
|
||
|
{4.0787904620136395, 4.065590492880908},
|
||
|
{189, 189, 189}},
|
||
|
{{185.91010307948213, 69.56981291497203},
|
||
|
{158.08381704706312, 31.692407966348583},
|
||
|
{4.0787904620136395, 4.091990431146369},
|
||
|
{186.32698008416307, 69.26777398454276},
|
||
|
{4.091990431146369, 4.0787904620136395},
|
||
|
{92, 107, 192}},
|
||
|
{{186.32698008416307, 69.26777398454276},
|
||
|
{159.00308428815444, 31.026373401812222},
|
||
|
{4.091990431146369, 4.105190400279099},
|
||
|
{186.74780755999694, 68.97126397103578},
|
||
|
{4.105190400279099, 4.091990431146369},
|
||
|
{79, 195, 247}},
|
||
|
{{186.74780755999694, 68.97126397103578},
|
||
|
{159.93106282460863, 30.37253080792506},
|
||
|
{4.105190400279099, 4.118390369411829},
|
||
|
{187.17251218341195, 68.68033453736409},
|
||
|
{4.118390369411829, 4.105190400279099},
|
||
|
{255, 167, 38}},
|
||
|
{{187.172512183412, 68.68033453736405},
|
||
|
{160.86759096854956, 29.730994108033556},
|
||
|
{4.118390369411831, 4.131590338544559},
|
||
|
{187.60101995529507, 68.3950363740991},
|
||
|
{4.131590338544559, 4.118390369411831},
|
||
|
{66, 165, 245}},
|
||
|
{{187.60101995529507, 68.3950363740991},
|
||
|
{161.81250554244556, 29.101875081346734},
|
||
|
{4.131590338544559, 4.14479030767729},
|
||
|
{188.0332562138855, 68.11541919063848},
|
||
|
{4.14479030767729, 4.131590338544559},
|
||
|
{239, 83, 80}},
|
||
|
{{188.0332562138855, 68.11541919063848},
|
||
|
{162.76564190754235, 28.4852833434592},
|
||
|
{4.14479030767729, 4.151390292243654},
|
||
|
{188.25074901590185, 67.97775623009694},
|
||
|
{4.151390292243654, 4.14479030767729},
|
||
|
{255, 202, 40}},
|
||
|
{{188.25074901590185, 67.97775623009694},
|
||
|
{163.24524141968098, 28.181718866367618},
|
||
|
{4.151390292243654, 4.15799027681002},
|
||
|
{188.4691456477831, 67.84153170654506},
|
||
|
{4.15799027681002, 4.151390292243654},
|
||
|
{102, 187, 106}},
|
||
|
{{188.4691456477831, 67.84153170654506},
|
||
|
{163.72683399254737, 27.88132632725319},
|
||
|
{4.15799027681002, 4.164590261376386},
|
||
|
{188.688436596251, 67.70675155387381},
|
||
|
{4.164590261376386, 4.15799027681002},
|
||
|
{171, 71, 188}},
|
||
|
{{188.688436596251, 67.70675155387381},
|
||
|
{164.21039864814318, 27.584118811106364},
|
||
|
{4.164590261376386, 4.17119024594275},
|
||
|
{188.90861230907103, 67.57342164305794},
|
||
|
{4.17119024594275, 4.164590261376386},
|
||
|
{38, 198, 218}},
|
||
|
{{188.90861230907103, 67.57342164305794},
|
||
|
{164.6959143225669, 27.290109264179037},
|
||
|
{4.17119024594275, 4.177790230509116},
|
||
|
{189.129663195469, 67.44154778190001},
|
||
|
{4.177790230509116, 4.17119024594275},
|
||
|
{255, 110, 64}},
|
||
|
{{189.129663195469, 67.44154778190001},
|
||
|
{165.1833598669316, 26.999310493420538},
|
||
|
{4.177790230509116, 4.1843902150754815},
|
||
|
{189.35157962654816, 67.31113571477775},
|
||
|
{4.1843902150754815, 4.177790230509116},
|
||
|
{212, 225, 87}},
|
||
|
{{189.35157962654816, 67.31113571477775},
|
||
|
{165.6727140482857, 26.711735165920174},
|
||
|
{4.1843902150754815, 4.1909901996418455},
|
||
|
{189.57435193570907, 67.18219112239366},
|
||
|
{4.1909901996418455, 4.1843902150754815},
|
||
|
{189, 189, 189}},
|
||
|
{{189.57435193570907, 67.18219112239366},
|
||
|
{166.16395555053796, 26.427395808355243},
|
||
|
{4.1909901996418455, 4.1975901842082095},
|
||
|
{189.7979704190706, 67.05471962152747},
|
||
|
{4.1975901842082095, 4.1909901996418455},
|
||
|
{92, 107, 192}},
|
||
|
{{189.7979704190706, 67.05471962152747},
|
||
|
{166.65706297538645, 26.146304806445187},
|
||
|
{4.1975901842082095, 4.204190168774575},
|
||
|
{190.02242533589256, 66.9287267647916},
|
||
|
{4.204190168774575, 4.1975901842082095},
|
||
|
{79, 195, 247}},
|
||
|
{{190.02242533589262, 66.92872676479158},
|
||
|
{167.1520148432504, 25.868474404412183},
|
||
|
{4.204190168774577, 4.210790153340941},
|
||
|
{190.247706909, 66.80421804038936},
|
||
|
{4.210790153340941, 4.204190168774577},
|
||
|
{255, 167, 38}},
|
||
|
{{190.247706909, 66.80421804038936},
|
||
|
{167.64878959420508, 25.593916704448333},
|
||
|
{4.210790153340941, 4.217390137907305},
|
||
|
{190.47380532520896, 66.68119887187574},
|
||
|
{4.217390137907305, 4.210790153340941},
|
||
|
{66, 165, 245}},
|
||
|
{{190.47380532520896, 66.68119887187574},
|
||
|
{168.1473655889223, 25.322643666187517},
|
||
|
{4.217390137907305, 4.223990122473671},
|
||
|
{190.7007107357544, 66.55967461792113},
|
||
|
{4.223990122473671, 4.217390137907305},
|
||
|
{239, 83, 80}},
|
||
|
{{190.70071073575446, 66.5596746179211},
|
||
|
{168.6477211096124, 25.054667106185008},
|
||
|
{4.223990122473673, 4.230590107040037},
|
||
|
{190.9284132567187, 66.43965057207814},
|
||
|
{4.230590107040037, 4.223990122473673},
|
||
|
{255, 202, 40}},
|
||
|
{{190.9284132567187, 66.43965057207814},
|
||
|
{169.14983436096944, 24.789998697403064},
|
||
|
{4.230590107040037, 4.237190091606401},
|
||
|
{191.15690296946235, 66.32113196255075},
|
||
|
{4.237190091606401, 4.230590107040037},
|
||
|
{102, 187, 106}},
|
||
|
{{191.15690296946235, 66.32113196255075},
|
||
|
{169.65368347112212, 24.528649968701657},
|
||
|
{4.237190091606401, 4.2437900761727665},
|
||
|
{191.3861699210563, 66.2041239519667},
|
||
|
{4.2437900761727665, 4.237190091606401},
|
||
|
{171, 71, 188}},
|
||
|
{{191.38616992105636, 66.20412395196666},
|
||
|
{170.15924649258585, 24.27063230433673},
|
||
|
{4.243790076172768, 4.250390060739132},
|
||
|
{191.616204124715, 66.08863163715256},
|
||
|
{4.250390060739132, 4.243790076172768},
|
||
|
{38, 198, 218}},
|
||
|
{{191.616204124715, 66.08863163715256},
|
||
|
{170.66650140321772, 24.01595694346463},
|
||
|
{4.250390060739132, 4.256990045305496},
|
||
|
{191.84699556023176, 65.97466004891186},
|
||
|
{4.256990045305496, 4.250390060739132},
|
||
|
{255, 110, 64}},
|
||
|
{{191.84699556023176, 65.97466004891186},
|
||
|
{171.1754261071777, 23.764634979651802},
|
||
|
{4.256990045305496, 4.263590029871862},
|
||
|
{192.07853417441524, 65.86221415180566},
|
||
|
{4.263590029871862, 4.256990045305496},
|
||
|
{212, 225, 87}},
|
||
|
{{192.07853417441524, 65.86221415180566},
|
||
|
{171.68599843588999, 23.516677360391967},
|
||
|
{4.263590029871862, 4.270190014438228},
|
||
|
{192.31080988152712, 65.75129884393658},
|
||
|
{4.270190014438228, 4.263590029871862},
|
||
|
{189, 189, 189}},
|
||
|
{{192.31080988152712, 65.75129884393658},
|
||
|
{172.1981961490085, 23.272094886629375},
|
||
|
{4.270190014438228, 4.276789999004592},
|
||
|
{192.54381256372162, 65.64191895673532},
|
||
|
{4.276789999004592, 4.270190014438228},
|
||
|
{92, 107, 192}},
|
||
|
{{192.54381256372162, 65.64191895673532},
|
||
|
{172.7119969353861, 23.03089821228815},
|
||
|
{4.276789999004592, 4.283389983570958},
|
||
|
{192.7775320714863, 65.53407925475014},
|
||
|
{4.283389983570958, 4.276789999004592},
|
||
|
{79, 195, 247}},
|
||
|
{{192.7775320714863, 65.53407925475014},
|
||
|
{173.2273784140467, 22.793097843808},
|
||
|
{4.283389983570958, 4.2899899681373235},
|
||
|
{193.01195822408394, 65.42778443543946},
|
||
|
{4.2899899681373235, 4.283389983570958},
|
||
|
{255, 167, 38}},
|
||
|
{{193.01195822408394, 65.42778443543946},
|
||
|
{173.74431813515946, 22.558704139687023},
|
||
|
{4.2899899681373235, 4.2965899527036875},
|
||
|
{193.24708080999608, 65.3230391289672},
|
||
|
{4.2965899527036875, 4.2899899681373235},
|
||
|
{66, 165, 245}},
|
||
|
{{193.24708080999608, 65.3230391289672},
|
||
|
{174.262793581017, 22.327727310030212},
|
||
|
{4.2965899527036875, 4.3031899372700515},
|
||
|
{193.48288958736805, 65.21984789800092},
|
||
|
{4.3031899372700515, 4.2965899527036875},
|
||
|
{239, 83, 80}},
|
||
|
{{193.48288958736805, 65.21984789800092},
|
||
|
{174.7827821670167, 22.1001774161046},
|
||
|
{4.3031899372700515, 4.309789921836417},
|
||
|
{193.71937428445483, 65.11821523751334},
|
||
|
{4.309789921836417, 4.3031899372700515},
|
||
|
{255, 202, 40}},
|
||
|
{{193.7193742844549, 65.11821523751331},
|
||
|
{175.30426124264415, 21.876064369901144},
|
||
|
{4.309789921836419, 4.316389906402783},
|
||
|
{193.95652460006858, 65.01814557458637},
|
||
|
{4.316389906402783, 4.309789921836419},
|
||
|
{102, 187, 106}},
|
||
|
{{193.95652460006858, 65.01814557458637},
|
||
|
{175.82720809245893, 21.65539793370327},
|
||
|
{4.316389906402783, 4.322989890969147},
|
||
|
{194.1943302040273, 64.91964326821835},
|
||
|
{4.322989890969147, 4.316389906402783},
|
||
|
{171, 71, 188}},
|
||
|
{{194.1943302040273, 64.91964326821835},
|
||
|
{176.35159993708584, 21.438187719660974},
|
||
|
{4.322989890969147, 4.329589875535513},
|
||
|
{194.43278073760504, 64.82271260913404},
|
||
|
{4.329589875535513, 4.322989890969147},
|
||
|
{38, 198, 218}},
|
||
|
{{194.43278073760504, 64.82271260913404},
|
||
|
{176.87741393420595, 21.224443189372508},
|
||
|
{4.329589875535513, 4.336189860101879},
|
||
|
{194.67186581398275, 64.72735781959793},
|
||
|
{4.336189860101879, 4.329589875535513},
|
||
|
{255, 110, 64}},
|
||
|
{{194.67186581398275, 64.72735781959793},
|
||
|
{177.4046271795517, 21.01417365347234},
|
||
|
{4.336189860101879, 4.342789844668243},
|
||
|
{194.911575018701, 64.63358305323013},
|
||
|
{4.342789844668243, 4.336189860101879},
|
||
|
{212, 225, 87}},
|
||
|
{{194.911575018701, 64.63358305323013},
|
||
|
{177.93321670790476, 20.807388271225435},
|
||
|
{4.342789844668243, 4.3493898292346085},
|
||
|
{195.15189791011366, 64.54139239482552},
|
||
|
{4.3493898292346085, 4.342789844668243},
|
||
|
{189, 189, 189}},
|
||
|
{{195.15189791011366, 64.54139239482552},
|
||
|
{178.46315949409683, 20.604096050128078},
|
||
|
{4.3493898292346085, 4.355989813800974},
|
||
|
{195.39282401984252, 64.45078986017583},
|
||
|
{4.355989813800974, 4.3493898292346085},
|
||
|
{92, 107, 192}},
|
||
|
{{195.39282401984252, 64.45078986017583},
|
||
|
{178.9944324540117, 20.40430584551595},
|
||
|
{4.355989813800974, 4.362589798367338},
|
||
|
{195.6343428532333, 64.36177939589473},
|
||
|
{4.362589798367338, 4.355989813800974},
|
||
|
{79, 195, 247}},
|
||
|
{{195.6343428532333, 64.36177939589473},
|
||
|
{179.52701244559137, 20.20802636017811},
|
||
|
{4.362589798367338, 4.369189782933702},
|
||
|
{195.87644388981312, 64.27436487924578},
|
||
|
{4.369189782933702, 4.362589798367338},
|
||
|
{255, 167, 38}},
|
||
|
{{195.87644388981317, 64.27436487924575},
|
||
|
{180.0608762698444, 20.01526614397781},
|
||
|
{4.369189782933704, 4.37578976750007},
|
||
|
{196.1191165837485, 64.18855011797365},
|
||
|
{4.37578976750007, 4.369189782933704},
|
||
|
{66, 165, 245}},
|
||
|
{{196.1191165837485, 64.18855011797365},
|
||
|
{180.59600067185568, 19.826033593480375},
|
||
|
{4.37578976750007, 4.382389752066434},
|
||
|
{196.36235036430452, 64.10433885013842},
|
||
|
{4.382389752066434, 4.37578976750007},
|
||
|
{239, 83, 80}},
|
||
|
{{196.36235036430452, 64.10433885013842},
|
||
|
{181.1323623417997, 19.640336951587273},
|
||
|
{4.382389752066434, 4.388989736632798},
|
||
|
{196.60613463630577, 64.02173474395235},
|
||
|
{4.388989736632798, 4.382389752066434},
|
||
|
{255, 202, 40}},
|
||
|
{{196.60613463630577, 64.02173474395235},
|
||
|
{181.66993791595633, 19.458184307176978},
|
||
|
{4.388989736632798, 4.395589721199164},
|
||
|
{196.8504587805977, 63.94074139762042},
|
||
|
{4.395589721199164, 4.388989736632798},
|
||
|
{102, 187, 106}},
|
||
|
{{196.8504587805977, 63.94074139762042},
|
||
|
{182.20870397772828, 19.279583594752737},
|
||
|
{4.395589721199164, 4.4021897057655295},
|
||
|
{197.0953121545089, 63.86136233918352},
|
||
|
{4.4021897057655295, 4.395589721199164},
|
||
|
{171, 71, 188}},
|
||
|
{{197.0953121545089, 63.86136233918352},
|
||
|
{182.74863705866062, 19.104542594096998},
|
||
|
{4.4021897057655295, 4.4087896903318935},
|
||
|
{197.34068409231492, 63.783601026364714},
|
||
|
{4.4087896903318935, 4.4021897057655295},
|
||
|
{38, 198, 218}},
|
||
|
{{197.34068409231492, 63.783601026364714},
|
||
|
{183.28971363946366, 18.933068929932446},
|
||
|
{4.4087896903318935, 4.415389674898259},
|
||
|
{197.5865639057031, 63.70746084641862},
|
||
|
{4.415389674898259, 4.4087896903318935},
|
||
|
{255, 110, 64}},
|
||
|
{{197.5865639057031, 63.70746084641862},
|
||
|
{183.83191015103756, 18.76517007158978},
|
||
|
{4.415389674898259, 4.421989659464625},
|
||
|
{197.83294088423762, 63.632945115983944},
|
||
|
{4.421989659464625, 4.415389674898259},
|
||
|
{212, 225, 87}},
|
||
|
{{197.83294088423762, 63.632945115983944},
|
||
|
{184.37520297549833, 18.600853332682547},
|
||
|
{4.421989659464625, 4.428589644030989},
|
||
|
{198.07980429582642, 63.56005708093896},
|
||
|
{4.428589644030989, 4.421989659464625},
|
||
|
{189, 189, 189}},
|
||
|
{{198.07980429582642, 63.56005708093896},
|
||
|
{184.91956844720698, 18.440125870788478},
|
||
|
{4.428589644030989, 4.435189628597355},
|
||
|
{198.32714338718876, 63.48879991626006},
|
||
|
{4.435189628597355, 4.428589644030989},
|
||
|
{92, 107, 192}},
|
||
|
{{198.32714338718876, 63.48879991626006},
|
||
|
{185.46498285380085, 18.28299468713756},
|
||
|
{4.435189628597355, 4.441789613163721},
|
||
|
{198.57494738432322, 63.419176725883574},
|
||
|
{4.441789613163721, 4.435189628597355},
|
||
|
{79, 195, 247}},
|
||
|
{{198.57494738432322, 63.419176725883574},
|
||
|
{186.01142243722558, 18.129466626307362},
|
||
|
{4.441789613163721, 4.448389597730085},
|
||
|
{198.8232054929773, 63.3511905425705},
|
||
|
{4.448389597730085, 4.441789613163721},
|
||
|
{255, 167, 38}},
|
||
|
{{198.8232054929773, 63.3511905425705},
|
||
|
{186.5588633947705, 17.97954837592468},
|
||
|
{4.448389597730085, 4.461589566862816},
|
||
|
{199.3210407694013, 63.220140971512244},
|
||
|
{4.461589566862816, 4.448389597730085},
|
||
|
{66, 165, 245}},
|
||
|
{{199.3210407694013, 63.220140971512244},
|
||
|
{187.6566540043208, 17.690567270514165},
|
||
|
{4.461589566862816, 4.46818955142918},
|
||
|
{199.57059625164655, 63.15708329223899},
|
||
|
{4.46818955142918, 4.461589566862816},
|
||
|
{239, 83, 80}},
|
||
|
{{199.57059625164655, 63.15708329223899},
|
||
|
{188.20695583696417, 17.551517003398786},
|
||
|
{4.46818955142918, 4.474789535995544},
|
||
|
{199.8205624753071, 63.095674036724255},
|
||
|
{4.474789535995544, 4.46818955142918},
|
||
|
{255, 202, 40}},
|
||
|
{{199.82056247530716, 63.09567403672424},
|
||
|
{188.75816340708758, 17.416101722007298},
|
||
|
{4.474789535995546, 4.481389520561912},
|
||
|
{200.0709285519448, 63.03591587993297},
|
||
|
{4.481389520561912, 4.474789535995546},
|
||
|
{102, 187, 106}},
|
||
|
{{200.0709285519448, 63.03591587993297},
|
||
|
{189.31025270428856, 17.284327324980396},
|
||
|
{4.481389520561912, 4.487989505128276},
|
||
|
{200.32168357570373, 62.97781142490888},
|
||
|
{4.487989505128276, 4.481389520561912},
|
||
|
{171, 71, 188}},
|
||
|
{{200.32168357570373, 62.97781142490888},
|
||
|
{189.86319967975695, 17.156199552363162},
|
||
|
{4.487989505128276, 4.49458948969464},
|
||
|
{200.57281662378588, 62.921363202660984},
|
||
|
{4.49458948969464, 4.487989505128276},
|
||
|
{38, 198, 218}},
|
||
|
{{200.57281662378588, 62.921363202660984},
|
||
|
{190.41698024732275, 17.031723985355},
|
||
|
{4.49458948969464, 4.501189474261006},
|
||
|
{200.82431675692666, 62.86657367205342},
|
||
|
{4.501189474261006, 4.49458948969464},
|
||
|
{255, 110, 64}},
|
||
|
{{200.82431675692672, 62.8665736720534},
|
||
|
{190.9715702845051, 16.910906046066472},
|
||
|
{4.5011894742610075, 4.5077894588273715},
|
||
|
{201.07617301987116, 62.8134452196983},
|
||
|
{4.5077894588273715, 4.5011894742610075},
|
||
|
{212, 225, 87}},
|
||
|
{{201.07617301987116, 62.8134452196983},
|
||
|
{191.52694563356206, 16.79375099728344},
|
||
|
{4.5077894588273715, 4.5143894433937355},
|
||
|
{201.32837444185168, 62.76198015985183},
|
||
|
{4.5143894433937355, 4.5077894588273715},
|
||
|
{189, 189, 189}},
|
||
|
{{201.32837444185168, 62.76198015985183},
|
||
|
{192.0830821025447, 16.68026394223736},
|
||
|
{4.5143894433937355, 4.520989427960101},
|
||
|
{201.5809100370656, 62.71218073431335},
|
||
|
{4.520989427960101, 4.5143894433937355},
|
||
|
{92, 107, 192}},
|
||
|
{{201.5809100370656, 62.71218073431335},
|
||
|
{192.6399554663498, 16.570449824383275},
|
||
|
{4.520989427960101, 4.527589412526467},
|
||
|
{201.83376880515377, 62.664049112327824},
|
||
|
{4.527589412526467, 4.520989427960101},
|
||
|
{79, 195, 247}},
|
||
|
{{201.83376880515377, 62.664049112327824},
|
||
|
{193.19754146777498, 16.464313427184436},
|
||
|
{4.527589412526467, 4.534189397092831},
|
||
|
{202.08693973167965, 62.61758739049132},
|
||
|
{4.534189397092831, 4.527589412526467},
|
||
|
{255, 167, 38}},
|
||
|
{{202.08693973167965, 62.61758739049132},
|
||
|
{193.75581581857563, 16.36185937390394},
|
||
|
{4.534189397092831, 4.540789381659197},
|
||
|
{202.34041178860943, 62.5727975926596},
|
||
|
{4.540789381659197, 4.534189397092831},
|
||
|
{66, 165, 245}},
|
||
|
{{202.34041178860943, 62.5727975926596},
|
||
|
{194.31475420052337, 16.263092127403226},
|
||
|
{4.540789381659197, 4.547389366225563},
|
||
|
{202.59417393479197, 62.529681669860054},
|
||
|
{4.547389366225563, 4.540789381659197},
|
||
|
{239, 83, 80}},
|
||
|
{{202.59417393479197, 62.529681669860054},
|
||
|
{194.87433226646434, 16.16801598994782},
|
||
|
{4.547389366225563, 4.553989350791927},
|
||
|
{202.84821511643992, 62.4882415002067},
|
||
|
{4.553989350791927, 4.547389366225563},
|
||
|
{255, 202, 40}},
|
||
|
{{202.84821511643992, 62.4882415002067},
|
||
|
{195.43452564138033, 16.076635103019896},
|
||
|
{4.553989350791927, 4.560589335358291},
|
||
|
{203.10252426761141, 62.44847888881831},
|
||
|
{4.560589335358291, 4.553989350791927},
|
||
|
{102, 187, 106}},
|
||
|
{{203.10252426761141, 62.44847888881831},
|
||
|
{195.99530992345078, 15.988953447137803},
|
||
|
{4.560589335358291, 4.5671893199246565},
|
||
|
{203.3570903106919, 62.41039556773984},
|
||
|
{4.5671893199246565, 4.560589335358291},
|
||
|
{171, 71, 188}},
|
||
|
{{203.35709031069194, 62.41039556773983},
|
||
|
{196.5566606851156, 15.904974841682716},
|
||
|
{4.567189319924658, 4.573789304491022},
|
||
|
{203.6119021568766, 62.373993195867},
|
||
|
{4.573789304491022, 4.567189319924658},
|
||
|
{38, 198, 218}},
|
||
|
{{203.6119021568766, 62.373993195867},
|
||
|
{197.1185534741381, 15.824702944732365},
|
||
|
{4.573789304491022, 4.580389289057386},
|
||
|
{203.8669487066536, 62.33927335887393},
|
||
|
{4.580389289057386, 4.573789304491022},
|
||
|
{255, 110, 64}},
|
||
|
{{203.8669487066536, 62.33927335887393},
|
||
|
{197.68096381467205, 15.74814125290149},
|
||
|
{4.580389289057386, 4.586989273623752},
|
||
|
{204.12221885028765, 62.30623756914416},
|
||
|
{4.586989273623752, 4.580389289057386},
|
||
|
{212, 225, 87}},
|
||
|
{{204.12221885028765, 62.30623756914416},
|
||
|
{198.24386720832663, 15.67529310118968},
|
||
|
{4.586989273623752, 4.593589258190118},
|
||
|
{204.3777014683036, 62.274887265704734},
|
||
|
{4.593589258190118, 4.586989273623752},
|
||
|
{189, 189, 189}},
|
||
|
{{204.3777014683036, 62.274887265704734},
|
||
|
{198.80723913523357, 15.606161662836087},
|
||
|
{4.593589258190118, 4.600189242756482},
|
||
|
{204.63338543197096, 62.245223814163545},
|
||
|
{4.600189242756482, 4.593589258190118},
|
||
|
{92, 107, 192}},
|
||
|
{{204.63338543197096, 62.245223814163545},
|
||
|
{199.37105505511542, 15.540749949181148},
|
||
|
{4.600189242756482, 4.606789227322848},
|
||
|
{204.88925960378893, 62.21724850664979},
|
||
|
{4.606789227322848, 4.600189242756482},
|
||
|
{79, 195, 247}},
|
||
|
{{204.88925960378893, 62.21724850664979},
|
||
|
{199.93529040835506, 15.479060809535426},
|
||
|
{4.606789227322848, 4.6133892118892135},
|
||
|
{205.1453128379711, 62.190962561757736},
|
||
|
{4.6133892118892135, 4.606789227322848},
|
||
|
{255, 167, 38}},
|
||
|
{{205.1453128379711, 62.190962561757736},
|
||
|
{200.49992061706448, 15.42109693105553},
|
||
|
{4.6133892118892135, 4.6199891964555775},
|
||
|
{205.4015339809312, 62.166367124493654},
|
||
|
{4.6199891964555775, 4.6133892118892135},
|
||
|
{66, 165, 245}},
|
||
|
{{205.4015339809312, 62.166367124493654},
|
||
|
{201.06492108615595, 15.366860838627034},
|
||
|
{4.6199891964555775, 4.626589181021943},
|
||
|
{205.65791187176904, 62.14346326622588},
|
||
|
{4.626589181021943, 4.6199891964555775},
|
||
|
{239, 83, 80}},
|
||
|
{{205.65791187176904, 62.14346326622588},
|
||
|
{201.6302672044138, 15.316354894754497},
|
||
|
{4.626589181021943, 4.633189165588309},
|
||
|
{205.91443534275646, 62.12225198463818},
|
||
|
{4.633189165588309, 4.626589181021943},
|
||
|
{255, 202, 40}},
|
||
|
{{205.91443534275646, 62.12225198463818},
|
||
|
{202.19593434556555, 15.269581299458551},
|
||
|
{4.633189165588309, 4.639789150154673},
|
||
|
{206.17109321982377, 62.10273420368633},
|
||
|
{4.639789150154673, 4.633189165588309},
|
||
|
{102, 187, 106}},
|
||
|
{{206.17109321982377, 62.10273420368633},
|
||
|
{202.761897869355, 15.226542090180118},
|
||
|
{4.639789150154673, 4.646389134721039},
|
||
|
{206.4278743230469, 62.084910773557795},
|
||
|
{4.646389134721039, 4.639789150154673},
|
||
|
{171, 71, 188}},
|
||
|
{{206.4278743230469, 62.084910773557795},
|
||
|
{203.3281331226162, 15.187239141691535},
|
||
|
{4.646389134721039, 4.652989119287405},
|
||
|
{206.68476746713378, 62.06878247063473},
|
||
|
{4.652989119287405, 4.646389134721039},
|
||
|
{38, 198, 218}},
|
||
|
{{206.68476746713378, 62.06878247063473},
|
||
|
{203.89461544034626, 15.151674166015042},
|
||
|
{4.652989119287405, 4.659589103853769},
|
||
|
{206.94176146191197, 62.054349997460186},
|
||
|
{4.659589103853769, 4.652989119287405},
|
||
|
{255, 110, 64}},
|
||
|
{{206.94176146191197, 62.054349997460186},
|
||
|
{204.46132014678022, 15.119848712348102},
|
||
|
{4.659589103853769, 4.666189088420133},
|
||
|
{207.19884511281612, 62.041613982707474},
|
||
|
{4.666189088420133, 4.659589103853769},
|
||
|
{212, 225, 87}},
|
||
|
{{207.19884511281617, 62.041613982707474},
|
||
|
{205.02822255646643, 15.091764166995972},
|
||
|
{4.6661890884201345, 4.6727890729865},
|
||
|
{207.45600722137553, 62.03057498115278},
|
||
|
{4.6727890729865, 4.6661890884201345},
|
||
|
{189, 189, 189}},
|
||
|
{{207.45600722137553, 62.03057498115278},
|
||
|
{205.5952979753409, 15.067421753311265},
|
||
|
{4.6727890729865, 4.679389057552864},
|
||
|
{207.71323658570157, 62.02123347365103},
|
||
|
{4.679389057552864, 4.6727890729865},
|
||
|
{92, 107, 192}},
|
||
|
{{207.71323658570157, 62.02123347365103},
|
||
|
{206.16252170180348, 15.046822531640728},
|
||
|
{4.679389057552864, 4.685989042119228},
|
||
|
{207.97052200097633, 62.0135898671149},
|
||
|
{4.685989042119228, 4.679389057552864},
|
||
|
{79, 195, 247}},
|
||
|
{{207.97052200097633, 62.0135898671149},
|
||
|
{206.72986902779397, 15.029967399279002},
|
||
|
{4.685989042119228, 4.692589026685594},
|
||
|
{208.2278522599403, 62.00764449449712},
|
||
|
{4.692589026685594, 4.685989042119228},
|
||
|
{255, 167, 38}},
|
||
|
{{208.2278522599403, 62.00764449449712},
|
||
|
{207.29731523986834, 15.016857090429554},
|
||
|
{4.692589026685594, 4.69918901125196},
|
||
|
{208.4852161533804, 62.003397614775984},
|
||
|
{4.69918901125196, 4.692589026685594},
|
||
|
{66, 165, 245}},
|
||
|
{{208.4852161533804, 62.003397614775984},
|
||
|
{207.86483562027476, 15.00749217617269},
|
||
|
{4.69918901125196, 4.705788995818324},
|
||
|
{208.74260247061855, 62.00084941294403},
|
||
|
{4.705788995818324, 4.69918901125196},
|
||
|
{239, 83, 80}},
|
||
|
{{208.74260247061855, 62.00084941294403},
|
||
|
{208.43240544803064, 15.001873064440673},
|
||
|
{4.705788995818324, 4.71238898038469},
|
||
|
{209, 62},
|
||
|
{4.71238898038469, 4.705788995818324},
|
||
|
{255, 202, 40}},
|
||
|
};
|
||
|
void draw(SkCanvas* canvas) {
|
||
|
SkRect oval1 = {209 - 86, 101 - 86, 209 + 86, 101 + 86};
|
||
|
SkRect oval2 = {209 - 39, 101 - 39, 209 + 39, 101 + 39};
|
||
|
for (const auto& wedge : wedges) {
|
||
|
SkPath path;
|
||
|
path.moveTo(SkDoubleToScalar(wedge.fMove[0]), SkDoubleToScalar(wedge.fMove[1]));
|
||
|
path.lineTo(SkDoubleToScalar(wedge.fLine1[0]), SkDoubleToScalar(wedge.fLine1[1]));
|
||
|
SkASSERT(wedge.fArc1Angles[0] == wedge.fArc2Angles[1]);
|
||
|
SkASSERT(wedge.fArc1Angles[1] == wedge.fArc2Angles[0]);
|
||
|
SkScalar start = SkDoubleToScalar(wedge.fArc1Angles[0] * 180.f / SK_ScalarPI);
|
||
|
SkScalar end = SkDoubleToScalar(wedge.fArc1Angles[1] * 180.f / SK_ScalarPI);
|
||
|
if (end < start) {
|
||
|
end += 360;
|
||
|
}
|
||
|
path.arcTo(oval1, start, end - start, false);
|
||
|
path.lineTo(SkDoubleToScalar(wedge.fLine2[0]), SkDoubleToScalar(wedge.fLine2[1]));
|
||
|
path.arcTo(oval2, end, start - end, false);
|
||
|
path.close();
|
||
|
SkPaint paint;
|
||
|
paint.setAntiAlias(true);
|
||
|
paint.setARGB(255, wedge.fRGB[0], wedge.fRGB[1], wedge.fRGB[2]);
|
||
|
canvas->drawPath(path, paint);
|
||
|
}
|
||
|
}
|
||
|
} // END FIDDLE
|