aboutsummaryrefslogtreecommitdiffhomepage
path: root/experimental/Intersection/SimplifyFindTop_Test.cpp
diff options
context:
space:
mode:
authorGravatar caryclark <caryclark@google.com>2015-01-29 10:43:09 -0800
committerGravatar Commit bot <commit-bot@chromium.org>2015-01-29 10:43:09 -0800
commit17a2b5473d0144d10749ef8d26a10fbdab580226 (patch)
tree6e1d4b8db55db4dedb6d28f975eef294bd7ab1a8 /experimental/Intersection/SimplifyFindTop_Test.cpp
parentf75a130c459596c23595d1bf0654863ab5fe3541 (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.cpp222
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;
- }
-}