OLD | NEW |
(Empty) | |
| 1 /* |
| 2 * Copyright 2012 Google Inc. |
| 3 * |
| 4 * Use of this source code is governed by a BSD-style license that can be |
| 5 * found in the LICENSE file. |
| 6 */ |
| 7 #include "PathOpsExtendedTest.h" |
| 8 |
| 9 #define TEST(name) { name, #name } |
| 10 |
| 11 static void skpcheeseandburger_com225(skiatest::Reporter* reporter) { |
| 12 SkPath path; |
| 13 path.setFillType(SkPath::kEvenOdd_FillType); |
| 14 path.moveTo(555, 468); |
| 15 path.lineTo(555, 362); |
| 16 path.lineTo(872, 362); |
| 17 path.lineTo(872, 468); |
| 18 path.lineTo(555, 468); |
| 19 path.close(); |
| 20 SkPath pathB; |
| 21 pathB.setFillType(SkPath::kWinding_FillType); |
| 22 pathB.moveTo(859.11792f, 397.320343f); |
| 23 pathB.cubicTo(855.523071f, 399.691284f, 853.721191f, 402.40863f, 853.721191f
, 405.552216f); |
| 24 pathB.cubicTo(853.721191f, 407.911163f, 854.727478f, 410.115387f, 857.043518
f, 412.252716f); |
| 25 pathB.cubicTo(859.920532f, 414.916138f, 862.704773f, 417.086426f, 864.679382
f, 418.852386f); |
| 26 pathB.cubicTo(866.382446f, 420.371765f, 867.19104f, 422.108795f, 867.19104f,
423.506378f); |
| 27 pathB.cubicTo(867.19104f, 424.551605f, 866.741821f, 425.539886f, 865.935242f
, 426.281616f); |
| 28 pathB.cubicTo(865.250366f, 426.910553f, 864.662415f, 427.339813f, 864.139282
f, 427.4646f); |
| 29 pathB.cubicTo(863.536377f, 427.605347f, 862.259521f, 426.491272f, 860.366821
f, 424.208191f); |
| 30 pathB.cubicTo(858.345276f, 421.770355f, 857.317017f, 419.733856f, 857.317017
f, 417.98587f); |
| 31 pathB.cubicTo(857.317017f, 417.198212f, 857.942993f, 415.930389f, 857.942993
f, 415.930389f); |
| 32 pathB.cubicTo(857.942993f, 415.930389f, 852.106018f, 421.296173f, 852.279663
f, 422.549042f); |
| 33 pathB.cubicTo(852.462402f, 423.890747f, 853.669312f, 425.703613f, 855.876465
f, 428.252258f); |
| 34 pathB.cubicTo(858.038818f, 430.754944f, 859.4953f, 431.840088f, 860.190125f,
431.594513f); |
| 35 pathB.cubicTo(862.571045f, 430.754944f, 865.48999f, 429.237549f, 868.44397f,
427.018372f); |
| 36 pathB.cubicTo(870.505371f, 425.470032f, 871.582581f, 423.534332f, 871.582581
f, 421.001678f); |
| 37 pathB.cubicTo(871.582581f, 417.945923f, 870.056213f, 415.171692f, 867.015381
f, 412.640045f); |
| 38 pathB.cubicTo(863.683105f, 409.872803f, 861.445923f, 408.027954f, 860.551514
f, 407.140503f); |
| 39 pathB.cubicTo(858.660767f, 405.264709f, 857.765259f, 403.50174f, 857.765259f
, 402.187988f); |
| 40 pathB.cubicTo(857.765259f, 401.141785f, 858.339355f, 400.394073f, 859.476318
f, 399.925873f); |
| 41 pathB.cubicTo(860.004395f, 399.704254f, 861.270264f, 400.515869f, 863.156006
f, 402.36969f); |
| 42 pathB.cubicTo(865.094727f, 404.28241f, 866.203796f, 405.565186f, 866.383484f
, 406.130219f); |
| 43 pathB.cubicTo(868.250244f, 404.305359f, 869.179688f, 403.397919f, 871.046509
f, 401.58902f); |
| 44 pathB.cubicTo(868.26825f, 399.296967f, 864.431824f, 394.705841f, 863.156006f
, 394.600037f); |
| 45 pathB.cubicTo(863.145996f, 394.600037f, 863.136108f, 394.59903f, 863.126099f
, 394.59903f); |
| 46 pathB.cubicTo(862.352417f, 394.598022f, 859.909607f, 396.79425f, 859.11792f,
397.320343f); |
| 47 pathB.moveTo(832.164246f, 394.307526f); |
| 48 pathB.cubicTo(832.451721f, 394.425323f, 832.598511f, 394.486206f, 832.886963
f, 394.605011f); |
| 49 pathB.cubicTo(834.078979f, 395.474518f, 834.674927f, 395.90979f, 835.867859f
, 396.781281f); |
| 50 pathB.cubicTo(836.502808f, 397.325348f, 836.863159f, 398.000183f, 836.863159
f, 398.964539f); |
| 51 pathB.lineTo(836.863159f, 419.740845f); |
| 52 pathB.cubicTo(836.863159f, 420.876923f, 836.319092f, 422.17868f, 835.055298f
, 423.617188f); |
| 53 pathB.cubicTo(836.39502f, 424.512665f, 837.063843f, 424.961884f, 838.39856f,
425.864349f); |
| 54 pathB.cubicTo(839.477661f, 426.578125f, 841.37439f, 427.27594f, 842.275879f,
427.443634f); |
| 55 pathB.cubicTo(842.999634f, 427.574402f, 843.82019f, 427.513519f, 844.354309f
, 427.216034f); |
| 56 pathB.cubicTo(846.956787f, 425.765503f, 848.689819f, 423.588257f, 848.58606f
, 423.483429f); |
| 57 pathB.cubicTo(848.58606f, 423.483429f, 846.877991f, 423.327698f, 845.971558f
, 422.807587f); |
| 58 pathB.cubicTo(845.253784f, 422.284485f, 844.892395f, 422.022949f, 844.171631
f, 421.502838f); |
| 59 pathB.cubicTo(843.361023f, 420.915833f, 842.907837f, 420.308899f, 842.907837
f, 419.350525f); |
| 60 pathB.lineTo(842.907837f, 399.445709f); |
| 61 pathB.cubicTo(842.907837f, 398.053101f, 843.272217f, 397.417175f, 843.812256
f, 397.518005f); |
| 62 pathB.cubicTo(844.170654f, 397.583893f, 844.711731f, 398.122986f, 845.432495
f, 398.782837f); |
| 63 pathB.cubicTo(846.116333f, 399.402771f, 846.459717f, 399.709259f, 847.14856f
, 400.3302f); |
| 64 pathB.cubicTo(844.986206f, 402.099152f, 843.988892f, 403.926025f, 843.988892
f, 405.932556f); |
| 65 pathB.cubicTo(843.988892f, 410.209229f, 848.272583f, 410.951935f, 849.576355
f, 408.394348f); |
| 66 pathB.cubicTo(849.871826f, 407.816345f, 850.421875f, 406.214081f, 850.387939
f, 406.196106f); |
| 67 pathB.cubicTo(850.387939f, 406.196106f, 849.305786f, 406.771118f, 848.495239
f, 406.615387f); |
| 68 pathB.cubicTo(846.96582f, 406.316895f, 846.153198f, 405.46637f, 846.153198f,
403.89505f); |
| 69 pathB.cubicTo(846.153198f, 401.796661f, 848.50116f, 399.09729f, 852.279663f,
396.270142f); |
| 70 pathB.cubicTo(851.014893f, 395.315796f, 847.723511f, 391.546265f, 846.875f,
391.546265f); |
| 71 pathB.cubicTo(846.330933f, 391.546265f, 843.988892f, 394.403351f, 843.273193
f, 394.972382f); |
| 72 pathB.cubicTo(840.889282f, 392.886963f, 839.700317f, 391.850739f, 837.312378
f, 389.786285f); |
| 73 pathB.cubicTo(835.257935f, 391.589203f, 834.225708f, 392.491638f, 832.164246
f, 394.307526f); |
| 74 pathB.moveTo(818.860107f, 392.707275f); |
| 75 pathB.cubicTo(819.857361f, 393.382111f, 822.302124f, 395.764038f, 824.387573
f, 397.051819f); |
| 76 pathB.cubicTo(822.57666f, 398.249756f, 820.582092f, 399.687286f, 818.860107f
, 400.827332f); |
| 77 pathB.lineTo(818.860107f, 392.707275f); |
| 78 pathB.close(); |
| 79 pathB.moveTo(810.69812f, 391.096039f); |
| 80 pathB.cubicTo(810.69812f, 391.096039f, 812.786499f, 394.093903f, 812.786499f
, 394.965393f); |
| 81 pathB.lineTo(812.786499f, 415.743713f); |
| 82 pathB.cubicTo(812.786499f, 417.753265f, 811.881042f, 418.497986f, 810.974609
f, 419.769806f); |
| 83 pathB.cubicTo(813.948486f, 421.160431f, 815.437988f, 421.864197f, 818.404846
f, 423.283783f); |
| 84 pathB.cubicTo(819.948181f, 423.95462f, 822.417969f, 424.592529f, 823.937317f
, 423.782928f); |
| 85 pathB.cubicTo(827.905518f, 421.663544f, 831.53125f, 417.600525f, 832.255005f
, 415.191681f); |
| 86 pathB.cubicTo(833.882263f, 409.877808f, 823.095825f, 411.495026f, 823.119751
f, 411.518982f); |
| 87 pathB.cubicTo(823.119751f, 411.518982f, 832.000488f, 411.874359f, 830.537964
f, 416.29776f); |
| 88 pathB.cubicTo(829.888123f, 418.253418f, 827.278564f, 420.292908f, 825.385864
f, 419.55719f); |
| 89 pathB.cubicTo(821.14209f, 417.915985f, 818.861023f, 417.414856f, 818.861023f
, 414.970032f); |
| 90 pathB.lineTo(818.861023f, 403.096436f); |
| 91 pathB.cubicTo(822.126404f, 399.132233f, 831.289673f, 395.897797f, 831.356567
f, 395.657227f); |
| 92 pathB.cubicTo(831.356567f, 395.657227f, 823.022888f, 387.594055f, 821.763062
f, 387.476257f); |
| 93 pathB.cubicTo(821.755066f, 387.47525f, 821.746094f, 387.47525f, 821.737061f,
387.47525f); |
| 94 pathB.cubicTo(820.793701f, 387.47525f, 810.72406f, 390.967255f, 810.69812f,
391.096039f); |
| 95 pathB.moveTo(624.254211f, 390.498077f); |
| 96 pathB.cubicTo(625.252502f, 390.893402f, 627.708252f, 392.592468f, 629.796692
f, 393.307251f); |
| 97 pathB.cubicTo(627.978821f, 395.006317f, 625.980225f, 397.000916f, 624.254211
f, 398.618134f); |
| 98 pathB.lineTo(624.254211f, 390.498077f); |
| 99 pathB.close(); |
| 100 pathB.moveTo(627.160217f, 384.460449f); |
| 101 pathB.cubicTo(626.286743f, 384.51535f, 616.076233f, 390.993225f, 616.086243f
, 391.141968f); |
| 102 pathB.cubicTo(616.086243f, 391.141968f, 618.173645f, 393.561798f, 618.173645
f, 394.437317f); |
| 103 pathB.lineTo(618.173645f, 415.216614f); |
| 104 pathB.cubicTo(618.173645f, 417.222168f, 617.265198f, 418.219482f, 616.355774
f, 419.742859f); |
| 105 pathB.cubicTo(619.331665f, 420.307892f, 620.824097f, 420.599396f, 623.802979
f, 421.198364f); |
| 106 pathB.cubicTo(625.346313f, 421.437958f, 627.818115f, 421.39801f, 629.342468f
, 420.166138f); |
| 107 pathB.cubicTo(633.340576f, 416.939667f, 636.982361f, 411.871368f, 637.714111
f, 409.263855f); |
| 108 pathB.cubicTo(639.348267f, 403.500732f, 628.508911f, 408.111816f, 628.52887f
, 408.126801f); |
| 109 pathB.cubicTo(628.52887f, 408.126801f, 637.468506f, 405.998444f, 635.985046f
, 410.844147f); |
| 110 pathB.cubicTo(635.332153f, 412.984467f, 632.705688f, 415.748718f, 630.801941
f, 415.541077f); |
| 111 pathB.cubicTo(626.537292f, 415.072876f, 624.257202f, 415.202667f, 624.257202
f, 412.755859f); |
| 112 pathB.cubicTo(624.257202f, 408.007019f, 624.255188f, 405.636078f, 624.255188
f, 400.884247f); |
| 113 pathB.cubicTo(627.525574f, 396.016602f, 636.801636f, 390.283447f, 636.801636
f, 389.97995f); |
| 114 pathB.cubicTo(636.801636f, 389.97995f, 628.360168f, 384.458435f, 627.18219f,
384.458435f); |
| 115 pathB.cubicTo(627.174194f, 384.460449f, 627.167236f, 384.460449f, 627.160217
f, 384.460449f); |
| 116 pathB.moveTo(796.530396f, 416.438538f); |
| 117 pathB.cubicTo(795.892517f, 416.365662f, 794.527832f, 415.589996f, 792.348572
f, 414.036652f); |
| 118 pathB.lineTo(792.348572f, 391.425476f); |
| 119 pathB.cubicTo(792.348572f, 390.465118f, 792.530273f, 390.047852f, 792.89563f
, 390.088776f); |
| 120 pathB.cubicTo(793.075317f, 390.109741f, 793.3479f, 390.317383f, 793.804077f,
390.629852f); |
| 121 pathB.cubicTo(795.113831f, 391.585205f, 795.768738f, 392.059387f, 797.077515
f, 393.018738f); |
| 122 pathB.cubicTo(797.983948f, 393.648651f, 798.348267f, 394.219666f, 798.348267
f, 394.742767f); |
| 123 pathB.lineTo(798.348267f, 413.253998f); |
| 124 pathB.cubicTo(798.348267f, 415.391327f, 797.783264f, 416.451508f, 796.728088
f, 416.451508f); |
| 125 pathB.cubicTo(796.664185f, 416.4505f, 796.598267f, 416.446533f, 796.530396f,
416.438538f); |
| 126 pathB.moveTo(795.165771f, 383.714722f); |
| 127 pathB.cubicTo(794.022705f, 383.851471f, 783.959961f, 388.652252f, 783.880127
f, 388.873871f); |
| 128 pathB.cubicTo(783.880127f, 388.873871f, 785.054077f, 389.871155f, 785.522339
f, 390.606873f); |
| 129 pathB.cubicTo(786.000488f, 391.361603f, 786.246094f, 391.9935f, 786.246094f,
392.427765f); |
| 130 pathB.lineTo(786.246094f, 411.987183f); |
| 131 pathB.cubicTo(786.246094f, 413.733185f, 784.160645f, 416.428558f, 784.246521
f, 416.759979f); |
| 132 pathB.cubicTo(784.258484f, 416.79892f, 785.432495f, 417.14032f, 785.793823f,
417.350952f); |
| 133 pathB.cubicTo(786.739258f, 417.937958f, 787.213379f, 418.228455f, 788.161804
f, 418.821442f); |
| 134 pathB.cubicTo(789.342773f, 419.554199f, 790.619568f, 419.956482f, 791.892395
f, 420.098236f); |
| 135 pathB.cubicTo(794.533813f, 420.390747f, 796.717102f, 419.337555f, 798.349304
f, 416.999573f); |
| 136 pathB.lineTo(798.349304f, 425.212463f); |
| 137 pathB.cubicTo(797.94696f, 425.47702f, 797.750305f, 425.609772f, 797.356018f,
425.874329f); |
| 138 pathB.cubicTo(795.259583f, 423.619202f, 792.806824f, 422.286499f, 789.985657
f, 421.984009f); |
| 139 pathB.cubicTo(785.157959f, 421.463898f, 780.409119f, 428.344086f, 780.423096
f, 428.346069f); |
| 140 pathB.cubicTo(780.423096f, 428.346069f, 783.340088f, 424.960907f, 785.889709
f, 425.218445f); |
| 141 pathB.cubicTo(789.25592f, 425.565857f, 793.166199f, 430.745972f, 793.805115f
, 430.790894f); |
| 142 pathB.cubicTo(793.940857f, 430.798889f, 795.918457f, 429.091797f, 798.454102
f, 427.383728f); |
| 143 pathB.cubicTo(801.049683f, 425.635742f, 804.230225f, 423.886749f, 806.619141
f, 423.980591f); |
| 144 pathB.cubicTo(805.621826f, 423.586243f, 805.048828f, 423.074127f, 804.804199
f, 422.609924f); |
| 145 pathB.cubicTo(804.616577f, 422.25354f, 804.616577f, 421.539764f, 804.616577f
, 420.31488f); |
| 146 pathB.cubicTo(804.623535f, 411.732605f, 804.623535f, 403.147339f, 804.623535
f, 394.562073f); |
| 147 pathB.cubicTo(804.623535f, 392.464691f, 805.970215f, 391.000183f, 805.984192
f, 390.896362f); |
| 148 pathB.cubicTo(805.984192f, 390.896362f, 796.785034f, 383.7117f, 795.219666f,
383.7117f); |
| 149 pathB.cubicTo(795.19873f, 383.712708f, 795.181763f, 383.712708f, 795.165771f
, 383.714722f); |
| 150 pathB.moveTo(648.092285f, 387.883545f); |
| 151 pathB.cubicTo(649.095581f, 388.312805f, 651.55835f, 390.099762f, 653.655701f
, 390.884399f); |
| 152 pathB.cubicTo(651.831848f, 392.522583f, 649.82428f, 394.447296f, 648.092285f
, 396.003601f); |
| 153 pathB.lineTo(648.092285f, 387.883545f); |
| 154 pathB.close(); |
| 155 pathB.moveTo(651.009277f, 381.943756f); |
| 156 pathB.cubicTo(650.147766f, 381.983704f, 639.893372f, 388.105164f, 639.899353
f, 388.254913f); |
| 157 pathB.cubicTo(639.899353f, 388.254913f, 641.987793f, 390.744659f, 641.987793
f, 391.617157f); |
| 158 pathB.lineTo(641.987793f, 412.399475f); |
| 159 pathB.cubicTo(641.987793f, 414.409027f, 641.082336f, 415.369354f, 640.169861
f, 416.864807f); |
| 160 pathB.cubicTo(643.155762f, 417.53064f, 644.650208f, 417.87207f, 647.638062f,
418.573853f); |
| 161 pathB.cubicTo(649.188416f, 418.865356f, 651.666138f, 418.908295f, 653.19751f
, 417.725311f); |
| 162 pathB.cubicTo(657.204651f, 414.633636f, 660.859375f, 409.690125f, 661.590088
f, 407.106567f); |
| 163 pathB.cubicTo(663.231262f, 401.397339f, 652.356934f, 405.644073f, 652.375916
f, 405.663025f); |
| 164 pathB.cubicTo(652.375916f, 405.663025f, 661.338562f, 403.835175f, 659.857056
f, 408.632935f); |
| 165 pathB.cubicTo(659.199219f, 410.748291f, 656.568726f, 413.424713f, 654.656982
f, 413.151184f); |
| 166 pathB.cubicTo(650.381348f, 412.536224f, 648.092285f, 412.591125f, 648.092285
f, 410.146332f); |
| 167 pathB.lineTo(648.092285f, 398.270721f); |
| 168 pathB.cubicTo(651.374634f, 393.5159f, 660.66571f, 388.09021f, 660.674683f, 3
87.791718f); |
| 169 pathB.cubicTo(660.674683f, 387.791718f, 652.188232f, 381.941772f, 651.022278
f, 381.942749f); |
| 170 pathB.cubicTo(651.01825f, 381.942749f, 651.013245f, 381.942749f, 651.009277f
, 381.943756f); |
| 171 pathB.moveTo(761.636353f, 385.965851f); |
| 172 pathB.cubicTo(761.927856f, 386.056702f, 762.071594f, 386.098633f, 762.363098
f, 386.189453f); |
| 173 pathB.cubicTo(763.570007f, 386.938171f, 764.175964f, 387.311554f, 765.376892
f, 388.066254f); |
| 174 pathB.cubicTo(766.019775f, 388.546417f, 766.384155f, 389.184326f, 766.384155
f, 390.147675f); |
| 175 pathB.lineTo(766.384155f, 410.924011f); |
| 176 pathB.cubicTo(766.384155f, 412.057037f, 765.836121f, 413.410736f, 764.559326
f, 414.979034f); |
| 177 pathB.cubicTo(765.911987f, 415.738739f, 766.579834f, 416.12207f, 767.934509f
, 416.887756f); |
| 178 pathB.cubicTo(769.029602f, 417.495728f, 770.944336f, 418.000854f, 771.85675f
, 418.075714f); |
| 179 pathB.cubicTo(772.58551f, 418.134613f, 773.413086f, 417.987854f, 773.950195f
, 417.638458f); |
| 180 pathB.cubicTo(776.583618f, 415.917419f, 778.332642f, 413.564453f, 778.237793
f, 413.473633f); |
| 181 pathB.cubicTo(778.237793f, 413.473633f, 776.507812f, 413.497559f, 775.596313
f, 413.066315f); |
| 182 pathB.cubicTo(774.866577f, 412.61908f, 774.497253f, 412.39447f, 773.771484f,
411.951233f); |
| 183 pathB.cubicTo(772.947876f, 411.444092f, 772.493652f, 410.877075f, 772.493652
f, 409.919708f); |
| 184 pathB.lineTo(772.493652f, 390.013885f); |
| 185 pathB.cubicTo(772.493652f, 388.618286f, 772.860046f, 387.949432f, 773.407104
f, 387.995361f); |
| 186 pathB.cubicTo(773.771484f, 388.026306f, 774.318542f, 388.509491f, 775.049316
f, 389.09848f); |
| 187 pathB.cubicTo(775.742065f, 389.646515f, 776.088501f, 389.923065f, 776.77533f
, 390.470123f); |
| 188 pathB.cubicTo(774.590088f, 392.45871f, 773.589783f, 394.385376f, 773.589783f
, 396.395935f); |
| 189 pathB.cubicTo(773.589783f, 400.673584f, 777.907349f, 401.008026f, 779.237122
f, 398.292694f); |
| 190 pathB.cubicTo(779.539551f, 397.684723f, 780.089661f, 396.027557f, 780.058716
f, 396.01358f); |
| 191 pathB.cubicTo(780.058716f, 396.01358f, 778.970581f, 396.694427f, 778.149963f
, 396.618561f); |
| 192 pathB.cubicTo(776.598633f, 396.4758f, 775.775024f, 395.709106f, 775.775024f,
394.13681f); |
| 193 pathB.cubicTo(775.775024f, 392.042419f, 778.149963f, 389.103455f, 781.973389
f, 385.892975f); |
| 194 pathB.cubicTo(780.697571f, 385.06839f, 777.326416f, 381.676208f, 776.506775f
, 381.719147f); |
| 195 pathB.cubicTo(775.908813f, 381.747101f, 773.588806f, 384.868744f, 772.860046
f, 385.506622f); |
| 196 pathB.cubicTo(770.451172f, 383.664795f, 769.248291f, 382.749359f, 766.843384
f, 380.929504f); |
| 197 pathB.cubicTo(764.758972f, 382.934052f, 763.716736f, 383.940338f, 761.636353
f, 385.965851f); |
| 198 pathB.moveTo(672.996521f, 379.821411f); |
| 199 pathB.cubicTo(672.123047f, 379.891266f, 669.7052f, 382.898132f, 668.887573f,
383.64682f); |
| 200 pathB.cubicTo(665.239868f, 386.999084f, 663.41095f, 390.213562f, 663.41095f,
393.356171f); |
| 201 pathB.cubicTo(663.41095f, 395.715118f, 664.439209f, 397.642792f, 666.785156f
, 399.150208f); |
| 202 pathB.cubicTo(669.702148f, 401.02002f, 672.547302f, 402.439575f, 674.545837f
, 403.655487f); |
| 203 pathB.cubicTo(676.261902f, 404.697693f, 677.105469f, 406.231049f, 677.105469
f, 407.625671f); |
| 204 pathB.cubicTo(677.105469f, 408.671875f, 676.651245f, 409.777954f, 675.825684
f, 410.7453f); |
| 205 pathB.cubicTo(675.12384f, 411.569885f, 674.538879f, 412.145905f, 673.997803f
, 412.417419f); |
| 206 pathB.cubicTo(673.38385f, 412.724915f, 672.080078f, 411.958221f, 670.166382f
, 410.198242f); |
| 207 pathB.cubicTo(668.113892f, 408.319458f, 667.062683f, 406.55249f, 667.062683f
, 404.808502f); |
| 208 pathB.cubicTo(667.062683f, 404.020844f, 667.701599f, 402.580322f, 667.701599
f, 402.580322f); |
| 209 pathB.cubicTo(667.701599f, 402.580322f, 661.773804f, 409.542358f, 661.951477
f, 410.7453f); |
| 210 pathB.cubicTo(662.13916f, 412.037079f, 663.368042f, 413.524536f, 665.60321f,
415.469208f); |
| 211 pathB.cubicTo(667.791443f, 417.368927f, 669.261963f, 418.074738f, 669.983704
f, 417.630493f); |
| 212 pathB.cubicTo(672.412537f, 416.138062f, 675.369446f, 413.822021f, 678.385254
f, 410.790222f); |
| 213 pathB.cubicTo(680.485657f, 408.677856f, 681.587769f, 406.446686f, 681.587769
f, 403.917023f); |
| 214 pathB.cubicTo(681.587769f, 400.859283f, 680.007446f, 398.490356f, 676.923767
f, 396.806244f); |
| 215 pathB.cubicTo(673.540588f, 394.957428f, 671.257507f, 393.71756f, 670.351074f
, 393.075653f); |
| 216 pathB.cubicTo(668.434326f, 391.71698f, 667.518921f, 390.193604f, 667.518921f
, 388.88385f); |
| 217 pathB.cubicTo(667.518921f, 387.837646f, 668.101929f, 386.934204f, 669.25592f
, 386.156525f); |
| 218 pathB.cubicTo(669.796997f, 385.788147f, 671.085815f, 386.257355f, 672.997498
f, 387.592072f); |
| 219 pathB.cubicTo(674.966125f, 388.968689f, 676.104187f, 389.951019f, 676.284851
f, 390.465118f); |
| 220 pathB.cubicTo(678.186584f, 388.130127f, 679.136963f, 386.966125f, 681.035706
f, 384.646118f); |
| 221 pathB.cubicTo(678.244507f, 383.133728f, 674.247375f, 379.819397f, 673.044434
f, 379.819397f); |
| 222 pathB.cubicTo(673.027466f, 379.819397f, 673.011475f, 379.820404f, 672.996521
f, 379.821411f); |
| 223 pathB.moveTo(732.95459f, 384.60318f); |
| 224 pathB.cubicTo(733.246094f, 384.680054f, 733.391846f, 384.720001f, 733.689331
f, 384.794861f); |
| 225 pathB.cubicTo(735.072937f, 385.500641f, 735.769714f, 385.856049f, 737.162354
f, 386.563812f); |
| 226 pathB.cubicTo(737.891113f, 386.938171f, 738.164612f, 387.642975f, 738.164612
f, 388.6073f); |
| 227 pathB.lineTo(738.164612f, 408.510132f); |
| 228 pathB.cubicTo(738.164612f, 410.257141f, 737.709412f, 411.893341f, 736.064209
f, 413.416718f); |
| 229 pathB.cubicTo(737.635498f, 414.235321f, 738.419189f, 414.651611f, 739.991455
f, 415.475189f); |
| 230 pathB.cubicTo(740.997742f, 416.034241f, 742.186707f, 416.344696f, 743.098145
f, 416.379639f); |
| 231 pathB.cubicTo(743.830872f, 416.410583f, 744.476807f, 416.175964f, 745.019836
f, 415.851532f); |
| 232 pathB.cubicTo(746.476318f, 414.977051f, 748.58075f, 413.571442f, 749.225647f
, 413.079285f); |
| 233 pathB.cubicTo(751.012573f, 414.253296f, 751.907043f, 414.845276f, 753.69696f
, 416.028229f); |
| 234 pathB.cubicTo(754.703247f, 416.610229f, 755.706543f, 416.84082f, 756.528076f
, 416.892761f); |
| 235 pathB.cubicTo(757.259827f, 416.93866f, 757.996582f, 416.807892f, 758.537659f
, 416.494446f); |
| 236 pathB.cubicTo(760.814758f, 415.174713f, 762.185425f, 413.509552f, 762.552734
f, 412.830719f); |
| 237 pathB.cubicTo(761.637329f, 412.681976f, 759.633789f, 411.58786f, 759.263428f
, 411.387207f); |
| 238 pathB.cubicTo(758.607544f, 410.994873f, 758.279114f, 410.803223f, 757.621216
f, 410.413879f); |
| 239 pathB.cubicTo(756.983276f, 410.020538f, 756.616943f, 409.301788f, 756.616943
f, 408.343445f); |
| 240 pathB.lineTo(756.616943f, 388.351746f); |
| 241 pathB.cubicTo(756.616943f, 387.387421f, 757.164978f, 386.548859f, 758.627502
f, 385.067383f); |
| 242 pathB.cubicTo(755.523804f, 383.05484f, 753.97052f, 382.057556f, 750.862854f,
380.078949f); |
| 243 pathB.cubicTo(749.001038f, 382.112457f, 748.069641f, 383.130707f, 746.207825
f, 385.174194f); |
| 244 pathB.cubicTo(746.501343f, 385.292999f, 746.647095f, 385.353912f, 746.939575
f, 385.472687f); |
| 245 pathB.cubicTo(747.996765f, 386.183472f, 748.525879f, 386.538879f, 749.587036
f, 387.257629f); |
| 246 pathB.cubicTo(750.224915f, 387.724823f, 750.498474f, 388.351746f, 750.498474
f, 389.223267f); |
| 247 pathB.lineTo(750.498474f, 407.822327f); |
| 248 pathB.cubicTo(750.498474f, 408.694824f, 750.339722f, 409.955658f, 749.951416
f, 410.847137f); |
| 249 pathB.cubicTo(749.550049f, 411.761566f, 749.039978f, 411.585876f, 748.487915
f, 411.560913f); |
| 250 pathB.cubicTo(747.393799f, 411.503998f, 746.385498f, 410.53067f, 745.473083f
, 410.022552f); |
| 251 pathB.cubicTo(744.760254f, 409.627228f, 744.380981f, 409.013275f, 744.380981
f, 407.965088f); |
| 252 pathB.lineTo(744.380981f, 386.840363f); |
| 253 pathB.cubicTo(744.380981f, 385.791138f, 744.833191f, 384.763916f, 745.657776
f, 383.839508f); |
| 254 pathB.cubicTo(742.656921f, 382.101501f, 741.161499f, 381.234985f, 738.162659
f, 379.525909f); |
| 255 pathB.cubicTo(736.083191f, 381.548431f, 735.039978f, 382.562683f, 732.95459f
, 384.60318f); |
| 256 pathB.moveTo(692.546936f, 385.171204f); |
| 257 pathB.cubicTo(693.552246f, 385.667358f, 696.018005f, 387.607025f, 698.122375
f, 388.521454f); |
| 258 pathB.cubicTo(696.293518f, 390.043854f, 694.281982f, 391.844757f, 692.546936
f, 393.294281f); |
| 259 pathB.lineTo(692.546936f, 385.171204f); |
| 260 pathB.close(); |
| 261 pathB.moveTo(695.4729f, 379.417084f); |
| 262 pathB.cubicTo(694.635376f, 379.426086f, 684.32605f, 384.880707f, 684.322083f
, 385.025452f); |
| 263 pathB.cubicTo(684.322083f, 385.025452f, 686.422485f, 387.645966f, 686.422485
f, 388.521454f); |
| 264 pathB.lineTo(686.422485f, 409.300781f); |
| 265 pathB.cubicTo(686.422485f, 411.312347f, 685.51001f, 412.21579f, 684.595581f,
413.65033f); |
| 266 pathB.cubicTo(687.592468f, 414.504852f, 689.089905f, 414.945099f, 692.088745
f, 415.833557f); |
| 267 pathB.cubicTo(693.645081f, 416.221893f, 696.128784f, 416.420563f, 697.667114
f, 415.334412f); |
| 268 pathB.cubicTo(701.67926f, 412.494293f, 705.344971f, 407.783386f, 706.077698f
, 405.240753f); |
| 269 pathB.cubicTo(707.721924f, 399.638367f, 696.822632f, 403.198273f, 696.845581
f, 403.216248f); |
| 270 pathB.cubicTo(696.845581f, 403.216248f, 705.825134f, 401.960388f, 704.337708
f, 406.658325f); |
| 271 pathB.cubicTo(703.683838f, 408.733765f, 701.044373f, 411.241455f, 699.129639
f, 410.847137f); |
| 272 pathB.cubicTo(694.843018f, 409.968628f, 692.545959f, 409.876801f, 692.545959
f, 407.432983f); |
| 273 pathB.lineTo(692.545959f, 395.563354f); |
| 274 pathB.cubicTo(695.838318f, 391.012177f, 705.134338f, 386.160522f, 705.162292
f, 385.873993f); |
| 275 pathB.cubicTo(705.162292f, 385.873993f, 696.635925f, 379.416107f, 695.473938
f, 379.417084f); |
| 276 pathB.cubicTo(695.474915f, 379.417084f, 695.473938f, 379.417084f, 695.4729f,
379.417084f); |
| 277 pathB.moveTo(570.463562f, 420.81601f); |
| 278 pathB.lineTo(570.463562f, 402.922729f); |
| 279 pathB.cubicTo(571.039551f, 402.800934f, 571.327087f, 402.743042f, 571.901123
f, 402.625244f); |
| 280 pathB.lineTo(571.901123f, 423.142029f); |
| 281 pathB.cubicTo(570.911804f, 422.823578f, 570.463562f, 422.123779f, 570.463562
f, 420.81601f); |
| 282 pathB.moveTo(570.463562f, 384.062134f); |
| 283 pathB.cubicTo(571.039551f, 384.149963f, 571.327087f, 384.198883f, 571.901123
f, 384.290741f); |
| 284 pathB.lineTo(571.901123f, 401.580048f); |
| 285 pathB.cubicTo(571.327087f, 401.695862f, 571.039551f, 401.756744f, 570.463562
f, 401.874542f); |
| 286 pathB.lineTo(570.463562f, 384.062134f); |
| 287 pathB.close(); |
| 288 pathB.moveTo(573.880676f, 376.556f); |
| 289 pathB.cubicTo(572.483093f, 376.996246f, 561.476013f, 385.624451f, 561.482971
f, 385.70929f); |
| 290 pathB.cubicTo(561.482971f, 385.70929f, 563.637268f, 388.554413f, 563.637268f
, 389.688446f); |
| 291 pathB.lineTo(563.637268f, 398.423462f); |
| 292 pathB.cubicTo(556.411682f, 399.838043f, 555.429382f, 404.307373f, 555.418396
f, 405.679993f); |
| 293 pathB.lineTo(555.418396f, 405.724915f); |
| 294 pathB.cubicTo(555.42041f, 405.94455f, 555.448364f, 406.073334f, 555.477295f,
406.083313f); |
| 295 pathB.cubicTo(555.477295f, 406.083313f, 558.070862f, 404.250458f, 563.637268
f, 403.222229f); |
| 296 pathB.lineTo(563.637268f, 404.797516f); |
| 297 pathB.cubicTo(556.993713f, 406.233063f, 555.191772f, 412.494293f, 555.569153
f, 412.614105f); |
| 298 pathB.cubicTo(555.569153f, 412.614105f, 561.572815f, 410.21521f, 563.637268f
, 409.598267f); |
| 299 pathB.lineTo(563.637268f, 424.00354f); |
| 300 pathB.cubicTo(563.637268f, 426.357483f, 563.36676f, 427.901855f, 562.291565f
, 429.70874f); |
| 301 pathB.cubicTo(565.448181f, 430.067139f, 567.028442f, 430.256805f, 570.192017
f, 430.653137f); |
| 302 pathB.cubicTo(571.99292f, 430.893707f, 574.782166f, 430.669098f, 576.403381f
, 429.136719f); |
| 303 pathB.cubicTo(580.960571f, 424.828125f, 586.135681f, 419.346527f, 586.135681
f, 416.115082f); |
| 304 pathB.lineTo(586.135681f, 406.511566f); |
| 305 pathB.cubicTo(586.135681f, 405.377533f, 586.047791f, 404.608856f, 586.678711
f, 403.271149f); |
| 306 pathB.cubicTo(584.151062f, 404.98819f, 582.888245f, 405.851715f, 580.362549f
, 407.587738f); |
| 307 pathB.cubicTo(579.281433f, 408.320465f, 579.192566f, 409.2948f, 579.192566f,
410.955933f); |
| 308 pathB.lineTo(579.192566f, 421.869202f); |
| 309 pathB.cubicTo(579.192566f, 423.180969f, 577.746033f, 423.273804f, 577.392639
f, 423.266815f); |
| 310 pathB.cubicTo(575.636658f, 423.228882f, 574.153259f, 423.295776f, 573.071106
f, 423.077148f); |
| 311 pathB.lineTo(573.071106f, 384.663086f); |
| 312 pathB.cubicTo(575.230408f, 385.379852f, 576.309509f, 385.742249f, 578.473816
f, 386.473999f); |
| 313 pathB.cubicTo(579.373291f, 386.996094f, 579.553955f, 387.490234f, 579.553955
f, 388.013336f); |
| 314 pathB.cubicTo(581.861023f, 384.848785f, 583.015991f, 383.267487f, 585.325073
f, 380.114899f); |
| 315 pathB.cubicTo(581.680298f, 379.229431f, 575.865295f, 376.520081f, 574.157227
f, 376.521057f); |
| 316 pathB.cubicTo(574.047424f, 376.522064f, 573.955566f, 376.533051f, 573.880676
f, 376.556f); |
| 317 pathB.moveTo(593.447083f, 375.096527f); |
| 318 pathB.cubicTo(592.363953f, 375.804291f, 591.821899f, 376.772644f, 591.821899
f, 377.908691f); |
| 319 pathB.lineTo(591.821899f, 419.46933f); |
| 320 pathB.cubicTo(591.821899f, 420.517517f, 591.187012f, 422.018951f, 589.921143
f, 423.991577f); |
| 321 pathB.cubicTo(591.2948f, 424.412842f, 591.982605f, 424.622467f, 593.354248f,
425.050751f); |
| 322 pathB.cubicTo(594.53125f, 425.462036f, 595.525513f, 425.555878f, 596.427979f
, 425.404144f); |
| 323 pathB.cubicTo(597.150757f, 425.279358f, 597.785645f, 424.914978f, 598.326721
f, 424.475739f); |
| 324 pathB.cubicTo(600.935242f, 422.385315f, 602.846985f, 419.809753f, 602.759094
f, 419.749847f); |
| 325 pathB.cubicTo(602.759094f, 419.749847f, 601.582153f, 419.935516f, 600.59082f
, 419.831696f); |
| 326 pathB.cubicTo(600.0448f, 419.74585f, 599.774231f, 419.700928f, 599.233154f,
419.615082f); |
| 327 pathB.cubicTo(598.416565f, 419.484314f, 597.965332f, 418.860382f, 597.965332
f, 417.988861f); |
| 328 pathB.lineTo(597.965332f, 396.857147f); |
| 329 pathB.cubicTo(597.965332f, 395.376678f, 598.326721f, 394.617004f, 598.867798
f, 394.528137f); |
| 330 pathB.cubicTo(599.232178f, 394.466248f, 599.773254f, 394.731812f, 600.59082f
, 395.124115f); |
| 331 pathB.cubicTo(601.601074f, 395.589325f, 602.111206f, 395.819946f, 603.123474
f, 396.288116f); |
| 332 pathB.cubicTo(603.93811f, 396.686432f, 603.93512f, 397.38324f, 603.93512f, 3
98.169891f); |
| 333 pathB.cubicTo(603.93512f, 405.971497f, 603.93512f, 413.768127f, 603.93811f,
421.569702f); |
| 334 pathB.cubicTo(603.93811f, 425.325256f, 601.109924f, 430.634155f, 601.133911f
, 430.656128f); |
| 335 pathB.cubicTo(601.133911f, 430.656128f, 605.184937f, 427.222015f, 607.017822
f, 424.414825f); |
| 336 pathB.cubicTo(609.118164f, 421.201355f, 610.280212f, 417.987854f, 610.280212
f, 415.109802f); |
| 337 pathB.lineTo(610.280212f, 394.593048f); |
| 338 pathB.cubicTo(610.280212f, 393.890228f, 610.823242f, 393.112579f, 611.728699
f, 392.020447f); |
| 339 pathB.cubicTo(608.827698f, 390.960266f, 604.000977f, 387.703857f, 602.759094
f, 387.967407f); |
| 340 pathB.cubicTo(602.120239f, 388.104187f, 599.957947f, 391.29071f, 597.965332f
, 393.27829f); |
| 341 pathB.lineTo(597.965332f, 374.422668f); |
| 342 pathB.cubicTo(597.965332f, 373.461334f, 598.326721f, 372.440063f, 598.867798
f, 371.567566f); |
| 343 pathB.cubicTo(596.701538f, 372.96817f, 595.616394f, 373.677948f, 593.447083f
, 375.096527f); |
| 344 pathB.moveTo(718.054138f, 409.318756f); |
| 345 pathB.cubicTo(717.461182f, 408.789673f, 716.867188f, 408.178711f, 716.867188
f, 407.218353f); |
| 346 pathB.lineTo(716.867188f, 387.053986f); |
| 347 pathB.cubicTo(716.867188f, 385.305969f, 717.323425f, 385.566528f, 718.328674
f, 386.013763f); |
| 348 pathB.cubicTo(719.645386f, 386.859314f, 720.307251f, 387.284576f, 721.622009
f, 388.135132f); |
| 349 pathB.cubicTo(722.266907f, 388.4935f, 722.903809f, 388.934753f, 722.903809f,
389.721405f); |
| 350 pathB.lineTo(722.903809f, 407.794373f); |
| 351 pathB.cubicTo(722.903809f, 408.66687f, 722.746094f, 410.490753f, 722.259888f
, 410.758301f); |
| 352 pathB.cubicTo(722.125122f, 410.83017f, 721.950439f, 410.862122f, 721.746826f
, 410.862122f); |
| 353 pathB.cubicTo(720.655701f, 410.864105f, 718.747925f, 409.936707f, 718.054138
f, 409.318756f); |
| 354 pathB.moveTo(711.928711f, 364.782227f); |
| 355 pathB.cubicTo(711.195923f, 365.134613f, 710.648865f, 365.834412f, 710.648865
f, 366.794769f); |
| 356 pathB.lineTo(710.648865f, 407.392059f); |
| 357 pathB.cubicTo(710.648865f, 409.397614f, 708.519531f, 411.37323f, 708.547485f
, 411.684692f); |
| 358 pathB.cubicTo(708.550476f, 411.745605f, 711.838867f, 413.067322f, 713.849365
f, 414.368073f); |
| 359 pathB.cubicTo(717.766663f, 416.906738f, 720.162537f, 415.845551f, 722.354797
f, 414.073608f); |
| 360 pathB.cubicTo(724.059875f, 412.69397f, 726.55957f, 410.981903f, 730.675537f,
410.124359f); |
| 361 pathB.cubicTo(729.75708f, 409.143066f, 729.213013f, 407.993042f, 729.213013f
, 406.683289f); |
| 362 pathB.cubicTo(729.213013f, 399.630402f, 729.209045f, 396.103455f, 729.209045
f, 389.047546f); |
| 363 pathB.cubicTo(729.209045f, 387.648956f, 730.577698f, 385.292023f, 730.583679
f, 385.149261f); |
| 364 pathB.cubicTo(730.583679f, 385.149261f, 720.888306f, 378.762207f, 719.609497
f, 378.947906f); |
| 365 pathB.cubicTo(719.275085f, 378.996826f, 717.872498f, 381.118164f, 716.868225
f, 381.896851f); |
| 366 pathB.lineTo(716.868225f, 365.046783f); |
| 367 pathB.cubicTo(716.868225f, 363.740021f, 716.960083f, 363.043213f, 717.597961
f, 362); |
| 368 pathB.cubicTo(715.331848f, 363.104095f, 714.19873f, 363.657166f, 711.928711f
, 364.782227f); |
| 369 testPathOp(reporter, path, pathB, kIntersect_PathOp); |
| 370 } |
| 371 |
| 372 static void skpeverytechpro_blogspot_com100(skiatest::Reporter* reporter) { |
| 373 SkPath path; |
| 374 path.setFillType(SkPath::kEvenOdd_FillType); |
| 375 path.moveTo(1074.29285f, 627.292786f); |
| 376 path.quadTo(1074.58582f, 627, 1075, 627); |
| 377 path.lineTo(1117, 627); |
| 378 path.quadTo(1124.04163f, 627, 1129.02246f, 631.9776f); |
| 379 path.quadTo(1134, 636.958374f, 1134, 644); |
| 380 path.lineTo(1134, 645); |
| 381 path.quadTo(1134, 652.041626f, 1129.02246f, 657.0224f); |
| 382 path.quadTo(1124.04163f, 662, 1117, 662); |
| 383 path.lineTo(1075, 662); |
| 384 path.quadTo(1074.58582f, 662, 1074.29285f, 661.707214f); |
| 385 path.quadTo(1074, 661.414185f, 1074, 661); |
| 386 path.lineTo(1074, 628); |
| 387 path.quadTo(1074, 627.585815f, 1074.29285f, 627.292786f); |
| 388 path.close(); |
| 389 path.moveTo(1076, 629); |
| 390 path.lineTo(1117, 629); |
| 391 path.cubicTo(1125.2843f, 629, 1132, 635.715698f, 1132, 644); |
| 392 path.lineTo(1132, 645); |
| 393 path.cubicTo(1132, 653.284302f, 1125.2843f, 660, 1117, 660); |
| 394 path.lineTo(1076, 660); |
| 395 path.lineTo(1076, 629); |
| 396 path.close(); |
| 397 SkPath pathB; |
| 398 pathB.setFillType(SkPath::kWinding_FillType); |
| 399 pathB.moveTo(1074, 627); |
| 400 pathB.lineTo(1075, 628); |
| 401 pathB.lineTo(1116.5f, 644.5f); |
| 402 pathB.lineTo(1134, 627); |
| 403 testPathOp(reporter, path, pathB, kIntersect_PathOp); |
| 404 } |
| 405 |
| 406 static void skpflite_com41(skiatest::Reporter* reporter) { |
| 407 SkPath path; |
| 408 path.setFillType(SkPath::kEvenOdd_FillType); |
| 409 path.moveTo(301.464081f, 424); |
| 410 path.lineTo(296, 433.46405f); |
| 411 path.lineTo(296, 433.810822f); |
| 412 path.lineTo(303.25589f, 438); |
| 413 path.lineTo(304.729736f, 438); |
| 414 path.lineTo(311, 427.139557f); |
| 415 path.lineTo(311, 426.305237f); |
| 416 path.lineTo(307.007202f, 424); |
| 417 path.lineTo(301.464081f, 424); |
| 418 path.close(); |
| 419 SkPath pathB; |
| 420 pathB.setFillType(SkPath::kWinding_FillType); |
| 421 pathB.moveTo(302.849854f, 421.599762f); |
| 422 pathB.lineTo(311.510101f, 426.599762f); |
| 423 pathB.lineTo(304.510101f, 438.724121f); |
| 424 pathB.lineTo(295.849854f, 433.724121f); |
| 425 pathB.close(); |
| 426 testPathOp(reporter, path, pathB, kIntersect_PathOp); |
| 427 } |
| 428 |
| 429 static void skpilkoora_com37(skiatest::Reporter* reporter) { |
| 430 SkPath path; |
| 431 path.setFillType(SkPath::kEvenOdd_FillType); |
| 432 path.moveTo(818, 157); |
| 433 path.cubicTo(818, 148.715729f, 824.715698f, 142, 833, 142); |
| 434 path.lineTo(909, 142); |
| 435 path.lineTo(909, 143); |
| 436 path.lineTo(833, 143); |
| 437 path.cubicTo(825.268005f, 143, 819, 149.268005f, 819, 157); |
| 438 path.lineTo(819, 926); |
| 439 path.lineTo(818, 926); |
| 440 path.lineTo(818, 157); |
| 441 path.close(); |
| 442 path.moveTo(1184, 926); |
| 443 path.lineTo(1185, 926); |
| 444 path.lineTo(1185, 157); |
| 445 path.cubicTo(1185, 148.715729f, 1178.2843f, 142, 1170, 142); |
| 446 path.lineTo(1093, 142); |
| 447 path.lineTo(1093, 143); |
| 448 path.lineTo(1170, 143); |
| 449 path.cubicTo(1177.73193f, 143, 1184, 149.268005f, 1184, 157); |
| 450 path.lineTo(1184, 926); |
| 451 path.close(); |
| 452 SkPath pathB; |
| 453 pathB.setFillType(SkPath::kWinding_FillType); |
| 454 pathB.moveTo(1185, 142); |
| 455 pathB.lineTo(1001.5f, 325.5f); |
| 456 pathB.lineTo(1001.5f, 782.5f); |
| 457 pathB.lineTo(1185, 966); |
| 458 testPathOp(reporter, path, pathB, kIntersect_PathOp); |
| 459 } |
| 460 |
| 461 static void skpmm4everfriends_com43(skiatest::Reporter* reporter) { |
| 462 SkPath path; |
| 463 path.setFillType(SkPath::kEvenOdd_FillType); |
| 464 path.moveTo(540.74231f, 215.922546f); |
| 465 path.cubicTo(540.893127f, 215.391159f, 541.443909f, 215.090134f, 541.972473f
, 215.250168f); |
| 466 path.lineTo(581.213318f, 227.131104f); |
| 467 path.cubicTo(581.741882f, 227.291153f, 582.048157f, 227.851654f, 581.897339f
, 228.383041f); |
| 468 path.lineTo(576.708923f, 246.663925f); |
| 469 path.cubicTo(576.558167f, 247.195297f, 576.007324f, 247.496338f, 575.47876f,
247.336288f); |
| 470 path.lineTo(536.237915f, 235.455353f); |
| 471 path.cubicTo(535.709351f, 235.295319f, 535.403137f, 234.734802f, 535.553894f
, 234.20343f); |
| 472 path.lineTo(540.74231f, 215.922546f); |
| 473 path.close(); |
| 474 SkPath pathB; |
| 475 pathB.setFillType(SkPath::kWinding_FillType); |
| 476 pathB.moveTo(541.015381f, 214.960388f); |
| 477 pathB.lineTo(582.17041f, 227.420883f); |
| 478 pathB.lineTo(576.435852f, 247.626068f); |
| 479 pathB.lineTo(535.280823f, 235.165573f); |
| 480 pathB.close(); |
| 481 testPathOp(reporter, path, pathB, kIntersect_PathOp); |
| 482 } |
| 483 |
| 484 static void skpmtrk_uz27(skiatest::Reporter* reporter) { |
| 485 SkPath path; |
| 486 path.setFillType(SkPath::kEvenOdd_FillType); |
| 487 path.moveTo(33, 787); |
| 488 path.lineTo(33, 412); |
| 489 path.lineTo(1233, 412); |
| 490 path.lineTo(1233, 787); |
| 491 path.quadTo(1233, 793.213196f, 1228.60803f, 797.607971f); |
| 492 path.quadTo(1224.21326f, 802, 1218, 802); |
| 493 path.lineTo(48, 802); |
| 494 path.quadTo(41.7867966f, 802, 37.3919983f, 797.607971f); |
| 495 path.quadTo(33, 793.213196f, 33, 787); |
| 496 path.close(); |
| 497 SkPath pathB; |
| 498 pathB.setFillType(SkPath::kWinding_FillType); |
| 499 pathB.moveTo(33, 412); |
| 500 pathB.lineTo(1233, 412); |
| 501 pathB.lineTo(1233, 787); |
| 502 pathB.quadTo(1233, 793.213196f, 1228.60791f, 797.608032f); |
| 503 pathB.quadTo(1224.21313f, 802, 1218, 802); |
| 504 pathB.lineTo(48, 802); |
| 505 pathB.quadTo(41.7867432f, 802, 37.3919678f, 797.608032f); |
| 506 pathB.quadTo(33, 793.213196f, 33, 787); |
| 507 pathB.close(); |
| 508 testPathOp(reporter, path, pathB, kIntersect_PathOp); |
| 509 } |
| 510 |
| 511 #define TRY_BROKEN_TESTS 0 |
| 512 #if TRY_BROKEN_TESTS |
| 513 static void skpfrauen_magazin_com83(skiatest::Reporter* reporter) { |
| 514 SkPath path; |
| 515 path.setFillType(SkPath::kEvenOdd_FillType); |
| 516 path.moveTo(808, 886); |
| 517 path.cubicTo(805.581055f, 886, 803.563293f, 887.717773f, 803.100037f, 890); |
| 518 path.lineTo(1122.90002f, 890); |
| 519 path.cubicTo(1122.43677f, 887.717773f, 1120.41895f, 886, 1118, 886); |
| 520 path.lineTo(808, 886); |
| 521 path.close(); |
| 522 SkPath pathB; |
| 523 pathB.setFillType(SkPath::kInverseWinding_FillType); |
| 524 pathB.moveTo(808, 886); |
| 525 pathB.lineTo(1118, 886); |
| 526 pathB.cubicTo(1120.76147f, 886, 1123, 888.238586f, 1123, 891); |
| 527 pathB.lineTo(1123, 1521); |
| 528 pathB.cubicTo(1123, 1523.20911f, 1120.76147f, 1525, 1118, 1525); |
| 529 pathB.lineTo(808, 1525); |
| 530 pathB.cubicTo(805.238586f, 1525, 803, 1523.20911f, 803, 1521); |
| 531 pathB.lineTo(803, 891); |
| 532 pathB.cubicTo(803, 888.238586f, 805.238586f, 886, 808, 886); |
| 533 pathB.close(); |
| 534 testPathOp(reporter, path, pathB, kIntersect_PathOp); |
| 535 } |
| 536 |
| 537 static void skpi_gino_com16(skiatest::Reporter* reporter) { |
| 538 SkPath path; |
| 539 path.setFillType(SkPath::kEvenOdd_FillType); |
| 540 path.moveTo(184, 734); |
| 541 path.quadTo(133.051727f, 734, 97.0258636f, 770.025879f); |
| 542 path.quadTo(61, 806.051758f, 61, 857); |
| 543 path.quadTo(61, 895.835083f, 81.9317017f, 926); |
| 544 path.lineTo(286.068298f, 926); |
| 545 path.quadTo(307, 895.835083f, 307, 857); |
| 546 path.quadTo(307, 806.051758f, 270.974121f, 770.025879f); |
| 547 path.quadTo(234.948273f, 734, 184, 734); |
| 548 path.close(); |
| 549 SkPath pathB; |
| 550 pathB.setFillType(SkPath::kWinding_FillType); |
| 551 pathB.moveTo(185, 734); |
| 552 pathB.cubicTo(252.93103f, 734, 308, 789.06897f, 308, 857); |
| 553 pathB.cubicTo(308, 924.93103f, 252.93103f, 980, 185, 980); |
| 554 pathB.lineTo(184, 980); |
| 555 pathB.cubicTo(116.068977f, 980, 61, 924.93103f, 61, 857); |
| 556 pathB.cubicTo(61, 789.06897f, 116.068977f, 734, 184, 734); |
| 557 pathB.lineTo(185, 734); |
| 558 pathB.close(); |
| 559 testPathOp(reporter, path, pathB, kIntersect_PathOp); |
| 560 } |
| 561 |
| 562 static void skppchappy_com_au102(skiatest::Reporter* reporter) { |
| 563 SkPath path; |
| 564 path.setFillType(SkPath::kEvenOdd_FillType); |
| 565 path.moveTo(363, 493); |
| 566 path.cubicTo(360.790863f, 493, 359, 494.790863f, 359, 497); |
| 567 path.lineTo(359, 656); |
| 568 path.cubicTo(359, 658.209106f, 360.790863f, 660, 363, 660); |
| 569 path.lineTo(623.001709f, 660); |
| 570 path.cubicTo(624.657776f, 659.999023f, 626, 658.65625f, 626, 657); |
| 571 path.lineTo(626, 496); |
| 572 path.cubicTo(626, 494.343872f, 624.657959f, 493.00116f, 623.002075f, 493); |
| 573 path.lineTo(363, 493); |
| 574 path.close(); |
| 575 SkPath pathB; |
| 576 pathB.setFillType(SkPath::kInverseWinding_FillType); |
| 577 pathB.moveTo(362, 494); |
| 578 pathB.lineTo(623, 494); |
| 579 pathB.cubicTo(624.65686f, 494, 626, 494.895416f, 626, 496); |
| 580 pathB.lineTo(626, 657); |
| 581 pathB.cubicTo(626, 658.65686f, 624.65686f, 660, 623, 660); |
| 582 pathB.lineTo(362, 660); |
| 583 pathB.cubicTo(360.34314f, 660, 359, 658.65686f, 359, 657); |
| 584 pathB.lineTo(359, 496); |
| 585 pathB.cubicTo(359, 494.895416f, 360.34314f, 494, 362, 494); |
| 586 pathB.close(); |
| 587 testPathOp(reporter, path, pathB, kIntersect_PathOp); |
| 588 } |
| 589 |
| 590 static void skpsciality_com161(skiatest::Reporter* reporter) { |
| 591 SkPath path; |
| 592 path.setFillType(SkPath::kEvenOdd_FillType); |
| 593 path.moveTo(656, 728); |
| 594 path.cubicTo(653.790833f, 728, 652, 729.790833f, 652, 732); |
| 595 path.lineTo(652, 789); |
| 596 path.cubicTo(652, 791.209106f, 653.790833f, 793, 656, 793); |
| 597 path.lineTo(769.001282f, 793); |
| 598 path.cubicTo(770.657532f, 792.999268f, 772, 791.656433f, 772, 790); |
| 599 path.lineTo(772, 731); |
| 600 path.cubicTo(772, 729.34314f, 770.65686f, 728, 769, 728); |
| 601 path.lineTo(656, 728); |
| 602 path.close(); |
| 603 SkPath pathB; |
| 604 pathB.setFillType(SkPath::kInverseWinding_FillType); |
| 605 pathB.moveTo(655, 729); |
| 606 pathB.lineTo(769, 729); |
| 607 pathB.cubicTo(770.65686f, 729, 772, 729.895447f, 772, 731); |
| 608 pathB.lineTo(772, 790); |
| 609 pathB.cubicTo(772, 791.65686f, 770.65686f, 793, 769, 793); |
| 610 pathB.lineTo(655, 793); |
| 611 pathB.cubicTo(653.34314f, 793, 652, 791.65686f, 652, 790); |
| 612 pathB.lineTo(652, 731); |
| 613 pathB.cubicTo(652, 729.895447f, 653.34314f, 729, 655, 729); |
| 614 pathB.close(); |
| 615 testPathOp(reporter, path, pathB, kIntersect_PathOp); |
| 616 } |
| 617 |
| 618 static void skpsudoestenegocios_com186(skiatest::Reporter* reporter) { |
| 619 SkPath path; |
| 620 path.setFillType(SkPath::kEvenOdd_FillType); |
| 621 path.moveTo(0, 495); |
| 622 path.lineTo(1.23685242e-14f, 293); |
| 623 path.lineTo(44, 293); |
| 624 path.quadTo(45.6568527f, 293, 46.8288002f, 294.171204f); |
| 625 path.quadTo(48, 295.34314f, 48, 297); |
| 626 path.lineTo(48, 491); |
| 627 path.quadTo(48, 492.65686f, 46.8288002f, 493.828796f); |
| 628 path.quadTo(45.6568527f, 495, 44, 495); |
| 629 path.lineTo(0, 495); |
| 630 path.close(); |
| 631 path.moveTo(1, 294); |
| 632 path.lineTo(44, 294); |
| 633 path.cubicTo(45.6568565f, 294, 47, 295.34314f, 47, 297); |
| 634 path.lineTo(47, 491); |
| 635 path.cubicTo(47, 492.65686f, 45.6568565f, 494, 44, 494); |
| 636 path.lineTo(1, 494); |
| 637 path.lineTo(1, 294); |
| 638 path.close(); |
| 639 SkPath pathB; |
| 640 pathB.setFillType(SkPath::kWinding_FillType); |
| 641 pathB.moveTo(48, 495); |
| 642 pathB.lineTo(24, 471); |
| 643 pathB.lineTo(24, 317); |
| 644 pathB.lineTo(48, 293); |
| 645 testPathOp(reporter, path, pathB, kIntersect_PathOp); |
| 646 } |
| 647 |
| 648 static void skpthesuburbanite_com213(skiatest::Reporter* reporter) { |
| 649 SkPath path; |
| 650 path.setFillType(SkPath::kEvenOdd_FillType); |
| 651 path.moveTo(863.439026f, 692); |
| 652 path.lineTo(863.283264f, 692); |
| 653 path.lineTo(802, 708.420837f); |
| 654 path.lineTo(802, 718.773621f); |
| 655 path.lineTo(866, 701.624817f); |
| 656 path.lineTo(866, 701.557922f); |
| 657 path.lineTo(863.439026f, 692); |
| 658 path.close(); |
| 659 SkPath pathB; |
| 660 pathB.setFillType(SkPath::kWinding_FillType); |
| 661 pathB.moveTo(783.256775f, 713.443054f); |
| 662 pathB.lineTo(863.428589f, 691.96106f); |
| 663 pathB.lineTo(866.016724f, 701.620361f); |
| 664 pathB.lineTo(785.84491f, 723.102356f); |
| 665 pathB.close(); |
| 666 testPathOp(reporter, path, pathB, kIntersect_PathOp); |
| 667 } |
| 668 #endif |
| 669 |
| 670 static void (*firstTest)(skiatest::Reporter* ) = 0; |
| 671 |
| 672 static struct TestDesc tests[] = { |
| 673 #if TRY_BROKEN_TESTS |
| 674 TEST(skppchappy_com_au102), |
| 675 TEST(skpsciality_com161), |
| 676 TEST(skpsudoestenegocios_com186), |
| 677 TEST(skpfrauen_magazin_com83), |
| 678 TEST(skpi_gino_com16), |
| 679 #endif |
| 680 TEST(skpmtrk_uz27), |
| 681 TEST(skpilkoora_com37), |
| 682 TEST(skpmm4everfriends_com43), |
| 683 TEST(skpflite_com41), |
| 684 TEST(skpcheeseandburger_com225), |
| 685 TEST(skpeverytechpro_blogspot_com100), |
| 686 }; |
| 687 |
| 688 static const size_t testCount = SK_ARRAY_COUNT(tests); |
| 689 |
| 690 static bool runReverse = false; |
| 691 static void (*stopTest)(skiatest::Reporter* ) = 0; |
| 692 |
| 693 static void PathOpsSkpTest(skiatest::Reporter* reporter) { |
| 694 #if DEBUG_SHOW_TEST_NAME |
| 695 strncpy(DEBUG_FILENAME_STRING, "", DEBUG_FILENAME_STRING_LENGTH); |
| 696 #endif |
| 697 RunTestSet(reporter, tests, testCount, firstTest, stopTest, runReverse); |
| 698 } |
| 699 |
| 700 #include "TestClassDef.h" |
| 701 |
| 702 DEFINE_TESTCLASS_SHORT(PathOpsSkpTest) |
| 703 |
OLD | NEW |