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

Side by Side Diff: tests/PathOpsIssue3651.cpp

Issue 1096923003: working on initial winding for cubics (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « tests/PathOpsExtendedTest.cpp ('k') | tests/PathOpsOpCubicThreadedTest.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2014 Google Inc. 2 * Copyright 2014 Google Inc.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 #include "PathOpsExtendedTest.h" 7 #include "PathOpsExtendedTest.h"
8 #include "PathOpsTestCommon.h" 8 #include "PathOpsTestCommon.h"
9 9
10 #define TEST(name) { name, #name } 10 #define TEST(name) { name, #name }
(...skipping 1091 matching lines...) Expand 10 before | Expand all | Expand 10 after
1102 SkPath pathB = path4(); 1102 SkPath pathB = path4();
1103 testPathOp(reporter, path, pathB, SkPathOp::kUnion_SkPathOp, filename); 1103 testPathOp(reporter, path, pathB, SkPathOp::kUnion_SkPathOp, filename);
1104 } 1104 }
1105 1105
1106 static void issue3651_3(skiatest::Reporter* reporter, const char* filename) { 1106 static void issue3651_3(skiatest::Reporter* reporter, const char* filename) {
1107 SkPath path = path5(); 1107 SkPath path = path5();
1108 SkPath pathB = path6(); 1108 SkPath pathB = path6();
1109 testPathOp(reporter, path, pathB, SkPathOp::kUnion_SkPathOp, filename); 1109 testPathOp(reporter, path, pathB, SkPathOp::kUnion_SkPathOp, filename);
1110 } 1110 }
1111 1111
1112 static void issue3651_4(skiatest::Reporter* reporter, const char* filename) {
1113 SkPath path;
1114 path.moveTo(SkBits2Float(0x42033333), SkBits2Float(0x43346666)); // 32.8f, 180. 4f
1115 path.lineTo(SkBits2Float(0x42033333), SkBits2Float(0x43346666)); // 32.8f, 180. 4f
1116 path.cubicTo(SkBits2Float(0x4205eeef), SkBits2Float(0x43346666), SkBits2Float(0x 4208aaab), SkBits2Float(0x4334780f), SkBits2Float(0x420b6666), SkBits2Float(0x43 346666)); // 33.4833f, 180.4f, 34.1667f, 180.469f, 34.85f, 180.4f
1117 path.cubicTo(SkBits2Float(0x420e2222), SkBits2Float(0x433454be), SkBits2Float(0x 4210ddde), SkBits2Float(0x43340d56), SkBits2Float(0x4213999a), SkBits2Float(0x43 33fc72)); // 35.5333f, 180.331f, 36.2167f, 180.052f, 36.9f, 179.986f
1118 path.cubicTo(SkBits2Float(0x42165555), SkBits2Float(0x4333eb8e), SkBits2Float(0x 42191111), SkBits2Float(0x4333fbf4), SkBits2Float(0x421bcccd), SkBits2Float(0x43 34010f)); // 37.5833f, 179.92f, 38.2667f, 179.984f, 38.95f, 180.004f
1119 path.cubicTo(SkBits2Float(0x421e8889), SkBits2Float(0x4334062b), SkBits2Float(0x 42214444), SkBits2Float(0x43341213), SkBits2Float(0x42240000), SkBits2Float(0x43 341b17)); // 39.6333f, 180.024f, 40.3167f, 180.071f, 41, 180.106f
1120 path.cubicTo(SkBits2Float(0x4226bbbc), SkBits2Float(0x4334241b), SkBits2Float(0x 42297777), SkBits2Float(0x4334339e), SkBits2Float(0x422c3333), SkBits2Float(0x43 343728)); // 41.6833f, 180.141f, 42.3667f, 180.202f, 43.05f, 180.215f
1121 path.cubicTo(SkBits2Float(0x422eeeef), SkBits2Float(0x43343ab2), SkBits2Float(0x 4231aaab), SkBits2Float(0x4334337f), SkBits2Float(0x42346666), SkBits2Float(0x43 343054)); // 43.7333f, 180.229f, 44.4167f, 180.201f, 45.1f, 180.189f
1122 path.cubicTo(SkBits2Float(0x42372222), SkBits2Float(0x43342d28), SkBits2Float(0x 4239ddde), SkBits2Float(0x43342281), SkBits2Float(0x423c999a), SkBits2Float(0x43 342423)); // 45.7833f, 180.176f, 46.4667f, 180.135f, 47.15f, 180.141f
1123 path.cubicTo(SkBits2Float(0x423f5555), SkBits2Float(0x433425c5), SkBits2Float(0x 42421111), SkBits2Float(0x43343381), SkBits2Float(0x4244cccd), SkBits2Float(0x43 343a1f)); // 47.8333f, 180.148f, 48.5167f, 180.201f, 49.2f, 180.227f
1124 path.cubicTo(SkBits2Float(0x42478889), SkBits2Float(0x433440be), SkBits2Float(0x 424a4444), SkBits2Float(0x43344d5d), SkBits2Float(0x424d0000), SkBits2Float(0x43 344bdb)); // 49.8833f, 180.253f, 50.5667f, 180.302f, 51.25f, 180.296f
1125 path.cubicTo(SkBits2Float(0x424fbbbc), SkBits2Float(0x43344a59), SkBits2Float(0x 42527777), SkBits2Float(0x43342ca7), SkBits2Float(0x42553333), SkBits2Float(0x43 343113)); // 51.9333f, 180.29f, 52.6167f, 180.174f, 53.3f, 180.192f
1126 path.cubicTo(SkBits2Float(0x4257eeef), SkBits2Float(0x43343580), SkBits2Float(0x 425aaaab), SkBits2Float(0x4334654b), SkBits2Float(0x425d6666), SkBits2Float(0x43 346666)); // 53.9833f, 180.209f, 54.6667f, 180.396f, 55.35f, 180.4f
1127 path.cubicTo(SkBits2Float(0x42602222), SkBits2Float(0x43346782), SkBits2Float(0x 4262ddde), SkBits2Float(0x43343ee4), SkBits2Float(0x4265999a), SkBits2Float(0x43 3437ba)); // 56.0333f, 180.404f, 56.7167f, 180.246f, 57.4f, 180.218f
1128 path.cubicTo(SkBits2Float(0x42685555), SkBits2Float(0x4334308f), SkBits2Float(0x 426b1111), SkBits2Float(0x43343ce3), SkBits2Float(0x426dcccd), SkBits2Float(0x43 343b69)); // 58.0833f, 180.19f, 58.7667f, 180.238f, 59.45f, 180.232f
1129 path.cubicTo(SkBits2Float(0x42708889), SkBits2Float(0x433439ef), SkBits2Float(0x 42734444), SkBits2Float(0x433437d8), SkBits2Float(0x42760000), SkBits2Float(0x43 342edc)); // 60.1333f, 180.226f, 60.8167f, 180.218f, 61.5f, 180.183f
1130 path.cubicTo(SkBits2Float(0x4278bbbc), SkBits2Float(0x433425df), SkBits2Float(0x 427b7777), SkBits2Float(0x43340d4f), SkBits2Float(0x427e3333), SkBits2Float(0x43 34057e)); // 62.1833f, 180.148f, 62.8667f, 180.052f, 63.55f, 180.021f
1131 path.cubicTo(SkBits2Float(0x42807777), SkBits2Float(0x4333fdad), SkBits2Float(0x 4281d555), SkBits2Float(0x4333fb55), SkBits2Float(0x42833333), SkBits2Float(0x43 33fff3)); // 64.2333f, 179.991f, 64.9167f, 179.982f, 65.6f, 180
1132 path.cubicTo(SkBits2Float(0x42849111), SkBits2Float(0x43340492), SkBits2Float(0x 4285eeef), SkBits2Float(0x43341020), SkBits2Float(0x42874ccd), SkBits2Float(0x43 342133)); // 66.2833f, 180.018f, 66.9667f, 180.063f, 67.65f, 180.13f
1133 path.cubicTo(SkBits2Float(0x4288aaab), SkBits2Float(0x43343246), SkBits2Float(0x 428a0889), SkBits2Float(0x43345ade), SkBits2Float(0x428b6666), SkBits2Float(0x43 346666)); // 68.3333f, 180.196f, 69.0167f, 180.355f, 69.7f, 180.4f
1134 path.cubicTo(SkBits2Float(0x428cc444), SkBits2Float(0x433471ef), SkBits2Float(0x 428e2222), SkBits2Float(0x433467af), SkBits2Float(0x428f8000), SkBits2Float(0x43 346666)); // 70.3833f, 180.445f, 71.0667f, 180.405f, 71.75f, 180.4f
1135 path.cubicTo(SkBits2Float(0x4290ddde), SkBits2Float(0x4334651e), SkBits2Float(0x 42923bbc), SkBits2Float(0x43346442), SkBits2Float(0x4293999a), SkBits2Float(0x43 345eb2)); // 72.4333f, 180.395f, 73.1167f, 180.392f, 73.8f, 180.37f
1136 path.cubicTo(SkBits2Float(0x4294f777), SkBits2Float(0x43345922), SkBits2Float(0x 42965555), SkBits2Float(0x43344bb4), SkBits2Float(0x4297b333), SkBits2Float(0x43 344506)); // 74.4833f, 180.348f, 75.1667f, 180.296f, 75.85f, 180.27f
1137 path.cubicTo(SkBits2Float(0x42991111), SkBits2Float(0x43343e58), SkBits2Float(0x 429a6eef), SkBits2Float(0x433438a6), SkBits2Float(0x429bcccd), SkBits2Float(0x43 34369e)); // 76.5333f, 180.244f, 77.2167f, 180.221f, 77.9f, 180.213f
1138 path.cubicTo(SkBits2Float(0x429d2aab), SkBits2Float(0x43343496), SkBits2Float(0x 429e8889), SkBits2Float(0x43343fb3), SkBits2Float(0x429fe666), SkBits2Float(0x43 3438d5)); // 78.5833f, 180.205f, 79.2667f, 180.249f, 79.95f, 180.222f
1139 path.cubicTo(SkBits2Float(0x42a14444), SkBits2Float(0x433431f8), SkBits2Float(0x 42a2a222), SkBits2Float(0x433411e5), SkBits2Float(0x42a40000), SkBits2Float(0x43 340d6e)); // 80.6333f, 180.195f, 81.3167f, 180.07f, 82, 180.052f
1140 path.cubicTo(SkBits2Float(0x42a55dde), SkBits2Float(0x433408f8), SkBits2Float(0x 42a6bbbc), SkBits2Float(0x43341ae2), SkBits2Float(0x42a8199a), SkBits2Float(0x43 341e0e)); // 82.6833f, 180.035f, 83.3667f, 180.105f, 84.05f, 180.117f
1141 path.cubicTo(SkBits2Float(0x42a97777), SkBits2Float(0x43342139), SkBits2Float(0x 42aad555), SkBits2Float(0x433427a8), SkBits2Float(0x42ac3333), SkBits2Float(0x43 342073)); // 84.7333f, 180.13f, 85.4167f, 180.155f, 86.1f, 180.127f
1142 path.cubicTo(SkBits2Float(0x42ad9111), SkBits2Float(0x4334193f), SkBits2Float(0x 42aeeeef), SkBits2Float(0x4333fa48), SkBits2Float(0x42b04ccd), SkBits2Float(0x43 33f2d5)); // 86.7833f, 180.099f, 87.4667f, 179.978f, 88.15f, 179.949f
1143 path.cubicTo(SkBits2Float(0x42b1aaab), SkBits2Float(0x4333eb62), SkBits2Float(0x 42b30889), SkBits2Float(0x4333f0fd), SkBits2Float(0x42b46666), SkBits2Float(0x43 33f3c3)); // 88.8333f, 179.919f, 89.5167f, 179.941f, 90.2f, 179.952f
1144 path.cubicTo(SkBits2Float(0x42b5c444), SkBits2Float(0x4333f688), SkBits2Float(0x 42b72222), SkBits2Float(0x4333f7ca), SkBits2Float(0x42b88000), SkBits2Float(0x43 340375)); // 90.8833f, 179.963f, 91.5667f, 179.968f, 92.25f, 180.014f
1145 path.cubicTo(SkBits2Float(0x42b9ddde), SkBits2Float(0x43340f1f), SkBits2Float(0x 42bb3bbc), SkBits2Float(0x43342b53), SkBits2Float(0x42bc999a), SkBits2Float(0x43 3439c3)); // 92.9333f, 180.059f, 93.6167f, 180.169f, 94.3f, 180.226f
1146 path.cubicTo(SkBits2Float(0x42bdf777), SkBits2Float(0x43344833), SkBits2Float(0x 42bf5555), SkBits2Float(0x43345473), SkBits2Float(0x42c0b333), SkBits2Float(0x43 345a15)); // 94.9833f, 180.282f, 95.6667f, 180.33f, 96.35f, 180.352f
1147 path.cubicTo(SkBits2Float(0x42c21111), SkBits2Float(0x43345fb6), SkBits2Float(0x 42c36eef), SkBits2Float(0x433467f5), SkBits2Float(0x42c4cccd), SkBits2Float(0x43 345b8d)); // 97.0333f, 180.374f, 97.7167f, 180.406f, 98.4f, 180.358f
1148 path.cubicTo(SkBits2Float(0x42c62aab), SkBits2Float(0x43344f25), SkBits2Float(0x 42c78889), SkBits2Float(0x43342bb0), SkBits2Float(0x42c8e666), SkBits2Float(0x43 340fa6)); // 99.0833f, 180.309f, 99.7667f, 180.171f, 100.45f, 180.061f
1149 path.cubicTo(SkBits2Float(0x42ca4444), SkBits2Float(0x4333f39b), SkBits2Float(0x 42cba222), SkBits2Float(0x4333c2e0), SkBits2Float(0x42cd0000), SkBits2Float(0x43 33b34d)); // 101.133f, 179.952f, 101.817f, 179.761f, 102.5f, 179.7f
1150 path.cubicTo(SkBits2Float(0x42ce5dde), SkBits2Float(0x4333a3b9), SkBits2Float(0x 42cfbbbc), SkBits2Float(0x4333b115), SkBits2Float(0x42d1199a), SkBits2Float(0x43 33b231)); // 103.183f, 179.64f, 103.867f, 179.692f, 104.55f, 179.696f
1151 path.cubicTo(SkBits2Float(0x42d27777), SkBits2Float(0x4333b34d), SkBits2Float(0x 42d3d555), SkBits2Float(0x4333b6a0), SkBits2Float(0x42d53333), SkBits2Float(0x43 33b9f3)); // 105.233f, 179.7f, 105.917f, 179.713f, 106.6f, 179.726f
1152 path.cubicTo(SkBits2Float(0x42d69111), SkBits2Float(0x4333bd46), SkBits2Float(0x 42d7eeef), SkBits2Float(0x4333c308), SkBits2Float(0x42d94ccd), SkBits2Float(0x43 33c624)); // 107.283f, 179.739f, 107.967f, 179.762f, 108.65f, 179.774f
1153 path.cubicTo(SkBits2Float(0x42daaaab), SkBits2Float(0x4333c940), SkBits2Float(0x 42dc0889), SkBits2Float(0x4333b41c), SkBits2Float(0x42dd6666), SkBits2Float(0x43 33cc9c)); // 109.333f, 179.786f, 110.017f, 179.704f, 110.7f, 179.799f
1154 path.cubicTo(SkBits2Float(0x42dec444), SkBits2Float(0x4333e51d), SkBits2Float(0x 42e02222), SkBits2Float(0x43343f85), SkBits2Float(0x42e18000), SkBits2Float(0x43 345927)); // 111.383f, 179.895f, 112.067f, 180.248f, 112.75f, 180.348f
1155 path.cubicTo(SkBits2Float(0x42e2ddde), SkBits2Float(0x433472c9), SkBits2Float(0x 42e43bbc), SkBits2Float(0x43346431), SkBits2Float(0x42e5999a), SkBits2Float(0x43 346666)); // 113.433f, 180.448f, 114.117f, 180.391f, 114.8f, 180.4f
1156 path.cubicTo(SkBits2Float(0x42e6f777), SkBits2Float(0x4334689c), SkBits2Float(0x 42e85555), SkBits2Float(0x43346666), SkBits2Float(0x42e9b333), SkBits2Float(0x43 346666)); // 115.483f, 180.409f, 116.167f, 180.4f, 116.85f, 180.4f
1157 path.lineTo(SkBits2Float(0x42e9b333), SkBits2Float(0x43346666)); // 116.85f, 18 0.4f
1158 path.lineTo(SkBits2Float(0x42033333), SkBits2Float(0x43346666)); // 32.8f, 180. 4f
1159 path.close();
1160 path.moveTo(SkBits2Float(0x43054000), SkBits2Float(0x43346666)); // 133.25f, 18 0.4f
1161 path.lineTo(SkBits2Float(0x43054000), SkBits2Float(0x43346666)); // 133.25f, 18 0.4f
1162 path.cubicTo(SkBits2Float(0x4305eeef), SkBits2Float(0x43346666), SkBits2Float(0x 43069dde), SkBits2Float(0x43347a6e), SkBits2Float(0x43074ccd), SkBits2Float(0x43 346666)); // 133.933f, 180.4f, 134.617f, 180.478f, 135.3f, 180.4f
1163 path.cubicTo(SkBits2Float(0x4307fbbc), SkBits2Float(0x4334525f), SkBits2Float(0x 4308aaab), SkBits2Float(0x43340a40), SkBits2Float(0x4309599a), SkBits2Float(0x43 33ee38)); // 135.983f, 180.322f, 136.667f, 180.04f, 137.35f, 179.931f
1164 path.cubicTo(SkBits2Float(0x430a0889), SkBits2Float(0x4333d230), SkBits2Float(0x 430ab777), SkBits2Float(0x4333c68b), SkBits2Float(0x430b6666), SkBits2Float(0x43 33be34)); // 138.033f, 179.821f, 138.717f, 179.776f, 139.4f, 179.743f
1165 path.cubicTo(SkBits2Float(0x430c1555), SkBits2Float(0x4333b5dc), SkBits2Float(0x 430cc444), SkBits2Float(0x4333bc82), SkBits2Float(0x430d7333), SkBits2Float(0x43 33bc2b)); // 140.083f, 179.71f, 140.767f, 179.736f, 141.45f, 179.735f
1166 path.cubicTo(SkBits2Float(0x430e2222), SkBits2Float(0x4333bbd4), SkBits2Float(0x 430ed111), SkBits2Float(0x4333bd76), SkBits2Float(0x430f8000), SkBits2Float(0x43 33bc2b)); // 142.133f, 179.734f, 142.817f, 179.74f, 143.5f, 179.735f
1167 path.cubicTo(SkBits2Float(0x43102eef), SkBits2Float(0x4333bae0), SkBits2Float(0x 4310ddde), SkBits2Float(0x4333b72e), SkBits2Float(0x43118ccd), SkBits2Float(0x43 33b469)); // 144.183f, 179.73f, 144.867f, 179.716f, 145.55f, 179.705f
1168 path.cubicTo(SkBits2Float(0x43123bbc), SkBits2Float(0x4333b1a3), SkBits2Float(0x 4312eaab), SkBits2Float(0x4333ad34), SkBits2Float(0x4313999a), SkBits2Float(0x43 33ab8b)); // 146.233f, 179.694f, 146.917f, 179.677f, 147.6f, 179.67f
1169 path.cubicTo(SkBits2Float(0x43144889), SkBits2Float(0x4333a9e1), SkBits2Float(0x 4314f777), SkBits2Float(0x4333aa97), SkBits2Float(0x4315a666), SkBits2Float(0x43 33aa6f)); // 148.283f, 179.664f, 148.967f, 179.666f, 149.65f, 179.666f
1170 path.cubicTo(SkBits2Float(0x43165555), SkBits2Float(0x4333aa48), SkBits2Float(0x 43170444), SkBits2Float(0x4333aac5), SkBits2Float(0x4317b333), SkBits2Float(0x43 33aa9d)); // 150.333f, 179.665f, 151.017f, 179.667f, 151.7f, 179.666f
1171 path.cubicTo(SkBits2Float(0x43186222), SkBits2Float(0x4333aa76), SkBits2Float(0x 43191111), SkBits2Float(0x4333a962), SkBits2Float(0x4319c000), SkBits2Float(0x43 33a982)); // 152.383f, 179.666f, 153.067f, 179.662f, 153.75f, 179.662f
1172 path.cubicTo(SkBits2Float(0x431a6eef), SkBits2Float(0x4333a9a2), SkBits2Float(0x 431b1dde), SkBits2Float(0x4333ab0e), SkBits2Float(0x431bcccd), SkBits2Float(0x43 33ab5d)); // 154.433f, 179.663f, 155.117f, 179.668f, 155.8f, 179.669f
1173 path.cubicTo(SkBits2Float(0x431c7bbc), SkBits2Float(0x4333abac), SkBits2Float(0x 431d2aab), SkBits2Float(0x4333ab84), SkBits2Float(0x431dd99a), SkBits2Float(0x43 33ab5d)); // 156.483f, 179.671f, 157.167f, 179.67f, 157.85f, 179.669f
1174 path.cubicTo(SkBits2Float(0x431e8889), SkBits2Float(0x4333ab35), SkBits2Float(0x 431f3777), SkBits2Float(0x4333aa8f), SkBits2Float(0x431fe666), SkBits2Float(0x43 33aa6f)); // 158.533f, 179.669f, 159.217f, 179.666f, 159.9f, 179.666f
1175 path.cubicTo(SkBits2Float(0x43209555), SkBits2Float(0x4333aa4f), SkBits2Float(0x 43214444), SkBits2Float(0x4333a9b1), SkBits2Float(0x4321f333), SkBits2Float(0x43 33aa9d)); // 160.583f, 179.665f, 161.267f, 179.663f, 161.95f, 179.666f
1176 path.cubicTo(SkBits2Float(0x4322a222), SkBits2Float(0x4333ab8a), SkBits2Float(0x 43235111), SkBits2Float(0x4333aeb6), SkBits2Float(0x43240000), SkBits2Float(0x43 33affa)); // 162.633f, 179.67f, 163.317f, 179.682f, 164, 179.687f
1177 path.cubicTo(SkBits2Float(0x4324aeef), SkBits2Float(0x4333b13d), SkBits2Float(0x 43255dde), SkBits2Float(0x4333b1a3), SkBits2Float(0x43260ccd), SkBits2Float(0x43 33b231)); // 164.683f, 179.692f, 165.367f, 179.694f, 166.05f, 179.696f
1178 path.cubicTo(SkBits2Float(0x4326bbbc), SkBits2Float(0x4333b2bf), SkBits2Float(0x 43276aab), SkBits2Float(0x4333b439), SkBits2Float(0x4328199a), SkBits2Float(0x43 33b34d)); // 166.733f, 179.698f, 167.417f, 179.704f, 168.1f, 179.7f
1179 path.cubicTo(SkBits2Float(0x4328c889), SkBits2Float(0x4333b260), SkBits2Float(0x 43297777), SkBits2Float(0x4333ae48), SkBits2Float(0x432a2666), SkBits2Float(0x43 33aca7)); // 168.783f, 179.697f, 169.467f, 179.681f, 170.15f, 179.674f
1180 path.cubicTo(SkBits2Float(0x432ad555), SkBits2Float(0x4333ab05), SkBits2Float(0x 432b8444), SkBits2Float(0x4333a9d8), SkBits2Float(0x432c3333), SkBits2Float(0x43 33a982)); // 170.833f, 179.668f, 171.517f, 179.663f, 172.2f, 179.662f
1181 path.cubicTo(SkBits2Float(0x432ce222), SkBits2Float(0x4333a92b), SkBits2Float(0x 432d9111), SkBits2Float(0x4333a63e), SkBits2Float(0x432e4000), SkBits2Float(0x43 33aa9d)); // 172.883f, 179.661f, 173.567f, 179.649f, 174.25f, 179.666f
1182 path.cubicTo(SkBits2Float(0x432eeeef), SkBits2Float(0x4333aefd), SkBits2Float(0x 432f9dde), SkBits2Float(0x4333aacf), SkBits2Float(0x43304ccd), SkBits2Float(0x43 33c3bf)); // 174.933f, 179.684f, 175.617f, 179.667f, 176.3f, 179.765f
1183 path.cubicTo(SkBits2Float(0x4330fbbc), SkBits2Float(0x4333dcae), SkBits2Float(0x 4331aaab), SkBits2Float(0x433427ba), SkBits2Float(0x4332599a), SkBits2Float(0x43 34403b)); // 176.983f, 179.862f, 177.667f, 180.155f, 178.35f, 180.251f
1184 path.cubicTo(SkBits2Float(0x43330889), SkBits2Float(0x433458bc), SkBits2Float(0x 4333b777), SkBits2Float(0x43345065), SkBits2Float(0x43346666), SkBits2Float(0x43 3456c2)); // 179.033f, 180.347f, 179.717f, 180.314f, 180.4f, 180.339f
1185 path.cubicTo(SkBits2Float(0x43351555), SkBits2Float(0x43345d1e), SkBits2Float(0x 4335c444), SkBits2Float(0x433463cb), SkBits2Float(0x43367333), SkBits2Float(0x43 346666)); // 181.083f, 180.364f, 181.767f, 180.39f, 182.45f, 180.4f
1186 path.cubicTo(SkBits2Float(0x43372222), SkBits2Float(0x43346902), SkBits2Float(0x 4337d111), SkBits2Float(0x43346666), SkBits2Float(0x43388000), SkBits2Float(0x43 346666)); // 183.133f, 180.41f, 183.817f, 180.4f, 184.5f, 180.4f
1187 path.lineTo(SkBits2Float(0x43388000), SkBits2Float(0x43346666)); // 184.5f, 180 .4f
1188 path.lineTo(SkBits2Float(0x43054000), SkBits2Float(0x43346666)); // 133.25f, 18 0.4f
1189 path.close();
1190 path.moveTo(SkBits2Float(0x433a8ccd), SkBits2Float(0x43346666)); // 186.55f, 18 0.4f
1191 path.lineTo(SkBits2Float(0x433a8ccd), SkBits2Float(0x43346666)); // 186.55f, 18 0.4f
1192 path.cubicTo(SkBits2Float(0x433b3bbc), SkBits2Float(0x433465db), SkBits2Float(0x 433beaab), SkBits2Float(0x433463ac), SkBits2Float(0x433c999a), SkBits2Float(0x43 346321)); // 187.233f, 180.398f, 187.917f, 180.389f, 188.6f, 180.387f
1193 path.cubicTo(SkBits2Float(0x433d4889), SkBits2Float(0x43346295), SkBits2Float(0x 433df777), SkBits2Float(0x43346295), SkBits2Float(0x433ea666), SkBits2Float(0x43 346321)); // 189.283f, 180.385f, 189.967f, 180.385f, 190.65f, 180.387f
1194 path.cubicTo(SkBits2Float(0x433f5555), SkBits2Float(0x433463ac), SkBits2Float(0x 43400444), SkBits2Float(0x433465db), SkBits2Float(0x4340b333), SkBits2Float(0x43 346666)); // 191.333f, 180.389f, 192.017f, 180.398f, 192.7f, 180.4f
1195 path.lineTo(SkBits2Float(0x4340b333), SkBits2Float(0x43346666)); // 192.7f, 180 .4f
1196 path.lineTo(SkBits2Float(0x433a8ccd), SkBits2Float(0x43346666)); // 186.55f, 18 0.4f
1197 path.close();
1198 SkPath pathA = path;
1199 path.reset();
1200 path.moveTo(SkBits2Float(0x42033333), SkBits2Float(0x43346666)); // 32.8f, 180. 4f
1201 path.lineTo(SkBits2Float(0x42033333), SkBits2Float(0x43346666)); // 32.8f, 180. 4f
1202 path.cubicTo(SkBits2Float(0x4205eeef), SkBits2Float(0x43346666), SkBits2Float(0x 4208aaab), SkBits2Float(0x433454bd), SkBits2Float(0x420b6666), SkBits2Float(0x43 346666)); // 33.4833f, 180.4f, 34.1667f, 180.331f, 34.85f, 180.4f
1203 path.cubicTo(SkBits2Float(0x420e2222), SkBits2Float(0x4334780e), SkBits2Float(0x 4210ddde), SkBits2Float(0x4334bf76), SkBits2Float(0x4213999a), SkBits2Float(0x43 34d05a)); // 35.5333f, 180.469f, 36.2167f, 180.748f, 36.9f, 180.814f
1204 path.cubicTo(SkBits2Float(0x42165555), SkBits2Float(0x4334e13e), SkBits2Float(0x 42191111), SkBits2Float(0x4334d0d8), SkBits2Float(0x421bcccd), SkBits2Float(0x43 34cbbd)); // 37.5833f, 180.88f, 38.2667f, 180.816f, 38.95f, 180.796f
1205 path.cubicTo(SkBits2Float(0x421e8889), SkBits2Float(0x4334c6a1), SkBits2Float(0x 42214444), SkBits2Float(0x4334bab9), SkBits2Float(0x42240000), SkBits2Float(0x43 34b1b5)); // 39.6333f, 180.776f, 40.3167f, 180.729f, 41, 180.694f
1206 path.cubicTo(SkBits2Float(0x4226bbbc), SkBits2Float(0x4334a8b1), SkBits2Float(0x 42297777), SkBits2Float(0x4334992e), SkBits2Float(0x422c3333), SkBits2Float(0x43 3495a4)); // 41.6833f, 180.659f, 42.3667f, 180.598f, 43.05f, 180.585f
1207 path.cubicTo(SkBits2Float(0x422eeeef), SkBits2Float(0x4334921a), SkBits2Float(0x 4231aaab), SkBits2Float(0x4334994d), SkBits2Float(0x42346666), SkBits2Float(0x43 349c78)); // 43.7333f, 180.571f, 44.4167f, 180.599f, 45.1f, 180.611f
1208 path.cubicTo(SkBits2Float(0x42372222), SkBits2Float(0x43349fa4), SkBits2Float(0x 4239ddde), SkBits2Float(0x4334aa4b), SkBits2Float(0x423c999a), SkBits2Float(0x43 34a8a9)); // 45.7833f, 180.624f, 46.4667f, 180.665f, 47.15f, 180.659f
1209 path.cubicTo(SkBits2Float(0x423f5555), SkBits2Float(0x4334a707), SkBits2Float(0x 42421111), SkBits2Float(0x4334994b), SkBits2Float(0x4244cccd), SkBits2Float(0x43 3492ad)); // 47.8333f, 180.652f, 48.5167f, 180.599f, 49.2f, 180.573f
1210 path.cubicTo(SkBits2Float(0x42478889), SkBits2Float(0x43348c0e), SkBits2Float(0x 424a4444), SkBits2Float(0x43347f6f), SkBits2Float(0x424d0000), SkBits2Float(0x43 3480f1)); // 49.8833f, 180.547f, 50.5667f, 180.498f, 51.25f, 180.504f
1211 path.cubicTo(SkBits2Float(0x424fbbbc), SkBits2Float(0x43348273), SkBits2Float(0x 42527777), SkBits2Float(0x4334a025), SkBits2Float(0x42553333), SkBits2Float(0x43 349bb9)); // 51.9333f, 180.51f, 52.6167f, 180.626f, 53.3f, 180.608f
1212 path.cubicTo(SkBits2Float(0x4257eeef), SkBits2Float(0x4334974c), SkBits2Float(0x 425aaaab), SkBits2Float(0x43346781), SkBits2Float(0x425d6666), SkBits2Float(0x43 346666)); // 53.9833f, 180.591f, 54.6667f, 180.404f, 55.35f, 180.4f
1213 path.cubicTo(SkBits2Float(0x42602222), SkBits2Float(0x4334654a), SkBits2Float(0x 4262ddde), SkBits2Float(0x43348de8), SkBits2Float(0x4265999a), SkBits2Float(0x43 349512)); // 56.0333f, 180.396f, 56.7167f, 180.554f, 57.4f, 180.582f
1214 path.cubicTo(SkBits2Float(0x42685555), SkBits2Float(0x43349c3d), SkBits2Float(0x 426b1111), SkBits2Float(0x43348fe9), SkBits2Float(0x426dcccd), SkBits2Float(0x43 349163)); // 58.0833f, 180.61f, 58.7667f, 180.562f, 59.45f, 180.568f
1215 path.cubicTo(SkBits2Float(0x42708889), SkBits2Float(0x433492dd), SkBits2Float(0x 42734444), SkBits2Float(0x433494f4), SkBits2Float(0x42760000), SkBits2Float(0x43 349df0)); // 60.1333f, 180.574f, 60.8167f, 180.582f, 61.5f, 180.617f
1216 path.cubicTo(SkBits2Float(0x4278bbbc), SkBits2Float(0x4334a6ed), SkBits2Float(0x 427b7777), SkBits2Float(0x4334bf7d), SkBits2Float(0x427e3333), SkBits2Float(0x43 34c74e)); // 62.1833f, 180.652f, 62.8667f, 180.748f, 63.55f, 180.779f
1217 path.cubicTo(SkBits2Float(0x42807777), SkBits2Float(0x4334cf1f), SkBits2Float(0x 4281d555), SkBits2Float(0x4334d177), SkBits2Float(0x42833333), SkBits2Float(0x43 34ccd9)); // 64.2333f, 180.809f, 64.9167f, 180.818f, 65.6f, 180.8f
1218 path.cubicTo(SkBits2Float(0x42849111), SkBits2Float(0x4334c83a), SkBits2Float(0x 4285eeef), SkBits2Float(0x4334bcac), SkBits2Float(0x42874ccd), SkBits2Float(0x43 34ab99)); // 66.2833f, 180.782f, 66.9667f, 180.737f, 67.65f, 180.67f
1219 path.cubicTo(SkBits2Float(0x4288aaab), SkBits2Float(0x43349a86), SkBits2Float(0x 428a0889), SkBits2Float(0x433471ee), SkBits2Float(0x428b6666), SkBits2Float(0x43 346666)); // 68.3333f, 180.604f, 69.0167f, 180.445f, 69.7f, 180.4f
1220 path.cubicTo(SkBits2Float(0x428cc444), SkBits2Float(0x43345add), SkBits2Float(0x 428e2222), SkBits2Float(0x4334651d), SkBits2Float(0x428f8000), SkBits2Float(0x43 346666)); // 70.3833f, 180.355f, 71.0667f, 180.395f, 71.75f, 180.4f
1221 path.cubicTo(SkBits2Float(0x4290ddde), SkBits2Float(0x433467ae), SkBits2Float(0x 42923bbc), SkBits2Float(0x4334688a), SkBits2Float(0x4293999a), SkBits2Float(0x43 346e1a)); // 72.4333f, 180.405f, 73.1167f, 180.408f, 73.8f, 180.43f
1222 path.cubicTo(SkBits2Float(0x4294f777), SkBits2Float(0x433473aa), SkBits2Float(0x 42965555), SkBits2Float(0x43348118), SkBits2Float(0x4297b333), SkBits2Float(0x43 3487c6)); // 74.4833f, 180.452f, 75.1667f, 180.504f, 75.85f, 180.53f
1223 path.cubicTo(SkBits2Float(0x42991111), SkBits2Float(0x43348e74), SkBits2Float(0x 429a6eef), SkBits2Float(0x43349426), SkBits2Float(0x429bcccd), SkBits2Float(0x43 34962e)); // 76.5333f, 180.556f, 77.2167f, 180.579f, 77.9f, 180.587f
1224 path.cubicTo(SkBits2Float(0x429d2aab), SkBits2Float(0x43349836), SkBits2Float(0x 429e8889), SkBits2Float(0x43348d19), SkBits2Float(0x429fe666), SkBits2Float(0x43 3493f7)); // 78.5833f, 180.595f, 79.2667f, 180.551f, 79.95f, 180.578f
1225 path.cubicTo(SkBits2Float(0x42a14444), SkBits2Float(0x43349ad4), SkBits2Float(0x 42a2a222), SkBits2Float(0x4334bae7), SkBits2Float(0x42a40000), SkBits2Float(0x43 34bf5e)); // 80.6333f, 180.605f, 81.3167f, 180.73f, 82, 180.748f
1226 path.cubicTo(SkBits2Float(0x42a55dde), SkBits2Float(0x4334c3d4), SkBits2Float(0x 42a6bbbc), SkBits2Float(0x4334b1ea), SkBits2Float(0x42a8199a), SkBits2Float(0x43 34aebe)); // 82.6833f, 180.765f, 83.3667f, 180.695f, 84.05f, 180.683f
1227 path.cubicTo(SkBits2Float(0x42a97777), SkBits2Float(0x4334ab93), SkBits2Float(0x 42aad555), SkBits2Float(0x4334a524), SkBits2Float(0x42ac3333), SkBits2Float(0x43 34ac59)); // 84.7333f, 180.67f, 85.4167f, 180.645f, 86.1f, 180.673f
1228 path.cubicTo(SkBits2Float(0x42ad9111), SkBits2Float(0x4334b38d), SkBits2Float(0x 42aeeeef), SkBits2Float(0x4334d284), SkBits2Float(0x42b04ccd), SkBits2Float(0x43 34d9f7)); // 86.7833f, 180.701f, 87.4667f, 180.822f, 88.15f, 180.851f
1229 path.cubicTo(SkBits2Float(0x42b1aaab), SkBits2Float(0x4334e16a), SkBits2Float(0x 42b30889), SkBits2Float(0x4334dbcf), SkBits2Float(0x42b46666), SkBits2Float(0x43 34d909)); // 88.8333f, 180.881f, 89.5167f, 180.859f, 90.2f, 180.848f
1230 path.cubicTo(SkBits2Float(0x42b5c444), SkBits2Float(0x4334d644), SkBits2Float(0x 42b72222), SkBits2Float(0x4334d502), SkBits2Float(0x42b88000), SkBits2Float(0x43 34c957)); // 90.8833f, 180.837f, 91.5667f, 180.832f, 92.25f, 180.786f
1231 path.cubicTo(SkBits2Float(0x42b9ddde), SkBits2Float(0x4334bdad), SkBits2Float(0x 42bb3bbc), SkBits2Float(0x4334a179), SkBits2Float(0x42bc999a), SkBits2Float(0x43 349309)); // 92.9333f, 180.741f, 93.6167f, 180.631f, 94.3f, 180.574f
1232 path.cubicTo(SkBits2Float(0x42bdf777), SkBits2Float(0x43348499), SkBits2Float(0x 42bf5555), SkBits2Float(0x43347859), SkBits2Float(0x42c0b333), SkBits2Float(0x43 3472b7)); // 94.9833f, 180.518f, 95.6667f, 180.47f, 96.35f, 180.448f
1233 path.cubicTo(SkBits2Float(0x42c21111), SkBits2Float(0x43346d16), SkBits2Float(0x 42c36eef), SkBits2Float(0x433464d7), SkBits2Float(0x42c4cccd), SkBits2Float(0x43 34713f)); // 97.0333f, 180.426f, 97.7167f, 180.394f, 98.4f, 180.442f
1234 path.cubicTo(SkBits2Float(0x42c62aab), SkBits2Float(0x43347da7), SkBits2Float(0x 42c78889), SkBits2Float(0x4334a11c), SkBits2Float(0x42c8e666), SkBits2Float(0x43 34bd26)); // 99.0833f, 180.491f, 99.7667f, 180.629f, 100.45f, 180.739f
1235 path.cubicTo(SkBits2Float(0x42ca4444), SkBits2Float(0x4334d931), SkBits2Float(0x 42cba222), SkBits2Float(0x433509ec), SkBits2Float(0x42cd0000), SkBits2Float(0x43 35197f)); // 101.133f, 180.848f, 101.817f, 181.039f, 102.5f, 181.1f
1236 path.cubicTo(SkBits2Float(0x42ce5dde), SkBits2Float(0x43352913), SkBits2Float(0x 42cfbbbc), SkBits2Float(0x43351bb7), SkBits2Float(0x42d1199a), SkBits2Float(0x43 351a9b)); // 103.183f, 181.16f, 103.867f, 181.108f, 104.55f, 181.104f
1237 path.cubicTo(SkBits2Float(0x42d27777), SkBits2Float(0x4335197f), SkBits2Float(0x 42d3d555), SkBits2Float(0x4335162c), SkBits2Float(0x42d53333), SkBits2Float(0x43 3512d9)); // 105.233f, 181.1f, 105.917f, 181.087f, 106.6f, 181.074f
1238 path.cubicTo(SkBits2Float(0x42d69111), SkBits2Float(0x43350f86), SkBits2Float(0x 42d7eeef), SkBits2Float(0x433509c4), SkBits2Float(0x42d94ccd), SkBits2Float(0x43 3506a8)); // 107.283f, 181.061f, 107.967f, 181.038f, 108.65f, 181.026f
1239 path.cubicTo(SkBits2Float(0x42daaaab), SkBits2Float(0x4335038c), SkBits2Float(0x 42dc0889), SkBits2Float(0x433518b0), SkBits2Float(0x42dd6666), SkBits2Float(0x43 350030)); // 109.333f, 181.014f, 110.017f, 181.096f, 110.7f, 181.001f
1240 path.cubicTo(SkBits2Float(0x42dec444), SkBits2Float(0x4334e7af), SkBits2Float(0x 42e02222), SkBits2Float(0x43348d47), SkBits2Float(0x42e18000), SkBits2Float(0x43 3473a5)); // 111.383f, 180.905f, 112.067f, 180.552f, 112.75f, 180.452f
1241 path.cubicTo(SkBits2Float(0x42e2ddde), SkBits2Float(0x43345a03), SkBits2Float(0x 42e43bbc), SkBits2Float(0x4334689b), SkBits2Float(0x42e5999a), SkBits2Float(0x43 346666)); // 113.433f, 180.352f, 114.117f, 180.409f, 114.8f, 180.4f
1242 path.cubicTo(SkBits2Float(0x42e6f777), SkBits2Float(0x43346430), SkBits2Float(0x 42e85555), SkBits2Float(0x43346666), SkBits2Float(0x42e9b333), SkBits2Float(0x43 346666)); // 115.483f, 180.391f, 116.167f, 180.4f, 116.85f, 180.4f
1243 path.lineTo(SkBits2Float(0x42e9b333), SkBits2Float(0x43346666)); // 116.85f, 18 0.4f
1244 path.lineTo(SkBits2Float(0x42033333), SkBits2Float(0x43346666)); // 32.8f, 180. 4f
1245 path.close();
1246 path.moveTo(SkBits2Float(0x43054000), SkBits2Float(0x43346666)); // 133.25f, 18 0.4f
1247 path.lineTo(SkBits2Float(0x43054000), SkBits2Float(0x43346666)); // 133.25f, 18 0.4f
1248 path.cubicTo(SkBits2Float(0x4305eeef), SkBits2Float(0x43346666), SkBits2Float(0x 43069dde), SkBits2Float(0x4334525e), SkBits2Float(0x43074ccd), SkBits2Float(0x43 346666)); // 133.933f, 180.4f, 134.617f, 180.322f, 135.3f, 180.4f
1249 path.cubicTo(SkBits2Float(0x4307fbbc), SkBits2Float(0x43347a6d), SkBits2Float(0x 4308aaab), SkBits2Float(0x4334c28c), SkBits2Float(0x4309599a), SkBits2Float(0x43 34de94)); // 135.983f, 180.478f, 136.667f, 180.76f, 137.35f, 180.869f
1250 path.cubicTo(SkBits2Float(0x430a0889), SkBits2Float(0x4334fa9c), SkBits2Float(0x 430ab777), SkBits2Float(0x43350641), SkBits2Float(0x430b6666), SkBits2Float(0x43 350e98)); // 138.033f, 180.979f, 138.717f, 181.024f, 139.4f, 181.057f
1251 path.cubicTo(SkBits2Float(0x430c1555), SkBits2Float(0x433516f0), SkBits2Float(0x 430cc444), SkBits2Float(0x4335104a), SkBits2Float(0x430d7333), SkBits2Float(0x43 3510a1)); // 140.083f, 181.09f, 140.767f, 181.064f, 141.45f, 181.065f
1252 path.cubicTo(SkBits2Float(0x430e2222), SkBits2Float(0x433510f8), SkBits2Float(0x 430ed111), SkBits2Float(0x43350f56), SkBits2Float(0x430f8000), SkBits2Float(0x43 3510a1)); // 142.133f, 181.066f, 142.817f, 181.06f, 143.5f, 181.065f
1253 path.cubicTo(SkBits2Float(0x43102eef), SkBits2Float(0x433511ec), SkBits2Float(0x 4310ddde), SkBits2Float(0x4335159e), SkBits2Float(0x43118ccd), SkBits2Float(0x43 351863)); // 144.183f, 181.07f, 144.867f, 181.084f, 145.55f, 181.095f
1254 path.cubicTo(SkBits2Float(0x43123bbc), SkBits2Float(0x43351b29), SkBits2Float(0x 4312eaab), SkBits2Float(0x43351f98), SkBits2Float(0x4313999a), SkBits2Float(0x43 352141)); // 146.233f, 181.106f, 146.917f, 181.123f, 147.6f, 181.13f
1255 path.cubicTo(SkBits2Float(0x43144889), SkBits2Float(0x433522eb), SkBits2Float(0x 4314f777), SkBits2Float(0x43352235), SkBits2Float(0x4315a666), SkBits2Float(0x43 35225d)); // 148.283f, 181.136f, 148.967f, 181.134f, 149.65f, 181.134f
1256 path.cubicTo(SkBits2Float(0x43165555), SkBits2Float(0x43352284), SkBits2Float(0x 43170444), SkBits2Float(0x43352207), SkBits2Float(0x4317b333), SkBits2Float(0x43 35222f)); // 150.333f, 181.135f, 151.017f, 181.133f, 151.7f, 181.134f
1257 path.cubicTo(SkBits2Float(0x43186222), SkBits2Float(0x43352256), SkBits2Float(0x 43191111), SkBits2Float(0x4335236a), SkBits2Float(0x4319c000), SkBits2Float(0x43 35234a)); // 152.383f, 181.134f, 153.067f, 181.138f, 153.75f, 181.138f
1258 path.cubicTo(SkBits2Float(0x431a6eef), SkBits2Float(0x4335232a), SkBits2Float(0x 431b1dde), SkBits2Float(0x433521be), SkBits2Float(0x431bcccd), SkBits2Float(0x43 35216f)); // 154.433f, 181.137f, 155.117f, 181.132f, 155.8f, 181.131f
1259 path.cubicTo(SkBits2Float(0x431c7bbc), SkBits2Float(0x43352120), SkBits2Float(0x 431d2aab), SkBits2Float(0x43352148), SkBits2Float(0x431dd99a), SkBits2Float(0x43 35216f)); // 156.483f, 181.129f, 157.167f, 181.13f, 157.85f, 181.131f
1260 path.cubicTo(SkBits2Float(0x431e8889), SkBits2Float(0x43352197), SkBits2Float(0x 431f3777), SkBits2Float(0x4335223d), SkBits2Float(0x431fe666), SkBits2Float(0x43 35225d)); // 158.533f, 181.131f, 159.217f, 181.134f, 159.9f, 181.134f
1261 path.cubicTo(SkBits2Float(0x43209555), SkBits2Float(0x4335227d), SkBits2Float(0x 43214444), SkBits2Float(0x4335231b), SkBits2Float(0x4321f333), SkBits2Float(0x43 35222f)); // 160.583f, 181.135f, 161.267f, 181.137f, 161.95f, 181.134f
1262 path.cubicTo(SkBits2Float(0x4322a222), SkBits2Float(0x43352142), SkBits2Float(0x 43235111), SkBits2Float(0x43351e16), SkBits2Float(0x43240000), SkBits2Float(0x43 351cd2)); // 162.633f, 181.13f, 163.317f, 181.118f, 164, 181.113f
1263 path.cubicTo(SkBits2Float(0x4324aeef), SkBits2Float(0x43351b8f), SkBits2Float(0x 43255dde), SkBits2Float(0x43351b29), SkBits2Float(0x43260ccd), SkBits2Float(0x43 351a9b)); // 164.683f, 181.108f, 165.367f, 181.106f, 166.05f, 181.104f
1264 path.cubicTo(SkBits2Float(0x4326bbbc), SkBits2Float(0x43351a0d), SkBits2Float(0x 43276aab), SkBits2Float(0x43351893), SkBits2Float(0x4328199a), SkBits2Float(0x43 35197f)); // 166.733f, 181.102f, 167.417f, 181.096f, 168.1f, 181.1f
1265 path.cubicTo(SkBits2Float(0x4328c889), SkBits2Float(0x43351a6c), SkBits2Float(0x 43297777), SkBits2Float(0x43351e84), SkBits2Float(0x432a2666), SkBits2Float(0x43 352025)); // 168.783f, 181.103f, 169.467f, 181.119f, 170.15f, 181.126f
1266 path.cubicTo(SkBits2Float(0x432ad555), SkBits2Float(0x433521c7), SkBits2Float(0x 432b8444), SkBits2Float(0x433522f4), SkBits2Float(0x432c3333), SkBits2Float(0x43 35234a)); // 170.833f, 181.132f, 171.517f, 181.137f, 172.2f, 181.138f
1267 path.cubicTo(SkBits2Float(0x432ce222), SkBits2Float(0x433523a1), SkBits2Float(0x 432d9111), SkBits2Float(0x4335268e), SkBits2Float(0x432e4000), SkBits2Float(0x43 35222f)); // 172.883f, 181.139f, 173.567f, 181.151f, 174.25f, 181.134f
1268 path.cubicTo(SkBits2Float(0x432eeeef), SkBits2Float(0x43351dcf), SkBits2Float(0x 432f9dde), SkBits2Float(0x433521fd), SkBits2Float(0x43304ccd), SkBits2Float(0x43 35090d)); // 174.933f, 181.116f, 175.617f, 181.133f, 176.3f, 181.035f
1269 path.cubicTo(SkBits2Float(0x4330fbbc), SkBits2Float(0x4334f01e), SkBits2Float(0x 4331aaab), SkBits2Float(0x4334a512), SkBits2Float(0x4332599a), SkBits2Float(0x43 348c91)); // 176.983f, 180.938f, 177.667f, 180.645f, 178.35f, 180.549f
1270 path.cubicTo(SkBits2Float(0x43330889), SkBits2Float(0x43347410), SkBits2Float(0x 4333b777), SkBits2Float(0x43347c67), SkBits2Float(0x43346666), SkBits2Float(0x43 34760a)); // 179.033f, 180.453f, 179.717f, 180.486f, 180.4f, 180.461f
1271 path.cubicTo(SkBits2Float(0x43351555), SkBits2Float(0x43346fae), SkBits2Float(0x 4335c444), SkBits2Float(0x43346901), SkBits2Float(0x43367333), SkBits2Float(0x43 346666)); // 181.083f, 180.436f, 181.767f, 180.41f, 182.45f, 180.4f
1272 path.cubicTo(SkBits2Float(0x43372222), SkBits2Float(0x433463ca), SkBits2Float(0x 4337d111), SkBits2Float(0x43346666), SkBits2Float(0x43388000), SkBits2Float(0x43 346666)); // 183.133f, 180.39f, 183.817f, 180.4f, 184.5f, 180.4f
1273 path.lineTo(SkBits2Float(0x43388000), SkBits2Float(0x43346666)); // 184.5f, 180 .4f
1274 path.lineTo(SkBits2Float(0x43054000), SkBits2Float(0x43346666)); // 133.25f, 18 0.4f
1275 path.close();
1276 path.moveTo(SkBits2Float(0x433a8ccd), SkBits2Float(0x43346666)); // 186.55f, 18 0.4f
1277 path.lineTo(SkBits2Float(0x433a8ccd), SkBits2Float(0x43346666)); // 186.55f, 18 0.4f
1278 path.cubicTo(SkBits2Float(0x433b3bbc), SkBits2Float(0x433466f1), SkBits2Float(0x 433beaab), SkBits2Float(0x43346920), SkBits2Float(0x433c999a), SkBits2Float(0x43 3469ab)); // 187.233f, 180.402f, 187.917f, 180.411f, 188.6f, 180.413f
1279 path.cubicTo(SkBits2Float(0x433d4889), SkBits2Float(0x43346a37), SkBits2Float(0x 433df777), SkBits2Float(0x43346a37), SkBits2Float(0x433ea666), SkBits2Float(0x43 3469ab)); // 189.283f, 180.415f, 189.967f, 180.415f, 190.65f, 180.413f
1280 path.cubicTo(SkBits2Float(0x433f5555), SkBits2Float(0x43346920), SkBits2Float(0x 43400444), SkBits2Float(0x433466f1), SkBits2Float(0x4340b333), SkBits2Float(0x43 346666)); // 191.333f, 180.411f, 192.017f, 180.402f, 192.7f, 180.4f
1281 path.lineTo(SkBits2Float(0x4340b333), SkBits2Float(0x43346666)); // 192.7f, 180 .4f
1282 path.lineTo(SkBits2Float(0x433a8ccd), SkBits2Float(0x43346666)); // 186.55f, 18 0.4f
1283 path.close();
1284 testPathOpCheck(reporter, pathA, path, SkPathOp::kUnion_SkPathOp, filename, FLAGS_runFail);
1285 }
1286
1287 static void issue3651_5(skiatest::Reporter* reporter, const char* filename) {
1288 SkPath path;
1289 path.moveTo(SkBits2Float(0x411e6666), SkBits2Float(0x4380b333)); // 9.9f, 257.4 f
1290 path.lineTo(SkBits2Float(0x411e6666), SkBits2Float(0x4380b333)); // 9.9f, 257.4 f
1291 path.cubicTo(SkBits2Float(0x41300000), SkBits2Float(0x4380b333), SkBits2Float(0x 4141999a), SkBits2Float(0x4380ba9e), SkBits2Float(0x41533333), SkBits2Float(0x43 80b333)); // 11, 257.4f, 12.1f, 257.458f, 13.2f, 257.4f
1292 path.cubicTo(SkBits2Float(0x4164cccd), SkBits2Float(0x4380abc8), SkBits2Float(0x 41766666), SkBits2Float(0x43809a93), SkBits2Float(0x41840000), SkBits2Float(0x43 8086b0)); // 14.3f, 257.342f, 15.4f, 257.208f, 16.5f, 257.052f
1293 path.cubicTo(SkBits2Float(0x418ccccd), SkBits2Float(0x438072cc), SkBits2Float(0x 4195999a), SkBits2Float(0x4380498b), SkBits2Float(0x419e6666), SkBits2Float(0x43 803bdc)); // 17.6f, 256.897f, 18.7f, 256.575f, 19.8f, 256.468f
1294 path.cubicTo(SkBits2Float(0x41a73333), SkBits2Float(0x43802e2d), SkBits2Float(0x 41b00000), SkBits2Float(0x438026f3), SkBits2Float(0x41b8cccd), SkBits2Float(0x43 803498)); // 20.9f, 256.361f, 22, 256.304f, 23.1f, 256.411f
1295 path.cubicTo(SkBits2Float(0x41c1999a), SkBits2Float(0x4380423d), SkBits2Float(0x 41ca6666), SkBits2Float(0x4380789f), SkBits2Float(0x41d33333), SkBits2Float(0x43 808db9)); // 24.2f, 256.517f, 25.3f, 256.942f, 26.4f, 257.107f
1296 path.cubicTo(SkBits2Float(0x41dc0000), SkBits2Float(0x4380a2d3), SkBits2Float(0x 41e4cccd), SkBits2Float(0x4380b36f), SkBits2Float(0x41ed999a), SkBits2Float(0x43 80b333)); // 27.5f, 257.272f, 28.6f, 257.402f, 29.7f, 257.4f
1297 path.cubicTo(SkBits2Float(0x41f66666), SkBits2Float(0x4380b2f7), SkBits2Float(0x 41ff3333), SkBits2Float(0x4380a1a6), SkBits2Float(0x42040000), SkBits2Float(0x43 808c51)); // 30.8f, 257.398f, 31.9f, 257.263f, 33, 257.096f
1298 path.cubicTo(SkBits2Float(0x42086666), SkBits2Float(0x438076fc), SkBits2Float(0x 420ccccd), SkBits2Float(0x43803f7a), SkBits2Float(0x42113333), SkBits2Float(0x43 803333)); // 34.1f, 256.93f, 35.2f, 256.496f, 36.3f, 256.4f
1299 path.cubicTo(SkBits2Float(0x4215999a), SkBits2Float(0x438026ed), SkBits2Float(0x 421a0000), SkBits2Float(0x43802d56), SkBits2Float(0x421e6666), SkBits2Float(0x43 8042ab)); // 37.4f, 256.304f, 38.5f, 256.354f, 39.6f, 256.521f
1300 path.cubicTo(SkBits2Float(0x4222cccd), SkBits2Float(0x43805800), SkBits2Float(0x 42273333), SkBits2Float(0x4380a072), SkBits2Float(0x422b999a), SkBits2Float(0x43 80b333)); // 40.7f, 256.688f, 41.8f, 257.253f, 42.9f, 257.4f
1301 path.cubicTo(SkBits2Float(0x42300000), SkBits2Float(0x4380c5f5), SkBits2Float(0x 42346666), SkBits2Float(0x4380b333), SkBits2Float(0x4238cccd), SkBits2Float(0x43 80b333)); // 44, 257.547f, 45.1f, 257.4f, 46.2f, 257.4f
1302 path.cubicTo(SkBits2Float(0x423d3333), SkBits2Float(0x4380b333), SkBits2Float(0x 4241999a), SkBits2Float(0x4380c1e4), SkBits2Float(0x42460000), SkBits2Float(0x43 80b333)); // 47.3f, 257.4f, 48.4f, 257.515f, 49.5f, 257.4f
1303 path.cubicTo(SkBits2Float(0x424a6666), SkBits2Float(0x4380a482), SkBits2Float(0x 424ecccd), SkBits2Float(0x43807063), SkBits2Float(0x42533333), SkBits2Float(0x43 805b0e)); // 50.6f, 257.285f, 51.7f, 256.878f, 52.8f, 256.711f
1304 path.cubicTo(SkBits2Float(0x4257999a), SkBits2Float(0x438045b8), SkBits2Float(0x 425c0000), SkBits2Float(0x438039d8), SkBits2Float(0x42606666), SkBits2Float(0x43 803333)); // 53.9f, 256.545f, 55, 256.452f, 56.1f, 256.4f
1305 path.cubicTo(SkBits2Float(0x4264cccd), SkBits2Float(0x43802c8f), SkBits2Float(0x 42693333), SkBits2Float(0x43803333), SkBits2Float(0x426d999a), SkBits2Float(0x43 803333)); // 57.2f, 256.348f, 58.3f, 256.4f, 59.4f, 256.4f
1306 path.cubicTo(SkBits2Float(0x42720000), SkBits2Float(0x43803333), SkBits2Float(0x 42766666), SkBits2Float(0x43802bdb), SkBits2Float(0x427acccd), SkBits2Float(0x43 803333)); // 60.5f, 256.4f, 61.6f, 256.343f, 62.7f, 256.4f
1307 path.cubicTo(SkBits2Float(0x427f3333), SkBits2Float(0x43803a8c), SkBits2Float(0x 4281cccd), SkBits2Float(0x438049f1), SkBits2Float(0x42840000), SkBits2Float(0x43 805f47)); // 63.8f, 256.457f, 64.9f, 256.578f, 66, 256.744f
1308 path.cubicTo(SkBits2Float(0x42863333), SkBits2Float(0x4380749c), SkBits2Float(0x 42886666), SkBits2Float(0x4380a536), SkBits2Float(0x428a999a), SkBits2Float(0x43 80b333)); // 67.1f, 256.911f, 68.2f, 257.291f, 69.3f, 257.4f
1309 path.cubicTo(SkBits2Float(0x428ccccd), SkBits2Float(0x4380c130), SkBits2Float(0x 428f0000), SkBits2Float(0x4380b333), SkBits2Float(0x42913333), SkBits2Float(0x43 80b333)); // 70.4f, 257.509f, 71.5f, 257.4f, 72.6f, 257.4f
1310 path.cubicTo(SkBits2Float(0x42936666), SkBits2Float(0x4380b333), SkBits2Float(0x 4295999a), SkBits2Float(0x4380bb17), SkBits2Float(0x4297cccd), SkBits2Float(0x43 80b333)); // 73.7f, 257.4f, 74.8f, 257.462f, 75.9f, 257.4f
1311 path.cubicTo(SkBits2Float(0x429a0000), SkBits2Float(0x4380ab50), SkBits2Float(0x 429c3333), SkBits2Float(0x438083df), SkBits2Float(0x429e6666), SkBits2Float(0x43 8083df)); // 77, 257.338f, 78.1f, 257.03f, 79.2f, 257.03f
1312 path.cubicTo(SkBits2Float(0x42a0999a), SkBits2Float(0x438083df), SkBits2Float(0x 42a2cccd), SkBits2Float(0x4380ab50), SkBits2Float(0x42a50000), SkBits2Float(0x43 80b333)); // 80.3f, 257.03f, 81.4f, 257.338f, 82.5f, 257.4f
1313 path.cubicTo(SkBits2Float(0x42a73333), SkBits2Float(0x4380bb17), SkBits2Float(0x 42a96666), SkBits2Float(0x4380b333), SkBits2Float(0x42ab999a), SkBits2Float(0x43 80b333)); // 83.6f, 257.462f, 84.7f, 257.4f, 85.8f, 257.4f
1314 path.lineTo(SkBits2Float(0x42ab999a), SkBits2Float(0x4380b333)); // 85.8f, 257. 4f
1315 path.lineTo(SkBits2Float(0x411e6666), SkBits2Float(0x4380b333)); // 9.9f, 257.4 f
1316 path.close();
1317 SkPath pathA = path;
1318 path.reset();
1319 path.moveTo(SkBits2Float(0x411e6666), SkBits2Float(0x4380b333)); // 9.9f, 257.4 f
1320 path.lineTo(SkBits2Float(0x411e6666), SkBits2Float(0x4380b333)); // 9.9f, 257.4 f
1321 path.cubicTo(SkBits2Float(0x41300000), SkBits2Float(0x4380b333), SkBits2Float(0x 4141999a), SkBits2Float(0x4380abc8), SkBits2Float(0x41533333), SkBits2Float(0x43 80b333)); // 11, 257.4f, 12.1f, 257.342f, 13.2f, 257.4f
1322 path.cubicTo(SkBits2Float(0x4164cccd), SkBits2Float(0x4380ba9e), SkBits2Float(0x 41766666), SkBits2Float(0x4380cbd3), SkBits2Float(0x41840000), SkBits2Float(0x43 80dfb6)); // 14.3f, 257.458f, 15.4f, 257.592f, 16.5f, 257.748f
1323 path.cubicTo(SkBits2Float(0x418ccccd), SkBits2Float(0x4380f39a), SkBits2Float(0x 4195999a), SkBits2Float(0x43811cdb), SkBits2Float(0x419e6666), SkBits2Float(0x43 812a8a)); // 17.6f, 257.903f, 18.7f, 258.225f, 19.8f, 258.332f
1324 path.cubicTo(SkBits2Float(0x41a73333), SkBits2Float(0x43813839), SkBits2Float(0x 41b00000), SkBits2Float(0x43813f73), SkBits2Float(0x41b8cccd), SkBits2Float(0x43 8131ce)); // 20.9f, 258.439f, 22, 258.496f, 23.1f, 258.389f
1325 path.cubicTo(SkBits2Float(0x41c1999a), SkBits2Float(0x43812429), SkBits2Float(0x 41ca6666), SkBits2Float(0x4380edc7), SkBits2Float(0x41d33333), SkBits2Float(0x43 80d8ad)); // 24.2f, 258.283f, 25.3f, 257.858f, 26.4f, 257.693f
1326 path.cubicTo(SkBits2Float(0x41dc0000), SkBits2Float(0x4380c393), SkBits2Float(0x 41e4cccd), SkBits2Float(0x4380b2f7), SkBits2Float(0x41ed999a), SkBits2Float(0x43 80b333)); // 27.5f, 257.528f, 28.6f, 257.398f, 29.7f, 257.4f
1327 path.cubicTo(SkBits2Float(0x41f66666), SkBits2Float(0x4380b36f), SkBits2Float(0x 41ff3333), SkBits2Float(0x4380c4c0), SkBits2Float(0x42040000), SkBits2Float(0x43 80da15)); // 30.8f, 257.402f, 31.9f, 257.537f, 33, 257.704f
1328 path.cubicTo(SkBits2Float(0x42086666), SkBits2Float(0x4380ef6a), SkBits2Float(0x 420ccccd), SkBits2Float(0x438126ec), SkBits2Float(0x42113333), SkBits2Float(0x43 813333)); // 34.1f, 257.87f, 35.2f, 258.304f, 36.3f, 258.4f
1329 path.cubicTo(SkBits2Float(0x4215999a), SkBits2Float(0x43813f79), SkBits2Float(0x 421a0000), SkBits2Float(0x43813910), SkBits2Float(0x421e6666), SkBits2Float(0x43 8123bb)); // 37.4f, 258.496f, 38.5f, 258.446f, 39.6f, 258.279f
1330 path.cubicTo(SkBits2Float(0x4222cccd), SkBits2Float(0x43810e66), SkBits2Float(0x 42273333), SkBits2Float(0x4380c5f4), SkBits2Float(0x422b999a), SkBits2Float(0x43 80b333)); // 40.7f, 258.112f, 41.8f, 257.547f, 42.9f, 257.4f
1331 path.cubicTo(SkBits2Float(0x42300000), SkBits2Float(0x4380a071), SkBits2Float(0x 42346666), SkBits2Float(0x4380b333), SkBits2Float(0x4238cccd), SkBits2Float(0x43 80b333)); // 44, 257.253f, 45.1f, 257.4f, 46.2f, 257.4f
1332 path.cubicTo(SkBits2Float(0x423d3333), SkBits2Float(0x4380b333), SkBits2Float(0x 4241999a), SkBits2Float(0x4380a482), SkBits2Float(0x42460000), SkBits2Float(0x43 80b333)); // 47.3f, 257.4f, 48.4f, 257.285f, 49.5f, 257.4f
1333 path.cubicTo(SkBits2Float(0x424a6666), SkBits2Float(0x4380c1e4), SkBits2Float(0x 424ecccd), SkBits2Float(0x4380f603), SkBits2Float(0x42533333), SkBits2Float(0x43 810b58)); // 50.6f, 257.515f, 51.7f, 257.922f, 52.8f, 258.089f
1334 path.cubicTo(SkBits2Float(0x4257999a), SkBits2Float(0x438120ae), SkBits2Float(0x 425c0000), SkBits2Float(0x43812c8e), SkBits2Float(0x42606666), SkBits2Float(0x43 813333)); // 53.9f, 258.255f, 55, 258.348f, 56.1f, 258.4f
1335 path.cubicTo(SkBits2Float(0x4264cccd), SkBits2Float(0x438139d7), SkBits2Float(0x 42693333), SkBits2Float(0x43813333), SkBits2Float(0x426d999a), SkBits2Float(0x43 813333)); // 57.2f, 258.452f, 58.3f, 258.4f, 59.4f, 258.4f
1336 path.cubicTo(SkBits2Float(0x42720000), SkBits2Float(0x43813333), SkBits2Float(0x 42766666), SkBits2Float(0x43813a8b), SkBits2Float(0x427acccd), SkBits2Float(0x43 813333)); // 60.5f, 258.4f, 61.6f, 258.457f, 62.7f, 258.4f
1337 path.cubicTo(SkBits2Float(0x427f3333), SkBits2Float(0x43812bda), SkBits2Float(0x 4281cccd), SkBits2Float(0x43811c75), SkBits2Float(0x42840000), SkBits2Float(0x43 81071f)); // 63.8f, 258.343f, 64.9f, 258.222f, 66, 258.056f
1338 path.cubicTo(SkBits2Float(0x42863333), SkBits2Float(0x4380f1ca), SkBits2Float(0x 42886666), SkBits2Float(0x4380c130), SkBits2Float(0x428a999a), SkBits2Float(0x43 80b333)); // 67.1f, 257.889f, 68.2f, 257.509f, 69.3f, 257.4f
1339 path.cubicTo(SkBits2Float(0x428ccccd), SkBits2Float(0x4380a536), SkBits2Float(0x 428f0000), SkBits2Float(0x4380b333), SkBits2Float(0x42913333), SkBits2Float(0x43 80b333)); // 70.4f, 257.291f, 71.5f, 257.4f, 72.6f, 257.4f
1340 path.cubicTo(SkBits2Float(0x42936666), SkBits2Float(0x4380b333), SkBits2Float(0x 4295999a), SkBits2Float(0x4380ab4f), SkBits2Float(0x4297cccd), SkBits2Float(0x43 80b333)); // 73.7f, 257.4f, 74.8f, 257.338f, 75.9f, 257.4f
1341 path.cubicTo(SkBits2Float(0x429a0000), SkBits2Float(0x4380bb16), SkBits2Float(0x 429c3333), SkBits2Float(0x4380e287), SkBits2Float(0x429e6666), SkBits2Float(0x43 80e287)); // 77, 257.462f, 78.1f, 257.77f, 79.2f, 257.77f
1342 path.cubicTo(SkBits2Float(0x42a0999a), SkBits2Float(0x4380e287), SkBits2Float(0x 42a2cccd), SkBits2Float(0x4380bb16), SkBits2Float(0x42a50000), SkBits2Float(0x43 80b333)); // 80.3f, 257.77f, 81.4f, 257.462f, 82.5f, 257.4f
1343 path.cubicTo(SkBits2Float(0x42a73333), SkBits2Float(0x4380ab4f), SkBits2Float(0x 42a96666), SkBits2Float(0x4380b333), SkBits2Float(0x42ab999a), SkBits2Float(0x43 80b333)); // 83.6f, 257.338f, 84.7f, 257.4f, 85.8f, 257.4f
1344 path.lineTo(SkBits2Float(0x42ab999a), SkBits2Float(0x4380b333)); // 85.8f, 257. 4f
1345 path.lineTo(SkBits2Float(0x411e6666), SkBits2Float(0x4380b333)); // 9.9f, 257.4 f
1346 path.close();
1347 testPathOpCheck(reporter, pathA, path, SkPathOp::kUnion_SkPathOp, filename, FLAGS_runFail);
1348 }
1349
1112 static void (*skipTest)(skiatest::Reporter* , const char* filename) = 0; 1350 static void (*skipTest)(skiatest::Reporter* , const char* filename) = 0;
1113 static void (*firstTest)(skiatest::Reporter* , const char* filename) = issue3651 _3; 1351 static void (*firstTest)(skiatest::Reporter* , const char* filename) = 0;
1114 static void (*stopTest)(skiatest::Reporter* , const char* filename) = 0; 1352 static void (*stopTest)(skiatest::Reporter* , const char* filename) = 0;
1115 1353
1116 static struct TestDesc tests[] = { 1354 static struct TestDesc tests[] = {
1355 TEST(issue3651_5),
1356 TEST(issue3651_4),
1117 TEST(issue3651_1), 1357 TEST(issue3651_1),
1118 TEST(issue3651_2), 1358 TEST(issue3651_2),
1119 TEST(issue3651_3), 1359 TEST(issue3651_3),
1120 }; 1360 };
1121 1361
1122 static const size_t testCount = SK_ARRAY_COUNT(tests); 1362 static const size_t testCount = SK_ARRAY_COUNT(tests);
1123 1363
1124 static bool runReverse = false; 1364 static bool runReverse = false;
1125 1365
1126 DEF_TEST(PathOpsIssue3651, reporter) { 1366 DEF_TEST(PathOpsIssue3651, reporter) {
1127 #if DEBUG_SHOW_TEST_NAME 1367 #if DEBUG_SHOW_TEST_NAME
1128 strncpy(DEBUG_FILENAME_STRING, "", DEBUG_FILENAME_STRING_LENGTH); 1368 strncpy(DEBUG_FILENAME_STRING, "", DEBUG_FILENAME_STRING_LENGTH);
1129 #endif 1369 #endif
1130 RunTestSet(reporter, tests, testCount, firstTest, skipTest, stopTest, runRev erse); 1370 RunTestSet(reporter, tests, testCount, firstTest, skipTest, stopTest, runRev erse);
1131 } 1371 }
OLDNEW
« no previous file with comments | « tests/PathOpsExtendedTest.cpp ('k') | tests/PathOpsOpCubicThreadedTest.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698