aboutsummaryrefslogtreecommitdiffhomepage
path: root/tests
diff options
context:
space:
mode:
authorGravatar skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2013-10-03 07:01:37 +0000
committerGravatar skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2013-10-03 07:01:37 +0000
commitb0a0589f8ac0254ec1beba9db2fc32a2bedb31e5 (patch)
treee5e39af95aa0b4b9dae12a4545bb6a017f19f8fb /tests
parent58909491d20938889c03415d9ac40d3e89caa0e2 (diff)
Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@11585 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'tests')
-rw-r--r--tests/PathOpsCubicIntersectionTest.cpp10
-rw-r--r--tests/PathOpsCubicLineIntersectionTest.cpp4
-rw-r--r--tests/PathOpsCubicQuadIntersectionTest.cpp2
-rw-r--r--tests/PathOpsOpTest.cpp1462
-rw-r--r--tests/PathOpsQuadIntersectionTest.cpp14
-rw-r--r--tests/PathOpsSimplifyTest.cpp22
-rwxr-xr-xtests/PathOpsSkpTest.cpp1
7 files changed, 757 insertions, 758 deletions
diff --git a/tests/PathOpsCubicIntersectionTest.cpp b/tests/PathOpsCubicIntersectionTest.cpp
index 109c42ed3f..04797b4ef3 100644
--- a/tests/PathOpsCubicIntersectionTest.cpp
+++ b/tests/PathOpsCubicIntersectionTest.cpp
@@ -164,8 +164,8 @@ static const SkDCubic testSet[] = {
const size_t testSetCount = SK_ARRAY_COUNT(testSet);
static const SkDCubic newTestSet[] = {
-#if 0 // FIXME: asserts coincidence, not working yet
-{{{195, 785}, {124.30755615234375, 785}, {67, 841.85986328125}, {67, 912}}},
+#if 0 // FIXME: asserts coincidence, not working yet
+{{{195, 785}, {124.30755615234375, 785}, {67, 841.85986328125}, {67, 912}}},
{{{67, 913}, {67, 842.30755615234375}, {123.85984039306641, 785}, {194, 785}}},
#endif
@@ -585,9 +585,9 @@ static void cubicIntersectionSelfTest(skiatest::Reporter* reporter) {
}
static const SkDCubic coinSet[] = {
- {{{317, 711}, {322.52285766601562, 711}, {327, 715.4771728515625}, {327, 721}}},
- {{{324.07107543945312, 713.928955078125}, {324.4051513671875, 714.26300048828125},
- {324.71566772460937, 714.62060546875}, {325, 714.9990234375}}},
+ {{{317, 711}, {322.52285766601562, 711}, {327, 715.4771728515625}, {327, 721}}},
+ {{{324.07107543945312, 713.928955078125}, {324.4051513671875, 714.26300048828125},
+ {324.71566772460937, 714.62060546875}, {325, 714.9990234375}}},
{{{2, 3}, {0, 4}, {3, 2}, {5, 3}}},
{{{2, 3}, {0, 4}, {3, 2}, {5, 3}}},
diff --git a/tests/PathOpsCubicLineIntersectionTest.cpp b/tests/PathOpsCubicLineIntersectionTest.cpp
index bfabfe8f7c..49219fbfe5 100644
--- a/tests/PathOpsCubicLineIntersectionTest.cpp
+++ b/tests/PathOpsCubicLineIntersectionTest.cpp
@@ -15,8 +15,8 @@ static struct lineCubic {
SkDCubic cubic;
SkDLine line;
} lineCubicTests[] = {
- {{{{0,1}, {1,6}, {4,1}, {4,3}}},
- {{{6,1}, {1,4}}}},
+ {{{{0,1}, {1,6}, {4,1}, {4,3}}},
+ {{{6,1}, {1,4}}}},
{{{{0,1}, {2,6}, {4,1}, {5,4}}},
{{{6,2}, {1,4}}}},
diff --git a/tests/PathOpsCubicQuadIntersectionTest.cpp b/tests/PathOpsCubicQuadIntersectionTest.cpp
index 09127e8d33..c9da2c7378 100644
--- a/tests/PathOpsCubicQuadIntersectionTest.cpp
+++ b/tests/PathOpsCubicQuadIntersectionTest.cpp
@@ -17,7 +17,7 @@ static struct lineCubic {
int answerCount;
SkDPoint answers[2];
} quadCubicTests[] = {
- {{{{49, 47}, {49, 74.614250183105469}, {26.614250183105469, 97}, {-1, 97}}},
+ {{{{49, 47}, {49, 74.614250183105469}, {26.614250183105469, 97}, {-1, 97}}},
{{{-8.659739592076221e-015, 96.991401672363281}, {20.065492630004883, 96.645187377929688},
{34.355339050292969, 82.355339050292969}}}, 2,
{{34.355339050292969,82.355339050292969}, {34.306797674910243,82.403823585863449}}},
diff --git a/tests/PathOpsOpTest.cpp b/tests/PathOpsOpTest.cpp
index 3ec2199573..08ae1b939d 100644
--- a/tests/PathOpsOpTest.cpp
+++ b/tests/PathOpsOpTest.cpp
@@ -2274,740 +2274,740 @@ static void cubicOp91u(skiatest::Reporter* reporter) {
testPathOp(reporter, path, pathB, kUnion_PathOp);
}
-static void skpaaalgarve_org53(skiatest::Reporter* reporter) { // add t cancel
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(-1.24344979e-014f, 348);
- path.lineTo(258, 348);
- path.lineTo(258, 322);
- path.quadTo(258, 317.857849f, 255.072006f, 314.928009f);
- path.quadTo(252.142136f, 312, 248, 312);
- path.lineTo(1.77635684e-015f, 312);
- path.lineTo(-1.24344979e-014f, 348);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kWinding_FillType);
- pathB.moveTo(0, 312);
- pathB.lineTo(258, 312);
- pathB.lineTo(258, 348);
- pathB.lineTo(0, 348);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void skpabcspark_ca103(skiatest::Reporter* reporter) { // add t cancel
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(1.99840144e-015f, 494);
- path.lineTo(97, 494);
- path.quadTo(100.313705f, 494, 102.6576f, 491.657593f);
- path.quadTo(105, 489.313721f, 105, 486);
- path.lineTo(105, 425);
- path.quadTo(105, 421.686279f, 102.6576f, 419.342407f);
- path.quadTo(100.313705f, 417, 97, 417);
- path.lineTo(2.22044605e-016f, 417);
- path.lineTo(1.99840144e-015f, 494);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kWinding_FillType);
- pathB.moveTo(0, 417);
- pathB.lineTo(105, 417);
- pathB.lineTo(105, 494);
- pathB.lineTo(0, 494);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void skpacesoftech_com47(skiatest::Reporter* reporter) { // partial coincidence
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(670.537415f, 285);
- path.lineTo(670.387451f, 285);
- path.lineTo(596.315186f, 314.850708f);
- path.lineTo(626.19696f, 389);
- path.lineTo(626.346863f, 389);
- path.lineTo(700.419189f, 359.149261f);
- path.lineTo(670.537415f, 285);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kWinding_FillType);
- pathB.moveTo(663.318542f, 374.100616f);
- pathB.quadTo(647.950989f, 380.293671f, 632.705322f, 373.806305f);
- pathB.quadTo(617.459595f, 367.318909f, 611.266541f, 351.951355f);
- pathB.quadTo(605.073486f, 336.58374f, 611.560913f, 321.338074f);
- pathB.quadTo(618.048279f, 306.092407f, 633.415833f, 299.899353f);
- pathB.quadTo(648.783447f, 293.706299f, 664.029114f, 300.193665f);
- pathB.quadTo(679.27478f, 306.68103f, 685.467834f, 322.048645f);
- pathB.quadTo(691.660889f, 337.416199f, 685.173523f, 352.661896f);
- pathB.quadTo(678.686157f, 367.907562f, 663.318542f, 374.100616f);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void skpact_com43(skiatest::Reporter* reporter) { // bridge op
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(1.45716772e-016f, 924.336121f);
- path.lineTo(-1.11022302e-016f, 920);
- path.lineTo(6, 920);
- path.lineTo(6, 926);
- path.lineTo(1.66389287f, 926);
- path.quadTo(1.18842196f, 925.674561f, 0.756800175f, 925.243225f);
- path.quadTo(0.325406998f, 924.811523f, 1.45716772e-016f, 924.336121f);
- path.close();
- path.moveTo(1, 921);
- path.lineTo(5, 921);
- path.lineTo(5, 925);
- path.cubicTo(2.79086018f, 925, 1, 923.209167f, 1, 921);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kWinding_FillType);
- pathB.moveTo(-1, 920);
- pathB.lineTo(0, 920);
- pathB.lineTo(3, 927);
- pathB.lineTo(-1, 927);
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void skpadbox_lt8(skiatest::Reporter* reporter) { // zero span
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(320.097229f, 628.573669f);
- path.lineTo(610.227173f, 85.7786865f);
- path.lineTo(946.652588f, 265.601807f);
- path.lineTo(656.522644f, 808.39679f);
- path.lineTo(320.097229f, 628.573669f);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kInverseWinding_FillType);
- pathB.moveTo(333.866608f, 623.496155f);
- pathB.lineTo(613.368042f, 100.585754f);
- pathB.cubicTo(613.685303f, 99.9921265f, 614.423767f, 99.7681885f, 615.017395f, 100.085449f);
- pathB.lineTo(932.633057f, 269.854553f);
- pathB.cubicTo(933.226685f, 270.171875f, 933.450623f, 270.910278f, 933.133301f, 271.503906f);
- pathB.lineTo(653.631897f, 794.414307f);
- pathB.cubicTo(653.314636f, 795.007935f, 652.576172f, 795.231934f, 651.982544f, 794.914612f);
- pathB.lineTo(334.366943f, 625.145508f);
- pathB.cubicTo(333.773315f, 624.828247f, 333.549286f, 624.089783f, 333.866608f, 623.496155f);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void skpadindex_de4(skiatest::Reporter* reporter) { // find chase op
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(0, 926);
- path.lineTo(0, 0);
- path.lineTo(1280, 0);
- path.lineTo(1280, 926);
- path.lineTo(0, 926);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kWinding_FillType);
- pathB.moveTo(0, 312);
- pathB.lineTo(8.20486257e-015f, 178);
- pathB.lineTo(49, 178);
- pathB.lineTo(49, 312);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void skpadithya_putr4_blogspot_com551(skiatest::Reporter* reporter) { // calc common
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(205.605804f, 142.334625f);
- path.lineTo(254.665359f, 85.6058044f);
- path.lineTo(311.394196f, 134.665359f);
- path.lineTo(262.334625f, 191.39418f);
- path.lineTo(205.605804f, 142.334625f);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kWinding_FillType);
- pathB.moveTo(283.407959f, 110.462646f);
- pathB.cubicTo(298.864319f, 123.829437f, 300.558258f, 147.195221f, 287.191467f, 162.651581f);
- pathB.lineTo(286.537354f, 163.407959f);
- pathB.cubicTo(273.170563f, 178.864334f, 249.804779f, 180.558258f, 234.348419f, 167.191467f);
- pathB.lineTo(233.592026f, 166.537338f);
- pathB.cubicTo(218.135666f, 153.170547f, 216.441727f, 129.804779f, 229.808517f, 114.348412f);
- pathB.lineTo(230.462646f, 113.592026f);
- pathB.cubicTo(243.829437f, 98.1356659f, 267.195221f, 96.4417267f, 282.651581f, 109.808517f);
- pathB.lineTo(283.407959f, 110.462646f);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void skpadspert_de11(skiatest::Reporter* reporter) { // mark and chase winding
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(-4.4408921e-016f, 682.5f);
- path.lineTo(30.5f, 682.5f);
- path.cubicTo(32.709137f, 682.5f, 34.5f, 680.709167f, 34.5f, 678.5f);
- path.lineTo(34.5f, 486.5f);
- path.cubicTo(34.5f, 484.290863f, 32.709137f, 482.5f, 30.5f, 482.5f);
- path.lineTo(0, 482.5f);
- path.lineTo(-4.4408921e-016f, 682.5f);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kWinding_FillType);
- pathB.moveTo(0, 482);
- pathB.lineTo(35, 482);
- pathB.lineTo(35, 683);
- pathB.lineTo(0, 683);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void skpaiaigames_com870(skiatest::Reporter* reporter) { // cubic/cubic intersect
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(324.071075f, 845.071045f);
- path.cubicTo(324.405151f, 844.737f, 324.715668f, 844.379395f, 325, 844.000977f);
- path.lineTo(325, 842.127197f);
- path.cubicTo(324.571411f, 842.956238f, 324.017761f, 843.710144f, 323.363953f, 844.363953f);
- path.lineTo(324.071075f, 845.071045f);
- path.close();
- path.moveTo(323.363953f, 714.636047f);
- path.lineTo(324.071075f, 713.928955f);
- path.cubicTo(324.405151f, 714.263f, 324.715668f, 714.620605f, 325, 714.999023f);
- path.lineTo(325, 716.872803f);
- path.cubicTo(324.571411f, 716.043762f, 324.017761f, 715.289856f, 323.363953f, 714.636047f);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kWinding_FillType);
- pathB.moveTo(317, 711);
- pathB.cubicTo(322.522858f, 711, 327, 715.477173f, 327, 721);
- pathB.lineTo(327, 838);
- pathB.cubicTo(327, 843.522827f, 322.522858f, 848, 317, 848);
- pathB.lineTo(155, 848);
- pathB.cubicTo(149.477158f, 848, 145, 843.522827f, 145, 838);
- pathB.lineTo(145, 721);
- pathB.cubicTo(145, 715.477173f, 149.477158f, 711, 155, 711);
- pathB.lineTo(317, 711);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void cubicOp92i(skiatest::Reporter* reporter) {
- SkPath path, pathB;
- path.setFillType(SkPath::kWinding_FillType);
- path.moveTo(0, 1);
- path.cubicTo(2, 6, 4, 1, 5, 4);
- path.close();
- pathB.setFillType(SkPath::kWinding_FillType);
- pathB.moveTo(1, 4);
- pathB.cubicTo(4, 5, 1, 0, 6, 2);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void cubicOp93d(skiatest::Reporter* reporter) {
- SkPath path, pathB;
- path.setFillType(SkPath::kWinding_FillType);
- path.moveTo(0, 1);
- path.cubicTo(1, 6, 4, 1, 4, 3);
- path.close();
- pathB.setFillType(SkPath::kWinding_FillType);
- pathB.moveTo(1, 4);
- pathB.cubicTo(3, 4, 1, 0, 6, 1);
- pathB.close();
- testPathOp(reporter, path, pathB, kDifference_PathOp);
-}
-
-static void cubicOp94u(skiatest::Reporter* reporter) {
- SkPath path, pathB;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(0, 3);
- path.cubicTo(2, 3, 5, 0, 5, 3);
- path.close();
- pathB.setFillType(SkPath::kEvenOdd_FillType);
- pathB.moveTo(0, 5);
- pathB.cubicTo(3, 5, 3, 0, 3, 2);
- pathB.close();
- testPathOp(reporter, path, pathB, kUnion_PathOp);
-}
-
-static void skpadbox_lt15(skiatest::Reporter* reporter) {
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(333.292084f, 624.570984f);
- path.lineTo(614.229797f, 98.9735107f);
- path.lineTo(933.457764f, 269.604431f);
- path.lineTo(652.52002f, 795.201904f);
- path.lineTo(333.292084f, 624.570984f);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kWinding_FillType);
- pathB.moveTo(613.368042f, 100.585754f);
- pathB.cubicTo(613.685303f, 99.9921265f, 614.423767f, 99.7681885f, 615.017395f, 100.085449f);
- pathB.lineTo(932.633057f, 269.854553f);
- pathB.cubicTo(933.226685f, 270.171875f, 933.450623f, 270.910278f, 933.133301f, 271.503906f);
- pathB.lineTo(653.631897f, 794.414307f);
- pathB.cubicTo(653.314636f, 795.007935f, 652.576172f, 795.231934f, 651.982544f, 794.914612f);
- pathB.lineTo(334.366943f, 625.145508f);
- pathB.cubicTo(333.773315f, 624.828247f, 333.549286f, 624.089783f, 333.866608f, 623.496155f);
- pathB.lineTo(613.368042f, 100.585754f);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void skpadoption_org196(skiatest::Reporter* reporter) {
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(802, 367);
- path.lineTo(802, 324);
- path.lineTo(956, 324);
- path.lineTo(956, 371);
- path.quadTo(956, 373.071075f, 954.536011f, 374.536011f);
- path.quadTo(953.071045f, 376, 951, 376);
- path.lineTo(811, 376);
- path.cubicTo(806.029419f, 376, 802, 371.970551f, 802, 367);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kInverseWinding_FillType);
- pathB.moveTo(803, 326);
- pathB.lineTo(955, 326);
- pathB.lineTo(955, 370);
- pathB.cubicTo(955, 372.761414f, 952.761414f, 375, 950, 375);
- pathB.lineTo(808, 375);
- pathB.cubicTo(805.238586f, 375, 803, 372.761414f, 803, 370);
- pathB.lineTo(803, 326);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void skpadspert_net23(skiatest::Reporter* reporter) {
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(-2.220446e-018f, 483.5f);
- path.lineTo(0, 482.5f);
- path.lineTo(30.5f, 482.5f);
- path.cubicTo(32.709137f, 482.5f, 34.5f, 484.290863f, 34.5f, 486.5f);
- path.lineTo(34.5f, 678.5f);
- path.cubicTo(34.5f, 680.709167f, 32.709137f, 682.5f, 30.5f, 682.5f);
- path.lineTo(-4.4408921e-016f, 682.5f);
- path.lineTo(-4.41868766e-016f, 681.5f);
- path.lineTo(30.5f, 681.5f);
- path.cubicTo(32.1568565f, 681.5f, 33.5f, 680.15686f, 33.5f, 678.5f);
- path.lineTo(33.5f, 486.5f);
- path.cubicTo(33.5f, 484.84314f, 32.1568565f, 483.5f, 30.5f, 483.5f);
- path.lineTo(-2.220446e-018f, 483.5f);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kWinding_FillType);
- pathB.moveTo(0, 482);
- pathB.lineTo(35, 482);
- pathB.lineTo(35, 683);
- pathB.lineTo(0, 683);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void skpadventistmission_org572(skiatest::Reporter* reporter) {
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(1182.00037f, 926);
- path.cubicTo(1181.08813f, 924.785583f, 1179.63586f, 924, 1178, 924);
- path.lineTo(938, 924);
- path.cubicTo(936.364197f, 924, 934.911865f, 924.785583f, 933.999634f, 926);
- path.lineTo(1182.00037f, 926);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kWinding_FillType);
- pathB.moveTo(934, 924);
- pathB.lineTo(1182, 924);
- pathB.lineTo(1182, 926);
- pathB.lineTo(934, 926);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void skpagentxsites_com55(skiatest::Reporter* reporter) {
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(925, 27);
- path.cubicTo(924.447693f, 27, 924, 27.4477158f, 924, 28);
- path.lineTo(924, 55);
- path.cubicTo(924, 55.5522842f, 924.447693f, 56, 925, 56);
- path.lineTo(1103, 56);
- path.cubicTo(1103.55225f, 56, 1104, 55.5522842f, 1104, 55);
- path.lineTo(1104, 28);
- path.cubicTo(1104, 27.4477158f, 1103.55225f, 27, 1103, 27);
- path.lineTo(925, 27);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kWinding_FillType);
- pathB.moveTo(1103, 27);
- pathB.cubicTo(1104.10461f, 27, 1105, 27.8954315f, 1105, 29);
- pathB.lineTo(1105, 54);
- pathB.cubicTo(1105, 55.1045685f, 1104.10461f, 56, 1103, 56);
- pathB.lineTo(926, 56);
- pathB.cubicTo(924.895447f, 56, 924, 55.1045685f, 924, 54);
- pathB.lineTo(924, 29);
- pathB.cubicTo(924, 27.8954315f, 924.895447f, 27, 926, 27);
- pathB.lineTo(1103, 27);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void skpbakosoft_com10(skiatest::Reporter* reporter) {
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(190, 170);
- path.cubicTo(178.9543f, 170, 170, 178.9543f, 170, 190);
- path.cubicTo(170, 201.0457f, 178.9543f, 210, 190, 210);
- path.lineTo(370, 210);
- path.cubicTo(381.045685f, 210, 390, 201.0457f, 390, 190);
- path.cubicTo(390, 178.9543f, 381.045685f, 170, 370, 170);
- path.lineTo(190, 170);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kWinding_FillType);
- pathB.moveTo(210, 190);
- pathB.quadTo(210, 198.284271f, 204.142136f, 204.142136f);
- pathB.quadTo(198.284271f, 210, 190, 210);
- pathB.quadTo(181.715729f, 210, 175.857864f, 204.142136f);
- pathB.quadTo(170, 198.284271f, 170, 190);
- pathB.quadTo(170, 181.715729f, 175.857864f, 175.857864f);
- pathB.quadTo(181.715729f, 170, 190, 170);
- pathB.quadTo(198.284271f, 170, 204.142136f, 175.857864f);
- pathB.quadTo(210, 181.715729f, 210, 190);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void skpbambootheme_com12(skiatest::Reporter* reporter) {
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(47.8780937f, 58);
- path.lineTo(0, 58);
- path.lineTo(-8.65973959e-015f, 96.9914017f);
- path.quadTo(20.0654926f, 96.6451874f, 34.3553391f, 82.3553391f);
- path.quadTo(44.9466133f, 71.764061f, 47.8780937f, 58);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kEvenOdd_FillType);
- pathB.moveTo(-1, -3);
- pathB.lineTo(-1, -3);
- pathB.cubicTo(26.6142502f, -3, 49, 19.3857498f, 49, 47);
- pathB.lineTo(49, 47);
- pathB.cubicTo(49, 74.6142502f, 26.6142502f, 97, -1, 97);
- pathB.lineTo(-1, 97);
- pathB.cubicTo(-28.6142502f, 97, -51, 74.6142502f, -51, 47);
- pathB.lineTo(-51, 47);
- pathB.cubicTo(-51, 19.3857498f, -28.6142502f, -3, -1, -3);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void skpakmmos_ru100(skiatest::Reporter* reporter) {
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(693.000488f, 926);
- path.cubicTo(692.164734f, 925.37207f, 691.125793f, 925, 690, 925);
- path.lineTo(578, 925);
- path.cubicTo(576.874207f, 925, 575.835266f, 925.37207f, 574.999512f, 926);
- path.lineTo(693.000488f, 926);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kWinding_FillType);
- pathB.moveTo(575, 925);
- pathB.lineTo(693, 925);
- pathB.lineTo(693, 926);
- pathB.lineTo(575, 926);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
+static void skpaaalgarve_org53(skiatest::Reporter* reporter) { // add t cancel
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(-1.24344979e-014f, 348);
+ path.lineTo(258, 348);
+ path.lineTo(258, 322);
+ path.quadTo(258, 317.857849f, 255.072006f, 314.928009f);
+ path.quadTo(252.142136f, 312, 248, 312);
+ path.lineTo(1.77635684e-015f, 312);
+ path.lineTo(-1.24344979e-014f, 348);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kWinding_FillType);
+ pathB.moveTo(0, 312);
+ pathB.lineTo(258, 312);
+ pathB.lineTo(258, 348);
+ pathB.lineTo(0, 348);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void skpabcspark_ca103(skiatest::Reporter* reporter) { // add t cancel
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(1.99840144e-015f, 494);
+ path.lineTo(97, 494);
+ path.quadTo(100.313705f, 494, 102.6576f, 491.657593f);
+ path.quadTo(105, 489.313721f, 105, 486);
+ path.lineTo(105, 425);
+ path.quadTo(105, 421.686279f, 102.6576f, 419.342407f);
+ path.quadTo(100.313705f, 417, 97, 417);
+ path.lineTo(2.22044605e-016f, 417);
+ path.lineTo(1.99840144e-015f, 494);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kWinding_FillType);
+ pathB.moveTo(0, 417);
+ pathB.lineTo(105, 417);
+ pathB.lineTo(105, 494);
+ pathB.lineTo(0, 494);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void skpacesoftech_com47(skiatest::Reporter* reporter) { // partial coincidence
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(670.537415f, 285);
+ path.lineTo(670.387451f, 285);
+ path.lineTo(596.315186f, 314.850708f);
+ path.lineTo(626.19696f, 389);
+ path.lineTo(626.346863f, 389);
+ path.lineTo(700.419189f, 359.149261f);
+ path.lineTo(670.537415f, 285);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kWinding_FillType);
+ pathB.moveTo(663.318542f, 374.100616f);
+ pathB.quadTo(647.950989f, 380.293671f, 632.705322f, 373.806305f);
+ pathB.quadTo(617.459595f, 367.318909f, 611.266541f, 351.951355f);
+ pathB.quadTo(605.073486f, 336.58374f, 611.560913f, 321.338074f);
+ pathB.quadTo(618.048279f, 306.092407f, 633.415833f, 299.899353f);
+ pathB.quadTo(648.783447f, 293.706299f, 664.029114f, 300.193665f);
+ pathB.quadTo(679.27478f, 306.68103f, 685.467834f, 322.048645f);
+ pathB.quadTo(691.660889f, 337.416199f, 685.173523f, 352.661896f);
+ pathB.quadTo(678.686157f, 367.907562f, 663.318542f, 374.100616f);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void skpact_com43(skiatest::Reporter* reporter) { // bridge op
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(1.45716772e-016f, 924.336121f);
+ path.lineTo(-1.11022302e-016f, 920);
+ path.lineTo(6, 920);
+ path.lineTo(6, 926);
+ path.lineTo(1.66389287f, 926);
+ path.quadTo(1.18842196f, 925.674561f, 0.756800175f, 925.243225f);
+ path.quadTo(0.325406998f, 924.811523f, 1.45716772e-016f, 924.336121f);
+ path.close();
+ path.moveTo(1, 921);
+ path.lineTo(5, 921);
+ path.lineTo(5, 925);
+ path.cubicTo(2.79086018f, 925, 1, 923.209167f, 1, 921);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kWinding_FillType);
+ pathB.moveTo(-1, 920);
+ pathB.lineTo(0, 920);
+ pathB.lineTo(3, 927);
+ pathB.lineTo(-1, 927);
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void skpadbox_lt8(skiatest::Reporter* reporter) { // zero span
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(320.097229f, 628.573669f);
+ path.lineTo(610.227173f, 85.7786865f);
+ path.lineTo(946.652588f, 265.601807f);
+ path.lineTo(656.522644f, 808.39679f);
+ path.lineTo(320.097229f, 628.573669f);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kInverseWinding_FillType);
+ pathB.moveTo(333.866608f, 623.496155f);
+ pathB.lineTo(613.368042f, 100.585754f);
+ pathB.cubicTo(613.685303f, 99.9921265f, 614.423767f, 99.7681885f, 615.017395f, 100.085449f);
+ pathB.lineTo(932.633057f, 269.854553f);
+ pathB.cubicTo(933.226685f, 270.171875f, 933.450623f, 270.910278f, 933.133301f, 271.503906f);
+ pathB.lineTo(653.631897f, 794.414307f);
+ pathB.cubicTo(653.314636f, 795.007935f, 652.576172f, 795.231934f, 651.982544f, 794.914612f);
+ pathB.lineTo(334.366943f, 625.145508f);
+ pathB.cubicTo(333.773315f, 624.828247f, 333.549286f, 624.089783f, 333.866608f, 623.496155f);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void skpadindex_de4(skiatest::Reporter* reporter) { // find chase op
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(0, 926);
+ path.lineTo(0, 0);
+ path.lineTo(1280, 0);
+ path.lineTo(1280, 926);
+ path.lineTo(0, 926);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kWinding_FillType);
+ pathB.moveTo(0, 312);
+ pathB.lineTo(8.20486257e-015f, 178);
+ pathB.lineTo(49, 178);
+ pathB.lineTo(49, 312);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void skpadithya_putr4_blogspot_com551(skiatest::Reporter* reporter) { // calc common
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(205.605804f, 142.334625f);
+ path.lineTo(254.665359f, 85.6058044f);
+ path.lineTo(311.394196f, 134.665359f);
+ path.lineTo(262.334625f, 191.39418f);
+ path.lineTo(205.605804f, 142.334625f);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kWinding_FillType);
+ pathB.moveTo(283.407959f, 110.462646f);
+ pathB.cubicTo(298.864319f, 123.829437f, 300.558258f, 147.195221f, 287.191467f, 162.651581f);
+ pathB.lineTo(286.537354f, 163.407959f);
+ pathB.cubicTo(273.170563f, 178.864334f, 249.804779f, 180.558258f, 234.348419f, 167.191467f);
+ pathB.lineTo(233.592026f, 166.537338f);
+ pathB.cubicTo(218.135666f, 153.170547f, 216.441727f, 129.804779f, 229.808517f, 114.348412f);
+ pathB.lineTo(230.462646f, 113.592026f);
+ pathB.cubicTo(243.829437f, 98.1356659f, 267.195221f, 96.4417267f, 282.651581f, 109.808517f);
+ pathB.lineTo(283.407959f, 110.462646f);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void skpadspert_de11(skiatest::Reporter* reporter) { // mark and chase winding
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(-4.4408921e-016f, 682.5f);
+ path.lineTo(30.5f, 682.5f);
+ path.cubicTo(32.709137f, 682.5f, 34.5f, 680.709167f, 34.5f, 678.5f);
+ path.lineTo(34.5f, 486.5f);
+ path.cubicTo(34.5f, 484.290863f, 32.709137f, 482.5f, 30.5f, 482.5f);
+ path.lineTo(0, 482.5f);
+ path.lineTo(-4.4408921e-016f, 682.5f);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kWinding_FillType);
+ pathB.moveTo(0, 482);
+ pathB.lineTo(35, 482);
+ pathB.lineTo(35, 683);
+ pathB.lineTo(0, 683);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void skpaiaigames_com870(skiatest::Reporter* reporter) { // cubic/cubic intersect
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(324.071075f, 845.071045f);
+ path.cubicTo(324.405151f, 844.737f, 324.715668f, 844.379395f, 325, 844.000977f);
+ path.lineTo(325, 842.127197f);
+ path.cubicTo(324.571411f, 842.956238f, 324.017761f, 843.710144f, 323.363953f, 844.363953f);
+ path.lineTo(324.071075f, 845.071045f);
+ path.close();
+ path.moveTo(323.363953f, 714.636047f);
+ path.lineTo(324.071075f, 713.928955f);
+ path.cubicTo(324.405151f, 714.263f, 324.715668f, 714.620605f, 325, 714.999023f);
+ path.lineTo(325, 716.872803f);
+ path.cubicTo(324.571411f, 716.043762f, 324.017761f, 715.289856f, 323.363953f, 714.636047f);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kWinding_FillType);
+ pathB.moveTo(317, 711);
+ pathB.cubicTo(322.522858f, 711, 327, 715.477173f, 327, 721);
+ pathB.lineTo(327, 838);
+ pathB.cubicTo(327, 843.522827f, 322.522858f, 848, 317, 848);
+ pathB.lineTo(155, 848);
+ pathB.cubicTo(149.477158f, 848, 145, 843.522827f, 145, 838);
+ pathB.lineTo(145, 721);
+ pathB.cubicTo(145, 715.477173f, 149.477158f, 711, 155, 711);
+ pathB.lineTo(317, 711);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void cubicOp92i(skiatest::Reporter* reporter) {
+ SkPath path, pathB;
+ path.setFillType(SkPath::kWinding_FillType);
+ path.moveTo(0, 1);
+ path.cubicTo(2, 6, 4, 1, 5, 4);
+ path.close();
+ pathB.setFillType(SkPath::kWinding_FillType);
+ pathB.moveTo(1, 4);
+ pathB.cubicTo(4, 5, 1, 0, 6, 2);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void cubicOp93d(skiatest::Reporter* reporter) {
+ SkPath path, pathB;
+ path.setFillType(SkPath::kWinding_FillType);
+ path.moveTo(0, 1);
+ path.cubicTo(1, 6, 4, 1, 4, 3);
+ path.close();
+ pathB.setFillType(SkPath::kWinding_FillType);
+ pathB.moveTo(1, 4);
+ pathB.cubicTo(3, 4, 1, 0, 6, 1);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kDifference_PathOp);
+}
+
+static void cubicOp94u(skiatest::Reporter* reporter) {
+ SkPath path, pathB;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(0, 3);
+ path.cubicTo(2, 3, 5, 0, 5, 3);
+ path.close();
+ pathB.setFillType(SkPath::kEvenOdd_FillType);
+ pathB.moveTo(0, 5);
+ pathB.cubicTo(3, 5, 3, 0, 3, 2);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kUnion_PathOp);
+}
+
+static void skpadbox_lt15(skiatest::Reporter* reporter) {
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(333.292084f, 624.570984f);
+ path.lineTo(614.229797f, 98.9735107f);
+ path.lineTo(933.457764f, 269.604431f);
+ path.lineTo(652.52002f, 795.201904f);
+ path.lineTo(333.292084f, 624.570984f);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kWinding_FillType);
+ pathB.moveTo(613.368042f, 100.585754f);
+ pathB.cubicTo(613.685303f, 99.9921265f, 614.423767f, 99.7681885f, 615.017395f, 100.085449f);
+ pathB.lineTo(932.633057f, 269.854553f);
+ pathB.cubicTo(933.226685f, 270.171875f, 933.450623f, 270.910278f, 933.133301f, 271.503906f);
+ pathB.lineTo(653.631897f, 794.414307f);
+ pathB.cubicTo(653.314636f, 795.007935f, 652.576172f, 795.231934f, 651.982544f, 794.914612f);
+ pathB.lineTo(334.366943f, 625.145508f);
+ pathB.cubicTo(333.773315f, 624.828247f, 333.549286f, 624.089783f, 333.866608f, 623.496155f);
+ pathB.lineTo(613.368042f, 100.585754f);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void skpadoption_org196(skiatest::Reporter* reporter) {
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(802, 367);
+ path.lineTo(802, 324);
+ path.lineTo(956, 324);
+ path.lineTo(956, 371);
+ path.quadTo(956, 373.071075f, 954.536011f, 374.536011f);
+ path.quadTo(953.071045f, 376, 951, 376);
+ path.lineTo(811, 376);
+ path.cubicTo(806.029419f, 376, 802, 371.970551f, 802, 367);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kInverseWinding_FillType);
+ pathB.moveTo(803, 326);
+ pathB.lineTo(955, 326);
+ pathB.lineTo(955, 370);
+ pathB.cubicTo(955, 372.761414f, 952.761414f, 375, 950, 375);
+ pathB.lineTo(808, 375);
+ pathB.cubicTo(805.238586f, 375, 803, 372.761414f, 803, 370);
+ pathB.lineTo(803, 326);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void skpadspert_net23(skiatest::Reporter* reporter) {
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(-2.220446e-018f, 483.5f);
+ path.lineTo(0, 482.5f);
+ path.lineTo(30.5f, 482.5f);
+ path.cubicTo(32.709137f, 482.5f, 34.5f, 484.290863f, 34.5f, 486.5f);
+ path.lineTo(34.5f, 678.5f);
+ path.cubicTo(34.5f, 680.709167f, 32.709137f, 682.5f, 30.5f, 682.5f);
+ path.lineTo(-4.4408921e-016f, 682.5f);
+ path.lineTo(-4.41868766e-016f, 681.5f);
+ path.lineTo(30.5f, 681.5f);
+ path.cubicTo(32.1568565f, 681.5f, 33.5f, 680.15686f, 33.5f, 678.5f);
+ path.lineTo(33.5f, 486.5f);
+ path.cubicTo(33.5f, 484.84314f, 32.1568565f, 483.5f, 30.5f, 483.5f);
+ path.lineTo(-2.220446e-018f, 483.5f);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kWinding_FillType);
+ pathB.moveTo(0, 482);
+ pathB.lineTo(35, 482);
+ pathB.lineTo(35, 683);
+ pathB.lineTo(0, 683);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void skpadventistmission_org572(skiatest::Reporter* reporter) {
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(1182.00037f, 926);
+ path.cubicTo(1181.08813f, 924.785583f, 1179.63586f, 924, 1178, 924);
+ path.lineTo(938, 924);
+ path.cubicTo(936.364197f, 924, 934.911865f, 924.785583f, 933.999634f, 926);
+ path.lineTo(1182.00037f, 926);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kWinding_FillType);
+ pathB.moveTo(934, 924);
+ pathB.lineTo(1182, 924);
+ pathB.lineTo(1182, 926);
+ pathB.lineTo(934, 926);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void skpagentxsites_com55(skiatest::Reporter* reporter) {
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(925, 27);
+ path.cubicTo(924.447693f, 27, 924, 27.4477158f, 924, 28);
+ path.lineTo(924, 55);
+ path.cubicTo(924, 55.5522842f, 924.447693f, 56, 925, 56);
+ path.lineTo(1103, 56);
+ path.cubicTo(1103.55225f, 56, 1104, 55.5522842f, 1104, 55);
+ path.lineTo(1104, 28);
+ path.cubicTo(1104, 27.4477158f, 1103.55225f, 27, 1103, 27);
+ path.lineTo(925, 27);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kWinding_FillType);
+ pathB.moveTo(1103, 27);
+ pathB.cubicTo(1104.10461f, 27, 1105, 27.8954315f, 1105, 29);
+ pathB.lineTo(1105, 54);
+ pathB.cubicTo(1105, 55.1045685f, 1104.10461f, 56, 1103, 56);
+ pathB.lineTo(926, 56);
+ pathB.cubicTo(924.895447f, 56, 924, 55.1045685f, 924, 54);
+ pathB.lineTo(924, 29);
+ pathB.cubicTo(924, 27.8954315f, 924.895447f, 27, 926, 27);
+ pathB.lineTo(1103, 27);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void skpbakosoft_com10(skiatest::Reporter* reporter) {
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(190, 170);
+ path.cubicTo(178.9543f, 170, 170, 178.9543f, 170, 190);
+ path.cubicTo(170, 201.0457f, 178.9543f, 210, 190, 210);
+ path.lineTo(370, 210);
+ path.cubicTo(381.045685f, 210, 390, 201.0457f, 390, 190);
+ path.cubicTo(390, 178.9543f, 381.045685f, 170, 370, 170);
+ path.lineTo(190, 170);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kWinding_FillType);
+ pathB.moveTo(210, 190);
+ pathB.quadTo(210, 198.284271f, 204.142136f, 204.142136f);
+ pathB.quadTo(198.284271f, 210, 190, 210);
+ pathB.quadTo(181.715729f, 210, 175.857864f, 204.142136f);
+ pathB.quadTo(170, 198.284271f, 170, 190);
+ pathB.quadTo(170, 181.715729f, 175.857864f, 175.857864f);
+ pathB.quadTo(181.715729f, 170, 190, 170);
+ pathB.quadTo(198.284271f, 170, 204.142136f, 175.857864f);
+ pathB.quadTo(210, 181.715729f, 210, 190);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void skpbambootheme_com12(skiatest::Reporter* reporter) {
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(47.8780937f, 58);
+ path.lineTo(0, 58);
+ path.lineTo(-8.65973959e-015f, 96.9914017f);
+ path.quadTo(20.0654926f, 96.6451874f, 34.3553391f, 82.3553391f);
+ path.quadTo(44.9466133f, 71.764061f, 47.8780937f, 58);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kEvenOdd_FillType);
+ pathB.moveTo(-1, -3);
+ pathB.lineTo(-1, -3);
+ pathB.cubicTo(26.6142502f, -3, 49, 19.3857498f, 49, 47);
+ pathB.lineTo(49, 47);
+ pathB.cubicTo(49, 74.6142502f, 26.6142502f, 97, -1, 97);
+ pathB.lineTo(-1, 97);
+ pathB.cubicTo(-28.6142502f, 97, -51, 74.6142502f, -51, 47);
+ pathB.lineTo(-51, 47);
+ pathB.cubicTo(-51, 19.3857498f, -28.6142502f, -3, -1, -3);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void skpakmmos_ru100(skiatest::Reporter* reporter) {
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(693.000488f, 926);
+ path.cubicTo(692.164734f, 925.37207f, 691.125793f, 925, 690, 925);
+ path.lineTo(578, 925);
+ path.cubicTo(576.874207f, 925, 575.835266f, 925.37207f, 574.999512f, 926);
+ path.lineTo(693.000488f, 926);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kWinding_FillType);
+ pathB.moveTo(575, 925);
+ pathB.lineTo(693, 925);
+ pathB.lineTo(693, 926);
+ pathB.lineTo(575, 926);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
#define SKPS_WORKING 0
#if SKPS_WORKING
-static void skpcarpetplanet_ru22(skiatest::Reporter* reporter) {
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(195, 785);
- path.cubicTo(124.307556f, 785, 67, 841.859863f, 67, 912);
- path.lineTo(67, 913);
- path.cubicTo(67, 917.388916f, 67.2243805f, 921.725769f, 67.662384f, 926);
- path.lineTo(322, 926);
- path.lineTo(322, 896.048035f);
- path.cubicTo(314.09201f, 833.437622f, 260.247131f, 785, 195, 785);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kWinding_FillType);
- pathB.moveTo(195, 785);
- pathB.cubicTo(265.140167f, 785, 322, 842.307556f, 322, 913);
- pathB.cubicTo(322, 983.692444f, 265.140167f, 1041, 195, 1041);
- pathB.lineTo(194, 1041);
- pathB.cubicTo(123.85984f, 1041, 67, 983.692444f, 67, 913);
- pathB.cubicTo(67, 842.307556f, 123.85984f, 785, 194, 785);
- pathB.lineTo(195, 785);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void skpcarrot_is24(skiatest::Reporter* reporter) {
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(945, 597);
- path.quadTo(913.93396f, 597, 891.96698f, 618.96698f);
- path.quadTo(870, 640.93396f, 870, 672);
- path.quadTo(870, 703.06604f, 891.96698f, 725.03302f);
- path.quadTo(913.93396f, 747, 945, 747);
- path.quadTo(976.06604f, 747, 998.03302f, 725.03302f);
- path.quadTo(1020, 703.06604f, 1020, 672);
- path.quadTo(1020, 640.93396f, 998.03302f, 618.96698f);
- path.quadTo(976.06604f, 597, 945, 597);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kWinding_FillType);
- pathB.moveTo(945.080994f, 597.161987f);
- pathB.cubicTo(903.659973f, 597.161987f, 870.080994f, 630.73999f, 870.080994f, 672.161987f);
- pathB.cubicTo(870.080994f, 676.096008f, 870.387024f, 679.957031f, 870.971008f, 683.726013f);
- pathB.cubicTo(876.53302f, 719.656006f, 907.593994f, 747.161987f, 945.080994f, 747.161987f);
- pathB.cubicTo(982.567993f, 747.161987f, 1013.62903f, 719.656006f, 1019.19104f, 683.726013f);
- pathB.cubicTo(1019.77502f, 679.955017f, 1020.08099f, 676.094971f, 1020.08099f, 672.161987f);
- pathB.cubicTo(1020.08002f, 630.73999f, 986.502014f, 597.161987f, 945.080994f, 597.161987f);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-#endif
-
-static void skpbangalorenest_com4(skiatest::Reporter* reporter) {
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(0, 926);
- path.lineTo(0, 0);
- path.lineTo(1265, 0);
- path.lineTo(1265, 926);
- path.lineTo(0, 926);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kWinding_FillType);
- pathB.moveTo(0, 290);
- pathB.lineTo(-2.64514972e-014f, 146);
- pathB.lineTo(30, 146);
- pathB.lineTo(30, 290);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void skpbenzoteh_ru152(skiatest::Reporter* reporter) {
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(883, 23);
- path.lineTo(883, 0);
- path.lineTo(1122.5f, 0);
- path.lineTo(1122.5f, 25.2136822f);
- path.quadTo(1122.14441f, 25.9271851f, 1121.53601f, 26.5359993f);
- path.quadTo(1120.07104f, 28, 1118, 28);
- path.lineTo(888, 28);
- path.quadTo(885.928955f, 28, 884.463989f, 26.5359993f);
- path.quadTo(883, 25.0710678f, 883, 23);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kWinding_FillType);
- pathB.moveTo(883, 0);
- pathB.lineTo(1123, 0);
- pathB.lineTo(1123, 23);
- pathB.quadTo(1123, 25.0710678f, 1121.53601f, 26.5359993f);
- pathB.quadTo(1120.07104f, 28, 1118, 28);
- pathB.lineTo(888, 28);
- pathB.quadTo(885.928955f, 28, 884.463989f, 26.5359993f);
- pathB.quadTo(883, 25.0710678f, 883, 23);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void skpbestred_ru37(skiatest::Reporter* reporter) {
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(883, 23);
- path.lineTo(883, 0);
- path.lineTo(1122.5f, 0);
- path.lineTo(1122.5f, 25.2136822f);
- path.quadTo(1122.14441f, 25.9271851f, 1121.53601f, 26.5359993f);
- path.quadTo(1120.07104f, 28, 1118, 28);
- path.lineTo(888, 28);
- path.quadTo(885.928955f, 28, 884.463989f, 26.5359993f);
- path.quadTo(883, 25.0710678f, 883, 23);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kWinding_FillType);
- pathB.moveTo(883, 0);
- pathB.lineTo(1123, 0);
- pathB.lineTo(1123, 23);
- pathB.quadTo(1123, 25.0710678f, 1121.53601f, 26.5359993f);
- pathB.quadTo(1120.07104f, 28, 1118, 28);
- pathB.lineTo(888, 28);
- pathB.quadTo(885.928955f, 28, 884.463989f, 26.5359993f);
- pathB.quadTo(883, 25.0710678f, 883, 23);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void skpbingoentertainment_net189(skiatest::Reporter* reporter) {
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(896, 745.38678f);
- path.lineTo(896, 873.38678f);
- path.lineTo(922.567993f, 876.683716f);
- path.lineTo(922.567993f, 748.683716f);
- path.lineTo(896, 745.38678f);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kWinding_FillType);
- pathB.moveTo(899.200928f, 745.783997f);
- pathB.cubicTo(897.119385f, 745.525696f, 895.432007f, 752.031982f, 895.432007f, 760.316284f);
- pathB.lineTo(895.432007f, 858.316284f);
- pathB.cubicTo(895.432007f, 866.600586f, 897.119385f, 873.525696f, 899.200928f, 873.783997f);
- pathB.lineTo(918.799133f, 876.216003f);
- pathB.cubicTo(920.880615f, 876.474304f, 922.567993f, 869.968018f, 922.567993f, 861.683716f);
- pathB.lineTo(922.567993f, 763.683716f);
- pathB.cubicTo(922.567993f, 755.399414f, 920.880615f, 748.474304f, 918.799133f, 748.216003f);
- pathB.lineTo(899.200928f, 745.783997f);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void skpcarrefour_ro62(skiatest::Reporter* reporter) {
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(1104, 453);
- path.lineTo(399, 453);
- path.lineTo(399, 657);
- path.cubicTo(399, 661.970581f, 403.029449f, 666, 408, 666);
- path.lineTo(1095, 666);
- path.cubicTo(1099.97058f, 666, 1104, 661.970581f, 1104, 657);
- path.lineTo(1104, 453);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kInverseWinding_FillType);
- pathB.moveTo(400, 453);
- pathB.lineTo(1103, 453);
- pathB.lineTo(1103, 666);
- pathB.lineTo(406, 666);
- pathB.cubicTo(402.686279f, 666, 400, 663.313721f, 400, 660);
- pathB.lineTo(400, 453);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void skpcaffelavazzait_com_ua21(skiatest::Reporter* reporter) {
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(883, 23);
- path.lineTo(883, 0);
- path.lineTo(1122.5f, 0);
- path.lineTo(1122.5f, 25.2136822f);
- path.quadTo(1122.14441f, 25.9271851f, 1121.53601f, 26.5359993f);
- path.quadTo(1120.07104f, 28, 1118, 28);
- path.lineTo(888, 28);
- path.quadTo(885.928955f, 28, 884.463989f, 26.5359993f);
- path.quadTo(883, 25.0710678f, 883, 23);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kWinding_FillType);
- pathB.moveTo(883, 0);
- pathB.lineTo(1123, 0);
- pathB.lineTo(1123, 23);
- pathB.quadTo(1123, 25.0710678f, 1121.53601f, 26.5359993f);
- pathB.quadTo(1120.07104f, 28, 1118, 28);
- pathB.lineTo(888, 28);
- pathB.quadTo(885.928955f, 28, 884.463989f, 26.5359993f);
- pathB.quadTo(883, 25.0710678f, 883, 23);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void skpcamcorder_kz21(skiatest::Reporter* reporter) {
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(883, 23);
- path.lineTo(883, 0);
- path.lineTo(1122.5f, 0);
- path.lineTo(1122.5f, 25.2136822f);
- path.quadTo(1122.14441f, 25.9271851f, 1121.53601f, 26.5359993f);
- path.quadTo(1120.07104f, 28, 1118, 28);
- path.lineTo(888, 28);
- path.quadTo(885.928955f, 28, 884.463989f, 26.5359993f);
- path.quadTo(883, 25.0710678f, 883, 23);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kWinding_FillType);
- pathB.moveTo(883, 0);
- pathB.lineTo(1123, 0);
- pathB.lineTo(1123, 23);
- pathB.quadTo(1123, 25.0710678f, 1121.53601f, 26.5359993f);
- pathB.quadTo(1120.07104f, 28, 1118, 28);
- pathB.lineTo(888, 28);
- pathB.quadTo(885.928955f, 28, 884.463989f, 26.5359993f);
- pathB.quadTo(883, 25.0710678f, 883, 23);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void skpcavablar_net563(skiatest::Reporter* reporter) {
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(160.000488f, 918);
- path.cubicTo(159.164749f, 917.37207f, 158.125824f, 917, 157, 917);
- path.lineTo(94, 917);
- path.cubicTo(92.874176f, 917, 91.8352661f, 917.37207f, 90.9995193f, 918);
- path.lineTo(160.000488f, 918);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kWinding_FillType);
- pathB.moveTo(91, 917);
- pathB.lineTo(160, 917);
- pathB.lineTo(160, 918);
- pathB.lineTo(91, 918);
- pathB.close();
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void skpinsomnia_gr72(skiatest::Reporter* reporter) {
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(1138, 231);
- path.lineTo(1137, 243.625748f);
- path.lineTo(1137, 926);
- path.lineTo(1139, 926);
- path.lineTo(1139, 231);
- path.lineTo(1138, 231);
- path.close();
- SkPath pathB;
- pathB.setFillType(SkPath::kWinding_FillType);
- pathB.moveTo(1139, 231);
- pathB.lineTo(1138, 231);
- pathB.lineTo(633, 6101);
- pathB.lineTo(1139, 6607);
- testPathOp(reporter, path, pathB, kIntersect_PathOp);
-}
-
-static void cubicOp95u(skiatest::Reporter* reporter) {
- SkPath path, pathB;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(0, 2);
- path.cubicTo(2, 3, 5, 1, 3, 2);
- path.close();
- pathB.setFillType(SkPath::kEvenOdd_FillType);
- pathB.moveTo(1, 5);
- pathB.cubicTo(2, 3, 2, 0, 3, 2);
- pathB.close();
- testPathOp(reporter, path, pathB, kUnion_PathOp);
-}
-
-static void cubicOp96d(skiatest::Reporter* reporter) {
- SkPath path, pathB;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(1, 6);
- path.cubicTo(0, 3, 6, 3, 5, 0);
- path.close();
- pathB.setFillType(SkPath::kEvenOdd_FillType);
- pathB.moveTo(3, 6);
- pathB.cubicTo(0, 5, 6, 1, 3, 0);
- pathB.close();
- testPathOp(reporter, path, pathB, kDifference_PathOp);
+static void skpcarpetplanet_ru22(skiatest::Reporter* reporter) {
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(195, 785);
+ path.cubicTo(124.307556f, 785, 67, 841.859863f, 67, 912);
+ path.lineTo(67, 913);
+ path.cubicTo(67, 917.388916f, 67.2243805f, 921.725769f, 67.662384f, 926);
+ path.lineTo(322, 926);
+ path.lineTo(322, 896.048035f);
+ path.cubicTo(314.09201f, 833.437622f, 260.247131f, 785, 195, 785);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kWinding_FillType);
+ pathB.moveTo(195, 785);
+ pathB.cubicTo(265.140167f, 785, 322, 842.307556f, 322, 913);
+ pathB.cubicTo(322, 983.692444f, 265.140167f, 1041, 195, 1041);
+ pathB.lineTo(194, 1041);
+ pathB.cubicTo(123.85984f, 1041, 67, 983.692444f, 67, 913);
+ pathB.cubicTo(67, 842.307556f, 123.85984f, 785, 194, 785);
+ pathB.lineTo(195, 785);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void skpcarrot_is24(skiatest::Reporter* reporter) {
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(945, 597);
+ path.quadTo(913.93396f, 597, 891.96698f, 618.96698f);
+ path.quadTo(870, 640.93396f, 870, 672);
+ path.quadTo(870, 703.06604f, 891.96698f, 725.03302f);
+ path.quadTo(913.93396f, 747, 945, 747);
+ path.quadTo(976.06604f, 747, 998.03302f, 725.03302f);
+ path.quadTo(1020, 703.06604f, 1020, 672);
+ path.quadTo(1020, 640.93396f, 998.03302f, 618.96698f);
+ path.quadTo(976.06604f, 597, 945, 597);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kWinding_FillType);
+ pathB.moveTo(945.080994f, 597.161987f);
+ pathB.cubicTo(903.659973f, 597.161987f, 870.080994f, 630.73999f, 870.080994f, 672.161987f);
+ pathB.cubicTo(870.080994f, 676.096008f, 870.387024f, 679.957031f, 870.971008f, 683.726013f);
+ pathB.cubicTo(876.53302f, 719.656006f, 907.593994f, 747.161987f, 945.080994f, 747.161987f);
+ pathB.cubicTo(982.567993f, 747.161987f, 1013.62903f, 719.656006f, 1019.19104f, 683.726013f);
+ pathB.cubicTo(1019.77502f, 679.955017f, 1020.08099f, 676.094971f, 1020.08099f, 672.161987f);
+ pathB.cubicTo(1020.08002f, 630.73999f, 986.502014f, 597.161987f, 945.080994f, 597.161987f);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+#endif
+
+static void skpbangalorenest_com4(skiatest::Reporter* reporter) {
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(0, 926);
+ path.lineTo(0, 0);
+ path.lineTo(1265, 0);
+ path.lineTo(1265, 926);
+ path.lineTo(0, 926);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kWinding_FillType);
+ pathB.moveTo(0, 290);
+ pathB.lineTo(-2.64514972e-014f, 146);
+ pathB.lineTo(30, 146);
+ pathB.lineTo(30, 290);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void skpbenzoteh_ru152(skiatest::Reporter* reporter) {
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(883, 23);
+ path.lineTo(883, 0);
+ path.lineTo(1122.5f, 0);
+ path.lineTo(1122.5f, 25.2136822f);
+ path.quadTo(1122.14441f, 25.9271851f, 1121.53601f, 26.5359993f);
+ path.quadTo(1120.07104f, 28, 1118, 28);
+ path.lineTo(888, 28);
+ path.quadTo(885.928955f, 28, 884.463989f, 26.5359993f);
+ path.quadTo(883, 25.0710678f, 883, 23);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kWinding_FillType);
+ pathB.moveTo(883, 0);
+ pathB.lineTo(1123, 0);
+ pathB.lineTo(1123, 23);
+ pathB.quadTo(1123, 25.0710678f, 1121.53601f, 26.5359993f);
+ pathB.quadTo(1120.07104f, 28, 1118, 28);
+ pathB.lineTo(888, 28);
+ pathB.quadTo(885.928955f, 28, 884.463989f, 26.5359993f);
+ pathB.quadTo(883, 25.0710678f, 883, 23);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void skpbestred_ru37(skiatest::Reporter* reporter) {
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(883, 23);
+ path.lineTo(883, 0);
+ path.lineTo(1122.5f, 0);
+ path.lineTo(1122.5f, 25.2136822f);
+ path.quadTo(1122.14441f, 25.9271851f, 1121.53601f, 26.5359993f);
+ path.quadTo(1120.07104f, 28, 1118, 28);
+ path.lineTo(888, 28);
+ path.quadTo(885.928955f, 28, 884.463989f, 26.5359993f);
+ path.quadTo(883, 25.0710678f, 883, 23);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kWinding_FillType);
+ pathB.moveTo(883, 0);
+ pathB.lineTo(1123, 0);
+ pathB.lineTo(1123, 23);
+ pathB.quadTo(1123, 25.0710678f, 1121.53601f, 26.5359993f);
+ pathB.quadTo(1120.07104f, 28, 1118, 28);
+ pathB.lineTo(888, 28);
+ pathB.quadTo(885.928955f, 28, 884.463989f, 26.5359993f);
+ pathB.quadTo(883, 25.0710678f, 883, 23);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void skpbingoentertainment_net189(skiatest::Reporter* reporter) {
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(896, 745.38678f);
+ path.lineTo(896, 873.38678f);
+ path.lineTo(922.567993f, 876.683716f);
+ path.lineTo(922.567993f, 748.683716f);
+ path.lineTo(896, 745.38678f);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kWinding_FillType);
+ pathB.moveTo(899.200928f, 745.783997f);
+ pathB.cubicTo(897.119385f, 745.525696f, 895.432007f, 752.031982f, 895.432007f, 760.316284f);
+ pathB.lineTo(895.432007f, 858.316284f);
+ pathB.cubicTo(895.432007f, 866.600586f, 897.119385f, 873.525696f, 899.200928f, 873.783997f);
+ pathB.lineTo(918.799133f, 876.216003f);
+ pathB.cubicTo(920.880615f, 876.474304f, 922.567993f, 869.968018f, 922.567993f, 861.683716f);
+ pathB.lineTo(922.567993f, 763.683716f);
+ pathB.cubicTo(922.567993f, 755.399414f, 920.880615f, 748.474304f, 918.799133f, 748.216003f);
+ pathB.lineTo(899.200928f, 745.783997f);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void skpcarrefour_ro62(skiatest::Reporter* reporter) {
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(1104, 453);
+ path.lineTo(399, 453);
+ path.lineTo(399, 657);
+ path.cubicTo(399, 661.970581f, 403.029449f, 666, 408, 666);
+ path.lineTo(1095, 666);
+ path.cubicTo(1099.97058f, 666, 1104, 661.970581f, 1104, 657);
+ path.lineTo(1104, 453);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kInverseWinding_FillType);
+ pathB.moveTo(400, 453);
+ pathB.lineTo(1103, 453);
+ pathB.lineTo(1103, 666);
+ pathB.lineTo(406, 666);
+ pathB.cubicTo(402.686279f, 666, 400, 663.313721f, 400, 660);
+ pathB.lineTo(400, 453);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void skpcaffelavazzait_com_ua21(skiatest::Reporter* reporter) {
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(883, 23);
+ path.lineTo(883, 0);
+ path.lineTo(1122.5f, 0);
+ path.lineTo(1122.5f, 25.2136822f);
+ path.quadTo(1122.14441f, 25.9271851f, 1121.53601f, 26.5359993f);
+ path.quadTo(1120.07104f, 28, 1118, 28);
+ path.lineTo(888, 28);
+ path.quadTo(885.928955f, 28, 884.463989f, 26.5359993f);
+ path.quadTo(883, 25.0710678f, 883, 23);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kWinding_FillType);
+ pathB.moveTo(883, 0);
+ pathB.lineTo(1123, 0);
+ pathB.lineTo(1123, 23);
+ pathB.quadTo(1123, 25.0710678f, 1121.53601f, 26.5359993f);
+ pathB.quadTo(1120.07104f, 28, 1118, 28);
+ pathB.lineTo(888, 28);
+ pathB.quadTo(885.928955f, 28, 884.463989f, 26.5359993f);
+ pathB.quadTo(883, 25.0710678f, 883, 23);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void skpcamcorder_kz21(skiatest::Reporter* reporter) {
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(883, 23);
+ path.lineTo(883, 0);
+ path.lineTo(1122.5f, 0);
+ path.lineTo(1122.5f, 25.2136822f);
+ path.quadTo(1122.14441f, 25.9271851f, 1121.53601f, 26.5359993f);
+ path.quadTo(1120.07104f, 28, 1118, 28);
+ path.lineTo(888, 28);
+ path.quadTo(885.928955f, 28, 884.463989f, 26.5359993f);
+ path.quadTo(883, 25.0710678f, 883, 23);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kWinding_FillType);
+ pathB.moveTo(883, 0);
+ pathB.lineTo(1123, 0);
+ pathB.lineTo(1123, 23);
+ pathB.quadTo(1123, 25.0710678f, 1121.53601f, 26.5359993f);
+ pathB.quadTo(1120.07104f, 28, 1118, 28);
+ pathB.lineTo(888, 28);
+ pathB.quadTo(885.928955f, 28, 884.463989f, 26.5359993f);
+ pathB.quadTo(883, 25.0710678f, 883, 23);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void skpcavablar_net563(skiatest::Reporter* reporter) {
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(160.000488f, 918);
+ path.cubicTo(159.164749f, 917.37207f, 158.125824f, 917, 157, 917);
+ path.lineTo(94, 917);
+ path.cubicTo(92.874176f, 917, 91.8352661f, 917.37207f, 90.9995193f, 918);
+ path.lineTo(160.000488f, 918);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kWinding_FillType);
+ pathB.moveTo(91, 917);
+ pathB.lineTo(160, 917);
+ pathB.lineTo(160, 918);
+ pathB.lineTo(91, 918);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void skpinsomnia_gr72(skiatest::Reporter* reporter) {
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(1138, 231);
+ path.lineTo(1137, 243.625748f);
+ path.lineTo(1137, 926);
+ path.lineTo(1139, 926);
+ path.lineTo(1139, 231);
+ path.lineTo(1138, 231);
+ path.close();
+ SkPath pathB;
+ pathB.setFillType(SkPath::kWinding_FillType);
+ pathB.moveTo(1139, 231);
+ pathB.lineTo(1138, 231);
+ pathB.lineTo(633, 6101);
+ pathB.lineTo(1139, 6607);
+ testPathOp(reporter, path, pathB, kIntersect_PathOp);
+}
+
+static void cubicOp95u(skiatest::Reporter* reporter) {
+ SkPath path, pathB;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(0, 2);
+ path.cubicTo(2, 3, 5, 1, 3, 2);
+ path.close();
+ pathB.setFillType(SkPath::kEvenOdd_FillType);
+ pathB.moveTo(1, 5);
+ pathB.cubicTo(2, 3, 2, 0, 3, 2);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kUnion_PathOp);
+}
+
+static void cubicOp96d(skiatest::Reporter* reporter) {
+ SkPath path, pathB;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(1, 6);
+ path.cubicTo(0, 3, 6, 3, 5, 0);
+ path.close();
+ pathB.setFillType(SkPath::kEvenOdd_FillType);
+ pathB.moveTo(3, 6);
+ pathB.cubicTo(0, 5, 6, 1, 3, 0);
+ pathB.close();
+ testPathOp(reporter, path, pathB, kDifference_PathOp);
}
static void (*firstTest)(skiatest::Reporter* ) = 0;
diff --git a/tests/PathOpsQuadIntersectionTest.cpp b/tests/PathOpsQuadIntersectionTest.cpp
index 5d315b211d..07d2dac854 100644
--- a/tests/PathOpsQuadIntersectionTest.cpp
+++ b/tests/PathOpsQuadIntersectionTest.cpp
@@ -53,13 +53,13 @@ static void standardTestCases(skiatest::Reporter* reporter) {
}
static const SkDQuad testSet[] = {
-{{{2.9999997378517067, 1.9737872594345709}, {2.9999997432230918, 1.9739647181863822}, {1.2414155459263587e-163, 5.2957833941332142e-315}}},
-{{{2.9999047485265304, 1.9739164225694723}, {3.0000947268526112, 1.9738379076623633}, {0.61149411077591886, 0.0028382324376270418}}},
-
- {{{2.9999996843656502, 1.9721416019045801}, {2.9999997725237835, 1.9749798343422071},
- {5.3039068214821359e-315, 8.9546185262775165e-307}}},
- {{{2.9984791443874976, 1.974505741312242}, {2.9999992702127476, 1.9738772171479178},
- {3.0015187977319759, 1.9732495027303418}}},
+{{{2.9999997378517067, 1.9737872594345709}, {2.9999997432230918, 1.9739647181863822}, {1.2414155459263587e-163, 5.2957833941332142e-315}}},
+{{{2.9999047485265304, 1.9739164225694723}, {3.0000947268526112, 1.9738379076623633}, {0.61149411077591886, 0.0028382324376270418}}},
+
+ {{{2.9999996843656502, 1.9721416019045801}, {2.9999997725237835, 1.9749798343422071},
+ {5.3039068214821359e-315, 8.9546185262775165e-307}}},
+ {{{2.9984791443874976, 1.974505741312242}, {2.9999992702127476, 1.9738772171479178},
+ {3.0015187977319759, 1.9732495027303418}}},
{{{0.647069409,2.97691634}, {0.946860918,3.17625612}, {1.46875407,2.65105457}}},
{{{0,1}, {0.723699095,2.82756208}, {1.08907197,2.97497449}}},
diff --git a/tests/PathOpsSimplifyTest.cpp b/tests/PathOpsSimplifyTest.cpp
index 0198dec6be..4205a7b3cb 100644
--- a/tests/PathOpsSimplifyTest.cpp
+++ b/tests/PathOpsSimplifyTest.cpp
@@ -3905,17 +3905,17 @@ static void testQuad8(skiatest::Reporter* reporter) {
testSimplify(reporter, path);
}
-static void testTriangles4x(skiatest::Reporter* reporter) {
- SkPath path;
- path.setFillType(SkPath::kEvenOdd_FillType);
- path.moveTo(0, 0);
- path.quadTo(2, 0, 0, 3);
- path.lineTo(2, 3);
- path.close();
- path.moveTo(0, 0);
- path.lineTo(0, 1);
- path.quadTo(3, 2, 2, 3);
- path.close();
+static void testTriangles4x(skiatest::Reporter* reporter) {
+ SkPath path;
+ path.setFillType(SkPath::kEvenOdd_FillType);
+ path.moveTo(0, 0);
+ path.quadTo(2, 0, 0, 3);
+ path.lineTo(2, 3);
+ path.close();
+ path.moveTo(0, 0);
+ path.lineTo(0, 1);
+ path.quadTo(3, 2, 2, 3);
+ path.close();
testSimplify(reporter, path);
}
diff --git a/tests/PathOpsSkpTest.cpp b/tests/PathOpsSkpTest.cpp
index 75c206053a..b0feff7ef1 100755
--- a/tests/PathOpsSkpTest.cpp
+++ b/tests/PathOpsSkpTest.cpp
@@ -700,4 +700,3 @@ static void PathOpsSkpTest(skiatest::Reporter* reporter) {
#include "TestClassDef.h"
DEFINE_TESTCLASS_SHORT(PathOpsSkpTest)
-