Index: tests/PathTest.cpp |
diff --git a/tests/PathTest.cpp b/tests/PathTest.cpp |
index d25d349d4b216074f796c40d822b70b0d2948b3b..d7660a196b012c835011a43385644b2fa8dc691e 100644 |
--- a/tests/PathTest.cpp |
+++ b/tests/PathTest.cpp |
@@ -9,7 +9,7 @@ |
#include "SkPaint.h" |
#include "SkParse.h" |
#include "SkParsePath.h" |
-#include "SkPath.h" |
+#include "SkPathPriv.h" |
#include "SkPathEffect.h" |
#include "SkRRect.h" |
#include "SkRandom.h" |
@@ -807,30 +807,30 @@ static void test_strokerec(skiatest::Reporter* reporter) { |
// Set this for paths that don't have a consistent direction such as a bowtie. |
// (cheapComputeDirection is not expected to catch these.) |
-static const SkPath::Direction kDontCheckDir = static_cast<SkPath::Direction>(-1); |
+const SkPathPriv::FirstDirection kDontCheckDir = static_cast<SkPathPriv::FirstDirection>(-1); |
static void check_direction(skiatest::Reporter* reporter, const SkPath& path, |
- SkPath::Direction expected) { |
+ SkPathPriv::FirstDirection expected) { |
if (expected == kDontCheckDir) { |
return; |
} |
SkPath copy(path); // we make a copy so that we don't cache the result on the passed in path. |
- SkPath::Direction dir; |
- if (copy.cheapComputeDirection(&dir)) { |
+ SkPathPriv::FirstDirection dir; |
+ if (SkPathPriv::CheapComputeFirstDirection(copy, &dir)) { |
REPORTER_ASSERT(reporter, dir == expected); |
} else { |
- REPORTER_ASSERT(reporter, SkPath::kUnknown_Direction == expected); |
+ REPORTER_ASSERT(reporter, SkPathPriv::kUnknown_FirstDirection == expected); |
} |
} |
static void test_direction(skiatest::Reporter* reporter) { |
size_t i; |
SkPath path; |
- REPORTER_ASSERT(reporter, !path.cheapComputeDirection(NULL)); |
- REPORTER_ASSERT(reporter, !path.cheapIsDirection(SkPath::kCW_Direction)); |
- REPORTER_ASSERT(reporter, !path.cheapIsDirection(SkPath::kCCW_Direction)); |
- REPORTER_ASSERT(reporter, path.cheapIsDirection(SkPath::kUnknown_Direction)); |
+ REPORTER_ASSERT(reporter, !SkPathPriv::CheapComputeFirstDirection(path, NULL)); |
+ REPORTER_ASSERT(reporter, !SkPathPriv::CheapIsFirstDirection(path, SkPathPriv::kCW_FirstDirection)); |
+ REPORTER_ASSERT(reporter, !SkPathPriv::CheapIsFirstDirection(path, SkPathPriv::kCCW_FirstDirection)); |
+ REPORTER_ASSERT(reporter, SkPathPriv::CheapIsFirstDirection(path, SkPathPriv::kUnknown_FirstDirection)); |
static const char* gDegen[] = { |
"M 10 10", |
@@ -844,7 +844,7 @@ static void test_direction(skiatest::Reporter* reporter) { |
path.reset(); |
bool valid = SkParsePath::FromSVGString(gDegen[i], &path); |
REPORTER_ASSERT(reporter, valid); |
- REPORTER_ASSERT(reporter, !path.cheapComputeDirection(NULL)); |
+ REPORTER_ASSERT(reporter, !SkPathPriv::CheapComputeFirstDirection(path, NULL)); |
} |
static const char* gCW[] = { |
@@ -860,7 +860,7 @@ static void test_direction(skiatest::Reporter* reporter) { |
path.reset(); |
bool valid = SkParsePath::FromSVGString(gCW[i], &path); |
REPORTER_ASSERT(reporter, valid); |
- check_direction(reporter, path, SkPath::kCW_Direction); |
+ check_direction(reporter, path, SkPathPriv::kCW_FirstDirection); |
} |
static const char* gCCW[] = { |
@@ -876,7 +876,7 @@ static void test_direction(skiatest::Reporter* reporter) { |
path.reset(); |
bool valid = SkParsePath::FromSVGString(gCCW[i], &path); |
REPORTER_ASSERT(reporter, valid); |
- check_direction(reporter, path, SkPath::kCCW_Direction); |
+ check_direction(reporter, path, SkPathPriv::kCCW_FirstDirection); |
} |
// Test two donuts, each wound a different direction. Only the outer contour |
@@ -884,12 +884,12 @@ static void test_direction(skiatest::Reporter* reporter) { |
path.reset(); |
path.addCircle(0, 0, SkIntToScalar(2), SkPath::kCW_Direction); |
path.addCircle(0, 0, SkIntToScalar(1), SkPath::kCCW_Direction); |
- check_direction(reporter, path, SkPath::kCW_Direction); |
+ check_direction(reporter, path, SkPathPriv::kCW_FirstDirection); |
path.reset(); |
path.addCircle(0, 0, SkIntToScalar(1), SkPath::kCW_Direction); |
path.addCircle(0, 0, SkIntToScalar(2), SkPath::kCCW_Direction); |
- check_direction(reporter, path, SkPath::kCCW_Direction); |
+ check_direction(reporter, path, SkPathPriv::kCCW_FirstDirection); |
// triangle with one point really far from the origin. |
path.reset(); |
@@ -897,19 +897,19 @@ static void test_direction(skiatest::Reporter* reporter) { |
path.moveTo(SkBits2Float(0x501c7652), SkBits2Float(0x501c7652)); |
path.lineTo(110 * SK_Scalar1, -10 * SK_Scalar1); |
path.lineTo(-10 * SK_Scalar1, 60 * SK_Scalar1); |
- check_direction(reporter, path, SkPath::kCCW_Direction); |
+ check_direction(reporter, path, SkPathPriv::kCCW_FirstDirection); |
path.reset(); |
path.conicTo(20, 0, 20, 20, 0.5f); |
path.close(); |
- check_direction(reporter, path, SkPath::kCW_Direction); |
+ check_direction(reporter, path, SkPathPriv::kCW_FirstDirection); |
path.reset(); |
path.lineTo(1, 1e7f); |
path.lineTo(1e7f, 2e7f); |
path.close(); |
REPORTER_ASSERT(reporter, SkPath::kConvex_Convexity == path.getConvexity()); |
- check_direction(reporter, path, SkPath::kCCW_Direction); |
+ check_direction(reporter, path, SkPathPriv::kCCW_FirstDirection); |
} |
static void add_rect(SkPath* path, const SkRect& r) { |
@@ -1085,7 +1085,7 @@ static void test_path_crbug389050(skiatest::Reporter* reporter) { |
tinyConvexPolygon.close(); |
tinyConvexPolygon.getConvexity(); |
check_convexity(reporter, tinyConvexPolygon, SkPath::kConvex_Convexity); |
- check_direction(reporter, tinyConvexPolygon, SkPath::kCW_Direction); |
+ check_direction(reporter, tinyConvexPolygon, SkPathPriv::kCW_FirstDirection); |
SkPath platTriangle; |
platTriangle.moveTo(0, 0); |
@@ -1093,7 +1093,7 @@ static void test_path_crbug389050(skiatest::Reporter* reporter) { |
platTriangle.lineTo(100, 0.04f); |
platTriangle.close(); |
platTriangle.getConvexity(); |
- check_direction(reporter, platTriangle, SkPath::kCW_Direction); |
+ check_direction(reporter, platTriangle, SkPathPriv::kCW_FirstDirection); |
platTriangle.reset(); |
platTriangle.moveTo(0, 0); |
@@ -1101,7 +1101,7 @@ static void test_path_crbug389050(skiatest::Reporter* reporter) { |
platTriangle.lineTo(100, 0.03f); |
platTriangle.close(); |
platTriangle.getConvexity(); |
- check_direction(reporter, platTriangle, SkPath::kCW_Direction); |
+ check_direction(reporter, platTriangle, SkPathPriv::kCW_FirstDirection); |
} |
static void test_convexity2(skiatest::Reporter* reporter) { |
@@ -1109,14 +1109,14 @@ static void test_convexity2(skiatest::Reporter* reporter) { |
pt.moveTo(0, 0); |
pt.close(); |
check_convexity(reporter, pt, SkPath::kConvex_Convexity); |
- check_direction(reporter, pt, SkPath::kUnknown_Direction); |
+ check_direction(reporter, pt, SkPathPriv::kUnknown_FirstDirection); |
SkPath line; |
line.moveTo(12*SK_Scalar1, 20*SK_Scalar1); |
line.lineTo(-12*SK_Scalar1, -20*SK_Scalar1); |
line.close(); |
check_convexity(reporter, line, SkPath::kConvex_Convexity); |
- check_direction(reporter, line, SkPath::kUnknown_Direction); |
+ check_direction(reporter, line, SkPathPriv::kUnknown_FirstDirection); |
SkPath triLeft; |
triLeft.moveTo(0, 0); |
@@ -1124,7 +1124,7 @@ static void test_convexity2(skiatest::Reporter* reporter) { |
triLeft.lineTo(SK_Scalar1, SK_Scalar1); |
triLeft.close(); |
check_convexity(reporter, triLeft, SkPath::kConvex_Convexity); |
- check_direction(reporter, triLeft, SkPath::kCW_Direction); |
+ check_direction(reporter, triLeft, SkPathPriv::kCW_FirstDirection); |
SkPath triRight; |
triRight.moveTo(0, 0); |
@@ -1132,7 +1132,7 @@ static void test_convexity2(skiatest::Reporter* reporter) { |
triRight.lineTo(SK_Scalar1, SK_Scalar1); |
triRight.close(); |
check_convexity(reporter, triRight, SkPath::kConvex_Convexity); |
- check_direction(reporter, triRight, SkPath::kCCW_Direction); |
+ check_direction(reporter, triRight, SkPathPriv::kCCW_FirstDirection); |
SkPath square; |
square.moveTo(0, 0); |
@@ -1141,7 +1141,7 @@ static void test_convexity2(skiatest::Reporter* reporter) { |
square.lineTo(0, SK_Scalar1); |
square.close(); |
check_convexity(reporter, square, SkPath::kConvex_Convexity); |
- check_direction(reporter, square, SkPath::kCW_Direction); |
+ check_direction(reporter, square, SkPathPriv::kCW_FirstDirection); |
SkPath redundantSquare; |
redundantSquare.moveTo(0, 0); |
@@ -1158,7 +1158,7 @@ static void test_convexity2(skiatest::Reporter* reporter) { |
redundantSquare.lineTo(0, SK_Scalar1); |
redundantSquare.close(); |
check_convexity(reporter, redundantSquare, SkPath::kConvex_Convexity); |
- check_direction(reporter, redundantSquare, SkPath::kCW_Direction); |
+ check_direction(reporter, redundantSquare, SkPathPriv::kCW_FirstDirection); |
SkPath bowTie; |
bowTie.moveTo(0, 0); |
@@ -1197,7 +1197,7 @@ static void test_convexity2(skiatest::Reporter* reporter) { |
dent.lineTo(-200*SK_Scalar1, 100*SK_Scalar1); |
dent.close(); |
check_convexity(reporter, dent, SkPath::kConcave_Convexity); |
- check_direction(reporter, dent, SkPath::kCW_Direction); |
+ check_direction(reporter, dent, SkPathPriv::kCW_FirstDirection); |
// http://skbug.com/2235 |
SkPath strokedSin; |
@@ -1225,7 +1225,7 @@ static void test_convexity2(skiatest::Reporter* reporter) { |
degenerateConcave.lineTo(-55.971577f, 460.0f); |
degenerateConcave.lineTo(41.446522f, 376.25f); |
check_convexity(reporter, degenerateConcave, SkPath::kConcave_Convexity); |
- check_direction(reporter, degenerateConcave, SkPath::kUnknown_Direction); |
+ check_direction(reporter, degenerateConcave, SkPathPriv::kUnknown_FirstDirection); |
// http://crbug.com/433683 |
SkPath badFirstVector; |
@@ -1288,26 +1288,26 @@ static void test_convexity(skiatest::Reporter* reporter) { |
path.reset(); |
path.addRect(0, 0, SkIntToScalar(10), SkIntToScalar(10), SkPath::kCCW_Direction); |
check_convexity(reporter, path, SkPath::kConvex_Convexity); |
- REPORTER_ASSERT(reporter, path.cheapIsDirection(SkPath::kCCW_Direction)); |
+ REPORTER_ASSERT(reporter, SkPathPriv::CheapIsFirstDirection(path, SkPathPriv::kCCW_FirstDirection)); |
path.reset(); |
path.addRect(0, 0, SkIntToScalar(10), SkIntToScalar(10), SkPath::kCW_Direction); |
check_convexity(reporter, path, SkPath::kConvex_Convexity); |
- REPORTER_ASSERT(reporter, path.cheapIsDirection(SkPath::kCW_Direction)); |
+ REPORTER_ASSERT(reporter, SkPathPriv::CheapIsFirstDirection(path, SkPathPriv::kCW_FirstDirection)); |
static const struct { |
- const char* fPathStr; |
- SkPath::Convexity fExpectedConvexity; |
- SkPath::Direction fExpectedDirection; |
+ const char* fPathStr; |
+ SkPath::Convexity fExpectedConvexity; |
+ SkPathPriv::FirstDirection fExpectedDirection; |
} gRec[] = { |
- { "", SkPath::kConvex_Convexity, SkPath::kUnknown_Direction }, |
- { "0 0", SkPath::kConvex_Convexity, SkPath::kUnknown_Direction }, |
- { "0 0 10 10", SkPath::kConvex_Convexity, SkPath::kUnknown_Direction }, |
- { "0 0 10 10 20 20 0 0 10 10", SkPath::kConcave_Convexity, SkPath::kUnknown_Direction }, |
- { "0 0 10 10 10 20", SkPath::kConvex_Convexity, SkPath::kCW_Direction }, |
- { "0 0 10 10 10 0", SkPath::kConvex_Convexity, SkPath::kCCW_Direction }, |
+ { "", SkPath::kConvex_Convexity, SkPathPriv::kUnknown_FirstDirection }, |
+ { "0 0", SkPath::kConvex_Convexity, SkPathPriv::kUnknown_FirstDirection }, |
+ { "0 0 10 10", SkPath::kConvex_Convexity, SkPathPriv::kUnknown_FirstDirection }, |
+ { "0 0 10 10 20 20 0 0 10 10", SkPath::kConcave_Convexity, SkPathPriv::kUnknown_FirstDirection }, |
+ { "0 0 10 10 10 20", SkPath::kConvex_Convexity, SkPathPriv::kCW_FirstDirection }, |
+ { "0 0 10 10 10 0", SkPath::kConvex_Convexity, SkPathPriv::kCCW_FirstDirection }, |
{ "0 0 10 10 10 0 0 10", SkPath::kConcave_Convexity, kDontCheckDir }, |
- { "0 0 10 0 0 10 -10 -10", SkPath::kConcave_Convexity, SkPath::kCW_Direction }, |
+ { "0 0 10 0 0 10 -10 -10", SkPath::kConcave_Convexity, SkPathPriv::kCW_FirstDirection }, |
}; |
for (size_t i = 0; i < SK_ARRAY_COUNT(gRec); ++i) { |
@@ -1318,9 +1318,9 @@ static void test_convexity(skiatest::Reporter* reporter) { |
// check after setting the initial convex and direction |
if (kDontCheckDir != gRec[i].fExpectedDirection) { |
SkPath copy(path); |
- SkPath::Direction dir; |
- bool foundDir = copy.cheapComputeDirection(&dir); |
- REPORTER_ASSERT(reporter, (gRec[i].fExpectedDirection == SkPath::kUnknown_Direction) |
+ SkPathPriv::FirstDirection dir; |
+ bool foundDir = SkPathPriv::CheapComputeFirstDirection(copy, &dir); |
+ REPORTER_ASSERT(reporter, (gRec[i].fExpectedDirection == SkPathPriv::kUnknown_FirstDirection) |
^ foundDir); |
REPORTER_ASSERT(reporter, !foundDir || gRec[i].fExpectedDirection == dir); |
check_convexity(reporter, copy, gRec[i].fExpectedConvexity); |
@@ -1781,13 +1781,14 @@ static void test_isRect(skiatest::Reporter* reporter) { |
if (tests[testIndex].fIsRect) { |
SkRect computed, expected; |
bool isClosed; |
- SkPath::Direction direction, cheapDirection; |
+ SkPath::Direction direction; |
+ SkPathPriv::FirstDirection cheapDirection; |
expected.set(tests[testIndex].fPoints, tests[testIndex].fPointCount); |
- REPORTER_ASSERT(reporter, path.cheapComputeDirection(&cheapDirection)); |
+ REPORTER_ASSERT(reporter, SkPathPriv::CheapComputeFirstDirection(path, &cheapDirection)); |
REPORTER_ASSERT(reporter, path.isRect(&computed, &isClosed, &direction)); |
REPORTER_ASSERT(reporter, expected == computed); |
REPORTER_ASSERT(reporter, isClosed == tests[testIndex].fClose); |
- REPORTER_ASSERT(reporter, direction == cheapDirection); |
+ REPORTER_ASSERT(reporter, SkPathPriv::AsFirstDirection(direction) == cheapDirection); |
} else { |
SkRect computed; |
computed.set(123, 456, 789, 1011); |
@@ -1891,36 +1892,36 @@ static void test_isNestedFillRects(skiatest::Reporter* reporter) { |
struct IsNestedRectTest { |
SkPoint *fPoints; |
int fPointCount; |
- SkPath::Direction fDirection; |
+ SkPathPriv::FirstDirection fDirection; |
bool fClose; |
bool fIsNestedRect; // nests with path.addRect(-1, -1, 2, 2); |
} tests[] = { |
- { r1, SK_ARRAY_COUNT(r1), SkPath::kCW_Direction , true, true }, |
- { r2, SK_ARRAY_COUNT(r2), SkPath::kCW_Direction , true, true }, |
- { r3, SK_ARRAY_COUNT(r3), SkPath::kCW_Direction , true, true }, |
- { r4, SK_ARRAY_COUNT(r4), SkPath::kCW_Direction , true, true }, |
- { r5, SK_ARRAY_COUNT(r5), SkPath::kCCW_Direction, true, true }, |
- { r6, SK_ARRAY_COUNT(r6), SkPath::kCCW_Direction, true, true }, |
- { r7, SK_ARRAY_COUNT(r7), SkPath::kCCW_Direction, true, true }, |
- { r8, SK_ARRAY_COUNT(r8), SkPath::kCCW_Direction, true, true }, |
- { r9, SK_ARRAY_COUNT(r9), SkPath::kCCW_Direction, true, true }, |
- { ra, SK_ARRAY_COUNT(ra), SkPath::kCCW_Direction, true, true }, |
- { rb, SK_ARRAY_COUNT(rb), SkPath::kCW_Direction, true, true }, |
- { rc, SK_ARRAY_COUNT(rc), SkPath::kCW_Direction, true, true }, |
- { rd, SK_ARRAY_COUNT(rd), SkPath::kCCW_Direction, true, true }, |
- { re, SK_ARRAY_COUNT(re), SkPath::kCW_Direction, true, true }, |
- |
- { f1, SK_ARRAY_COUNT(f1), SkPath::kUnknown_Direction, true, false }, |
- { f2, SK_ARRAY_COUNT(f2), SkPath::kUnknown_Direction, true, false }, |
- { f3, SK_ARRAY_COUNT(f3), SkPath::kUnknown_Direction, true, false }, |
- { f4, SK_ARRAY_COUNT(f4), SkPath::kUnknown_Direction, true, false }, |
- { f5, SK_ARRAY_COUNT(f5), SkPath::kUnknown_Direction, true, false }, |
- { f6, SK_ARRAY_COUNT(f6), SkPath::kUnknown_Direction, true, false }, |
- { f7, SK_ARRAY_COUNT(f7), SkPath::kUnknown_Direction, true, false }, |
- { f8, SK_ARRAY_COUNT(f8), SkPath::kUnknown_Direction, true, false }, |
- |
- { c1, SK_ARRAY_COUNT(c1), SkPath::kCW_Direction, false, true }, |
- { c2, SK_ARRAY_COUNT(c2), SkPath::kCW_Direction, false, true }, |
+ { r1, SK_ARRAY_COUNT(r1), SkPathPriv::kCW_FirstDirection , true, true }, |
+ { r2, SK_ARRAY_COUNT(r2), SkPathPriv::kCW_FirstDirection , true, true }, |
+ { r3, SK_ARRAY_COUNT(r3), SkPathPriv::kCW_FirstDirection , true, true }, |
+ { r4, SK_ARRAY_COUNT(r4), SkPathPriv::kCW_FirstDirection , true, true }, |
+ { r5, SK_ARRAY_COUNT(r5), SkPathPriv::kCCW_FirstDirection, true, true }, |
+ { r6, SK_ARRAY_COUNT(r6), SkPathPriv::kCCW_FirstDirection, true, true }, |
+ { r7, SK_ARRAY_COUNT(r7), SkPathPriv::kCCW_FirstDirection, true, true }, |
+ { r8, SK_ARRAY_COUNT(r8), SkPathPriv::kCCW_FirstDirection, true, true }, |
+ { r9, SK_ARRAY_COUNT(r9), SkPathPriv::kCCW_FirstDirection, true, true }, |
+ { ra, SK_ARRAY_COUNT(ra), SkPathPriv::kCCW_FirstDirection, true, true }, |
+ { rb, SK_ARRAY_COUNT(rb), SkPathPriv::kCW_FirstDirection, true, true }, |
+ { rc, SK_ARRAY_COUNT(rc), SkPathPriv::kCW_FirstDirection, true, true }, |
+ { rd, SK_ARRAY_COUNT(rd), SkPathPriv::kCCW_FirstDirection, true, true }, |
+ { re, SK_ARRAY_COUNT(re), SkPathPriv::kCW_FirstDirection, true, true }, |
+ |
+ { f1, SK_ARRAY_COUNT(f1), SkPathPriv::kUnknown_FirstDirection, true, false }, |
+ { f2, SK_ARRAY_COUNT(f2), SkPathPriv::kUnknown_FirstDirection, true, false }, |
+ { f3, SK_ARRAY_COUNT(f3), SkPathPriv::kUnknown_FirstDirection, true, false }, |
+ { f4, SK_ARRAY_COUNT(f4), SkPathPriv::kUnknown_FirstDirection, true, false }, |
+ { f5, SK_ARRAY_COUNT(f5), SkPathPriv::kUnknown_FirstDirection, true, false }, |
+ { f6, SK_ARRAY_COUNT(f6), SkPathPriv::kUnknown_FirstDirection, true, false }, |
+ { f7, SK_ARRAY_COUNT(f7), SkPathPriv::kUnknown_FirstDirection, true, false }, |
+ { f8, SK_ARRAY_COUNT(f8), SkPathPriv::kUnknown_FirstDirection, true, false }, |
+ |
+ { c1, SK_ARRAY_COUNT(c1), SkPathPriv::kCW_FirstDirection, false, true }, |
+ { c2, SK_ARRAY_COUNT(c2), SkPathPriv::kCW_FirstDirection, false, true }, |
}; |
const size_t testCount = SK_ARRAY_COUNT(tests); |
@@ -1945,22 +1946,23 @@ static void test_isNestedFillRects(skiatest::Reporter* reporter) { |
tests[testIndex].fIsNestedRect == path.isNestedFillRects(NULL)); |
if (tests[testIndex].fIsNestedRect) { |
SkRect expected[2], computed[2]; |
- SkPath::Direction expectedDirs[2], computedDirs[2]; |
+ SkPathPriv::FirstDirection expectedDirs[2]; |
+ SkPath::Direction computedDirs[2]; |
SkRect testBounds; |
testBounds.set(tests[testIndex].fPoints, tests[testIndex].fPointCount); |
expected[0] = SkRect::MakeLTRB(-1, -1, 2, 2); |
expected[1] = testBounds; |
if (rectFirst) { |
- expectedDirs[0] = SkPath::kCW_Direction; |
+ expectedDirs[0] = SkPathPriv::kCW_FirstDirection; |
} else { |
- expectedDirs[0] = SkPath::kCCW_Direction; |
+ expectedDirs[0] = SkPathPriv::kCCW_FirstDirection; |
} |
expectedDirs[1] = tests[testIndex].fDirection; |
REPORTER_ASSERT(reporter, path.isNestedFillRects(computed, computedDirs)); |
REPORTER_ASSERT(reporter, expected[0] == computed[0]); |
REPORTER_ASSERT(reporter, expected[1] == computed[1]); |
- REPORTER_ASSERT(reporter, expectedDirs[0] == computedDirs[0]); |
- REPORTER_ASSERT(reporter, expectedDirs[1] == computedDirs[1]); |
+ REPORTER_ASSERT(reporter, expectedDirs[0] == SkPathPriv::AsFirstDirection(computedDirs[0])); |
+ REPORTER_ASSERT(reporter, expectedDirs[1] == SkPathPriv::AsFirstDirection(computedDirs[1])); |
} |
} |
@@ -2233,7 +2235,7 @@ static void test_transform(skiatest::Reporter* reporter) { |
p1.moveTo(SkPoint::Make(0, 0)); |
p.transform(matrix, &p1); |
- REPORTER_ASSERT(reporter, p1.cheapIsDirection(SkPath::kCW_Direction)); |
+ REPORTER_ASSERT(reporter, SkPathPriv::CheapIsFirstDirection(p1, SkPathPriv::kCW_FirstDirection)); |
} |
@@ -2245,7 +2247,7 @@ static void test_transform(skiatest::Reporter* reporter) { |
p1.moveTo(SkPoint::Make(0, 0)); // Make p1 unique (i.e., not empty path) |
p.transform(matrix, &p1); |
- REPORTER_ASSERT(reporter, p1.cheapIsDirection(SkPath::kCCW_Direction)); |
+ REPORTER_ASSERT(reporter, SkPathPriv::CheapIsFirstDirection(p1, SkPathPriv::kCCW_FirstDirection)); |
} |
{ |
@@ -2255,7 +2257,7 @@ static void test_transform(skiatest::Reporter* reporter) { |
p1.moveTo(SkPoint::Make(0, 0)); // Make p1 unique (i.e., not empty path) |
p.transform(matrix, &p1); |
- REPORTER_ASSERT(reporter, p1.cheapIsDirection(SkPath::kUnknown_Direction)); |
+ REPORTER_ASSERT(reporter, SkPathPriv::CheapIsFirstDirection(p1, SkPathPriv::kUnknown_FirstDirection)); |
} |
} |
@@ -2769,10 +2771,10 @@ static void test_raw_iter(skiatest::Reporter* reporter) { |
static void check_for_circle(skiatest::Reporter* reporter, |
const SkPath& path, |
bool expectedCircle, |
- SkPath::Direction expectedDir) { |
+ SkPathPriv::FirstDirection expectedDir) { |
SkRect rect = SkRect::MakeEmpty(); |
REPORTER_ASSERT(reporter, path.isOval(&rect) == expectedCircle); |
- REPORTER_ASSERT(reporter, path.cheapIsDirection(expectedDir)); |
+ REPORTER_ASSERT(reporter, SkPathPriv::CheapIsFirstDirection(path, expectedDir)); |
if (expectedCircle) { |
REPORTER_ASSERT(reporter, rect.height() == rect.width()); |
@@ -2781,25 +2783,25 @@ static void check_for_circle(skiatest::Reporter* reporter, |
static void test_circle_skew(skiatest::Reporter* reporter, |
const SkPath& path, |
- SkPath::Direction dir) { |
+ SkPathPriv::FirstDirection dir) { |
SkPath tmp; |
SkMatrix m; |
m.setSkew(SkIntToScalar(3), SkIntToScalar(5)); |
path.transform(m, &tmp); |
// this matrix reverses the direction. |
- if (SkPath::kCCW_Direction == dir) { |
- dir = SkPath::kCW_Direction; |
+ if (SkPathPriv::kCCW_FirstDirection == dir) { |
+ dir = SkPathPriv::kCW_FirstDirection; |
} else { |
- REPORTER_ASSERT(reporter, SkPath::kCW_Direction == dir); |
- dir = SkPath::kCCW_Direction; |
+ REPORTER_ASSERT(reporter, SkPathPriv::kCW_FirstDirection == dir); |
+ dir = SkPathPriv::kCCW_FirstDirection; |
} |
check_for_circle(reporter, tmp, false, dir); |
} |
static void test_circle_translate(skiatest::Reporter* reporter, |
const SkPath& path, |
- SkPath::Direction dir) { |
+ SkPathPriv::FirstDirection dir) { |
SkPath tmp; |
// translate at small offset |
@@ -2819,7 +2821,7 @@ static void test_circle_translate(skiatest::Reporter* reporter, |
static void test_circle_rotate(skiatest::Reporter* reporter, |
const SkPath& path, |
- SkPath::Direction dir) { |
+ SkPathPriv::FirstDirection dir) { |
for (int angle = 0; angle < 360; ++angle) { |
SkPath tmp; |
SkMatrix m; |
@@ -2839,18 +2841,18 @@ static void test_circle_rotate(skiatest::Reporter* reporter, |
static void test_circle_mirror_x(skiatest::Reporter* reporter, |
const SkPath& path, |
- SkPath::Direction dir) { |
+ SkPathPriv::FirstDirection dir) { |
SkPath tmp; |
SkMatrix m; |
m.reset(); |
m.setScaleX(-SK_Scalar1); |
path.transform(m, &tmp); |
- if (SkPath::kCW_Direction == dir) { |
- dir = SkPath::kCCW_Direction; |
+ if (SkPathPriv::kCW_FirstDirection == dir) { |
+ dir = SkPathPriv::kCCW_FirstDirection; |
} else { |
- REPORTER_ASSERT(reporter, SkPath::kCCW_Direction == dir); |
- dir = SkPath::kCW_Direction; |
+ REPORTER_ASSERT(reporter, SkPathPriv::kCCW_FirstDirection == dir); |
+ dir = SkPathPriv::kCW_FirstDirection; |
} |
check_for_circle(reporter, tmp, true, dir); |
@@ -2858,18 +2860,18 @@ static void test_circle_mirror_x(skiatest::Reporter* reporter, |
static void test_circle_mirror_y(skiatest::Reporter* reporter, |
const SkPath& path, |
- SkPath::Direction dir) { |
+ SkPathPriv::FirstDirection dir) { |
SkPath tmp; |
SkMatrix m; |
m.reset(); |
m.setScaleY(-SK_Scalar1); |
path.transform(m, &tmp); |
- if (SkPath::kCW_Direction == dir) { |
- dir = SkPath::kCCW_Direction; |
+ if (SkPathPriv::kCW_FirstDirection == dir) { |
+ dir = SkPathPriv::kCCW_FirstDirection; |
} else { |
- REPORTER_ASSERT(reporter, SkPath::kCCW_Direction == dir); |
- dir = SkPath::kCW_Direction; |
+ REPORTER_ASSERT(reporter, SkPathPriv::kCCW_FirstDirection == dir); |
+ dir = SkPathPriv::kCW_FirstDirection; |
} |
check_for_circle(reporter, tmp, true, dir); |
@@ -2877,7 +2879,7 @@ static void test_circle_mirror_y(skiatest::Reporter* reporter, |
static void test_circle_mirror_xy(skiatest::Reporter* reporter, |
const SkPath& path, |
- SkPath::Direction dir) { |
+ SkPathPriv::FirstDirection dir) { |
SkPath tmp; |
SkMatrix m; |
m.reset(); |
@@ -2889,11 +2891,13 @@ static void test_circle_mirror_xy(skiatest::Reporter* reporter, |
} |
static void test_circle_with_direction(skiatest::Reporter* reporter, |
- SkPath::Direction dir) { |
+ SkPath::Direction inDir) { |
+ const SkPathPriv::FirstDirection dir = SkPathPriv::AsFirstDirection(inDir); |
SkPath path; |
// circle at origin |
- path.addCircle(0, 0, SkIntToScalar(20), dir); |
+ path.addCircle(0, 0, SkIntToScalar(20), inDir); |
+ |
check_for_circle(reporter, path, true, dir); |
test_circle_rotate(reporter, path, dir); |
test_circle_translate(reporter, path, dir); |
@@ -2902,7 +2906,8 @@ static void test_circle_with_direction(skiatest::Reporter* reporter, |
// circle at an offset at (10, 10) |
path.reset(); |
path.addCircle(SkIntToScalar(10), SkIntToScalar(10), |
- SkIntToScalar(20), dir); |
+ SkIntToScalar(20), inDir); |
+ |
check_for_circle(reporter, path, true, dir); |
test_circle_rotate(reporter, path, dir); |
test_circle_translate(reporter, path, dir); |
@@ -2918,8 +2923,8 @@ static void test_circle_with_add_paths(skiatest::Reporter* reporter) { |
SkPath rect; |
SkPath empty; |
- static const SkPath::Direction kCircleDir = SkPath::kCW_Direction; |
- static const SkPath::Direction kCircleDirOpposite = SkPath::kCCW_Direction; |
+ const SkPath::Direction kCircleDir = SkPath::kCW_Direction; |
+ const SkPath::Direction kCircleDirOpposite = SkPath::kCCW_Direction; |
circle.addCircle(0, 0, SkIntToScalar(10), kCircleDir); |
rect.addRect(SkIntToScalar(5), SkIntToScalar(5), |
@@ -2934,17 +2939,17 @@ static void test_circle_with_add_paths(skiatest::Reporter* reporter) { |
// empty + circle (translate) |
path = empty; |
path.addPath(circle, translate); |
- check_for_circle(reporter, path, false, kCircleDir); |
+ check_for_circle(reporter, path, false, SkPathPriv::AsFirstDirection(kCircleDir)); |
// circle + empty (translate) |
path = circle; |
path.addPath(empty, translate); |
- check_for_circle(reporter, path, true, kCircleDir); |
+ check_for_circle(reporter, path, true, SkPathPriv::AsFirstDirection(kCircleDir)); |
// test reverseAddPath |
path = circle; |
path.reverseAddPath(rect); |
- check_for_circle(reporter, path, false, kCircleDirOpposite); |
+ check_for_circle(reporter, path, false, SkPathPriv::AsFirstDirection(kCircleDirOpposite)); |
} |
static void test_circle(skiatest::Reporter* reporter) { |
@@ -2955,19 +2960,19 @@ static void test_circle(skiatest::Reporter* reporter) { |
SkPath path; |
path.addCircle(0, 0, SkIntToScalar(10), SkPath::kCW_Direction); |
path.addCircle(0, 0, SkIntToScalar(20), SkPath::kCW_Direction); |
- check_for_circle(reporter, path, false, SkPath::kCW_Direction); |
+ check_for_circle(reporter, path, false, SkPathPriv::kCW_FirstDirection); |
// some extra lineTo() would make isOval() fail |
path.reset(); |
path.addCircle(0, 0, SkIntToScalar(10), SkPath::kCW_Direction); |
path.lineTo(0, 0); |
- check_for_circle(reporter, path, false, SkPath::kCW_Direction); |
+ check_for_circle(reporter, path, false, SkPathPriv::kCW_FirstDirection); |
// not back to the original point |
path.reset(); |
path.addCircle(0, 0, SkIntToScalar(10), SkPath::kCW_Direction); |
path.setLastPt(SkIntToScalar(5), SkIntToScalar(5)); |
- check_for_circle(reporter, path, false, SkPath::kCW_Direction); |
+ check_for_circle(reporter, path, false, SkPathPriv::kCW_FirstDirection); |
test_circle_with_add_paths(reporter); |
@@ -3049,7 +3054,7 @@ static void test_empty(skiatest::Reporter* reporter, const SkPath& p) { |
static void test_rrect_is_convex(skiatest::Reporter* reporter, SkPath* path, |
SkPath::Direction dir) { |
REPORTER_ASSERT(reporter, path->isConvex()); |
- REPORTER_ASSERT(reporter, path->cheapIsDirection(dir)); |
+ REPORTER_ASSERT(reporter, SkPathPriv::CheapIsFirstDirection(*path, SkPathPriv::AsFirstDirection(dir))); |
path->setConvexity(SkPath::kUnknown_Convexity); |
REPORTER_ASSERT(reporter, path->isConvex()); |
path->reset(); |
@@ -3058,7 +3063,7 @@ static void test_rrect_is_convex(skiatest::Reporter* reporter, SkPath* path, |
static void test_rrect_convexity_is_unknown(skiatest::Reporter* reporter, SkPath* path, |
SkPath::Direction dir) { |
REPORTER_ASSERT(reporter, path->isConvex()); |
- REPORTER_ASSERT(reporter, path->cheapIsDirection(dir)); |
+ REPORTER_ASSERT(reporter, SkPathPriv::CheapIsFirstDirection(*path, SkPathPriv::AsFirstDirection(dir))); |
path->setConvexity(SkPath::kUnknown_Convexity); |
REPORTER_ASSERT(reporter, path->getConvexity() == SkPath::kUnknown_Convexity); |
path->reset(); |
@@ -3154,7 +3159,7 @@ static void test_arc(skiatest::Reporter* reporter) { |
p.reset(); |
p.addArc(oval, 1, 180); |
REPORTER_ASSERT(reporter, p.isConvex()); |
- REPORTER_ASSERT(reporter, p.cheapIsDirection(SkPath::kCW_Direction)); |
+ REPORTER_ASSERT(reporter, SkPathPriv::CheapIsFirstDirection(p, SkPathPriv::kCW_FirstDirection)); |
p.setConvexity(SkPath::kUnknown_Convexity); |
REPORTER_ASSERT(reporter, p.isConvex()); |
} |