OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2012 Google Inc. | 2 * Copyright 2012 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 | 7 |
8 #include "PathOpsQuadIntersectionTestData.h" | 8 #include "PathOpsQuadIntersectionTestData.h" |
9 | 9 |
10 const SkDQuad quadraticPoints[] = { | 10 const QuadPts quadraticPoints[] = { |
11 {{{0, 0}, {1, 0}, {0, 0}}}, | 11 {{{0, 0}, {1, 0}, {0, 0}}}, |
12 {{{0, 0}, {0, 1}, {0, 0}}}, | 12 {{{0, 0}, {0, 1}, {0, 0}}}, |
13 {{{0, 0}, {1, 1}, {0, 0}}}, | 13 {{{0, 0}, {1, 1}, {0, 0}}}, |
14 {{{1, 1}, {2, 2}, {1, 1}}}, | 14 {{{1, 1}, {2, 2}, {1, 1}}}, |
15 }; | 15 }; |
16 | 16 |
17 const size_t quadraticPoints_count = SK_ARRAY_COUNT(quadraticPoints); | 17 const size_t quadraticPoints_count = SK_ARRAY_COUNT(quadraticPoints); |
18 | 18 |
19 const SkDQuad quadraticLines[] = { | 19 const QuadPts quadraticLines[] = { |
20 {{{0, 0}, {0, 0}, {1, 0}}}, | 20 {{{0, 0}, {0, 0}, {1, 0}}}, |
21 {{{1, 0}, {0, 0}, {0, 0}}}, | 21 {{{1, 0}, {0, 0}, {0, 0}}}, |
22 {{{1, 0}, {2, 0}, {3, 0}}}, | 22 {{{1, 0}, {2, 0}, {3, 0}}}, |
23 {{{0, 0}, {0, 0}, {0, 1}}}, | 23 {{{0, 0}, {0, 0}, {0, 1}}}, |
24 {{{0, 1}, {0, 0}, {0, 0}}}, | 24 {{{0, 1}, {0, 0}, {0, 0}}}, |
25 {{{0, 1}, {0, 2}, {0, 3}}}, | 25 {{{0, 1}, {0, 2}, {0, 3}}}, |
26 {{{0, 0}, {0, 0}, {1, 1}}}, | 26 {{{0, 0}, {0, 0}, {1, 1}}}, |
27 {{{1, 1}, {0, 0}, {0, 0}}}, | 27 {{{1, 1}, {0, 0}, {0, 0}}}, |
28 {{{1, 1}, {2, 2}, {3, 3}}}, | 28 {{{1, 1}, {2, 2}, {3, 3}}}, |
29 {{{1, 1}, {3, 3}, {3, 3}}}, | 29 {{{1, 1}, {3, 3}, {3, 3}}}, |
(...skipping 12 matching lines...) Expand all Loading... |
42 {{{2, 2}, {4, 4}, {3, 3}}}, | 42 {{{2, 2}, {4, 4}, {3, 3}}}, |
43 }; | 43 }; |
44 | 44 |
45 const size_t quadraticLines_count = SK_ARRAY_COUNT(quadraticLines); | 45 const size_t quadraticLines_count = SK_ARRAY_COUNT(quadraticLines); |
46 | 46 |
47 static const double F = FLT_EPSILON * 32; | 47 static const double F = FLT_EPSILON * 32; |
48 static const double H = FLT_EPSILON * 32; | 48 static const double H = FLT_EPSILON * 32; |
49 static const double J = FLT_EPSILON * 32; | 49 static const double J = FLT_EPSILON * 32; |
50 static const double K = FLT_EPSILON * 32; // INVESTIGATE: why are larger multip
les necessary? | 50 static const double K = FLT_EPSILON * 32; // INVESTIGATE: why are larger multip
les necessary? |
51 | 51 |
52 const SkDQuad quadraticModEpsilonLines[] = { | 52 const QuadPts quadraticModEpsilonLines[] = { |
53 {{{0, F}, {0, 0}, {1, 0}}}, | 53 {{{0, F}, {0, 0}, {1, 0}}}, |
54 {{{0, 0}, {1, 0}, {0, F}}}, | 54 {{{0, 0}, {1, 0}, {0, F}}}, |
55 {{{1, 0}, {0, F}, {0, 0}}}, | 55 {{{1, 0}, {0, F}, {0, 0}}}, |
56 {{{1, H}, {2, 0}, {3, 0}}}, | 56 {{{1, H}, {2, 0}, {3, 0}}}, |
57 // {{{F, 0}, {0, 0}, {0, 1}}}, // INVESTIGATE: even substituting K for F, quad
is still linear. | 57 // {{{F, 0}, {0, 0}, {0, 1}}}, // INVESTIGATE: even substituting K for F, quad
is still linear. |
58 // {{{0, 0}, {0, 1}, {F, 0}}}, | 58 // {{{0, 0}, {0, 1}, {F, 0}}}, |
59 // {{{0, 1}, {F, 0}, {0, 0}}}, | 59 // {{{0, 1}, {F, 0}, {0, 0}}}, |
60 // {{{H, 1}, {0, 2}, {0, 3}}}, | 60 // {{{H, 1}, {0, 2}, {0, 3}}}, |
61 {{{0, F}, {0, 0}, {1, 1}}}, | 61 {{{0, F}, {0, 0}, {1, 1}}}, |
62 {{{0, 0}, {1, 1}, {F, 0}}}, | 62 {{{0, 0}, {1, 1}, {F, 0}}}, |
(...skipping 12 matching lines...) Expand all Loading... |
75 {{{2+F, 2}, {1, 1}, {4, 4}}}, | 75 {{{2+F, 2}, {1, 1}, {4, 4}}}, |
76 {{{2, 2+F}, {3, 3}, {1, 1}}}, | 76 {{{2, 2+F}, {3, 3}, {1, 1}}}, |
77 {{{2, 2}, {3+F, 3}, {4, 4}}}, | 77 {{{2, 2}, {3+F, 3}, {4, 4}}}, |
78 {{{2, 2}, {4, 4+F}, {1, 1}}}, | 78 {{{2, 2}, {4, 4+F}, {1, 1}}}, |
79 {{{2, 2}, {4, 4}, {3+F, 3}}}, | 79 {{{2, 2}, {4, 4}, {3+F, 3}}}, |
80 }; | 80 }; |
81 | 81 |
82 const size_t quadraticModEpsilonLines_count = | 82 const size_t quadraticModEpsilonLines_count = |
83 SK_ARRAY_COUNT(quadraticModEpsilonLines); | 83 SK_ARRAY_COUNT(quadraticModEpsilonLines); |
84 | 84 |
85 const SkDQuad quadraticTests[][2] = { | 85 const QuadPts quadraticTests[][2] = { |
86 { // one intersection | 86 { // one intersection |
87 {{{0, 0}, | 87 {{{0, 0}, |
88 {0, 1}, | 88 {0, 1}, |
89 {1, 1}}}, | 89 {1, 1}}}, |
90 {{{0, 1}, | 90 {{{0, 1}, |
91 {0, 0}, | 91 {0, 0}, |
92 {1, 0}}} | 92 {1, 0}}} |
93 }, | 93 }, |
94 { // four intersections | 94 { // four intersections |
95 {{{1, 0}, | 95 {{{1, 0}, |
96 {2, 6}, | 96 {2, 6}, |
97 {3, 0}}}, | 97 {3, 0}}}, |
98 {{{0, 1}, | 98 {{{0, 1}, |
99 {6, 2}, | 99 {6, 2}, |
100 {0, 3}}} | 100 {0, 3}}} |
101 } | 101 } |
102 }; | 102 }; |
103 | 103 |
104 const size_t quadraticTests_count = SK_ARRAY_COUNT(quadraticTests); | 104 const size_t quadraticTests_count = SK_ARRAY_COUNT(quadraticTests); |
OLD | NEW |