• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1  /*
2   * Copyright 2013 Google Inc.
3   *
4   * Use of this source code is governed by a BSD-style license that can be
5   * found in the LICENSE file.
6   */
7  #include "PathOpsExtendedTest.h"
8  
DEF_TEST(PathOpsInverse,reporter)9  DEF_TEST(PathOpsInverse, reporter) {
10      SkPath one, two;
11      for (int op = kDifference_SkPathOp; op <= kReverseDifference_SkPathOp; ++op) {
12          for (int oneFill = SkPath::kWinding_FillType; oneFill <= SkPath::kInverseEvenOdd_FillType;
13                      ++oneFill) {
14              for (int oneDir = SkPath::kCW_Direction; oneDir != SkPath::kCCW_Direction; ++oneDir) {
15                  one.reset();
16                  one.setFillType((SkPath::FillType) oneFill);
17                  one.addRect(0, 0, 6, 6, (SkPath::Direction) oneDir);
18                  for (int twoFill = SkPath::kWinding_FillType;
19                          twoFill <= SkPath::kInverseEvenOdd_FillType; ++twoFill) {
20                      for (int twoDir = SkPath::kCW_Direction; twoDir != SkPath::kCCW_Direction;
21                              ++twoDir) {
22                          two.reset();
23                          two.setFillType((SkPath::FillType) twoFill);
24                          two.addRect(3, 3, 9, 9, (SkPath::Direction) twoDir);
25                          testPathOp(reporter, one, two, (SkPathOp) op, "inverseTest");
26                      }
27                  }
28              }
29          }
30      }
31  }
32