diff options
author | 2015-01-29 10:43:09 -0800 | |
---|---|---|
committer | 2015-01-29 10:43:09 -0800 | |
commit | 17a2b5473d0144d10749ef8d26a10fbdab580226 (patch) | |
tree | 6e1d4b8db55db4dedb6d28f975eef294bd7ab1a8 /experimental/Intersection/SimplifyFindTop_Test.cpp | |
parent | f75a130c459596c23595d1bf0654863ab5fe3541 (diff) |
The original instantiation of pathops was in the experimental/Intersection directory. Anything of value has been copied into the mainline.
The obsolete gyp files are also included, along with a pixman test that never functioned but accidentally referenced some of these deleted files.
Review URL: https://codereview.chromium.org/867213004
Diffstat (limited to 'experimental/Intersection/SimplifyFindTop_Test.cpp')
-rw-r--r-- | experimental/Intersection/SimplifyFindTop_Test.cpp | 222 |
1 files changed, 0 insertions, 222 deletions
diff --git a/experimental/Intersection/SimplifyFindTop_Test.cpp b/experimental/Intersection/SimplifyFindTop_Test.cpp deleted file mode 100644 index 5f267503a9..0000000000 --- a/experimental/Intersection/SimplifyFindTop_Test.cpp +++ /dev/null @@ -1,222 +0,0 @@ -/* - * Copyright 2012 Google Inc. - * - * Use of this source code is governed by a BSD-style license that can be - * found in the LICENSE file. - */ - -#include "Simplify.h" - -namespace SimplifyFindTopTest { - -#include "Simplify.cpp" - -} // end of SimplifyFindTopTest namespace - -#include "Intersection_Tests.h" - -static const SimplifyFindTopTest::Segment* testCommon( - SkTArray<SimplifyFindTopTest::Contour>& contours, - int& index, int& end) { - SkTDArray<SimplifyFindTopTest::Contour*> contourList; - makeContourList(contours, contourList, false, false); - addIntersectTs(contourList[0], contourList[0]); - if (contours.count() > 1) { - SkASSERT(contours.count() == 2); - addIntersectTs(contourList[0], contourList[1]); - addIntersectTs(contourList[1], contourList[1]); - } - fixOtherTIndex(contourList); -#if SORTABLE_CONTOURS // old way - SimplifyFindTopTest::Segment* topStart = findTopContour(contourList); - const SimplifyFindTopTest::Segment* topSegment = topStart->findTop(index, - end); -#else - SkPoint bestXY = {SK_ScalarMin, SK_ScalarMin}; - bool done, unsortable = false; - const SimplifyFindTopTest::Segment* topSegment = - findSortableTop(contourList, index, end, bestXY, unsortable, done, true); -#endif - return topSegment; -} - -static void test(const SkPath& path) { - SkTArray<SimplifyFindTopTest::Contour> contours; - SimplifyFindTopTest::EdgeBuilder builder(path, contours); - int index, end; - testCommon(contours, index, end); - SkASSERT(index + 1 == end); -} - -static void test(const SkPath& path, SkScalar x1, SkScalar y1, - SkScalar x2, SkScalar y2) { - SkTArray<SimplifyFindTopTest::Contour> contours; - SimplifyFindTopTest::EdgeBuilder builder(path, contours); - int index, end; - const SimplifyFindTopTest::Segment* topSegment = - testCommon(contours, index, end); - SkPoint pts[2]; - double firstT = topSegment->t(index); - pts[0] = topSegment->xyAtT(&topSegment->span(index)); - int direction = index < end ? 1 : -1; - do { - index += direction; - double nextT = topSegment->t(index); - if (nextT == firstT) { - continue; - } - pts[1] = topSegment->xyAtT(&topSegment->span(index)); - if (pts[0] != pts[1]) { - break; - } - } while (true); - SkASSERT(pts[0].fX == x1); - SkASSERT(pts[0].fY == y1); - SkASSERT(pts[1].fX == x2); - SkASSERT(pts[1].fY == y2); -} - -static void testLine1() { - SkPath path; - path.moveTo(2,0); - path.lineTo(1,1); - path.lineTo(0,0); - path.close(); - test(path); -} - -static void addInnerCWTriangle(SkPath& path) { - path.moveTo(3,0); - path.lineTo(4,1); - path.lineTo(2,1); - path.close(); -} - -static void addInnerCCWTriangle(SkPath& path) { - path.moveTo(3,0); - path.lineTo(2,1); - path.lineTo(4,1); - path.close(); -} - -static void addOuterCWTriangle(SkPath& path) { - path.moveTo(3,0); - path.lineTo(6,2); - path.lineTo(0,2); - path.close(); -} - -static void addOuterCCWTriangle(SkPath& path) { - path.moveTo(3,0); - path.lineTo(0,2); - path.lineTo(6,2); - path.close(); -} - -static void testLine2() { - SkPath path; - addInnerCWTriangle(path); - addOuterCWTriangle(path); - test(path, 0, 2, 3, 0); -} - -static void testLine3() { - SkPath path; - addOuterCWTriangle(path); - addInnerCWTriangle(path); - test(path, 0, 2, 3, 0); -} - -static void testLine4() { - SkPath path; - addInnerCCWTriangle(path); - addOuterCWTriangle(path); - test(path, 0, 2, 3, 0); -} - -static void testLine5() { - SkPath path; - addOuterCWTriangle(path); - addInnerCCWTriangle(path); - test(path, 0, 2, 3, 0); -} - -static void testLine6() { - SkPath path; - addInnerCWTriangle(path); - addOuterCCWTriangle(path); - test(path, 0, 2, 3, 0); -} - -static void testLine7() { - SkPath path; - addOuterCCWTriangle(path); - addInnerCWTriangle(path); - test(path, 0, 2, 3, 0); -} - -static void testLine8() { - SkPath path; - addInnerCCWTriangle(path); - addOuterCCWTriangle(path); - test(path, 0, 2, 3, 0); -} - -static void testLine9() { - SkPath path; - addOuterCCWTriangle(path); - addInnerCCWTriangle(path); - test(path, 0, 2, 3, 0); -} - -static void testQuads() { - SkPath path; - path.moveTo(2,0); - path.quadTo(1,1, 0,0); - path.close(); - test(path); -} - -static void testCubics() { - SkPath path; - path.moveTo(2,0); - path.cubicTo(2,3, 1,1, 0,0); - path.close(); - test(path); -} - -static void (*tests[])() = { - testLine1, - testLine2, - testLine3, - testLine4, - testLine5, - testLine6, - testLine7, - testLine8, - testLine9, - testQuads, - testCubics -}; - -static const size_t testCount = sizeof(tests) / sizeof(tests[0]); - -static void (*firstTest)() = 0; -static bool skipAll = false; - -void SimplifyFindTop_Test() { - if (skipAll) { - return; - } - size_t index = 0; - if (firstTest) { - while (index < testCount && tests[index] != firstTest) { - ++index; - } - } - bool firstTestComplete = false; - for ( ; index < testCount; ++index) { - (*tests[index])(); - firstTestComplete = true; - } -} |