1af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com/* 2af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com * Copyright 2012 Google Inc. 3af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com * 4af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com * Use of this source code is governed by a BSD-style license that can be 5af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com * found in the LICENSE file. 6af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com */ 7af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com 8af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com#include "EdgeWalker_Test.h" 9af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com#include "Intersection_Tests.h" 108dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com#include "ShapeOps.h" 11af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com 1247580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com#define TEST(name) { name, #name } 1347580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com 14af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.comstatic void testLine1() { 1559823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 16af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com path.moveTo(2,0); 17af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com path.lineTo(1,1); 18af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com path.lineTo(0,0); 19af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com path.close(); 2088f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com testSimplifyx(path); 21af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com} 22af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com 23c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine1x() { 24c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 25c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 26c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(2,0); 27c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1,1); 28c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0,0); 29c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 30c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 31c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 32c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 33af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.comstatic void addInnerCWTriangle(SkPath& path) { 34af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com path.moveTo(3,0); 35af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com path.lineTo(4,1); 36af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com path.lineTo(2,1); 37af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com path.close(); 38af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com} 39af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com 40af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.comstatic void addInnerCCWTriangle(SkPath& path) { 41af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com path.moveTo(3,0); 42af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com path.lineTo(2,1); 43af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com path.lineTo(4,1); 44af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com path.close(); 45af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com} 46af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com 47af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.comstatic void addOuterCWTriangle(SkPath& path) { 48af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com path.moveTo(3,0); 49af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com path.lineTo(6,2); 50af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com path.lineTo(0,2); 51af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com path.close(); 52af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com} 53af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com 54af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.comstatic void addOuterCCWTriangle(SkPath& path) { 55af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com path.moveTo(3,0); 56af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com path.lineTo(0,2); 57af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com path.lineTo(6,2); 58af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com path.close(); 59af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com} 60af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com 61af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.comstatic void testLine2() { 6259823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 63c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 64c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com addInnerCWTriangle(path); 65c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com addOuterCWTriangle(path); 66c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 67c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 68c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 69c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine2x() { 70c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 71c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 72af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com addInnerCWTriangle(path); 73af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com addOuterCWTriangle(path); 7488f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com testSimplifyx(path); 75af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com} 76af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com 77495f8e435b677f28913cd2adc8caa8d3d766dd17caryclark@google.comstatic void testLine3() { 7859823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 79c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 80c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com addInnerCCWTriangle(path); 81c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com addOuterCWTriangle(path); 82c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 83c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 84c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 85c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine3x() { 86c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 87c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 88495f8e435b677f28913cd2adc8caa8d3d766dd17caryclark@google.com addInnerCCWTriangle(path); 89495f8e435b677f28913cd2adc8caa8d3d766dd17caryclark@google.com addOuterCWTriangle(path); 9088f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com testSimplifyx(path); 91495f8e435b677f28913cd2adc8caa8d3d766dd17caryclark@google.com} 92495f8e435b677f28913cd2adc8caa8d3d766dd17caryclark@google.com 93534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.comstatic void testLine3a() { 9459823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 95534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com addInnerCWTriangle(path); 96534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com addOuterCCWTriangle(path); 97534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com testSimplifyx(path); 98534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com} 99534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com 100c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine3ax() { 101c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 102c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 103c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com addInnerCWTriangle(path); 104c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com addOuterCCWTriangle(path); 105c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 106c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 107c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 108534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.comstatic void testLine3b() { 10959823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 110534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com addInnerCCWTriangle(path); 111534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com addOuterCCWTriangle(path); 112534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com testSimplifyx(path); 113534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com} 114534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com 115c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine3bx() { 116c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 117c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 118c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com addInnerCCWTriangle(path); 119c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com addOuterCCWTriangle(path); 120c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 121c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 122c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 123495f8e435b677f28913cd2adc8caa8d3d766dd17caryclark@google.comstatic void testLine4() { 12459823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 125495f8e435b677f28913cd2adc8caa8d3d766dd17caryclark@google.com addOuterCCWTriangle(path); 126495f8e435b677f28913cd2adc8caa8d3d766dd17caryclark@google.com addOuterCWTriangle(path); 12788f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com testSimplifyx(path); 128495f8e435b677f28913cd2adc8caa8d3d766dd17caryclark@google.com} 129495f8e435b677f28913cd2adc8caa8d3d766dd17caryclark@google.com 130c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine4x() { 131c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 132c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 133c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com addOuterCCWTriangle(path); 134c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com addOuterCWTriangle(path); 135c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 136c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 137c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 138495f8e435b677f28913cd2adc8caa8d3d766dd17caryclark@google.comstatic void testLine5() { 13959823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 140495f8e435b677f28913cd2adc8caa8d3d766dd17caryclark@google.com addOuterCWTriangle(path); 141495f8e435b677f28913cd2adc8caa8d3d766dd17caryclark@google.com addOuterCWTriangle(path); 14288f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com testSimplifyx(path); 14388f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com} 14488f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com 145c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine5x() { 146c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 147c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 148c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com addOuterCWTriangle(path); 149c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com addOuterCWTriangle(path); 150c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 151c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 152c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 15388f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.comstatic void testLine6() { 15459823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 15588f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.moveTo(0,0); 15688f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.lineTo(4,0); 15788f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.lineTo(2,2); 15888f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.close(); 15988f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.moveTo(2,0); 16088f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.lineTo(6,0); 16188f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.lineTo(4,2); 16288f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.close(); 16388f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com testSimplifyx(path); 16488f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com} 16588f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com 166c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine6x() { 167c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 168c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 169c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0,0); 170c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(4,0); 171c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2,2); 172c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 173c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(2,0); 174c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(6,0); 175c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(4,2); 176c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 177c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 178c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 179c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 18088f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.comstatic void testLine7() { 18159823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 18288f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.moveTo(0,0); 18388f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.lineTo(4,0); 18488f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.lineTo(2,2); 18588f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.close(); 18688f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.moveTo(6,0); 18788f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.lineTo(2,0); 18888f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.lineTo(4,2); 18988f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.close(); 19088f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com testSimplifyx(path); 191495f8e435b677f28913cd2adc8caa8d3d766dd17caryclark@google.com} 192af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com 193c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine7x() { 194c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 195c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 196c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0,0); 197c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(4,0); 198c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2,2); 199c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 200c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(6,0); 201c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2,0); 202c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(4,2); 203c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 204c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 205c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 206c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 207fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.comstatic void testLine7a() { 20859823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 209fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com path.moveTo(0,0); 210fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com path.lineTo(4,0); 211fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com path.lineTo(2,2); 212fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com path.close(); 213fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com testSimplifyx(path); 214fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com} 215fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com 216c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine7ax() { 217c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 218c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 219c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0,0); 220c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(4,0); 221c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2,2); 222c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 223c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 224c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 225c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 226fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.comstatic void testLine7b() { 22759823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 228fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com path.moveTo(0,0); 229fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com path.lineTo(4,0); 230fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com path.close(); 231fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com path.moveTo(6,0); 232fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com path.lineTo(2,0); 233fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com path.lineTo(4,2); 234fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com path.close(); 235fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com testSimplifyx(path); 236fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com} 237fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com 238c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine7bx() { 239c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 240c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 241c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0,0); 242c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(4,0); 243c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 244c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(6,0); 245c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2,0); 246c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(4,2); 247c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 248c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 249c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 250c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 25188f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.comstatic void testLine8() { 25259823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 25388f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.moveTo(0,4); 25488f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.lineTo(4,4); 25588f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.lineTo(2,2); 25688f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.close(); 25788f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.moveTo(2,4); 25888f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.lineTo(6,4); 25988f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.lineTo(4,2); 26088f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.close(); 26188f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com testSimplifyx(path); 26288f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com} 26388f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com 264c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine8x() { 265c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 266c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 267c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0,4); 268c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(4,4); 269c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2,2); 270c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 271c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(2,4); 272c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(6,4); 273c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(4,2); 274c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 275c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 276c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 277c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 27888f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.comstatic void testLine9() { 27959823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 28088f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.moveTo(0,4); 28188f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.lineTo(4,4); 28288f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.lineTo(2,2); 28388f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.close(); 28488f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.moveTo(6,4); 28588f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.lineTo(2,4); 28688f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.lineTo(4,2); 28788f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com path.close(); 28888f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com testSimplifyx(path); 28988f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com} 29088f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com 291c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine9x() { 292c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 293c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 294c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0,4); 295c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(4,4); 296c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2,2); 297c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 298c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(6,4); 299c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2,4); 300c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(4,2); 301c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 302c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 303c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 304c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 3058dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.comstatic void testLine10() { 30659823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 3078dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.moveTo(0,4); 3088dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.lineTo(4,4); 3098dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.lineTo(2,2); 3108dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.close(); 3118dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.moveTo(2,1); 3128dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.lineTo(3,4); 3138dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.lineTo(6,1); 3148dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.close(); 3158dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com testSimplifyx(path); 3168dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com} 3178dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com 318c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine10x() { 319c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 320c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 321c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0,4); 322c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(4,4); 323c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2,2); 324c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 325c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(2,1); 326c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(3,4); 327c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(6,1); 328c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 329c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 330c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 331c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 3328dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.comstatic void testLine10a() { 33359823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 3348dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.moveTo(0,4); 3358dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.lineTo(8,4); 3368dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.lineTo(4,0); 3378dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.close(); 3388dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.moveTo(2,2); 3398dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.lineTo(3,3); 3408dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.lineTo(4,2); 3418dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.close(); 3428dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com testSimplifyx(path); 3438dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com} 3448dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com 345c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine10ax() { 346c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 347c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 348c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0,4); 349c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(8,4); 350c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(4,0); 351c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 352c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(2,2); 353c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(3,3); 354c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(4,2); 355c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 356c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 357c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 358c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 3598dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.comstatic void addCWContainer(SkPath& path) { 3608dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.moveTo(6,4); 3618dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.lineTo(0,4); 3628dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.lineTo(3,1); 3638dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.close(); 3648dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com} 3658dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com 3668dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.comstatic void addCCWContainer(SkPath& path) { 3678dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.moveTo(0,4); 3688dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.lineTo(6,4); 3698dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.lineTo(3,1); 3708dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.close(); 3718dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com} 3728dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com 3738dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.comstatic void addCWContents(SkPath& path) { 3748dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.moveTo(2,3); 3758dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.lineTo(3,2); 3768dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.lineTo(4,3); 3778dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.close(); 3788dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com} 3798dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com 3808dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.comstatic void addCCWContents(SkPath& path) { 3818dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.moveTo(3,2); 3828dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.lineTo(2,3); 3838dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.lineTo(4,3); 3848dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.close(); 3858dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com} 3868dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com 3878dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.comstatic void testLine11() { 38859823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 3898dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com addCWContainer(path); 3908dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com addCWContents(path); 3918dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com testSimplifyx(path); 3928dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com} 3938dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com 394c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine11x() { 395c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 396c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 397c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com addCWContainer(path); 398c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com addCWContents(path); 399c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 400c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 401c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 4028dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.comstatic void testLine12() { 40359823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 4048dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com addCCWContainer(path); 4058dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com addCWContents(path); 4068dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com testSimplifyx(path); 4078dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com} 4088dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com 409c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine12x() { 410c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 411c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 412c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com addCCWContainer(path); 413c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com addCWContents(path); 414c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 415c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 416c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 4178dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.comstatic void testLine13() { 41859823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 4198dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com addCWContainer(path); 4208dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com addCCWContents(path); 4218dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com testSimplifyx(path); 4228dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com} 4238dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com 424c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine13x() { 425c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 426c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 427c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com addCWContainer(path); 428c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com addCCWContents(path); 429c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 430c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 431c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 4328dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.comstatic void testLine14() { 43359823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 4348dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com addCCWContainer(path); 4358dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com addCCWContents(path); 4368dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com testSimplifyx(path); 4378dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com} 4388dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com 439c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine14x() { 440c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 441c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 442c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com addCCWContainer(path); 443c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com addCCWContents(path); 444c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 445c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 446c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 4478dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.comstatic void testLine15() { 44859823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 4497fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 9, 9, SkPath::kCW_Direction); 4508dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com testSimplifyx(path); 4518dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com} 4528dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com 453c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine15x() { 454c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 455c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 4567fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 9, 9, SkPath::kCW_Direction); 457c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 458c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 459c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 4608dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.comstatic void testLine16() { 46159823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 4627fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 12, 12, SkPath::kCW_Direction); 4637fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 4, 9, 9, SkPath::kCW_Direction); 4648dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com testSimplifyx(path); 4658dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com} 4668dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com 467c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine16x() { 468c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 469c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 4707fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 12, 12, SkPath::kCW_Direction); 4717fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 4, 9, 9, SkPath::kCW_Direction); 472c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 473c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 474c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 4758dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.comstatic void testLine17() { 47659823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 4777fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 12, 12, SkPath::kCW_Direction); 4787fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 12, 13, 13, SkPath::kCW_Direction); 4798dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com testSimplifyx(path); 4808dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com} 4818dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com 482c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine17x() { 483c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 484c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 4857fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 12, 12, SkPath::kCW_Direction); 4867fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 12, 13, 13, SkPath::kCW_Direction); 487c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 488c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 489c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 4908dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.comstatic void testLine18() { 49159823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 4927fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 12, 12, SkPath::kCW_Direction); 4937fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 4, 21, 21, SkPath::kCW_Direction); 4948dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com testSimplifyx(path); 4958dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com} 4968dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com 497c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine18x() { 498c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 499c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 5007fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 12, 12, SkPath::kCW_Direction); 5017fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 4, 21, 21, SkPath::kCW_Direction); 502c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 503c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 504c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 5058dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.comstatic void testLine19() { 50659823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 5077fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 12, 12, SkPath::kCW_Direction); 5087fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 16, 21, 21, SkPath::kCW_Direction); 5098dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com testSimplifyx(path); 5108dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com} 5118dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com 512c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine19x() { 513c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 514c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 5157fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 12, 12, SkPath::kCW_Direction); 5167fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 16, 21, 21, SkPath::kCW_Direction); 517c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 518c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 519c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 5208dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.comstatic void testLine20() { 52159823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 5227fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 12, 12, 12, SkPath::kCW_Direction); 5237fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 12, 9, 9, SkPath::kCW_Direction); 5248dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com testSimplifyx(path); 5258dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com} 5268dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com 527c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine20x() { 528c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 529c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 5307fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 12, 12, 12, SkPath::kCW_Direction); 5317fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 12, 9, 9, SkPath::kCW_Direction); 532c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 533c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 534c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 5358dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.comstatic void testLine21() { 53659823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 5377fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 12, 12, 12, SkPath::kCW_Direction); 5387fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 16, 9, 9, SkPath::kCW_Direction); 5398dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com testSimplifyx(path); 5408dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com} 5418dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com 542c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine21x() { 543c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 544c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 5457fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 12, 12, 12, SkPath::kCW_Direction); 5467fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 16, 9, 9, SkPath::kCW_Direction); 547c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 548c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 549c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 5508dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.comstatic void testLine22() { 55159823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 5527fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 12, 12, 12, SkPath::kCW_Direction); 5537fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 12, 13, 13, SkPath::kCW_Direction); 5548dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com testSimplifyx(path); 5558dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com} 5568dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com 557c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine22x() { 558c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 559c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 5607fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 12, 12, 12, SkPath::kCW_Direction); 5617fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 12, 13, 13, SkPath::kCW_Direction); 562c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 563c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 564c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 5658dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.comstatic void testLine23() { 56659823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 5677fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 12, 12, 12, SkPath::kCW_Direction); 5687fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 0, 21, 21, SkPath::kCW_Direction); 5698dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com testSimplifyx(path); 5708dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com} 5718dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com 572c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine23x() { 573c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 574c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 5757fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 12, 12, 12, SkPath::kCW_Direction); 5767fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 0, 21, 21, SkPath::kCW_Direction); 577c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 578c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 5798dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com 5808dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.comstatic void testLine24a() { 58159823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 5828dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.moveTo(2,0); 5838dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.lineTo(4,4); 5848dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.lineTo(0,4); 5858dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.close(); 5868dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.moveTo(2,0); 5878dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.lineTo(1,2); 5888dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.lineTo(2,2); 5898dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com path.close(); 5908dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com testSimplifyx(path); 5918dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com} 5928dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com 593c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine24ax() { 59459823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 595c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 596c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(2,0); 597c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(4,4); 598c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0,4); 599c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 600c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(2,0); 601c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1,2); 602c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2,2); 603c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 604c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 605c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 606c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 607c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine24() { 608c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 6097fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 18, 12, 12, SkPath::kCW_Direction); 6107fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 12, 13, 13, SkPath::kCW_Direction); 611c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 612c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 613c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 614c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine24x() { 615c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 616c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 6177fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 18, 12, 12, SkPath::kCW_Direction); 6187fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 12, 13, 13, SkPath::kCW_Direction); 619c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 620c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 621c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 622c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine25() { 623c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 6247fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 6, 12, 12, SkPath::kCW_Direction); 6257fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 0, 21, 21, SkPath::kCW_Direction); 626c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 627c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 628c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 629c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine25x() { 630c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 631c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 6327fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 6, 12, 12, SkPath::kCW_Direction); 6337fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 0, 21, 21, SkPath::kCW_Direction); 6348dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com testSimplifyx(path); 6358dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com} 6368dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com 6378dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.comstatic void testLine26() { 63859823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 6397fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 18, 12, 12, SkPath::kCW_Direction); 6407fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 12, 9, 9, SkPath::kCW_Direction); 6418dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com testSimplifyx(path); 6428dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com} 6438dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com 644c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine26x() { 645c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 646c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 6477fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 18, 12, 12, SkPath::kCW_Direction); 6487fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 12, 9, 9, SkPath::kCW_Direction); 649c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 650c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 651c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 6528dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.comstatic void testLine27() { 65359823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 6547fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 18, 12, 12, SkPath::kCW_Direction); 6557fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 8, 21, 21, SkPath::kCW_Direction); 6568dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com testSimplifyx(path); 6578dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com} 6588dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com 659c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine27x() { 660c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 661c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 6627fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 18, 12, 12, SkPath::kCW_Direction); 6637fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 8, 21, 21, SkPath::kCW_Direction); 664c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 665c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 666c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 667fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.comstatic void testLine28() { 66859823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 6697fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 6, 12, 12, SkPath::kCW_Direction); 6707fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 9, 9, SkPath::kCW_Direction); 671fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com testSimplifyx(path); 672fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com} 673fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com 674c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine28x() { 675c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 676c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 6777fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 6, 12, 12, SkPath::kCW_Direction); 6787fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 9, 9, SkPath::kCW_Direction); 679c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 680c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 681c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 682fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.comstatic void testLine29() { 68359823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 6847fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 18, 12, 12, SkPath::kCW_Direction); 6857fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 12, 21, 21, SkPath::kCW_Direction); 686fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com testSimplifyx(path); 687fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com} 688fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com 689c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine29x() { 690c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 691c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 6927fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 18, 12, 12, SkPath::kCW_Direction); 6937fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 12, 21, 21, SkPath::kCW_Direction); 694c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 695c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 696c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 697fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.comstatic void testLine30() { 69859823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 6997fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 7007fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 12, 12, SkPath::kCW_Direction); 7017fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 4, 13, 13, SkPath::kCW_Direction); 702fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com testSimplifyx(path); 703fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com} 704fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com 705c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine30x() { 706c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 707c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 7087fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 7097fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 12, 12, SkPath::kCW_Direction); 7107fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 4, 13, 13, SkPath::kCW_Direction); 711c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 712c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 713c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 714fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.comstatic void testLine31() { 71559823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 7167fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 7177fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 12, 12, SkPath::kCW_Direction); 7187fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 4, 9, 9, SkPath::kCW_Direction); 719fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com testSimplifyx(path); 720fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com} 721fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com 722c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine31x() { 723c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 724c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 7257fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 7267fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 12, 12, SkPath::kCW_Direction); 7277fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 4, 9, 9, SkPath::kCW_Direction); 728c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 729c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 730c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 731fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.comstatic void testLine32() { 73259823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 7337fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 7347fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 12, 12, SkPath::kCW_Direction); 7357fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 12, 13, 13, SkPath::kCW_Direction); 736fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com testSimplifyx(path); 737fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com} 738fa4a6e964691ff9a88bc047418abe2d4324dfcaecaryclark@google.com 739c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine32x() { 740c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 741c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 7427fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 7437fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 12, 12, SkPath::kCW_Direction); 7447fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 12, 13, 13, SkPath::kCW_Direction); 745c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 746c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 747c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 748210acafc5207765e12474064aa01640d5af92770caryclark@google.comstatic void testLine33() { 74959823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 7507fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 7517fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 12, 12, SkPath::kCW_Direction); 7527fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 16, 13, 13, SkPath::kCW_Direction); 753210acafc5207765e12474064aa01640d5af92770caryclark@google.com testSimplifyx(path); 754210acafc5207765e12474064aa01640d5af92770caryclark@google.com} 755210acafc5207765e12474064aa01640d5af92770caryclark@google.com 756c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine33x() { 757c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 758c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 7597fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 7607fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 12, 12, SkPath::kCW_Direction); 7617fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 16, 13, 13, SkPath::kCW_Direction); 762c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 763c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 764c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 765210acafc5207765e12474064aa01640d5af92770caryclark@google.comstatic void testLine34() { 76659823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 7677fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 7687fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 6, 12, 12, SkPath::kCW_Direction); 7697fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 12, 13, 13, SkPath::kCW_Direction); 770210acafc5207765e12474064aa01640d5af92770caryclark@google.com testSimplifyx(path); 771210acafc5207765e12474064aa01640d5af92770caryclark@google.com} 772210acafc5207765e12474064aa01640d5af92770caryclark@google.com 773c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine34x() { 774c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 775c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 7767fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 7777fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 6, 12, 12, SkPath::kCW_Direction); 7787fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 12, 13, 13, SkPath::kCW_Direction); 779c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 780c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 781c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 782210acafc5207765e12474064aa01640d5af92770caryclark@google.comstatic void testLine35() { 78359823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 7847fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 7857fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(6, 0, 18, 18, SkPath::kCW_Direction); 7867fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 16, 13, 13, SkPath::kCW_Direction); 787210acafc5207765e12474064aa01640d5af92770caryclark@google.com testSimplifyx(path); 788210acafc5207765e12474064aa01640d5af92770caryclark@google.com} 789210acafc5207765e12474064aa01640d5af92770caryclark@google.com 790c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine35x() { 791c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 792c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 7937fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 7947fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(6, 0, 18, 18, SkPath::kCW_Direction); 7957fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 16, 13, 13, SkPath::kCW_Direction); 796c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 797c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 798c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 7990e08a19367a496dec82911acbc37f879f64958facaryclark@google.comstatic void testLine36() { 80059823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 8017fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 10, 20, 20, SkPath::kCW_Direction); 8027fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(6, 12, 18, 18, SkPath::kCW_Direction); 8037fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 16, 13, 13, SkPath::kCW_Direction); 8040e08a19367a496dec82911acbc37f879f64958facaryclark@google.com testSimplifyx(path); 8050e08a19367a496dec82911acbc37f879f64958facaryclark@google.com} 8060e08a19367a496dec82911acbc37f879f64958facaryclark@google.com 807c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine36x() { 808c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 809c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 8107fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 10, 20, 20, SkPath::kCW_Direction); 8117fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(6, 12, 18, 18, SkPath::kCW_Direction); 8127fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 16, 13, 13, SkPath::kCW_Direction); 813c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 814c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 815c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 81647580694fbe974a065caf7c39c3d2075708c2018caryclark@google.comstatic void testLine37() { 81759823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 8187fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 20, 20, 20, SkPath::kCW_Direction); 8197fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(18, 24, 30, 30, SkPath::kCW_Direction); 8207fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 9, 9, SkPath::kCW_Direction); 82147580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com testSimplifyx(path); 82247580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com} 82347580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com 824c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine37x() { 825c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 826c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 8277fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 20, 20, 20, SkPath::kCW_Direction); 8287fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(18, 24, 30, 30, SkPath::kCW_Direction); 8297fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 9, 9, SkPath::kCW_Direction); 830c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 831c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 832c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 83347580694fbe974a065caf7c39c3d2075708c2018caryclark@google.comstatic void testLine38() { 83459823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 8357fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 0, 30, 30, SkPath::kCW_Direction); 8367fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(6, 12, 18, 18, SkPath::kCW_Direction); 8377fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 12, 21, 21, SkPath::kCW_Direction); 83847580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com testSimplifyx(path); 83947580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com} 84047580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com 841c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine38x() { 842c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 843c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 8447fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 0, 30, 30, SkPath::kCW_Direction); 8457fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(6, 12, 18, 18, SkPath::kCW_Direction); 8467fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 12, 21, 21, SkPath::kCW_Direction); 847c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 848c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 849c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 85047580694fbe974a065caf7c39c3d2075708c2018caryclark@google.comstatic void testLine40() { 85159823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 8527fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 0, 30, 30, SkPath::kCW_Direction); 8537fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 18, 24, 24, SkPath::kCW_Direction); 8547fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 16, 13, 13, SkPath::kCW_Direction); 85547580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com testSimplifyx(path); 85647580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com} 85747580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com 858c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine40x() { 859c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 860c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 8617fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 0, 30, 30, SkPath::kCW_Direction); 8627fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 18, 24, 24, SkPath::kCW_Direction); 8637fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 16, 13, 13, SkPath::kCW_Direction); 864c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 865c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 866c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 86747580694fbe974a065caf7c39c3d2075708c2018caryclark@google.comstatic void testLine41() { 86859823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 8697fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 8707fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(18, 24, 30, 30, SkPath::kCW_Direction); 8717fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 0, 21, 21, SkPath::kCW_Direction); 87247580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com testSimplifyx(path); 87347580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com} 87447580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com 875c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine41x() { 876c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 877c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 8787fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 8797fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(18, 24, 30, 30, SkPath::kCW_Direction); 8807fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 0, 21, 21, SkPath::kCW_Direction); 881c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 882c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 883c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 88447580694fbe974a065caf7c39c3d2075708c2018caryclark@google.comstatic void testLine42() { 88559823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 8867fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 8877fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 12, 12, SkPath::kCW_Direction); 8887fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(8, 16, 17, 17, SkPath::kCW_Direction); 88947580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com testSimplifyx(path); 89047580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com} 89147580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com 892c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine42x() { 893c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 894c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 8957fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 8967fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 12, 12, SkPath::kCW_Direction); 8977fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(8, 16, 17, 17, SkPath::kCW_Direction); 898c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 899c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 900c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 90147580694fbe974a065caf7c39c3d2075708c2018caryclark@google.comstatic void testLine43() { 90259823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 9037fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 9047fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(6, 24, 18, 18, SkPath::kCW_Direction); 9057fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 32, 9, 36, SkPath::kCCW_Direction); 90647580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com testSimplifyx(path); 90747580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com} 90847580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com 909c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine43x() { 910c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 911c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 9127fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 9137fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(6, 24, 18, 18, SkPath::kCW_Direction); 9147fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 32, 9, 36, SkPath::kCCW_Direction); 915c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 916c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 917c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 91847580694fbe974a065caf7c39c3d2075708c2018caryclark@google.comstatic void testLine44() { 91959823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 9207fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 40, 30, 30, SkPath::kCW_Direction); 9217fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(18, 0, 30, 30, SkPath::kCW_Direction); 9227fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(18, 32, 27, 36, SkPath::kCCW_Direction); 92347580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com testSimplifyx(path); 92447580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com} 92547580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com 926c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine44x() { 927c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 928c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 9297fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 40, 30, 30, SkPath::kCW_Direction); 9307fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(18, 0, 30, 30, SkPath::kCW_Direction); 9317fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(18, 32, 27, 36, SkPath::kCCW_Direction); 932c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 933c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 934c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 93547580694fbe974a065caf7c39c3d2075708c2018caryclark@google.comstatic void testLine45() { 93659823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 9377fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 0, 30, 30, SkPath::kCW_Direction); 9387fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(18, 0, 30, 30, SkPath::kCW_Direction); 9397fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(24, 32, 33, 36, SkPath::kCW_Direction); 94047580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com testSimplifyx(path); 94147580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com} 94247580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com 943c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine45x() { 944c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 945c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 9467fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 0, 30, 30, SkPath::kCW_Direction); 9477fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(18, 0, 30, 30, SkPath::kCW_Direction); 9487fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(24, 32, 33, 36, SkPath::kCW_Direction); 949c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 950c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 951c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 95247580694fbe974a065caf7c39c3d2075708c2018caryclark@google.comstatic void testLine46() { 95359823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 9547fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 40, 30, 30, SkPath::kCW_Direction); 9557fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(24, 0, 36, 36, SkPath::kCW_Direction); 9567fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(24, 32, 33, 36, SkPath::kCW_Direction); 95747580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com testSimplifyx(path); 95847580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com} 95947580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com 960c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine46x() { 961c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 962c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 9637fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 40, 30, 30, SkPath::kCW_Direction); 9647fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(24, 0, 36, 36, SkPath::kCW_Direction); 9657fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(24, 32, 33, 36, SkPath::kCW_Direction); 966c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 967c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 968c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 96947580694fbe974a065caf7c39c3d2075708c2018caryclark@google.comstatic void testLine47() { 97059823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 9717fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 9727fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 12, 12, SkPath::kCW_Direction); 9737fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 9, 9, SkPath::kCCW_Direction); 97447580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com testSimplifyx(path); 97547580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com} 97647580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com 977c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine47x() { 978c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 979c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 9807fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 9817fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 12, 12, SkPath::kCW_Direction); 9827fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 9, 9, SkPath::kCCW_Direction); 983c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 984c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 985c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 98647580694fbe974a065caf7c39c3d2075708c2018caryclark@google.comstatic void testLine48() { 98759823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 9887fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 9897fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 6, 12, 12, SkPath::kCW_Direction); 9907fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 9, 9, SkPath::kCCW_Direction); 99147580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com testSimplifyx(path); 99247580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com} 99347580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com 994c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine48x() { 995c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 996c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 9977fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 9987fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 6, 12, 12, SkPath::kCW_Direction); 9997fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 9, 9, SkPath::kCCW_Direction); 1000c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1001c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1002c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 100347580694fbe974a065caf7c39c3d2075708c2018caryclark@google.comstatic void testLine49() { 100459823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 10057fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 10067fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 12, 12, SkPath::kCW_Direction); 10077fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 9, 9, SkPath::kCW_Direction); 100847580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com testSimplifyx(path); 100947580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com} 101047580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com 1011c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine49x() { 1012c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1013c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 10147fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 10157fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 12, 12, SkPath::kCW_Direction); 10167fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 9, 9, SkPath::kCW_Direction); 1017c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1018c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1019c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 102047580694fbe974a065caf7c39c3d2075708c2018caryclark@google.comstatic void testLine50() { 102159823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 10227fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 30, 30, 30, SkPath::kCW_Direction); 10237fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(24, 20, 36, 30, SkPath::kCW_Direction); 102447580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com testSimplifyx(path); 102547580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com} 102647580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com 1027c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine50x() { 1028c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1029c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 10307fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 30, 30, 30, SkPath::kCW_Direction); 10317fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(24, 20, 36, 30, SkPath::kCW_Direction); 1032c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1033c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 103447580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com 103547580694fbe974a065caf7c39c3d2075708c2018caryclark@google.comstatic void testLine51() { 103659823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 10377fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 10387fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 12, 12, 12, SkPath::kCW_Direction); 10397fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 12, 13, 13, SkPath::kCCW_Direction); 104047580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com testSimplifyx(path); 104147580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com} 104247580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com 1043c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine51x() { 1044c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1045c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 10467fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 10477fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 12, 12, 12, SkPath::kCW_Direction); 10487fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 12, 13, 13, SkPath::kCCW_Direction); 1049c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1050c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1051c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 1052e21cb18c52fe82de3412b10fc078799ac35ca94bcaryclark@google.comstatic void testLine52() { 105359823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 10547fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 30, 20, 20, SkPath::kCW_Direction); 10557fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(6, 20, 18, 30, SkPath::kCW_Direction); 10567fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(32, 0, 36, 41, SkPath::kCW_Direction); 1057e21cb18c52fe82de3412b10fc078799ac35ca94bcaryclark@google.com testSimplifyx(path); 1058e21cb18c52fe82de3412b10fc078799ac35ca94bcaryclark@google.com} 1059e21cb18c52fe82de3412b10fc078799ac35ca94bcaryclark@google.com 1060c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine52x() { 1061c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1062c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 10637fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 30, 20, 20, SkPath::kCW_Direction); 10647fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(6, 20, 18, 30, SkPath::kCW_Direction); 10657fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(32, 0, 36, 41, SkPath::kCW_Direction); 1066c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1067c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1068c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 1069e21cb18c52fe82de3412b10fc078799ac35ca94bcaryclark@google.comstatic void testLine53() { 107059823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 10717fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 30, 30, 30, SkPath::kCW_Direction); 10727fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 20, 24, 30, SkPath::kCW_Direction); 10737fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 32, 21, 36, SkPath::kCCW_Direction); 1074e21cb18c52fe82de3412b10fc078799ac35ca94bcaryclark@google.com testSimplifyx(path); 1075e21cb18c52fe82de3412b10fc078799ac35ca94bcaryclark@google.com} 1076e21cb18c52fe82de3412b10fc078799ac35ca94bcaryclark@google.com 1077c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine53x() { 1078c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1079c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 10807fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 30, 30, 30, SkPath::kCW_Direction); 10817fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 20, 24, 30, SkPath::kCW_Direction); 10827fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 32, 21, 36, SkPath::kCCW_Direction); 1083c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1084c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1085c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 1086e21cb18c52fe82de3412b10fc078799ac35ca94bcaryclark@google.comstatic void testLine54() { 108759823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 10887fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 10897fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(6, 0, 18, 18, SkPath::kCW_Direction); 10907fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(8, 4, 17, 17, SkPath::kCCW_Direction); 1091e21cb18c52fe82de3412b10fc078799ac35ca94bcaryclark@google.com testSimplifyx(path); 1092e21cb18c52fe82de3412b10fc078799ac35ca94bcaryclark@google.com} 1093e21cb18c52fe82de3412b10fc078799ac35ca94bcaryclark@google.com 1094c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine54x() { 1095c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1096c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 10977fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 10987fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(6, 0, 18, 18, SkPath::kCW_Direction); 10997fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(8, 4, 17, 17, SkPath::kCCW_Direction); 1100c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1101c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1102c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 1103e21cb18c52fe82de3412b10fc078799ac35ca94bcaryclark@google.comstatic void testLine55() { 110459823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 11057fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 11067fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(6, 6, 18, 18, SkPath::kCW_Direction); 11077fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 4, 13, 13, SkPath::kCCW_Direction); 1108e21cb18c52fe82de3412b10fc078799ac35ca94bcaryclark@google.com testSimplifyx(path); 1109e21cb18c52fe82de3412b10fc078799ac35ca94bcaryclark@google.com} 1110e21cb18c52fe82de3412b10fc078799ac35ca94bcaryclark@google.com 1111c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine55x() { 1112c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1113c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 11147fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 11157fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(6, 6, 18, 18, SkPath::kCW_Direction); 11167fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 4, 13, 13, SkPath::kCCW_Direction); 1117c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1118c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1119c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 1120c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine56() { 112159823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 11227fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 20, 20, 20, SkPath::kCW_Direction); 11237fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(18, 20, 30, 30, SkPath::kCW_Direction); 11247fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 0, 21, 21, SkPath::kCCW_Direction); 112518063441c23b334ab2ee7075c39ceeb8378e6fcfcaryclark@google.com testSimplifyx(path); 112618063441c23b334ab2ee7075c39ceeb8378e6fcfcaryclark@google.com} 112718063441c23b334ab2ee7075c39ceeb8378e6fcfcaryclark@google.com 1128c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine56x() { 1129c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1130c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 11317fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 20, 20, 20, SkPath::kCW_Direction); 11327fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(18, 20, 30, 30, SkPath::kCW_Direction); 11337fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 0, 21, 21, SkPath::kCCW_Direction); 1134c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1135c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1136c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 113718063441c23b334ab2ee7075c39ceeb8378e6fcfcaryclark@google.comstatic void testLine57() { 113859823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 11397fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(20, 0, 40, 40, SkPath::kCW_Direction); 11407fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(20, 0, 30, 40, SkPath::kCW_Direction); 11417fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 0, 21, 21, SkPath::kCCW_Direction); 114218063441c23b334ab2ee7075c39ceeb8378e6fcfcaryclark@google.com testSimplifyx(path); 114318063441c23b334ab2ee7075c39ceeb8378e6fcfcaryclark@google.com} 114418063441c23b334ab2ee7075c39ceeb8378e6fcfcaryclark@google.com 1145c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine57x() { 1146c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1147c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 11487fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(20, 0, 40, 40, SkPath::kCW_Direction); 11497fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(20, 0, 30, 40, SkPath::kCW_Direction); 11507fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 0, 21, 21, SkPath::kCCW_Direction); 1151c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1152c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1153c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 1154cc90505674cd845fcbebd7e0654c3ff04a2e4f25caryclark@google.comstatic void testLine58() { 115559823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 11567fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 11577fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 12, 12, SkPath::kCCW_Direction); 11587fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 12, 9, 9, SkPath::kCCW_Direction); 1159cc90505674cd845fcbebd7e0654c3ff04a2e4f25caryclark@google.com testSimplifyx(path); 1160cc90505674cd845fcbebd7e0654c3ff04a2e4f25caryclark@google.com} 1161cc90505674cd845fcbebd7e0654c3ff04a2e4f25caryclark@google.com 1162c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine58x() { 1163c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1164c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 11657fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 11667fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 12, 12, SkPath::kCCW_Direction); 11677fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 12, 9, 9, SkPath::kCCW_Direction); 1168c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1169c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1170c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 1171cc90505674cd845fcbebd7e0654c3ff04a2e4f25caryclark@google.comstatic void testLine59() { 117259823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 11737fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 11747fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(6, 6, 18, 18, SkPath::kCCW_Direction); 11757fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 4, 13, 13, SkPath::kCCW_Direction); 1176cc90505674cd845fcbebd7e0654c3ff04a2e4f25caryclark@google.com testSimplifyx(path); 1177cc90505674cd845fcbebd7e0654c3ff04a2e4f25caryclark@google.com} 1178cc90505674cd845fcbebd7e0654c3ff04a2e4f25caryclark@google.com 1179c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine59x() { 1180c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1181c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 11827fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 11837fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(6, 6, 18, 18, SkPath::kCCW_Direction); 11847fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 4, 13, 13, SkPath::kCCW_Direction); 1185c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1186c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1187c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 118827c449af06cd1d05db441593d08b84f3530fba52caryclark@google.comstatic void testLine60() { 118959823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 11907fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 11917fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(6, 12, 18, 18, SkPath::kCCW_Direction); 11927fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 12, 13, 13, SkPath::kCCW_Direction); 119327c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com testSimplifyx(path); 119427c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com} 119527c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com 1196c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine60x() { 1197c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1198c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 11997fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 12007fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(6, 12, 18, 18, SkPath::kCCW_Direction); 12017fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 12, 13, 13, SkPath::kCCW_Direction); 1202c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1203c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1204c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 120527c449af06cd1d05db441593d08b84f3530fba52caryclark@google.comstatic void testLine61() { 120659823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 12077fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 12087fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 0, 24, 24, SkPath::kCCW_Direction); 12097fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 0, 21, 21, SkPath::kCCW_Direction); 121027c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com testSimplifyx(path); 121127c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com} 121227c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com 1213c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine61x() { 1214c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1215c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 12167fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 12177fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 0, 24, 24, SkPath::kCCW_Direction); 12187fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 0, 21, 21, SkPath::kCCW_Direction); 1219c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1220c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1221c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 122227c449af06cd1d05db441593d08b84f3530fba52caryclark@google.comstatic void testLine62() { 122359823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 12247fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 60, 60, SkPath::kCW_Direction); 12257fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 12267fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 12, 12, 12, SkPath::kCW_Direction); 12277fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 12, 13, 13, SkPath::kCCW_Direction); 122827c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com testSimplifyx(path); 122927c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com} 123027c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com 1231c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine62x() { 1232c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1233c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 12347fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 60, 60, SkPath::kCW_Direction); 12357fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 12367fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 12, 12, 12, SkPath::kCW_Direction); 12377fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(4, 12, 13, 13, SkPath::kCCW_Direction); 1238c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1239c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1240c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 124127c449af06cd1d05db441593d08b84f3530fba52caryclark@google.comstatic void testLine63() { 124259823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 12437fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 60, 60, SkPath::kCW_Direction); 12447fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 10, 20, 20, SkPath::kCW_Direction); 12457fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 6, 12, 12, SkPath::kCCW_Direction); 12467fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 32, 9, 36, SkPath::kCCW_Direction); 124727c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com testSimplifyx(path); 124827c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com} 124927c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com 1250c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine63x() { 1251c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1252c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 12537fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 60, 60, SkPath::kCW_Direction); 12547fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 10, 20, 20, SkPath::kCW_Direction); 12557fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 6, 12, 12, SkPath::kCCW_Direction); 12567fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 32, 9, 36, SkPath::kCCW_Direction); 1257c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1258c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1259c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 126027c449af06cd1d05db441593d08b84f3530fba52caryclark@google.comstatic void testLine64() { 126159823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 12627fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 60, 60, SkPath::kCW_Direction); 12637fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 40, 30, 30, SkPath::kCW_Direction); 12647fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(18, 6, 30, 30, SkPath::kCW_Direction); 126527c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com testSimplifyx(path); 126627c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com} 126727c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com 1268c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine64x() { 1269c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1270c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 12717fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 60, 60, SkPath::kCW_Direction); 12727fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 40, 30, 30, SkPath::kCW_Direction); 12737fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(18, 6, 30, 30, SkPath::kCW_Direction); 1274c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1275c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1276c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 127727c449af06cd1d05db441593d08b84f3530fba52caryclark@google.comstatic void testLine65() { 127859823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 12797fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 60, 60, SkPath::kCW_Direction); 12807fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 0, 30, 30, SkPath::kCW_Direction); 12817fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(24, 0, 36, 36, SkPath::kCW_Direction); 12827fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(32, 6, 36, 41, SkPath::kCCW_Direction); 128327c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com testSimplifyx(path); 128427c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com} 128527c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com 1286c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine65x() { 1287c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1288c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 12897fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 60, 60, SkPath::kCW_Direction); 12907fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 0, 30, 30, SkPath::kCW_Direction); 12917fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(24, 0, 36, 36, SkPath::kCW_Direction); 12927fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(32, 6, 36, 41, SkPath::kCCW_Direction); 1293c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1294c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1295c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 129627c449af06cd1d05db441593d08b84f3530fba52caryclark@google.comstatic void testLine66() { 129759823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 12987fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 60, 60, SkPath::kCW_Direction); 12997fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 30, 20, 20, SkPath::kCW_Direction); 13007fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 20, 24, 30, SkPath::kCW_Direction); 130127c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com testSimplifyx(path); 130227c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com} 130327c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com 1304c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine66x() { 1305c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1306c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 13077fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 60, 60, SkPath::kCW_Direction); 13087fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 30, 20, 20, SkPath::kCW_Direction); 13097fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 20, 24, 30, SkPath::kCW_Direction); 1310c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1311c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1312c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 1313534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.comstatic void testLine67() { 131459823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 13157fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 60, 60, SkPath::kCW_Direction); 13167fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 40, 30, 30, SkPath::kCW_Direction); 13177fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(24, 20, 36, 30, SkPath::kCW_Direction); 13187fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(32, 0, 36, 41, SkPath::kCW_Direction); 1319534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com testSimplifyx(path); 1320534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com} 1321534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com 1322c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine67x() { 1323c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1324c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 13257fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 60, 60, SkPath::kCW_Direction); 13267fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 40, 30, 30, SkPath::kCW_Direction); 13277fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(24, 20, 36, 30, SkPath::kCW_Direction); 13287fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(32, 0, 36, 41, SkPath::kCW_Direction); 1329c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1330c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1331c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 1332534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.comstatic void testLine68a() { 133359823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 13347fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 8, 8, SkPath::kCW_Direction); 13357fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(2, 2, 6, 6, SkPath::kCW_Direction); 13367fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(1, 2, 4, 2, SkPath::kCW_Direction); 1337534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com testSimplifyx(path); 1338534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com} 1339534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com 1340c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine68ax() { 1341c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1342c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 13437fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 8, 8, SkPath::kCW_Direction); 13447fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(2, 2, 6, 6, SkPath::kCW_Direction); 13457fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(1, 2, 4, 2, SkPath::kCW_Direction); 1346c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1347c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1348c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 1349534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.comstatic void testLine68b() { 135059823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 13517fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 8, 8, SkPath::kCW_Direction); 13527fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(2, 2, 6, 6, SkPath::kCCW_Direction); 13537fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(1, 2, 2, 2, SkPath::kCW_Direction); 1354534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com testSimplifyx(path); 1355534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com} 1356534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com 1357c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine68bx() { 1358c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1359c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 13607fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 8, 8, SkPath::kCW_Direction); 13617fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(2, 2, 6, 6, SkPath::kCCW_Direction); 13627fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(1, 2, 2, 2, SkPath::kCW_Direction); 1363c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1364c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1365c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 1366534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.comstatic void testLine68c() { 136759823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 13687fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 8, 8, SkPath::kCCW_Direction); 13697fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(2, 2, 6, 6, SkPath::kCW_Direction); 13707fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(1, 2, 4, 2, SkPath::kCW_Direction); 1371534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com testSimplifyx(path); 1372534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com} 1373534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com 1374c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine68cx() { 1375c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1376c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 13777fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 8, 8, SkPath::kCCW_Direction); 13787fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(2, 2, 6, 6, SkPath::kCW_Direction); 13797fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(1, 2, 4, 2, SkPath::kCW_Direction); 1380c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1381c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1382c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 1383534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.comstatic void testLine68d() { 138459823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 13857fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 8, 8, SkPath::kCCW_Direction); 13867fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(2, 2, 6, 6, SkPath::kCCW_Direction); 13877fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(1, 2, 4, 2, SkPath::kCW_Direction); 1388534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com testSimplifyx(path); 1389534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com} 1390534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com 1391c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine68dx() { 1392c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1393c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 13947fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 8, 8, SkPath::kCCW_Direction); 13957fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(2, 2, 6, 6, SkPath::kCCW_Direction); 13967fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(1, 2, 4, 2, SkPath::kCW_Direction); 1397c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1398c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1399c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 1400534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.comstatic void testLine68e() { 140159823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 14027fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 8, 8, SkPath::kCW_Direction); 14037fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 8, 8, SkPath::kCW_Direction); 14047fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(2, 2, 6, 6, SkPath::kCCW_Direction); 14057fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(1, 2, 2, 2, SkPath::kCW_Direction); 1406534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com testSimplifyx(path); 1407534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com} 1408534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com 1409c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine68ex() { 1410c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1411c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 14127fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 8, 8, SkPath::kCW_Direction); 14137fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 8, 8, SkPath::kCW_Direction); 14147fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(2, 2, 6, 6, SkPath::kCCW_Direction); 14157fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(1, 2, 2, 2, SkPath::kCW_Direction); 1416c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1417c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1418c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 1419534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.comstatic void testLine68f() { 142059823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 14217fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 8, 8, SkPath::kCW_Direction); 14227fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(2, 2, 6, 6, SkPath::kCCW_Direction); 14237fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(2, 2, 6, 6, SkPath::kCCW_Direction); 14247fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(1, 2, 2, 2, SkPath::kCW_Direction); 1425534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com testSimplifyx(path); 1426534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com} 1427534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com 1428c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine68fx() { 1429c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1430c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 14317fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 8, 8, SkPath::kCW_Direction); 14327fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(2, 2, 6, 6, SkPath::kCCW_Direction); 14337fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(2, 2, 6, 6, SkPath::kCCW_Direction); 14347fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(1, 2, 2, 2, SkPath::kCW_Direction); 1435c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1436c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1437c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 1438534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.comstatic void testLine68g() { 143959823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 14407fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 8, 8, SkPath::kCW_Direction); 14417fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 8, 8, SkPath::kCW_Direction); 14427fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(2, 2, 6, 6, SkPath::kCCW_Direction); 14437fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(2, 2, 6, 6, SkPath::kCCW_Direction); 14447fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(1, 2, 2, 2, SkPath::kCW_Direction); 1445534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com testSimplifyx(path); 1446534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com} 1447534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com 1448c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine68gx() { 1449c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1450c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 14517fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 8, 8, SkPath::kCW_Direction); 14527fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 8, 8, SkPath::kCW_Direction); 14537fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(2, 2, 6, 6, SkPath::kCCW_Direction); 14547fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(2, 2, 6, 6, SkPath::kCCW_Direction); 14557fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(1, 2, 2, 2, SkPath::kCW_Direction); 1456c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1457c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1458c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 1459534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.comstatic void testLine68h() { 146059823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 14617fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 8, 8, SkPath::kCW_Direction); 14627fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(2, 2, 6, 6, SkPath::kCCW_Direction); 14637fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(2, 2, 6, 6, SkPath::kCCW_Direction); 14647fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(2, 2, 6, 6, SkPath::kCCW_Direction); 14657fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(1, 2, 2, 2, SkPath::kCW_Direction); 1466534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com testSimplifyx(path); 1467534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com} 1468534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com 1469c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine68hx() { 1470c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1471c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 14727fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 8, 8, SkPath::kCW_Direction); 14737fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(2, 2, 6, 6, SkPath::kCCW_Direction); 14747fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(2, 2, 6, 6, SkPath::kCCW_Direction); 14757fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(2, 2, 6, 6, SkPath::kCCW_Direction); 14767fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(1, 2, 2, 2, SkPath::kCW_Direction); 1477c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1478c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1479c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 1480534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.comstatic void testLine69() { 148159823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 14827fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 20, 20, 20, SkPath::kCW_Direction); 14837fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 20, 12, 30, SkPath::kCW_Direction); 14847fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 32, 21, 36, SkPath::kCW_Direction); 1485534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com testSimplifyx(path); 1486534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com} 1487534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com 1488c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine69x() { 1489c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1490c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 14917fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 20, 20, 20, SkPath::kCW_Direction); 14927fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 20, 12, 30, SkPath::kCW_Direction); 14937fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 32, 21, 36, SkPath::kCW_Direction); 1494c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1495c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1496c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 1497534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.comstatic void testLine70() { 149859823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 14997fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 15007fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 24, 12, 12, SkPath::kCW_Direction); 15017fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 32, 21, 36, SkPath::kCCW_Direction); 1502534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com testSimplifyx(path); 1503534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com} 1504534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com 1505c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine70x() { 1506c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1507c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 15087fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 15097fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 24, 12, 12, SkPath::kCW_Direction); 15107fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 32, 21, 36, SkPath::kCCW_Direction); 1511c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1512c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1513c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 1514534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.comstatic void testLine71() { 151559823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 15167fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 15177fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 0, 24, 24, SkPath::kCW_Direction); 15187fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 32, 21, 36, SkPath::kCW_Direction); 1519534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com testSimplifyx(path); 1520534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com} 1521534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com 1522c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine71x() { 1523c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1524c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 15257fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 20, 20, SkPath::kCW_Direction); 15267fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 0, 24, 24, SkPath::kCW_Direction); 15277fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 32, 21, 36, SkPath::kCW_Direction); 1528c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1529c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1530c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 1531200c211d34b11a4a988fc2549df3c17ae6875899caryclark@google.comstatic void testLine72() { 153259823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 15337fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 60, 60, SkPath::kCW_Direction); 15347fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 40, 30, 30, SkPath::kCW_Direction); 15357fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(6, 20, 18, 30, SkPath::kCW_Direction); 1536200c211d34b11a4a988fc2549df3c17ae6875899caryclark@google.com testSimplifyx(path); 1537200c211d34b11a4a988fc2549df3c17ae6875899caryclark@google.com} 1538200c211d34b11a4a988fc2549df3c17ae6875899caryclark@google.com 1539c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine72x() { 1540c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1541c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 15427fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 60, 60, SkPath::kCW_Direction); 15437fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 40, 30, 30, SkPath::kCW_Direction); 15447fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(6, 20, 18, 30, SkPath::kCW_Direction); 1545c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1546c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1547c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 1548200c211d34b11a4a988fc2549df3c17ae6875899caryclark@google.comstatic void testLine73() { 154959823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 15507fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 60, 60, SkPath::kCW_Direction); 15517fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 40, 20, 20, SkPath::kCW_Direction); 15527fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 20, 12, 30, SkPath::kCW_Direction); 15537fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 9, 9, SkPath::kCCW_Direction); 1554200c211d34b11a4a988fc2549df3c17ae6875899caryclark@google.com testSimplifyx(path); 1555200c211d34b11a4a988fc2549df3c17ae6875899caryclark@google.com} 1556200c211d34b11a4a988fc2549df3c17ae6875899caryclark@google.com 1557c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine73x() { 1558c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1559c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 15607fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 60, 60, SkPath::kCW_Direction); 15617fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 40, 20, 20, SkPath::kCW_Direction); 15627fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 20, 12, 30, SkPath::kCW_Direction); 15637fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 9, 9, SkPath::kCCW_Direction); 1564c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1565c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1566c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 15670c803d048c826fadfeed51207488867e17e0cc10caryclark@google.comstatic void testLine74() { 156859823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 15697fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(20, 30, 40, 40, SkPath::kCW_Direction); 15707fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(24, 20, 36, 30, SkPath::kCCW_Direction); 15717fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(32, 24, 36, 41, SkPath::kCCW_Direction); 15720c803d048c826fadfeed51207488867e17e0cc10caryclark@google.com testSimplifyx(path); 15730c803d048c826fadfeed51207488867e17e0cc10caryclark@google.com} 15740c803d048c826fadfeed51207488867e17e0cc10caryclark@google.com 1575c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine74x() { 1576c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1577c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 15787fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(20, 30, 40, 40, SkPath::kCW_Direction); 15797fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(24, 20, 36, 30, SkPath::kCCW_Direction); 15807fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(32, 24, 36, 41, SkPath::kCCW_Direction); 1581c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1582c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1583c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 15842ddff9388694263c7be9347de7eb768cd0847997caryclark@google.comstatic void testLine75() { 158559823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 15867fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 60, 60, SkPath::kCW_Direction); 15877fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 0, 30, 30, SkPath::kCCW_Direction); 15887fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(18, 0, 30, 30, SkPath::kCCW_Direction); 15897fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 0, 21, 21, SkPath::kCCW_Direction); 15902ddff9388694263c7be9347de7eb768cd0847997caryclark@google.com testSimplifyx(path); 15912ddff9388694263c7be9347de7eb768cd0847997caryclark@google.com} 15922ddff9388694263c7be9347de7eb768cd0847997caryclark@google.com 1593c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine75x() { 1594c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1595c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 15967fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 60, 60, SkPath::kCW_Direction); 15977fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 0, 30, 30, SkPath::kCCW_Direction); 15987fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(18, 0, 30, 30, SkPath::kCCW_Direction); 15997fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 0, 21, 21, SkPath::kCCW_Direction); 1600c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1601c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1602c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 16032ddff9388694263c7be9347de7eb768cd0847997caryclark@google.comstatic void testLine76() { 160459823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 16057fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(36, 0, 66, 60, SkPath::kCW_Direction); 16067fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 20, 40, 30, SkPath::kCW_Direction); 16077fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(24, 20, 36, 30, SkPath::kCCW_Direction); 16087fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(32, 6, 36, 41, SkPath::kCCW_Direction); 16092ddff9388694263c7be9347de7eb768cd0847997caryclark@google.com testSimplifyx(path); 16102ddff9388694263c7be9347de7eb768cd0847997caryclark@google.com} 16112ddff9388694263c7be9347de7eb768cd0847997caryclark@google.com 1612c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine76x() { 1613c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1614c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 16157fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(36, 0, 66, 60, SkPath::kCW_Direction); 16167fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 20, 40, 30, SkPath::kCW_Direction); 16177fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(24, 20, 36, 30, SkPath::kCCW_Direction); 16187fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(32, 6, 36, 41, SkPath::kCCW_Direction); 1619c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1620c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1621c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 16222ddff9388694263c7be9347de7eb768cd0847997caryclark@google.comstatic void testLine77() { 162359823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 16247fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(20, 0, 40, 40, SkPath::kCW_Direction); 16257fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(24, 6, 36, 36, SkPath::kCCW_Direction); 16267fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(24, 32, 33, 36, SkPath::kCCW_Direction); 16272ddff9388694263c7be9347de7eb768cd0847997caryclark@google.com testSimplifyx(path); 16282ddff9388694263c7be9347de7eb768cd0847997caryclark@google.com} 16292ddff9388694263c7be9347de7eb768cd0847997caryclark@google.com 1630c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine77x() { 1631c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1632c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 16337fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(20, 0, 40, 40, SkPath::kCW_Direction); 16347fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(24, 6, 36, 36, SkPath::kCCW_Direction); 16357fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(24, 32, 33, 36, SkPath::kCCW_Direction); 1636c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1637c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1638c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 16392ddff9388694263c7be9347de7eb768cd0847997caryclark@google.comstatic void testLine78() { 164059823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 16417fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 30, 60, SkPath::kCW_Direction); 16427fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 20, 30, 30, SkPath::kCCW_Direction); 16437fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(18, 20, 30, 30, SkPath::kCCW_Direction); 16447fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(32, 0, 36, 41, SkPath::kCCW_Direction); 16452ddff9388694263c7be9347de7eb768cd0847997caryclark@google.com testSimplifyx(path); 16462ddff9388694263c7be9347de7eb768cd0847997caryclark@google.com} 16472ddff9388694263c7be9347de7eb768cd0847997caryclark@google.com 1648c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine78x() { 1649c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1650c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 16517fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 30, 60, SkPath::kCW_Direction); 16527fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 20, 30, 30, SkPath::kCCW_Direction); 16537fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(18, 20, 30, 30, SkPath::kCCW_Direction); 16547fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(32, 0, 36, 41, SkPath::kCCW_Direction); 1655c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1656c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1657c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 16582ddff9388694263c7be9347de7eb768cd0847997caryclark@google.comstatic void testLine79() { 165959823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 16607fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 36, 60, 30, SkPath::kCW_Direction); 16617fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 30, 40, 30, SkPath::kCW_Direction); 16627fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 20, 12, 30, SkPath::kCCW_Direction); 16637fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 32, 9, 36, SkPath::kCCW_Direction); 16642ddff9388694263c7be9347de7eb768cd0847997caryclark@google.com testSimplifyx(path); 16652ddff9388694263c7be9347de7eb768cd0847997caryclark@google.com} 16662ddff9388694263c7be9347de7eb768cd0847997caryclark@google.com 1667c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine79x() { 1668c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1669c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 16707fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 36, 60, 30, SkPath::kCW_Direction); 16717fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 30, 40, 30, SkPath::kCW_Direction); 16727fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 20, 12, 30, SkPath::kCCW_Direction); 16737fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 32, 9, 36, SkPath::kCCW_Direction); 16747fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com testSimplifyx(path); 16757fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com} 16767fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com 16777fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.comstatic void testLine81() { 16787fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com SkPath path; 16797fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(-1, -1, 3, 3, SkPath::kCW_Direction); 16807fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 16817fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 16827fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 16837fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(1, 1, 2, 2, SkPath::kCCW_Direction); 1684c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1685c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1686c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 168759823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.comstatic void testDegenerate1() { 168859823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 168959823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.moveTo(0, 0); 169059823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(0, 0); 169159823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(2, 0); 169259823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.close(); 169359823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.moveTo(0, 0); 169459823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(1, 0); 169559823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(2, 0); 169659823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.close(); 169759823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com testSimplifyx(path); 169859823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com} 169959823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com 1700c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testDegenerate1x() { 1701c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1702c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 1703c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 1704c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 0); 1705c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2, 0); 1706c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1707c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 1708c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 0); 1709c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2, 0); 1710c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1711c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1712c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1713c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 171459823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.comstatic void testDegenerate2() { 171559823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 171659823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.moveTo(0, 0); 171759823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(0, 0); 171859823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(0, 0); 171959823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.close(); 172059823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.moveTo(0, 0); 172159823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(1, 0); 172259823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(0, 1); 172359823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.close(); 172459823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com testSimplifyx(path); 172559823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com} 172659823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com 1727c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testDegenerate2x() { 1728c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1729c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 1730c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 1731c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 0); 1732c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 0); 1733c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1734c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 1735c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 0); 1736c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 1); 1737c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1738c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1739c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1740c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 174159823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.comstatic void testDegenerate3() { 174259823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 174359823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.moveTo(0, 0); 174459823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(2, 0); 174559823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(1, 0); 174659823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.close(); 174759823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.moveTo(0, 0); 174859823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(0, 0); 174959823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(3, 0); 175059823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.close(); 175159823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com testSimplifyx(path); 175259823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com} 175359823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com 1754c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testDegenerate3x() { 1755c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1756c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 1757c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 1758c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2, 0); 1759c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 0); 1760c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1761c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 1762c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 0); 1763c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(3, 0); 1764c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1765c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1766c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1767c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 176859823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.comstatic void testDegenerate4() { 176959823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 177059823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.moveTo(0, 0); 177159823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(1, 0); 177259823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(1, 3); 177359823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.close(); 177459823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.moveTo(1, 0); 177559823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(1, 1); 177659823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(1, 2); 177759823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.close(); 177859823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com testSimplifyx(path); 177959823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com} 178059823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com 1781c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testDegenerate4x() { 1782c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1783c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 1784c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 1785c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 0); 1786c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 3); 1787c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1788c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(1, 0); 1789c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 1); 1790c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 2); 1791c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1792c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1793c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1794c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 179559823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.comstatic void testNondegenerate1() { 179659823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 179759823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.moveTo(0, 0); 179859823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(3, 0); 179959823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(1, 3); 180059823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.close(); 180159823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.moveTo(1, 1); 180259823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(2, 1); 180359823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(1, 2); 180459823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.close(); 180559823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com testSimplifyx(path); 180659823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com} 180759823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com 1808c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testNondegenerate1x() { 1809c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1810c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 1811c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 1812c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(3, 0); 1813c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 3); 1814c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1815c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(1, 1); 1816c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2, 1); 1817c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 2); 1818c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1819c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1820c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1821c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 182259823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.comstatic void testNondegenerate2() { 182359823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 182459823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.moveTo(1, 0); 182559823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(0, 1); 182659823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(1, 1); 182759823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.close(); 182859823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.moveTo(0, 2); 182959823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(0, 3); 183059823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(1, 2); 183159823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.close(); 183259823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com testSimplifyx(path); 183359823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com} 183459823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com 1835c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testNondegenerate2x() { 1836c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1837c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 1838c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(1, 0); 1839c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 1); 1840c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 1); 1841c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1842c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 2); 1843c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 3); 1844c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 2); 1845c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1846c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1847c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1848c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 184959823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.comstatic void testNondegenerate3() { 185059823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 185159823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.moveTo(0, 0); 185259823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(1, 0); 185359823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(2, 1); 185459823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.close(); 185559823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.moveTo(0, 1); 185659823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(1, 1); 185759823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(0, 2); 185859823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.close(); 185959823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com testSimplifyx(path); 186059823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com} 186159823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com 1862c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testNondegenerate3x() { 1863c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1864c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 1865c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 1866c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 0); 1867c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2, 1); 1868c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1869c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 1); 1870c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 1); 1871c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 2); 1872c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1873c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1874c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1875c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 187659823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.comstatic void testNondegenerate4() { 187759823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 187859823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.moveTo(1, 0); 187959823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(0, 1); 188059823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(1, 2); 188159823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.close(); 188259823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.moveTo(0, 2); 188359823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(0, 3); 188459823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(1, 3); 188559823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.close(); 188659823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com testSimplifyx(path); 188759823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com} 188859823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com 1889c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testNondegenerate4x() { 1890c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1891c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 1892c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(1, 0); 1893c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 1); 1894c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 2); 1895c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1896c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 2); 1897c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 3); 1898c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 3); 1899c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1900c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1901c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1902c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 190359823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.comstatic void testQuadralateral5() { 190459823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 190559823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.moveTo(0, 0); 190659823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(0, 0); 190759823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(1, 0); 190859823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(1, 1); 190959823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.close(); 191059823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.moveTo(0, 0); 191159823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(2, 2); 191259823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(3, 2); 191359823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.lineTo(3, 3); 191459823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.close(); 191559823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com testSimplifyx(path); 191659823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com} 191759823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com 1918c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testQuadralateral5x() { 1919c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1920c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 1921c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 1922c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 0); 1923c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 0); 1924c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 1); 1925c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1926c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 1927c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2, 2); 1928c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(3, 2); 1929c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(3, 3); 1930c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1931c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1932c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1933c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 1934c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testQuadralateral6() { 1935c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1936c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 1937c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 0); 1938c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 0); 1939c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 1); 1940c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1941c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(1, 0); 1942c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2, 0); 1943c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 2); 1944c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2, 2); 1945c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1946c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1947c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1948c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 1949c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testQuadralateral6x() { 1950c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1951c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 1952c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 1953c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 0); 1954c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 0); 1955c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 1); 1956c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1957c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(1, 0); 1958c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2, 0); 1959c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 2); 1960c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2, 2); 1961c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1962c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1963c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1964c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 1965c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testFauxQuadralateral6() { 1966c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1967c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 1968c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 0); 1969c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 1); 1970c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1971c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(1, 0); 1972c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2, 0); 1973c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1 + 1.0f/3, 2.0f/3); 1974c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1975c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(1 + 1.0f/3, 2.0f/3); 1976c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 2); 1977c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2, 2); 1978c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1979c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1980c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1981c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 1982c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testFauxQuadralateral6x() { 1983c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 1984c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 1985c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 1986c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 0); 1987c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 1); 1988c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1989c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(1, 0); 1990c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2, 0); 1991c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1 + 1.0f/3, 2.0f/3); 1992c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1993c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(1 + 1.0f/3, 2.0f/3); 1994c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 2); 1995c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2, 2); 1996c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 1997c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 1998c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 1999c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 2000c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testFauxQuadralateral6a() { 2001c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 2002c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2003c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(3, 0); 2004c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(3, 3); 2005c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2006c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(3, 0); 2007c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(6, 0); 2008c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(4, 2); 2009c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2010c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(4, 2); 2011c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 6); 2012c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(6, 6); 2013c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2014c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 2015c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 2016c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 2017c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testFauxQuadralateral6ax() { 2018c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 2019c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 2020c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2021c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(3, 0); 2022c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(3, 3); 2023c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2024c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(3, 0); 2025c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(6, 0); 2026c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(4, 2); 2027c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2028c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(4, 2); 2029c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 6); 2030c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(6, 6); 2031c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2032c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 2033c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 2034c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 2035c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testFauxQuadralateral6b() { 203659823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com SkPath path; 203759823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.moveTo(0, 0); 2038c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(3, 0); 2039c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(3, 3); 204059823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.close(); 2041c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(3, 0); 2042c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(6, 0); 2043c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(4, 2); 2044c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2045c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(4, 2); 2046c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(6, 6); 2047c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 6); 204859823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com path.close(); 204959823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com testSimplifyx(path); 205059823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com} 205159823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com 2052c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testFauxQuadralateral6bx() { 205324bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com SkPath path; 2054c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 205524bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.moveTo(0, 0); 2056c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(3, 0); 2057c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(3, 3); 205824bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 2059c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(3, 0); 2060c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(6, 0); 2061c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(4, 2); 206224bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 2063c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(4, 2); 2064c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(6, 6); 2065c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 6); 206624bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 206724bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com testSimplifyx(path); 206824bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com} 206924bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com 2070c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testFauxQuadralateral6c() { 207124bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com SkPath path; 207224bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.moveTo(0, 0); 207324bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(3, 3); 2074c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(3, 0); 207524bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 207624bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.moveTo(3, 0); 207724bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(6, 0); 207824bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(4, 2); 207924bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 208024bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.moveTo(4, 2); 208124bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(0, 6); 208224bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(6, 6); 208324bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 208424bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com testSimplifyx(path); 208524bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com} 208624bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com 2087c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testFauxQuadralateral6cx() { 208824bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com SkPath path; 2089c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 209024bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.moveTo(0, 0); 209124bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(3, 3); 2092c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(3, 0); 209324bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 209424bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.moveTo(3, 0); 209524bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(6, 0); 209624bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(4, 2); 209724bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 209824bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.moveTo(4, 2); 209924bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(0, 6); 2100c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(6, 6); 210124bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 210224bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com testSimplifyx(path); 210324bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com} 210424bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com 2105c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testFauxQuadralateral6d() { 210624bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com SkPath path; 210724bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.moveTo(0, 0); 210824bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(3, 3); 210924bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(3, 0); 211024bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 211124bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.moveTo(3, 0); 211224bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(6, 0); 211324bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(4, 2); 211424bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 211524bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.moveTo(4, 2); 211624bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(6, 6); 2117c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 6); 211824bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 211924bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com testSimplifyx(path); 212024bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com} 212124bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com 2122c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testFauxQuadralateral6dx() { 212324bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com SkPath path; 2124c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 212524bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.moveTo(0, 0); 212624bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(3, 3); 212724bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(3, 0); 212824bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 212924bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.moveTo(3, 0); 213024bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(6, 0); 213124bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(4, 2); 213224bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 213324bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.moveTo(4, 2); 213424bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(6, 6); 213524bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(0, 6); 213624bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 213724bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com testSimplifyx(path); 213824bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com} 213924bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com 214024bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.comstatic void testQuadralateral6a() { 214124bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com SkPath path; 214224bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.moveTo(0, 0); 214324bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(0, 0); 214424bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(3, 0); 214524bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(3, 3); 214624bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 214724bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.moveTo(3, 0); 214824bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(6, 0); 214924bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(0, 6); 215024bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(6, 6); 215124bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 215224bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com testSimplifyx(path); 215324bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com} 215424bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com 2155c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testQuadralateral6ax() { 2156c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 2157c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 2158c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2159c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 0); 2160c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(3, 0); 2161c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(3, 3); 2162c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2163c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(3, 0); 2164c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(6, 0); 2165c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 6); 2166c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(6, 6); 2167c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2168c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 2169c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 2170c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 217124bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.comstatic void testQuadralateral7() { 217224bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com SkPath path; 217324bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.moveTo(0, 0); 217424bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(0, 0); 217524bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(1, 0); 217624bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(2, 1); 217724bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 217824bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.moveTo(1, 0); 217924bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(1, 1); 218024bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(2, 2); 218124bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(1, 3); 218224bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 218324bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com testSimplifyx(path); 218424bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com} 218524bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com 2186c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testQuadralateral7x() { 2187c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 2188c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 2189c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2190c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 0); 2191c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 0); 2192c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2, 1); 2193c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2194c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(1, 0); 2195c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 1); 2196c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2, 2); 2197c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 3); 2198c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2199c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 2200c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 2201c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 220224bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.comstatic void testQuadralateral8() { 220324bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com SkPath path; 220424bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.moveTo(0, 0); 220524bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(3, 1); 220624bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(1, 3); 220724bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(3, 3); 220824bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 220924bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.moveTo(2, 1); 221024bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(0, 2); 221124bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(3, 2); 221224bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(2, 3); 221324bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 221424bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com testSimplifyx(path); 221524bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com} 221624bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com 2217c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testQuadralateral8x() { 2218c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 2219c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 2220c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2221c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(3, 1); 2222c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 3); 2223c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(3, 3); 2224c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2225c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(2, 1); 2226c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 2); 2227c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(3, 2); 2228c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2, 3); 2229c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2230c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 2231c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 2232c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 223324bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.comstatic void testQuadralateral9() { 223424bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com SkPath path; 223524bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.moveTo(0, 0); 223624bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(1, 0); 223724bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(1, 2); 223824bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(2, 2); 223924bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 224024bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.moveTo(1, 1); 224124bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(2, 1); 224224bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(1, 3); 224324bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(2, 3); 224424bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 224524bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com testSimplifyx(path); 224624bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com} 224724bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com 2248c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testQuadralateral9x() { 2249c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 2250c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 2251c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2252c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 0); 2253c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 2); 2254c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2, 2); 2255c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2256c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(1, 1); 2257c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2, 1); 2258c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 3); 2259c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2, 3); 2260c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2261c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 2262c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 2263c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 2264e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.comstatic void testLine1a() { 2265e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com SkPath path; 2266e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 2267e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.addRect(0, 0, 12, 12, SkPath::kCW_Direction); 2268e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.addRect(4, 0, 13, 13, SkPath::kCCW_Direction); 2269e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com testSimplifyx(path); 2270e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com} 2271e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com 2272c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine1ax() { 227324bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com SkPath path; 227424bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 22757fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 0, 12, 12, SkPath::kCW_Direction); 2276e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.addRect(4, 0, 13, 13, SkPath::kCCW_Direction); 227724bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com testSimplifyx(path); 227824bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com} 227924bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com 2280c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine2ax() { 228124bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com SkPath path; 228224bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 22837fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 20, 20, 20, SkPath::kCW_Direction); 22847fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 20, 12, 30, SkPath::kCW_Direction); 22857fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(12, 0, 21, 21, SkPath::kCCW_Direction); 228624bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com testSimplifyx(path); 228724bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com} 228824bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com 2289c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine3aax() { 229024bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com SkPath path; 229124bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 22927fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 30, 30, 30, SkPath::kCW_Direction); 22937fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(18, 20, 30, 30, SkPath::kCCW_Direction); 22947fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 32, 9, 36, SkPath::kCCW_Direction); 229524bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com testSimplifyx(path); 229624bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com} 229724bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com 2298c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testLine4ax() { 229924bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com SkPath path; 230024bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 23017fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(10, 30, 30, 30, SkPath::kCW_Direction); 23027fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(24, 20, 36, 30, SkPath::kCCW_Direction); 23037fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com path.addRect(0, 32, 9, 36, SkPath::kCCW_Direction); 230424bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com testSimplifyx(path); 230524bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com} 230624bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com 230724bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.comstatic void testQuadratic1() { 230824bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com SkPath path; 230924bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.moveTo(0, 0); 231024bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.quadTo(0, 0, 0, 0); 231124bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(1, 0); 231224bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 231324bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.moveTo(0, 0); 231424bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(0, 0); 231524bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.quadTo(0, 0, 0, 0); 231624bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 231724bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com testSimplifyx(path); 231824bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com} 231924bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com 2320c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testQuadratic1x() { 2321c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 2322c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 2323c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2324c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.quadTo(0, 0, 0, 0); 2325c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 0); 2326c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2327c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2328c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 0); 2329c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.quadTo(0, 0, 0, 0); 2330c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2331c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 2332c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 2333c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 233424bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.comstatic void testQuadratic2() { 233524bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com SkPath path; 233624bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.moveTo(0, 0); 233724bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.quadTo(0, 0, 0, 0); 233824bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(3, 0); 233924bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 234024bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.moveTo(0, 0); 234124bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.lineTo(0, 0); 234224bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.quadTo(1, 0, 0, 1); 234324bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com path.close(); 234424bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com testSimplifyx(path); 234524bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com} 234624bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com 2347c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testQuadratic2x() { 2348c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 2349c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 2350c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2351c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.quadTo(0, 0, 0, 0); 2352c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(3, 0); 2353c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2354c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2355c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 0); 2356c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.quadTo(1, 0, 0, 1); 2357c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2358c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 2359c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 2360c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 236103f970652e07c6832cae41fa374cb68ca80d472ccaryclark@google.comstatic void testQuadratic3() { 236203f970652e07c6832cae41fa374cb68ca80d472ccaryclark@google.com SkPath path; 236303f970652e07c6832cae41fa374cb68ca80d472ccaryclark@google.com path.moveTo(0, 0); 236403f970652e07c6832cae41fa374cb68ca80d472ccaryclark@google.com path.quadTo(0, 0, 1, 0); 236503f970652e07c6832cae41fa374cb68ca80d472ccaryclark@google.com path.lineTo(0, 2); 236603f970652e07c6832cae41fa374cb68ca80d472ccaryclark@google.com path.close(); 236703f970652e07c6832cae41fa374cb68ca80d472ccaryclark@google.com path.moveTo(0, 0); 236803f970652e07c6832cae41fa374cb68ca80d472ccaryclark@google.com path.lineTo(0, 0); 236903f970652e07c6832cae41fa374cb68ca80d472ccaryclark@google.com path.quadTo(1, 0, 0, 1); 237003f970652e07c6832cae41fa374cb68ca80d472ccaryclark@google.com path.close(); 237103f970652e07c6832cae41fa374cb68ca80d472ccaryclark@google.com testSimplifyx(path); 237203f970652e07c6832cae41fa374cb68ca80d472ccaryclark@google.com} 237303f970652e07c6832cae41fa374cb68ca80d472ccaryclark@google.com 2374c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testQuadratic3x() { 2375c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 2376c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 2377c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2378c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.quadTo(0, 0, 1, 0); 2379c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 2); 2380c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2381c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2382c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 0); 2383c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.quadTo(1, 0, 0, 1); 2384c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2385c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 2386c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 2387c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 2388c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testQuadratic4() { 2389c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 2390c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2391c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.quadTo(0, 0, 1, 0); 2392c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 2); 2393c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2394c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2395c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 0); 2396c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.quadTo(1, 0, 0, 2); 2397c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2398c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 2399c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 2400c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 2401c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testQuadratic4x() { 2402c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 2403c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 2404c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2405c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.quadTo(0, 0, 1, 0); 2406c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 2); 2407c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2408c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2409c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 0); 2410c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.quadTo(1, 0, 0, 2); 2411c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2412c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 2413c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 2414c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 2415c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testQuadratic5() { 2416c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 2417c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2418c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.quadTo(0, 0, 0, 0); 2419c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 1); 2420c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2421c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2422c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 0); 2423c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.quadTo(0, 1, 0, 2); 2424c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2425c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 2426c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 2427c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 2428c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testQuadratic6() { 2429c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 2430c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2431c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.quadTo(0, 0, 1, 0); 2432c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(2, 1); 2433c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2434c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2435c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 0); 2436c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.quadTo(2, 0, 0, 1); 2437c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2438c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 2439c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 2440c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 2441c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testQuadratic7() { 2442c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 2443c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2444c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.quadTo(0, 0, 1, 0); 2445c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(3, 1); 2446c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2447c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2448c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 0); 2449c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.quadTo(3, 0, 1, 2); 2450c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2451c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 2452c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 2453c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 2454c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testQuadratic8() { 2455c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 2456c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2457c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.quadTo(0, 0, 1, 0); 2458c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(0, 2); 2459c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2460c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2461c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 0); 2462c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.quadTo(0, 1, 1, 2); 2463c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2464c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 2465c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 2466c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 2467c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testQuadratic9() { 2468c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 2469c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2470c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.quadTo(0, 0, 1, 0); 2471c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(3, 1); 2472c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2473c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2474c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 0); 2475c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.quadTo(1, 2, 3, 2); 2476c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2477c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 2478c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 2479c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 2480c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.comstatic void testQuadratic14() { 2481c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com SkPath path; 2482c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2483c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.quadTo(0, 0, 1, 0); 2484c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(3, 2); 2485c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2486c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.moveTo(0, 0); 2487c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.lineTo(1, 0); 2488c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.quadTo(3, 2, 3, 3); 2489c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com path.close(); 2490c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com testSimplifyx(path); 2491c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com} 2492c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com 24933350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.comstatic void testQuadratic15() { 24943350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com SkPath path; 24953350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com path.moveTo(0, 0); 24963350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com path.quadTo(0, 0, 1, 0); 24973350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com path.lineTo(1, 3); 24983350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com path.close(); 24993350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com path.moveTo(1, 0); 25003350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com path.lineTo(0, 1); 25013350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com path.quadTo(1, 1, 0, 3); 25023350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com path.close(); 25033350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com testSimplifyx(path); 25043350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com} 25053350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com 25063350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.comstatic void testQuadratic17x() { 25073350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com SkPath path; 25083350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 25093350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com path.moveTo(0, 0); 25103350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com path.quadTo(0, 0, 3, 1); 25113350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com path.lineTo(0, 2); 25123350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com path.close(); 25133350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com path.moveTo(0, 0); 25143350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com path.lineTo(1, 0); 25153350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com path.quadTo(3, 1, 0, 2); 25163350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com path.close(); 25173350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com testSimplifyx(path); 25183350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com} 25193350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com 25203350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.comstatic void testQuadratic18() { 25213350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com SkPath path; 25223350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com path.moveTo(0, 0); 25233350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com path.quadTo(1, 0, 0, 1); 25243350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com path.lineTo(0, 1); 25253350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com path.close(); 25263350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com path.moveTo(0, 0); 25273350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com path.lineTo(0, 0); 25283350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com path.quadTo(1, 0, 1, 1); 25293350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com path.close(); 25303350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com testSimplifyx(path); 25313350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com} 25323350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com 2533a7e483d130a65833e4c0d4abb4c2f13a9ce7703bcaryclark@google.comstatic void testQuadratic19() { 2534a7e483d130a65833e4c0d4abb4c2f13a9ce7703bcaryclark@google.com SkPath path; 2535a7e483d130a65833e4c0d4abb4c2f13a9ce7703bcaryclark@google.com path.moveTo(0, 0); 2536a7e483d130a65833e4c0d4abb4c2f13a9ce7703bcaryclark@google.com path.quadTo(1, 0, 0, 1); 2537a7e483d130a65833e4c0d4abb4c2f13a9ce7703bcaryclark@google.com path.lineTo(0, 1); 2538a7e483d130a65833e4c0d4abb4c2f13a9ce7703bcaryclark@google.com path.close(); 2539a7e483d130a65833e4c0d4abb4c2f13a9ce7703bcaryclark@google.com path.moveTo(0, 0); 2540a7e483d130a65833e4c0d4abb4c2f13a9ce7703bcaryclark@google.com path.lineTo(0, 0); 2541a7e483d130a65833e4c0d4abb4c2f13a9ce7703bcaryclark@google.com path.quadTo(2, 0, 0, 1); 2542a7e483d130a65833e4c0d4abb4c2f13a9ce7703bcaryclark@google.com path.close(); 2543a7e483d130a65833e4c0d4abb4c2f13a9ce7703bcaryclark@google.com testSimplifyx(path); 2544a7e483d130a65833e4c0d4abb4c2f13a9ce7703bcaryclark@google.com} 2545a7e483d130a65833e4c0d4abb4c2f13a9ce7703bcaryclark@google.com 254632546db1494a6c6433a7919844133a6ff5b5c7b2caryclark@google.comstatic void testQuadratic20() { 254732546db1494a6c6433a7919844133a6ff5b5c7b2caryclark@google.com SkPath path; 254832546db1494a6c6433a7919844133a6ff5b5c7b2caryclark@google.com path.moveTo(0, 0); 254932546db1494a6c6433a7919844133a6ff5b5c7b2caryclark@google.com path.quadTo(1, 0, 0, 1); 255032546db1494a6c6433a7919844133a6ff5b5c7b2caryclark@google.com path.lineTo(0, 1); 255132546db1494a6c6433a7919844133a6ff5b5c7b2caryclark@google.com path.close(); 255232546db1494a6c6433a7919844133a6ff5b5c7b2caryclark@google.com path.moveTo(0, 0); 255332546db1494a6c6433a7919844133a6ff5b5c7b2caryclark@google.com path.lineTo(0, 0); 255432546db1494a6c6433a7919844133a6ff5b5c7b2caryclark@google.com path.quadTo(1, 0, 0, 1); 255532546db1494a6c6433a7919844133a6ff5b5c7b2caryclark@google.com path.close(); 255632546db1494a6c6433a7919844133a6ff5b5c7b2caryclark@google.com testSimplifyx(path); 255732546db1494a6c6433a7919844133a6ff5b5c7b2caryclark@google.com} 255832546db1494a6c6433a7919844133a6ff5b5c7b2caryclark@google.com 2559235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.comstatic void testQuadratic21() { 2560235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com SkPath path; 2561235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.moveTo(0, 0); 2562235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.quadTo(1, 0, 0, 1); 2563235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.lineTo(0, 1); 2564235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.close(); 2565235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.moveTo(0, 0); 2566235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.lineTo(0, 0); 2567235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.quadTo(1, 0, 0, 2); 2568235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.close(); 2569235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com testSimplifyx(path); 2570235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com} 2571235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com 2572235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.comstatic void testQuadratic22() { 2573235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com SkPath path; 2574235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.moveTo(0, 0); 2575235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.quadTo(1, 0, 0, 1); 2576235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.lineTo(0, 1); 2577235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.close(); 2578235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.moveTo(0, 0); 2579235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.lineTo(0, 0); 2580235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.quadTo(0, 1, 2, 1); 2581235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.close(); 2582235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com testSimplifyx(path); 2583235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com} 2584235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com 2585235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.comstatic void testQuadratic23() { 2586235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com SkPath path; 2587235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.moveTo(0, 0); 2588235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.quadTo(1, 0, 0, 1); 2589235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.lineTo(0, 1); 2590235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.close(); 2591235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.moveTo(0, 0); 2592235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.lineTo(0, 0); 2593235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.quadTo(0, 2, 1, 2); 2594235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.close(); 2595235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com testSimplifyx(path); 2596235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com} 2597235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com 2598235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.comstatic void testQuadratic24() { 2599235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com SkPath path; 2600235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.moveTo(0, 0); 2601235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.quadTo(1, 0, 0, 1); 2602235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.lineTo(0, 1); 2603235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.close(); 2604235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.moveTo(0, 0); 2605235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.lineTo(1, 0); 2606235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.quadTo(2, 0, 0, 1); 2607235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.close(); 2608235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com testSimplifyx(path); 2609235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com} 2610235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com 2611235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.comstatic void testQuadratic25() { 2612235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com SkPath path; 2613235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.moveTo(0, 0); 2614235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.quadTo(1, 0, 1, 1); 2615235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.lineTo(1, 1); 2616235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.close(); 2617235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.moveTo(0, 0); 2618235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.lineTo(0, 0); 2619235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.quadTo(2, 1, 0, 2); 2620235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.close(); 2621235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com testSimplifyx(path); 2622235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com} 2623235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com 2624235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.comstatic void testQuadratic26() { 2625235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com SkPath path; 2626235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.moveTo(0, 0); 2627235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.quadTo(1, 0, 1, 1); 2628235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.lineTo(0, 2); 2629235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.close(); 2630235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.moveTo(0, 0); 2631235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.lineTo(0, 0); 2632235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.quadTo(1, 0, 0, 1); 2633235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.close(); 2634235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com testSimplifyx(path); 2635235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com} 2636235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com 2637235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.comstatic void testQuadratic27() { 2638235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com SkPath path; 2639235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.moveTo(0, 0); 2640235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.quadTo(1, 0, 1, 1); 2641235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.lineTo(2, 1); 2642235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.close(); 2643235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.moveTo(0, 0); 2644235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.lineTo(0, 0); 2645235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.quadTo(2, 1, 0, 2); 2646235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.close(); 2647235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com testSimplifyx(path); 2648235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com} 2649235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com 2650235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.comstatic void testQuadratic28() { 2651235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com SkPath path; 2652235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.moveTo(0, 0); 2653235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.quadTo(1, 0, 0, 1); 2654235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.lineTo(0, 1); 2655235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.close(); 2656235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.moveTo(0, 0); 2657235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.lineTo(0, 2); 2658235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.quadTo(1, 2, 0, 3); 2659235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com path.close(); 2660235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com testSimplifyx(path); 2661235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com} 2662235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com 2663d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.comstatic void testQuadratic29() { 2664d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com SkPath path; 2665d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.moveTo(0, 0); 2666d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.quadTo(1, 0, 2, 1); 2667d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.lineTo(0, 2); 2668d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.close(); 2669d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.moveTo(0, 0); 2670d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.lineTo(0, 0); 2671d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.quadTo(1, 0, 0, 1); 2672d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.close(); 2673d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com testSimplifyx(path); 2674d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com} 2675d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com 2676d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.comstatic void testQuadratic30() { 2677d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com SkPath path; 2678d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.moveTo(0, 0); 2679d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.quadTo(1, 0, 1, 2); 2680d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.lineTo(1, 2); 2681d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.close(); 2682d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.moveTo(0, 0); 2683d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.lineTo(1, 0); 2684d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.quadTo(0, 1, 1, 2); 2685d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.close(); 2686d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com testSimplifyx(path); 2687d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com} 2688d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com 2689d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.comstatic void testQuadratic31() { 2690d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com SkPath path; 2691d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.moveTo(0, 0); 2692d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.quadTo(1, 0, 1, 2); 2693d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.lineTo(1, 2); 2694d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.close(); 2695d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.moveTo(0, 0); 2696d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.lineTo(1, 0); 2697d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.quadTo(0, 1, 1, 3); 2698d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.close(); 2699d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com testSimplifyx(path); 2700d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com} 2701d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com 2702d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.comstatic void testQuadratic32() { 2703d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com SkPath path; 2704d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.moveTo(0, 0); 2705d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.quadTo(1, 0, 2, 3); 2706d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.lineTo(2, 3); 2707d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.close(); 2708d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.moveTo(0, 0); 2709d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.lineTo(0, 0); 2710d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.quadTo(3, 1, 0, 2); 2711d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.close(); 2712d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com testSimplifyx(path); 2713d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com} 2714d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com 2715d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.comstatic void testQuadratic33() { 2716d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com SkPath path; 2717d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.moveTo(0, 0); 2718d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.quadTo(2, 0, 0, 1); 2719d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.lineTo(0, 1); 2720d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.close(); 2721d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.moveTo(0, 0); 2722d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.lineTo(1, 1); 2723d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.quadTo(2, 1, 2, 2); 2724d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.close(); 2725d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com testSimplifyx(path); 2726d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com} 2727d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com 2728d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.comstatic void testQuadratic34() { 2729d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com SkPath path; 2730d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.moveTo(0, 0); 2731d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.quadTo(2, 0, 0, 1); 2732d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.lineTo(0, 1); 2733d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.close(); 2734d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.moveTo(1, 0); 2735d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.lineTo(1, 1); 2736d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.quadTo(2, 1, 1, 2); 2737d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.close(); 2738d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com testSimplifyx(path); 2739d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com} 2740d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com 2741d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.comstatic void testQuadratic35() { 2742d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com SkPath path; 2743d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.moveTo(0, 0); 2744d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.quadTo(0, 1, 1, 1); 2745d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.lineTo(1, 3); 2746d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.close(); 2747d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.moveTo(2, 0); 2748d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.lineTo(3, 0); 2749d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.quadTo(0, 1, 1, 1); 2750d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.close(); 2751d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com testSimplifyx(path); 2752d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com} 2753d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com 2754d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.comstatic void testQuadratic36() { 2755d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com SkPath path; 2756d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.moveTo(0, 0); 2757d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.quadTo(2, 1, 2, 3); 2758d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.lineTo(2, 3); 2759d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.close(); 2760d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.moveTo(3, 1); 2761d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.lineTo(1, 2); 2762d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.quadTo(3, 2, 1, 3); 2763d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.close(); 2764d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com testSimplifyx(path); 2765d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com} 2766d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com 2767d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.comstatic void testQuadratic37() { 2768d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com SkPath path; 2769d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.moveTo(0, 0); 2770d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.quadTo(0, 2, 1, 2); 2771d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.lineTo(1, 2); 2772d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.close(); 2773d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.moveTo(0, 0); 2774d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.lineTo(3, 1); 2775d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.quadTo(0, 2, 1, 2); 2776d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.close(); 2777d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com testSimplifyx(path); 2778d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com} 2779d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com 2780d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.comstatic void testQuadratic38() { 2781d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com SkPath path; 2782d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.moveTo(1, 0); 2783d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.quadTo(0, 1, 1, 1); 2784d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.lineTo(1, 1); 2785d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.close(); 2786d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.moveTo(1, 0); 2787d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.lineTo(1, 2); 2788d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.quadTo(2, 2, 1, 3); 2789d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com path.close(); 2790d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com testSimplifyx(path); 2791d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com} 2792d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com 2793fb51afb03e76c5701fffaa847584a8b7b2c18a7ecaryclark@google.comstatic void testQuadratic51() { 2794fb51afb03e76c5701fffaa847584a8b7b2c18a7ecaryclark@google.com SkPath path; 2795fb51afb03e76c5701fffaa847584a8b7b2c18a7ecaryclark@google.com path.moveTo(369.863983f, 145.645813f); 2796fb51afb03e76c5701fffaa847584a8b7b2c18a7ecaryclark@google.com path.quadTo(382.380371f, 121.254936f, 406.236359f, 121.254936f); 2797fb51afb03e76c5701fffaa847584a8b7b2c18a7ecaryclark@google.com path.lineTo(369.863983f, 145.645813f); 2798fb51afb03e76c5701fffaa847584a8b7b2c18a7ecaryclark@google.com path.close(); 2799fb51afb03e76c5701fffaa847584a8b7b2c18a7ecaryclark@google.com path.moveTo(369.970581f, 137.94342f); 2800fb51afb03e76c5701fffaa847584a8b7b2c18a7ecaryclark@google.com path.quadTo(383.98465f, 121.254936f, 406.235992f, 121.254936f); 2801fb51afb03e76c5701fffaa847584a8b7b2c18a7ecaryclark@google.com path.lineTo(369.970581f, 137.94342f); 2802fb51afb03e76c5701fffaa847584a8b7b2c18a7ecaryclark@google.com path.close(); 2803fb51afb03e76c5701fffaa847584a8b7b2c18a7ecaryclark@google.com testSimplifyx(path); 2804fb51afb03e76c5701fffaa847584a8b7b2c18a7ecaryclark@google.com} 2805fb51afb03e76c5701fffaa847584a8b7b2c18a7ecaryclark@google.com 2806f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.comstatic void testQuadratic53() { 2807f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com SkPath path; 2808f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com path.moveTo(303.12088f, 141.299606f); 2809f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com path.lineTo(330.463562f, 217.659027f); 2810f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com path.lineTo(303.12088f, 141.299606f); 2811f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com path.close(); 2812f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com path.moveTo(371.919067f, 205.854996f); 2813f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com path.lineTo(326.236786f, 205.854996f); 2814f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com path.quadTo(329.104431f, 231.663818f, 351.512085f, 231.663818f); 2815f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com path.lineTo(371.919067f, 205.854996f); 2816f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com path.close(); 2817f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com testSimplifyx(path); 2818f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com} 2819f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.comstatic void testQuadratic55() { 2820f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com SkPath path; 2821f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.moveTo(303.12088f, 141.299606f); 2822f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(330.463562f, 217.659027f); 2823f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(358.606506f, 141.299606f); 2824f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(303.12088f, 141.299606f); 2825f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.close(); 2826f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.moveTo(326.236786f, 205.854996f); 2827f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.quadTo(329.104431f, 231.663818f, 351.512085f, 231.663818f); 2828f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(326.236786f, 205.854996f); 2829f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.close(); 2830f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com testSimplifyx(path); 2831f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com} 2832f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com 2833f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.comstatic void testQuadratic56() { 2834f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com SkPath path; 2835f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.moveTo(366.608826f, 151.196014f); 2836f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.quadTo(378.803101f, 136.674606f, 398.164948f, 136.674606f); 2837f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(354.009216f, 208.816208f); 2838f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(393.291473f, 102.232819f); 2839f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(359.978058f, 136.581512f); 2840f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.quadTo(378.315979f, 136.581512f, 388.322723f, 149.613556f); 2841f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(364.390686f, 157.898193f); 2842f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.quadTo(375.281769f, 136.674606f, 396.039917f, 136.674606f); 2843f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(350, 120); 2844f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(366.608826f, 151.196014f); 2845f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.close(); 2846f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com testSimplifyx(path); 2847f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com} 2848f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com 2849f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.comstatic void testLine80() { 2850f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com SkPath path; 2851f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.moveTo(4, 0); 2852f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(3, 7); 2853f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(7, 5); 2854f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(2, 2); 2855f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.close(); 2856f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.moveTo(0, 6); 2857f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(6, 12); 2858f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(8, 3); 2859f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.close(); 2860f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com testSimplifyx(path); 2861f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com} 2862f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com 2863f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.comstatic void testQuadratic58() { 2864f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com SkPath path; 2865f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.moveTo(283.714233f, 240); 2866f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(283.714233f, 141.299606f); 2867f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(303.12088f, 141.299606f); 2868f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(330.463562f, 217.659027f); 2869f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(358.606506f, 141.299606f); 2870f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(362.874634f, 159.705902f); 2871f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(335.665344f, 233.397751f); 2872f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(322.12738f, 233.397751f); 2873f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(295.718353f, 159.505829f); 2874f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(295.718353f, 240); 2875f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(283.714233f, 240); 2876f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.close(); 2877f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.moveTo(322.935669f, 231.030273f); 2878f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.quadTo(312.832214f, 220.393295f, 312.832214f, 203.454178f); 2879f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.quadTo(312.832214f, 186.981888f, 321.73526f, 176.444946f); 2880f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.quadTo(330.638306f, 165.90802f, 344.509705f, 165.90802f); 2881f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.quadTo(357.647522f, 165.90802f, 364.81665f, 175.244537f); 2882f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(371.919067f, 205.854996f); 2883f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(326.236786f, 205.854996f); 2884f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.quadTo(329.104431f, 231.663818f, 351.512085f, 231.663818f); 2885f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(322.935669f, 231.030273f); 2886f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.close(); 2887f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.moveTo(326.837006f, 195.984955f); 2888f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.lineTo(358.78125f, 195.984955f); 2889f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.quadTo(358.78125f, 175.778046f, 343.709442f, 175.778046f); 2890f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.quadTo(328.570923f, 175.778046f, 326.837006f, 195.984955f); 2891f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.compath.close(); 2892f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com testSimplifyx(path); 2893f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com} 2894f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com 2895e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.comstatic void testQuadratic59x() { 28968f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 2897e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 2898e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(0, 0); 2899e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(0, 0, 0, 0); 2900e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(2, 2); 2901e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 2902e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(0, 0); 2903e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(2, 0); 2904e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(3, 1, 1, 2); 2905e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 2906e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com testSimplifyx(path); 2907e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com} 2908e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com 2909e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.comstatic void testQuadratic59() { 29108f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 2911e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 2912e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(0, 0); 2913e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(0, 0, 0, 0); 2914e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(2, 2); 2915e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 2916e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(0, 0); 2917e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(2, 0); 2918e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(3, 1, 1, 2); 2919e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 2920e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com testSimplifyx(path); 2921e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com} 2922e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com 2923e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.comstatic void testQuadratic63() { 29248f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 2925e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(0, 0); 2926e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(0, 0, 0, 0); 2927e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(3, 2); 2928e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 2929e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(1, 0); 2930e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(2, 1); 2931e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(2, 1, 2, 2); 2932e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 2933e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com testSimplifyx(path); 2934e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com} 2935e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com 2936e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.comstatic void testQuadratic64() { 29378f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 2938e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(0, 0); 2939e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(0, 0, 0, 0); 2940e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(2, 3); 2941e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 2942e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(1, 2); 2943e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(2, 2); 2944e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(0, 3, 3, 3); 2945e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 2946e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com testSimplifyx(path); 2947e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com} 2948e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com 2949e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.comstatic void testQuadratic65() { 29508f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 2951e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(0, 0); 2952e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(0, 0, 0, 0); 2953e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(3, 2); 2954e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 2955e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(2, 1); 2956e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(2, 2); 2957e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(0, 3, 1, 3); 2958e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 2959e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com testSimplifyx(path); 2960e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com} 2961e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com 2962e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.comstatic void testQuadratic67x() { 29638f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 2964e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 2965e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(0, 0); 2966e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(0, 0, 2, 1); 2967e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(2, 2); 2968e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 2969e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(0, 0); 2970e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(2, 0); 2971e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(1, 1, 3, 2); 2972e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 2973e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com testSimplifyx(path); 2974e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com} 2975e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com 2976e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.comstatic void testQuadratic68() { 29778f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 2978e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(0, 0); 2979e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(1, 0, 0, 1); 2980e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(1, 2); 2981e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 2982e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(0, 0); 2983e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(0, 0); 2984e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(0, 1, 2, 1); 2985e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 2986e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com testSimplifyx(path); 2987e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com} 2988e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com 2989e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.comstatic void testQuadratic69() { 29908f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 2991e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(0, 0); 2992e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(0, 0, 0, 1); 2993e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(3, 2); 2994e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 2995e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(2, 0); 2996e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(1, 1); 2997e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(3, 2, 2, 3); 2998e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 2999e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com testSimplifyx(path); 3000e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com} 3001e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com 3002e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.comstatic void testQuadratic70x() { 30038f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 3004e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 3005e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(0, 0); 3006e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(1, 0, 0, 1); 3007e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(1, 2); 3008e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 3009e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(0, 0); 3010e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(0, 0); 3011e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(0, 1, 2, 1); 3012e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 3013e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com testSimplifyx(path); 3014e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com} 3015e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com 3016e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.comstatic void testQuadratic71() { 30178f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 3018e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(0, 0); 3019e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(1, 0, 1, 1); 3020e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(3, 2); 3021e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 3022e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(0, 0); 3023e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(0, 0); 3024e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(1, 1, 3, 1); 3025e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 3026e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com testSimplifyx(path); 3027e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com} 3028e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com 3029e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.comstatic void testQuadratic72() { 30308f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 3031e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(0, 0); 3032e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(1, 0, 1, 2); 3033e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(1, 2); 3034e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 3035e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(0, 0); 3036e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(1, 0); 3037e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(0, 1, 3, 2); 3038e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 3039e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com testSimplifyx(path); 3040e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com} 3041e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com 3042e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.comstatic void testQuadratic73() { 30438f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 3044e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(0, 0); 3045e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(1, 0, 0, 3); 3046e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(0, 3); 3047e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 3048e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(0, 0); 3049e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(1, 0); 3050e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(0, 1, 1, 1); 3051e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 3052e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com testSimplifyx(path); 3053e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com} 3054e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com 3055e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.comstatic void testQuadratic74() { 30568f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 3057e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(0, 0); 3058e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(1, 0, 1, 3); 3059e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(1, 3); 3060e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 3061e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(0, 0); 3062e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(0, 1); 3063e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(3, 2, 2, 3); 3064e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 3065e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com testSimplifyx(path); 3066e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com} 3067e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com 3068e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.comstatic void testQuadratic75() { 30698f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 3070e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(0, 0); 3071e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(1, 0, 1, 3); 3072e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(2, 3); 3073e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 3074e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.moveTo(0, 0); 3075e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.lineTo(0, 1); 3076e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.quadTo(3, 2, 2, 3); 3077e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com path.close(); 3078e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com testSimplifyx(path); 3079e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com} 3080e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com 3081db0b3e099f888213535c4ad4c785b84544309033caryclark@google.comstatic void testQuadratic76() { 30828f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 3083db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.moveTo(0, 0); 3084db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.quadTo(0, 0, 0, 0); 3085db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(2, 3); 3086db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.close(); 3087db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.moveTo(1, 0); 3088db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(1, 2); 3089db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.quadTo(1, 2, 2, 2); 3090db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.close(); 3091db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com testSimplifyx(path); 3092db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com} 3093db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com 3094db0b3e099f888213535c4ad4c785b84544309033caryclark@google.comstatic void testQuadratic77() { 30958f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 3096db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.moveTo(0, 0); 3097db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.quadTo(1, 0, 1, 1); 3098db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(3, 1); 3099db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.close(); 3100db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.moveTo(0, 0); 3101db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(1, 0); 3102db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.quadTo(0, 1, 3, 2); 3103db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.close(); 3104db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com testSimplifyx(path); 3105db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com} 3106db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com 3107db0b3e099f888213535c4ad4c785b84544309033caryclark@google.comstatic void testQuadratic78() { 31088f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 3109db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.moveTo(0, 0); 3110db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.quadTo(1, 0, 1, 2); 3111db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(3, 2); 3112db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.close(); 3113db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.moveTo(0, 0); 3114db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(0, 0); 3115db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.quadTo(2, 1, 0, 2); 3116db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.close(); 3117db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com testSimplifyx(path); 3118db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com} 3119db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com 3120db0b3e099f888213535c4ad4c785b84544309033caryclark@google.comstatic void testQuadratic79() { 31218f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 3122db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.moveTo(0, 0); 3123db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.quadTo(1, 0, 1, 2); 3124db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(3, 2); 3125db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.close(); 3126db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.moveTo(0, 0); 3127db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(1, 0); 3128db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.quadTo(0, 1, 3, 2); 3129db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.close(); 3130db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com testSimplifyx(path); 3131db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com} 3132db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com 3133db0b3e099f888213535c4ad4c785b84544309033caryclark@google.comstatic void testEight1() { 31348f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 3135db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.moveTo(0, 0); 3136db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(2, 2); 3137db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(0, 2); 3138db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(2, 0); 3139db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.close(); 3140db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com testSimplifyx(path); 3141db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com} 3142db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com 3143db0b3e099f888213535c4ad4c785b84544309033caryclark@google.comstatic void testEight2() { 31448f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 3145db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.moveTo(0, 0); 3146db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(2, 0); 3147db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(0, 2); 3148db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(2, 2); 3149db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.close(); 3150db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com testSimplifyx(path); 3151db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com} 3152db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com 3153db0b3e099f888213535c4ad4c785b84544309033caryclark@google.comstatic void testEight3() { 31548f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 3155db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.moveTo(0, 0); 3156db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(0, 2); 3157db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(2, 0); 3158db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(2, 2); 3159db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.close(); 3160db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com testSimplifyx(path); 3161db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com} 3162db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com 3163db0b3e099f888213535c4ad4c785b84544309033caryclark@google.comstatic void testEight4() { 31648f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 3165db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.moveTo(0, 0); 3166db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(2, 2); 3167db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(2, 0); 3168db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(0, 2); 3169db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.close(); 3170db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com testSimplifyx(path); 3171db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com} 3172db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com 3173db0b3e099f888213535c4ad4c785b84544309033caryclark@google.comstatic void testEight5() { 31748f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 3175db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.moveTo(1, 0); 3176db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(1, 2); 3177db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(0, 2); 3178db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(2, 0); 3179db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.close(); 3180db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com testSimplifyx(path); 3181db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com} 3182db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com 3183db0b3e099f888213535c4ad4c785b84544309033caryclark@google.comstatic void testEight6() { 31848f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 3185db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.moveTo(1, 0); 3186db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(2, 0); 3187db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(0, 2); 3188db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(1, 2); 3189db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.close(); 3190db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com testSimplifyx(path); 3191db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com} 3192db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com 3193db0b3e099f888213535c4ad4c785b84544309033caryclark@google.comstatic void testEight7() { 31948f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 3195db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.moveTo(0, 0); 3196db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(0, 1); 3197db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(2, 1); 3198db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(2, 2); 3199db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.close(); 3200db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com testSimplifyx(path); 3201db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com} 3202db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com 3203db0b3e099f888213535c4ad4c785b84544309033caryclark@google.comstatic void testEight8() { 32048f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 3205db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.moveTo(0, 0); 3206db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(2, 2); 3207db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(2, 1); 3208db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(0, 1); 3209db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.close(); 3210db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com testSimplifyx(path); 3211db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com} 3212db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com 3213db0b3e099f888213535c4ad4c785b84544309033caryclark@google.comstatic void testEight9() { 32148f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 3215db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.moveTo(1, 0); 3216db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(1, 2); 3217db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(2, 1); 3218db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(0, 1); 3219db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.close(); 3220db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com testSimplifyx(path); 3221db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com} 3222db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com 3223db0b3e099f888213535c4ad4c785b84544309033caryclark@google.comstatic void testEight10() { 32248f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 3225db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.moveTo(1, 0); 3226db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(0, 1); 3227db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(2, 1); 3228db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(1, 2); 3229db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.close(); 3230db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com testSimplifyx(path); 3231db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com} 3232db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com 3233db0b3e099f888213535c4ad4c785b84544309033caryclark@google.comstatic void testQuadratic80() { 32348f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 3235db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.moveTo(0, 0); 3236db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.quadTo(1, 0, 2, 3); 3237db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(2, 3); 3238db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.close(); 3239db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.moveTo(1, 0); 3240db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(3, 0); 3241db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.quadTo(0, 1, 1, 1); 3242db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.close(); 3243db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com testSimplifyx(path); 3244db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com} 3245db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com 3246db0b3e099f888213535c4ad4c785b84544309033caryclark@google.comstatic void testQuadratic81() { 32478f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 3248db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.moveTo(0, 0); 3249db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.quadTo(2, 0, 1, 1); 3250db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(1, 1); 3251db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.close(); 3252db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.moveTo(0, 0); 3253db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(0, 0); 3254db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.quadTo(2, 1, 0, 2); 3255db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.close(); 3256db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com testSimplifyx(path); 3257db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com} 3258db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com 3259db0b3e099f888213535c4ad4c785b84544309033caryclark@google.comstatic void testQuadratic82() { 32608f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 3261db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.moveTo(0, 0); 3262db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.quadTo(2, 0, 1, 1); 3263db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(0, 3); 3264db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.close(); 3265db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.moveTo(0, 0); 3266db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.lineTo(0, 0); 3267db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.quadTo(2, 1, 0, 2); 3268db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com path.close(); 3269db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com testSimplifyx(path); 3270db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com} 3271db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com 32723586ece1ddbb48cabb2e7a4792be9ff5d74e40d9caryclark@google.comstatic void testQuadratic83() { 32738f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 32743586ece1ddbb48cabb2e7a4792be9ff5d74e40d9caryclark@google.com path.moveTo(0, 0); 32753586ece1ddbb48cabb2e7a4792be9ff5d74e40d9caryclark@google.com path.quadTo(0, 0, 2, 0); 32763586ece1ddbb48cabb2e7a4792be9ff5d74e40d9caryclark@google.com path.lineTo(2, 2); 32773586ece1ddbb48cabb2e7a4792be9ff5d74e40d9caryclark@google.com path.close(); 32783586ece1ddbb48cabb2e7a4792be9ff5d74e40d9caryclark@google.com path.moveTo(0, 1); 32793586ece1ddbb48cabb2e7a4792be9ff5d74e40d9caryclark@google.com path.lineTo(0, 2); 32803586ece1ddbb48cabb2e7a4792be9ff5d74e40d9caryclark@google.com path.quadTo(2, 2, 1, 3); 32813586ece1ddbb48cabb2e7a4792be9ff5d74e40d9caryclark@google.com path.close(); 32823586ece1ddbb48cabb2e7a4792be9ff5d74e40d9caryclark@google.com testSimplifyx(path); 32833586ece1ddbb48cabb2e7a4792be9ff5d74e40d9caryclark@google.com} 32843586ece1ddbb48cabb2e7a4792be9ff5d74e40d9caryclark@google.com 328510227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.comstatic void testQuadratic84() { 32868f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 328710227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.moveTo(0, 0); 328810227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.quadTo(2, 0, 1, 1); 328910227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.lineTo(2, 1); 329010227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.close(); 329110227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.moveTo(1, 0); 329210227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.lineTo(2, 0); 329310227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.quadTo(0, 1, 2, 2); 329410227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.close(); 329510227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com testSimplifyx(path); 329610227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com} 329710227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com 329810227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.comstatic void testQuadratic85() { 32998f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 330010227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.moveTo(0, 0); 330110227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.quadTo(3, 0, 1, 1); 330210227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.lineTo(1, 1); 330310227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.close(); 330410227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.moveTo(1, 0); 330510227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.lineTo(3, 0); 330610227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.quadTo(0, 1, 1, 2); 330710227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.close(); 330810227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com testSimplifyx(path); 330910227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com} 331010227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com 331110227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.comstatic void testQuadratic86() { 33128f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 331310227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.moveTo(0, 0); 331410227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.quadTo(0, 1, 1, 1); 331510227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.lineTo(2, 3); 331610227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.close(); 331710227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.moveTo(0, 0); 331810227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.lineTo(0, 0); 331910227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.quadTo(1, 1, 1, 3); 332010227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.close(); 332110227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com testSimplifyx(path); 332210227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com} 332310227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com 332410227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.comstatic void testQuadratic87() { 33258f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 332610227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.moveTo(0, 0); 332710227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.quadTo(2, 1, 0, 2); 332810227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.lineTo(2, 3); 332910227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.close(); 333010227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.moveTo(0, 0); 333110227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.lineTo(1, 1); 333210227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.quadTo(0, 2, 3, 2); 333310227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.close(); 333410227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com testSimplifyx(path); 333510227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com} 333610227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com 333710227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.comstatic void testQuadratic88() { 33388f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 333910227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.moveTo(0, 0); 334010227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.quadTo(2, 1, 0, 2); 334110227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.lineTo(2, 2); 334210227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.close(); 334310227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.moveTo(1, 0); 334410227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.lineTo(1, 1); 334510227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.quadTo(0, 2, 2, 2); 334610227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com path.close(); 334710227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com testSimplifyx(path); 334810227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com} 334910227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com 33508f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.comstatic void testQuadratic89x() { 33518f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 33528f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 33538f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.moveTo(0, 0); 33548f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.quadTo(3, 1, 2, 2); 33558f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.lineTo(0, 3); 33568f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.close(); 33578f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.moveTo(0, 0); 33588f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.lineTo(2, 1); 33598f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.quadTo(3, 1, 3, 3); 33608f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.close(); 33618f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com testSimplifyx(path); 33628f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com} 33638f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com 33648f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.comstatic void testQuadratic90x() { 33658f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 33668f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 33678f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.moveTo(0, 0); 33688f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.quadTo(3, 0, 2, 2); 33698f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.lineTo(1, 3); 33708f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.close(); 33718f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.moveTo(0, 0); 33728f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.lineTo(0, 1); 33738f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.quadTo(3, 2, 2, 3); 33748f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.close(); 33758f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com testSimplifyx(path); 33768f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com} 33778f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com 33788f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.comstatic void testQuadratic91() { 33798f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 33808f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.moveTo(0, 0); 33818f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.quadTo(3, 2, 2, 3); 33828f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.lineTo(2, 3); 33838f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.close(); 33848f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.moveTo(0, 0); 33858f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.lineTo(1, 1); 33868f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.quadTo(2, 1, 2, 3); 33878f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.close(); 33888f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com testSimplifyx(path); 33898f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com} 33908f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com 33918f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.comstatic void testQuadratic92x() { 33928f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 33938f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 33948f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.moveTo(1, 0); 33958f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.quadTo(3, 0, 2, 2); 33968f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.lineTo(2, 2); 33978f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.close(); 33988f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.moveTo(2, 0); 33998f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.lineTo(0, 1); 34008f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.quadTo(3, 2, 2, 3); 34018f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.close(); 34028f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com testSimplifyx(path); 34038f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com} 34048f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com 34058f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.comstatic void testLine82() { 34068f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 34078f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(20, 0, 40, 40, SkPath::kCCW_Direction); 34088f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(24, 20, 36, 30, SkPath::kCCW_Direction); 34098f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(24, 32, 33, 36, SkPath::kCCW_Direction); 34108f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com testSimplifyx(path); 34118f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com} 34128f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com 34138f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.comstatic void testLine82a() { 34148f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 34158f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(0, 0, 6, 10, SkPath::kCW_Direction); 34168f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(2, 2, 4, 4, SkPath::kCW_Direction); 34178f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(2, 6, 4, 8, SkPath::kCW_Direction); 34188f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com testSimplifyx(path); 34198f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com} 34208f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com 34218f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.comstatic void testLine82b() { 34228f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 34238f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(0, 0, 6, 10, SkPath::kCW_Direction); 34248f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(2, 2, 4, 4, SkPath::kCW_Direction); 34258f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(2, 6, 4, 8, SkPath::kCCW_Direction); 34268f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com testSimplifyx(path); 34278f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com} 34288f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com 34298f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.comstatic void testLine82c() { 34308f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 34318f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(0, 0, 6, 10, SkPath::kCW_Direction); 34328f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(2, 2, 4, 4, SkPath::kCCW_Direction); 34338f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(2, 6, 4, 8, SkPath::kCW_Direction); 34348f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com testSimplifyx(path); 34358f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com} 34368f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com 34378f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.comstatic void testLine82d() { 34388f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 34398f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(0, 0, 6, 10, SkPath::kCW_Direction); 34408f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(2, 2, 4, 4, SkPath::kCCW_Direction); 34418f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(2, 6, 4, 8, SkPath::kCCW_Direction); 34428f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com testSimplifyx(path); 34438f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com} 34448f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com 34458f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.comstatic void testLine82e() { 34468f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 34478f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(0, 0, 6, 10, SkPath::kCCW_Direction); 34488f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(2, 2, 4, 4, SkPath::kCW_Direction); 34498f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(2, 6, 4, 8, SkPath::kCW_Direction); 34508f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com testSimplifyx(path); 34518f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com} 34528f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com 34538f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.comstatic void testLine82f() { 34548f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 34558f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(0, 0, 6, 10, SkPath::kCCW_Direction); 34568f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(2, 2, 4, 4, SkPath::kCW_Direction); 34578f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(2, 6, 4, 8, SkPath::kCCW_Direction); 34588f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com testSimplifyx(path); 34598f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com} 34608f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com 34618f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.comstatic void testLine82g() { 34628f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 34638f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(0, 0, 6, 10, SkPath::kCCW_Direction); 34648f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(2, 2, 4, 4, SkPath::kCCW_Direction); 34658f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(2, 6, 4, 8, SkPath::kCW_Direction); 34668f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com testSimplifyx(path); 34678f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com} 34688f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com 34698f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.comstatic void testLine82h() { 34708f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 34718f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(0, 0, 6, 10, SkPath::kCCW_Direction); 34728f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(2, 2, 4, 4, SkPath::kCCW_Direction); 34738f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(2, 6, 4, 8, SkPath::kCCW_Direction); 34748f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com testSimplifyx(path); 34758f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com} 34768f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com 34778f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.comstatic void testLine83() { 34788f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 34798f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.compath.addRect(10, 30, 30, 40, SkPath::kCCW_Direction); 34808f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.compath.addRect(0, 12, 12, 18, SkPath::kCCW_Direction); 34818f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.compath.addRect(4, 13, 13, 16, SkPath::kCCW_Direction); 34828f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com testSimplifyx(path); 34838f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com} 34848f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com 34858f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.comstatic void testLine84() { 34868f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 34878f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(0, 12, 60, 30, SkPath::kCCW_Direction); 34888f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(10, 20, 40, 30, SkPath::kCW_Direction); 34898f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(0, 12, 12, 12, SkPath::kCW_Direction); 34908f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(4, 12, 13, 13, SkPath::kCW_Direction); 34918f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com testSimplifyx(path); 34928f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com} 34938f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com 34948f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.comstatic void testLine84x() { 34958f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 34968f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 34978f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(0, 12, 60, 30, SkPath::kCCW_Direction); 34988f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(10, 20, 40, 30, SkPath::kCCW_Direction); 34998f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(0, 12, 12, 12, SkPath::kCCW_Direction); 35008f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(4, 12, 13, 13, SkPath::kCCW_Direction); 35018f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com testSimplifyx(path); 35028f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com} 35038f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com 35048f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.comstatic void testLine85() { 35058f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkPath path; 35068f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(36, 0, 66, 60, SkPath::kCCW_Direction); 35078f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(20, 0, 40, 40, SkPath::kCCW_Direction); 35088f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(12, 0, 24, 24, SkPath::kCCW_Direction); 35098f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com path.addRect(32, 0, 36, 41, SkPath::kCCW_Direction); 35108f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com testSimplifyx(path); 35118f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com} 35128f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com 351373ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.comstatic void testQuadralateral1() { 351473ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com SkPath path; 351573ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com path.moveTo(0, 0); 351673ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com path.lineTo(0, 0); 351773ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com path.lineTo(0, 0); 351873ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com path.lineTo(3, 2); 351973ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com path.close(); 352073ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com path.moveTo(0, 0); 352173ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com path.lineTo(2, 1); 352273ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com path.lineTo(2, 2); 352373ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com path.lineTo(2, 3); 352473ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com path.close(); 352573ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com testSimplifyx(path); 352673ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com} 352773ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com 352873ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.comstatic void testCubic1() { 352973ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com SkPath path; 353073ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com path.moveTo(0, 0); 353173ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com path.cubicTo(0, 1, 1, 1, 1, 0); 353273ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com path.close(); 353373ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com path.moveTo(1, 0); 353473ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com path.cubicTo(0, 0, 0, 1, 1, 1); 353573ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com path.close(); 353673ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com testSimplifyx(path); 353773ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com} 353873ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com 353985ec74ca543b13739db1ad55dedd7bdfae4ab1a6caryclark@google.comstatic void testQuadratic93() { 354085ec74ca543b13739db1ad55dedd7bdfae4ab1a6caryclark@google.com SkPath path; 354185ec74ca543b13739db1ad55dedd7bdfae4ab1a6caryclark@google.com path.moveTo(3, 0); 354285ec74ca543b13739db1ad55dedd7bdfae4ab1a6caryclark@google.com path.quadTo(0, 1, 3, 2); 354385ec74ca543b13739db1ad55dedd7bdfae4ab1a6caryclark@google.com path.lineTo(0, 3); 354485ec74ca543b13739db1ad55dedd7bdfae4ab1a6caryclark@google.com path.close(); 354585ec74ca543b13739db1ad55dedd7bdfae4ab1a6caryclark@google.com path.moveTo(1, 0); 354685ec74ca543b13739db1ad55dedd7bdfae4ab1a6caryclark@google.com path.lineTo(2, 0); 354785ec74ca543b13739db1ad55dedd7bdfae4ab1a6caryclark@google.com path.quadTo(1, 1, 2, 2); 354885ec74ca543b13739db1ad55dedd7bdfae4ab1a6caryclark@google.com path.close(); 354985ec74ca543b13739db1ad55dedd7bdfae4ab1a6caryclark@google.com testSimplifyx(path); 355085ec74ca543b13739db1ad55dedd7bdfae4ab1a6caryclark@google.com} 3551aa35831d1d0e4c798a63fe772430adc4f3a038cdcaryclark@google.com 3552aa35831d1d0e4c798a63fe772430adc4f3a038cdcaryclark@google.comstatic void cubicOp1d() { 3553aa35831d1d0e4c798a63fe772430adc4f3a038cdcaryclark@google.com SkPath path, pathB; 3554aa35831d1d0e4c798a63fe772430adc4f3a038cdcaryclark@google.com path.setFillType(SkPath::kWinding_FillType); 3555aa35831d1d0e4c798a63fe772430adc4f3a038cdcaryclark@google.com path.moveTo(0,1); 3556aa35831d1d0e4c798a63fe772430adc4f3a038cdcaryclark@google.com path.cubicTo(0,2, 1,0, 1,0); 3557aa35831d1d0e4c798a63fe772430adc4f3a038cdcaryclark@google.com path.close(); 3558aa35831d1d0e4c798a63fe772430adc4f3a038cdcaryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 3559aa35831d1d0e4c798a63fe772430adc4f3a038cdcaryclark@google.com pathB.moveTo(0,1); 3560aa35831d1d0e4c798a63fe772430adc4f3a038cdcaryclark@google.com pathB.cubicTo(0,1, 1,0, 2,0); 3561aa35831d1d0e4c798a63fe772430adc4f3a038cdcaryclark@google.com pathB.close(); 3562aa35831d1d0e4c798a63fe772430adc4f3a038cdcaryclark@google.com testShapeOp(path, pathB, kDifference_Op); 3563aa35831d1d0e4c798a63fe772430adc4f3a038cdcaryclark@google.com} 356485ec74ca543b13739db1ad55dedd7bdfae4ab1a6caryclark@google.com 3565beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.comstatic void cubicOp2d() { 3566beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com SkPath path, pathB; 3567beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com path.setFillType(SkPath::kWinding_FillType); 3568beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com path.moveTo(0,2); 3569beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com path.cubicTo(0,1, 1,0, 1,0); 3570beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com path.close(); 3571beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 3572beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com pathB.moveTo(0,1); 3573beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com pathB.cubicTo(0,1, 2,0, 1,0); 3574beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com pathB.close(); 3575beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com testShapeOp(path, pathB, kDifference_Op); 3576beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com} 3577beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com 3578beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.comstatic void cubicOp3d() { 3579beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com SkPath path, pathB; 3580beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com path.setFillType(SkPath::kWinding_FillType); 3581beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com path.moveTo(0,1); 3582beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com path.cubicTo(2,3, 1,0, 1,0); 3583beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com path.close(); 3584beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 3585beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com pathB.moveTo(0,1); 3586beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com pathB.cubicTo(0,1, 1,0, 3,2); 3587beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com pathB.close(); 3588beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com testShapeOp(path, pathB, kDifference_Op); 3589beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com} 3590beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com 3591beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.comstatic void cubicOp5d() { 3592beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com SkPath path, pathB; 3593beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com path.setFillType(SkPath::kWinding_FillType); 3594beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com path.moveTo(0,1); 3595beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com path.cubicTo(0,2, 1,0, 2,0); 3596beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com path.close(); 3597beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 3598beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com pathB.moveTo(0,1); 3599beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com pathB.cubicTo(0,2, 1,0, 2,0); 3600beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com pathB.close(); 3601beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com testShapeOp(path, pathB, kDifference_Op); 3602beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com} 3603beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com 3604beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.comstatic void cubicOp6d() { 3605beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com SkPath path, pathB; 3606beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com path.setFillType(SkPath::kWinding_FillType); 3607beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com path.moveTo(0,1); 3608beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com path.cubicTo(0,6, 1,0, 3,0); 3609beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com path.close(); 3610beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 3611beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com pathB.moveTo(0,1); 3612beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com pathB.cubicTo(0,3, 1,0, 6,0); 3613beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com pathB.close(); 3614beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com testShapeOp(path, pathB, kDifference_Op); 3615beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com} 3616beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com 3617beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.comstatic void cubicOp7d() { 3618beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com SkPath path, pathB; 3619beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com path.setFillType(SkPath::kWinding_FillType); 3620beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com path.moveTo(0,1); 3621beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com path.cubicTo(3,4, 1,0, 3,0); 3622beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com path.close(); 3623beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 3624beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com pathB.moveTo(0,1); 3625beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com pathB.cubicTo(0,3, 1,0, 4,3); 3626beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com pathB.close(); 3627beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com testShapeOp(path, pathB, kDifference_Op); 3628beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com} 3629beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com 363045a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.comstatic void cubicOp8d() { 363145a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com SkPath path, pathB; 363245a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 363345a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.moveTo(0,1); 363445a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.cubicTo(0,5, 1,0, 4,0); 363545a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.close(); 363645a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 363745a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.moveTo(0,1); 363845a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.cubicTo(0,4, 1,0, 5,0); 363945a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.close(); 364045a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 364145a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com} 364245a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com 364345a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.comstatic void cubicOp9d() { 364445a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com SkPath path, pathB; 364545a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 364645a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.moveTo(0,1); 364745a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.cubicTo(1,6, 1,0, 2,1); 364845a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.close(); 364945a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 365045a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.moveTo(0,1); 365145a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.cubicTo(1,2, 1,0, 6,1); 365245a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.close(); 365345a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 365445a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com} 365545a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com 365645a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.comstatic void quadOp9d() { 365745a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com SkPath path, pathB; 365845a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 365945a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.moveTo(0,1); 366045a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.quadTo(1,6, 1.5f,1); 366145a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.quadTo(1.5f,0.5f, 2,1); 366245a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.close(); 366345a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 366445a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.moveTo(0,1); 366545a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.quadTo(1,2, 1.4f,1); 366645a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.quadTo(3,0.4f, 6,1); 366745a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.close(); 366845a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 366945a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com} 367045a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com 367145a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.comstatic void lineOp9d() { 367245a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com SkPath path, pathB; 367345a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 367445a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.moveTo(0,1); 367545a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.lineTo(1,6); 367645a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.lineTo(1.5f,1); 367745a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.lineTo(1.8f,0.8f); 367845a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.lineTo(2,1); 367945a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.close(); 368045a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 368145a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.moveTo(0,1); 368245a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.lineTo(1,2); 368345a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.lineTo(1.4f,1); 368445a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.lineTo(3,0.4f); 368545a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.lineTo(6,1); 368645a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.close(); 368745a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 368845a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com} 368945a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com 369045a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.comstatic void cubicOp1i() { 369145a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com SkPath path, pathB; 369245a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 369345a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.moveTo(0,1); 369445a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.cubicTo(1,2, 1,0, 2,1); 369545a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.close(); 369645a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 369745a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.moveTo(0,1); 369845a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.cubicTo(1,2, 1,0, 2,1); 369945a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.close(); 370045a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com testShapeOp(path, pathB, kIntersect_Op); 370145a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com} 370245a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com 370345a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.comstatic void cubicOp10d() { 370445a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com SkPath path, pathB; 370545a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 370645a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.moveTo(0,1); 370745a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.cubicTo(1,3, 1,0, 4,1); 370845a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.close(); 370945a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 371045a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.moveTo(0,1); 371145a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.cubicTo(1,4, 1,0, 3,1); 371245a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.close(); 371345a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 371445a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com} 371545a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com 371645a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.comstatic void cubicOp11d() { 371745a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com SkPath path, pathB; 371845a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 371945a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.moveTo(0,1); 372045a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.cubicTo(3,4, 1,0, 5,1); 372145a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.close(); 372245a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 372345a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.moveTo(0,1); 372445a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.cubicTo(1,5, 1,0, 4,3); 372545a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.close(); 372645a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 372745a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com} 372845a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com 372945a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.comstatic void cubicOp12d() { 373045a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com SkPath path, pathB; 373145a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 373245a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.moveTo(0,1); 373345a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.cubicTo(1,6, 1,0, 1,0); 373445a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.close(); 373545a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 373645a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.moveTo(0,1); 373745a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.cubicTo(0,1, 1,0, 6,1); 373845a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.close(); 373945a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 374045a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com} 374145a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com 374245a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.comstatic void cubicOp13d() { 374345a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com SkPath path, pathB; 374445a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 374545a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.moveTo(0,1); 374645a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.cubicTo(4,5, 1,0, 5,3); 374745a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.close(); 374845a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 374945a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.moveTo(0,1); 375045a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.cubicTo(3,5, 1,0, 5,4); 375145a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.close(); 375245a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 375345a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com} 375445a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com 375545a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.comstatic void cubicOp14d() { 375645a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com SkPath path, pathB; 375745a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 375845a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.moveTo(0,1); 375945a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.cubicTo(0,2, 2,0, 2,1); 376045a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com path.close(); 376145a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 376245a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.moveTo(0,2); 376345a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.cubicTo(1,2, 1,0, 2,0); 376445a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com pathB.close(); 376545a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 376645a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com} 376745a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com 376847d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.comstatic void cubicOp15d() { 376947d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com SkPath path, pathB; 377047d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 377147d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com path.moveTo(0,1); 377247d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com path.cubicTo(3,6, 2,0, 2,1); 377347d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com path.close(); 377447d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 377547d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com pathB.moveTo(0,2); 377647d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com pathB.cubicTo(1,2, 1,0, 6,3); 377747d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com pathB.close(); 377847d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 377947d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com} 378047d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com 378147d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.comstatic void cubicOp16d() { 378247d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com SkPath path, pathB; 378347d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 378447d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com path.moveTo(0,2); 378547d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com path.cubicTo(0,1, 3,0, 1,0); 378647d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com path.close(); 378747d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 378847d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com pathB.moveTo(0,3); 378947d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com pathB.cubicTo(0,1, 2,0, 1,0); 379047d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com pathB.close(); 379147d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 379247d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com} 379347d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com 379447d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.comstatic void cubicOp17d() { 379547d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com SkPath path, pathB; 379647d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 379747d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com path.moveTo(0,2); 379847d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com path.cubicTo(0,2, 4,0, 2,1); 379947d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com path.close(); 380047d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 380147d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com pathB.moveTo(0,4); 380247d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com pathB.cubicTo(1,2, 2,0, 2,0); 380347d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com pathB.close(); 380447d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 380547d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com} 380647d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com 380747d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.comstatic void cubicOp18d() { 380847d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com SkPath path, pathB; 380947d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 381047d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com path.moveTo(0,1); 381147d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com path.cubicTo(3,5, 2,0, 2,1); 381247d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com path.close(); 381347d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 381447d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com pathB.moveTo(0,2); 381547d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com pathB.cubicTo(1,2, 1,0, 5,3); 381647d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com pathB.close(); 381747d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 381847d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com} 381947d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com 382047d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.comstatic void cubicOp19i() { 382147d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com SkPath path, pathB; 382247d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 382347d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com path.moveTo(0,2); 382447d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com path.cubicTo(0,1, 2,1, 6,2); 382547d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com path.close(); 382647d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 382747d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com pathB.moveTo(1,2); 382847d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com pathB.cubicTo(2,6, 2,0, 1,0); 382947d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com pathB.close(); 383047d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com testShapeOp(path, pathB, kIntersect_Op); 383147d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com} 383247d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com 3833d0a19eb9140ecb968357f798f06d2b052b51fd89caryclark@google.comstatic void cubicOp20d() { 3834d0a19eb9140ecb968357f798f06d2b052b51fd89caryclark@google.com SkPath path, pathB; 3835d0a19eb9140ecb968357f798f06d2b052b51fd89caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 3836d0a19eb9140ecb968357f798f06d2b052b51fd89caryclark@google.com path.moveTo(0,1); 3837d0a19eb9140ecb968357f798f06d2b052b51fd89caryclark@google.com path.cubicTo(0,1, 6,0, 2,1); 3838d0a19eb9140ecb968357f798f06d2b052b51fd89caryclark@google.com path.close(); 3839d0a19eb9140ecb968357f798f06d2b052b51fd89caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 3840d0a19eb9140ecb968357f798f06d2b052b51fd89caryclark@google.com pathB.moveTo(0,6); 3841d0a19eb9140ecb968357f798f06d2b052b51fd89caryclark@google.com pathB.cubicTo(1,2, 1,0, 1,0); 3842d0a19eb9140ecb968357f798f06d2b052b51fd89caryclark@google.com pathB.close(); 3843d0a19eb9140ecb968357f798f06d2b052b51fd89caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 3844d0a19eb9140ecb968357f798f06d2b052b51fd89caryclark@google.com} 3845d0a19eb9140ecb968357f798f06d2b052b51fd89caryclark@google.com 38465e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.comstatic void cubicOp21d() { 38475e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com SkPath path, pathB; 38485e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com path.setFillType(SkPath::kWinding_FillType); 38495e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com path.moveTo(0,1); 38505e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com path.cubicTo(0,1, 2,1, 6,5); 38515e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com path.close(); 38525e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 38535e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com pathB.moveTo(1,2); 38545e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com pathB.cubicTo(5,6, 1,0, 1,0); 38555e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com pathB.close(); 38565e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com testShapeOp(path, pathB, kDifference_Op); 38575e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com} 38585e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com 38595e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.comstatic void cubicOp22d() { 38605e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com SkPath path, pathB; 38615e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com path.setFillType(SkPath::kWinding_FillType); 38625e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com path.moveTo(0,1); 38635e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com path.cubicTo(2,3, 3,0, 2,1); 38645e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com path.close(); 38655e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 38665e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com pathB.moveTo(0,3); 38675e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com pathB.cubicTo(1,2, 1,0, 3,2); 38685e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com pathB.close(); 38695e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com testShapeOp(path, pathB, kDifference_Op); 38705e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com} 38715e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com 38725e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.comstatic void cubicOp23d() { 38735e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com SkPath path, pathB; 38745e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com path.setFillType(SkPath::kWinding_FillType); 38755e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com path.moveTo(0,1); 38765e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com path.cubicTo(1,2, 4,0, 2,1); 38775e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com path.close(); 38785e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 38795e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com pathB.moveTo(0,4); 38805e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com pathB.cubicTo(1,2, 1,0, 2,1); 38815e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com pathB.close(); 38825e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com testShapeOp(path, pathB, kDifference_Op); 38835e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com} 38845e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com 38855e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.comstatic void cubicOp24d() { 38865e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com SkPath path, pathB; 38875e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com path.setFillType(SkPath::kWinding_FillType); 38885e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com path.moveTo(0,1); 38895e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com path.cubicTo(1,2, 2,0, 3,2); 38905e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com path.close(); 38915e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 38925e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com pathB.moveTo(0,2); 38935e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com pathB.cubicTo(2,3, 1,0, 2,1); 38945e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com pathB.close(); 38955e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com testShapeOp(path, pathB, kDifference_Op); 38965e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com} 38975e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com 3898c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.comstatic void testIntersect1() { 3899c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com SkPath one, two; 3900c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com one.addRect(0, 0, 6, 6, SkPath::kCW_Direction); 3901c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com two.addRect(3, 3, 9, 9, SkPath::kCW_Direction); 3902c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com testShapeOp(one, two, kIntersect_Op); 3903c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com} 3904c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com 3905c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.comstatic void testUnion1() { 3906c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com SkPath one, two; 3907c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com one.addRect(0, 0, 6, 6, SkPath::kCW_Direction); 3908c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com two.addRect(3, 3, 9, 9, SkPath::kCW_Direction); 3909c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com testShapeOp(one, two, kUnion_Op); 3910c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com} 3911c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com 3912c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.comstatic void testDiff1() { 3913c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com SkPath one, two; 3914c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com one.addRect(0, 0, 6, 6, SkPath::kCW_Direction); 3915c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com two.addRect(3, 3, 9, 9, SkPath::kCW_Direction); 3916c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com testShapeOp(one, two, kDifference_Op); 3917c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com} 3918c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com 3919c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.comstatic void testXor1() { 3920c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com SkPath one, two; 3921c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com one.addRect(0, 0, 6, 6, SkPath::kCW_Direction); 3922c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com two.addRect(3, 3, 9, 9, SkPath::kCW_Direction); 3923c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com testShapeOp(one, two, kXor_Op); 3924c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com} 3925c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com 3926c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.comstatic void testIntersect2() { 3927c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com SkPath one, two; 3928c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com one.addRect(0, 0, 6, 6, SkPath::kCW_Direction); 3929c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com two.addRect(0, 3, 9, 9, SkPath::kCW_Direction); 3930c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com testShapeOp(one, two, kIntersect_Op); 3931c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com} 3932c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com 3933c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.comstatic void testUnion2() { 3934c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com SkPath one, two; 3935c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com one.addRect(0, 0, 6, 6, SkPath::kCW_Direction); 3936c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com two.addRect(0, 3, 9, 9, SkPath::kCW_Direction); 3937c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com testShapeOp(one, two, kUnion_Op); 3938c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com} 3939c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com 3940c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.comstatic void testDiff2() { 3941c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com SkPath one, two; 3942c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com one.addRect(0, 0, 6, 6, SkPath::kCW_Direction); 3943c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com two.addRect(0, 3, 9, 9, SkPath::kCW_Direction); 3944c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com testShapeOp(one, two, kDifference_Op); 3945c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com} 3946c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com 3947c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.comstatic void testXor2() { 3948c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com SkPath one, two; 3949c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com one.addRect(0, 0, 6, 6, SkPath::kCW_Direction); 3950c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com two.addRect(0, 3, 9, 9, SkPath::kCW_Direction); 3951c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com testShapeOp(one, two, kXor_Op); 3952c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com} 3953c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com 3954c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.comstatic void testOp1d() { 3955c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com SkPath path, pathB; 3956c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 3957c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 3958c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.addRect(0, 0, 2, 2, SkPath::kCW_Direction); 3959c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 3960c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 3961c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 3962c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 3963c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com} 3964c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com 3965c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.comstatic void testOp2d() { 3966c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com SkPath path, pathB; 3967c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 3968c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 3969c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.addRect(0, 0, 2, 2, SkPath::kCW_Direction); 3970c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.setFillType(SkPath::kEvenOdd_FillType); 3971c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 3972c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 3973c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 3974c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com} 3975c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com 3976c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.comstatic void testOp3d() { 3977c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com SkPath path, pathB; 3978c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 3979c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 3980c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.addRect(1, 1, 2, 2, SkPath::kCW_Direction); 3981c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 3982c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 3983c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 3984c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 3985c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com} 3986c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com 3987c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.comstatic void testOp1u() { 3988c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com SkPath path, pathB; 3989c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 3990c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 3991c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.addRect(0, 0, 3, 3, SkPath::kCW_Direction); 3992c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 3993c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 3994c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 3995c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com testShapeOp(path, pathB, kUnion_Op); 3996c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com} 3997c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com 3998c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.comstatic void testOp4d() { 3999c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com SkPath path, pathB; 4000c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 4001c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 4002c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.addRect(2, 2, 4, 4, SkPath::kCW_Direction); 4003c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 4004c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 4005c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 4006c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 4007c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com} 4008c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com 4009c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.comstatic void testOp5d() { 4010c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com SkPath path, pathB; 4011c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 4012c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.addRect(0, 0, 2, 2, SkPath::kCW_Direction); 4013c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.addRect(0, 0, 3, 3, SkPath::kCW_Direction); 4014c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.setFillType(SkPath::kEvenOdd_FillType); 4015c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 4016c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 4017c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 4018c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com} 4019c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com 4020c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.comstatic void testOp6d() { 4021c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com SkPath path, pathB; 4022c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 4023c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 4024c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.addRect(0, 0, 3, 3, SkPath::kCW_Direction); 4025c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 4026c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 4027c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 4028c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 4029c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com} 4030c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com 4031c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.comstatic void testOp7d() { 4032c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com SkPath path, pathB; 4033c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 4034c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.addRect(0, 0, 2, 2, SkPath::kCW_Direction); 4035c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 4036c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.setFillType(SkPath::kEvenOdd_FillType); 4037c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 4038c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 4039c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 4040c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com} 4041c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com 4042c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.comstatic void testOp2u() { 4043c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com SkPath path, pathB; 4044c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.setFillType(SkPath::kEvenOdd_FillType); 4045c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.addRect(0, 0, 2, 2, SkPath::kCW_Direction); 4046c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.addRect(0, 0, 2, 2, SkPath::kCW_Direction); 4047c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 4048c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.addRect(0, 0, 3, 3, SkPath::kCW_Direction); 4049c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.addRect(1, 1, 2, 2, SkPath::kCW_Direction); 4050c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com testShapeOp(path, pathB, kUnion_Op); 4051c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com} 4052c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com 4053c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.comstatic void testOp8d() { 4054c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com SkPath path, pathB; 4055c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.addRect(0, 0, 640, 480); 4056c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.moveTo(577330, 1971.72f); 4057c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.cubicTo(10.7082f, -116.596f, 262.057f, 45.6468f, 294.694f, 1.96237f); 4058c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.close(); 4059c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 4060c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com} 4061c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.comstatic void cubicOp25i() { 4062c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com SkPath path, pathB; 4063c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 4064c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.moveTo(0,1); 4065c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.cubicTo(2,4, 5,0, 3,2); 4066c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.close(); 4067c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 4068c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.moveTo(0,5); 4069c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.cubicTo(2,3, 1,0, 4,2); 4070c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.close(); 4071c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com testShapeOp(path, pathB, kIntersect_Op); 4072c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com} 4073c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com 4074c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.comstatic void cubicOp26d() { 4075c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com SkPath path, pathB; 4076c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 4077c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.moveTo(0,1); 4078c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.cubicTo(3,4, 4,0, 3,2); 4079c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.close(); 4080c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 4081c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.moveTo(0,4); 4082c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.cubicTo(2,3, 1,0, 4,3); 4083c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.close(); 4084c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 4085c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com} 4086c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com 4087c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.comstatic void cubicOp27d() { 4088c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com SkPath path, pathB; 4089c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 4090c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.moveTo(0,1); 4091c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.cubicTo(3,6, 1,0, 5,2); 4092c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.close(); 4093c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 4094c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.moveTo(0,1); 4095c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.cubicTo(2,5, 1,0, 6,3); 4096c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.close(); 4097c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 4098c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com} 4099c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com 4100c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.comstatic void cubicOp28u() { 4101c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com SkPath path, pathB; 4102c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 4103c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.moveTo(0,1); 4104c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.cubicTo(1,4, 6,0, 3,2); 4105c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.close(); 4106c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 4107c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.moveTo(0,6); 4108c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.cubicTo(2,3, 1,0, 4,1); 4109c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.close(); 4110c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com testShapeOp(path, pathB, kUnion_Op); 4111c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com} 4112c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com 4113c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.comstatic void cubicOp29d() { 4114c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com SkPath path, pathB; 4115c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 4116c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.moveTo(0,1); 4117c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.cubicTo(2,5, 6,0, 4,2); 4118c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.close(); 4119c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 4120c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.moveTo(0,6); 4121c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.cubicTo(2,4, 1,0, 5,2); 4122c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.close(); 4123c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 4124c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com} 4125c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com 4126c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.comstatic void cubicOp30d() { 4127c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com SkPath path, pathB; 4128c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 4129c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.moveTo(0,1); 4130c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.cubicTo(2,5, 6,0, 5,3); 4131c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com path.close(); 4132c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 4133c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.moveTo(0,6); 4134c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.cubicTo(3,5, 1,0, 5,2); 4135c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com pathB.close(); 4136c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 4137c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com} 4138c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com 41397ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.comstatic void cubicOp31d() { 41407ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com SkPath path, pathB; 41417ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com path.setFillType(SkPath::kWinding_FillType); 41427ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com path.moveTo(0,2); 41437ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com path.cubicTo(0,3, 2,1, 4,0); 41447ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com path.close(); 41457ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 41467ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com pathB.moveTo(1,2); 41477ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com pathB.cubicTo(0,4, 2,0, 3,0); 41487ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com pathB.close(); 41497ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com testShapeOp(path, pathB, kDifference_Op); 41507ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com} 41517ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com 41527ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.comstatic void cubicOp31u() { 41537ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com SkPath path, pathB; 41547ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com path.setFillType(SkPath::kWinding_FillType); 41557ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com path.moveTo(0,2); 41567ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com path.cubicTo(0,3, 2,1, 4,0); 41577ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com path.close(); 41587ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 41597ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com pathB.moveTo(1,2); 41607ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com pathB.cubicTo(0,4, 2,0, 3,0); 41617ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com pathB.close(); 41627ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com testShapeOp(path, pathB, kUnion_Op); 41637ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com} 41647ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com 41654aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.comstatic void cubicOp31x() { 41664aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com SkPath path, pathB; 41674aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 41684aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com path.moveTo(0,2); 41694aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com path.cubicTo(0,3, 2,1, 4,0); 41704aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com path.close(); 41714aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 41724aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com pathB.moveTo(1,2); 41734aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com pathB.cubicTo(0,4, 2,0, 3,0); 41744aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com pathB.close(); 41754aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com testShapeOp(path, pathB, kXor_Op); 41764aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com} 41774aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com 41787ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.comstatic void testCubic2() { 41797ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com SkPath path; 41807ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com path.moveTo(0,2); 41817ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com path.cubicTo(0,3, 2,1, 4,0); 41827ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com path.close(); 41837ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com path.moveTo(1,2); 41847ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com path.cubicTo(0,4, 2,0, 3,0); 41857ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com path.close(); 41867ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com testSimplifyx(path); 41877ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com} 41887ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com 41894aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.comstatic void cubicOp32d() { 41904aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com SkPath path, pathB; 41914aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 41924aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com path.moveTo(0,1); 41934aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com path.cubicTo(1,2, 6,0, 3,1); 41944aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com path.close(); 41954aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 41964aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com pathB.moveTo(0,6); 41974aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com pathB.cubicTo(1,3, 1,0, 2,1); 41984aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com pathB.close(); 41994aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 42004aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com} 42014aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com 42024aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.comstatic void cubicOp33i() { 42034aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com SkPath path, pathB; 42044aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 42054aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com path.moveTo(0,1); 42064aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com path.cubicTo(1,2, 6,0, 3,1); 42074aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com path.close(); 42084aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 42094aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com pathB.moveTo(0,6); 42104aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com pathB.cubicTo(1,3, 1,0, 2,1); 42114aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com pathB.close(); 42124aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com testShapeOp(path, pathB, kIntersect_Op); 42134aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com} 42144aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com 42154aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.comstatic void cubicOp34d() { 42164aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com SkPath path, pathB; 42174aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 42184aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com path.moveTo(0,1); 42194aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com path.cubicTo(3,5, 2,1, 3,1); 42204aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com path.close(); 42214aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 42224aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com pathB.moveTo(1,2); 42234aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com pathB.cubicTo(1,3, 1,0, 5,3); 42244aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com pathB.close(); 42254aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 42264aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com} 42274aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com 42284aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.comstatic void cubicOp35d() { 42294aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com SkPath path, pathB; 42304aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 42314aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com path.moveTo(0,1); 42324aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com path.cubicTo(1,5, 2,1, 4,0); 42334aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com path.close(); 42344aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 42354aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com pathB.moveTo(1,2); 42364aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com pathB.cubicTo(0,4, 1,0, 5,1); 42374aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com pathB.close(); 42384aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 42394aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com} 42404aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com 4241d4c8e1e035bc2edb6caf2c9eac71ef918e60b80bcaryclark@google.comstatic void cubicOp36u() { 4242d4c8e1e035bc2edb6caf2c9eac71ef918e60b80bcaryclark@google.com SkPath path, pathB; 4243d4c8e1e035bc2edb6caf2c9eac71ef918e60b80bcaryclark@google.com path.setFillType(SkPath::kWinding_FillType); 4244d4c8e1e035bc2edb6caf2c9eac71ef918e60b80bcaryclark@google.com path.moveTo(0,1); 4245d4c8e1e035bc2edb6caf2c9eac71ef918e60b80bcaryclark@google.com path.cubicTo(1,6, 2,0, 5,1); 4246d4c8e1e035bc2edb6caf2c9eac71ef918e60b80bcaryclark@google.com path.close(); 4247d4c8e1e035bc2edb6caf2c9eac71ef918e60b80bcaryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 4248d4c8e1e035bc2edb6caf2c9eac71ef918e60b80bcaryclark@google.com pathB.moveTo(0,2); 4249d4c8e1e035bc2edb6caf2c9eac71ef918e60b80bcaryclark@google.com pathB.cubicTo(1,5, 1,0, 6,1); 4250d4c8e1e035bc2edb6caf2c9eac71ef918e60b80bcaryclark@google.com pathB.close(); 4251d4c8e1e035bc2edb6caf2c9eac71ef918e60b80bcaryclark@google.com testShapeOp(path, pathB, kUnion_Op); 4252d4c8e1e035bc2edb6caf2c9eac71ef918e60b80bcaryclark@google.com} 4253d4c8e1e035bc2edb6caf2c9eac71ef918e60b80bcaryclark@google.com 42541304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.comstatic void cubicOp37d() { 42551304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com SkPath path, pathB; 42561304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 42571304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.moveTo(0,1); 42581304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.cubicTo(2,6, 6,1, 4,3); 42591304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.close(); 42601304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 42611304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.moveTo(1,6); 42621304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.cubicTo(3,4, 1,0, 6,2); 42631304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.close(); 42641304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 42651304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com} 42661304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com 42671304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com#if 1 42681304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com// this fails to detect a cubic/cubic intersection 42691304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com// the slight overlap is missed when the cubics are approximated by quadratics 42701304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com// and the subsequent line/cubic intersection also (correctly) misses the intersection 42711304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com// if the line/cubic was a matching line/approx.quadratic then the missing intersection 42721304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com// could have been detected 42731304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.comstatic void cubicOp38d() { 42741304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com SkPath path, pathB; 42751304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 42761304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.moveTo(0,1); 42771304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.cubicTo(0,6, 3,2, 4,1); 42781304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.close(); 42791304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 42801304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.moveTo(2,3); 42811304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.cubicTo(1,4, 1,0, 6,0); 42821304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.close(); 42831304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 42841304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com} 42851304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com#endif 42861304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com 42871304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.comstatic void cubicOp39d() { 42881304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com SkPath path, pathB; 42891304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 42901304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.moveTo(0,1); 42911304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.cubicTo(2,3, 5,1, 4,3); 42921304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.close(); 42931304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 42941304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.moveTo(1,5); 42951304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.cubicTo(3,4, 1,0, 3,2); 42961304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.close(); 42971304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 42981304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com} 42991304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com 43001304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.comstatic void cubicOp40d() { 43011304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com SkPath path, pathB; 43021304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 43031304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.moveTo(0,1); 43041304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.cubicTo(1,5, 3,2, 4,2); 43051304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.close(); 43061304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 43071304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.moveTo(2,3); 43081304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.cubicTo(2,4, 1,0, 5,1); 43091304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.close(); 43101304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 43111304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com} 43121304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com 43131304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.comstatic void cubicOp41i() { 43141304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com SkPath path, pathB; 43151304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 43161304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.moveTo(0,1); 43171304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.cubicTo(2,6, 4,3, 6,4); 43181304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.close(); 43191304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 43201304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.moveTo(3,4); 43211304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.cubicTo(4,6, 1,0, 6,2); 43221304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.close(); 43231304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com testShapeOp(path, pathB, kIntersect_Op); 43241304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com} 43251304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com 43261304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.comstatic void cubicOp42d() { 43271304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com SkPath path, pathB; 43281304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 43291304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.moveTo(0,1); 43301304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.cubicTo(1,2, 6,5, 5,4); 43311304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.close(); 43321304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 43331304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.moveTo(5,6); 43341304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.cubicTo(4,5, 1,0, 2,1); 43351304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.close(); 43361304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 43371304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com} 43381304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com 43391304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.comstatic void cubicOp43d() { 43401304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com SkPath path, pathB; 43411304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 43421304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.moveTo(0,2); 43431304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.cubicTo(1,2, 4,0, 3,1); 43441304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.close(); 43451304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 43461304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.moveTo(0,4); 43471304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.cubicTo(1,3, 2,0, 2,1); 43481304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.close(); 43491304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 43501304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com} 43511304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com 43521304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.comstatic void cubicOp44d() { 43531304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com SkPath path, pathB; 43541304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 43551304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.moveTo(0,2); 43561304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.cubicTo(3,6, 4,0, 3,2); 43571304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.close(); 43581304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 43591304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.moveTo(0,4); 43601304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.cubicTo(2,3, 2,0, 6,3); 43611304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.close(); 43621304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 43631304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com} 43641304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com 43651304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.comstatic void cubicOp45d() { 43661304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com SkPath path, pathB; 43671304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 43681304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.moveTo(0,2); 43691304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.cubicTo(2,4, 4,0, 3,2); 43701304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.close(); 43711304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 43721304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.moveTo(0,4); 43731304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.cubicTo(2,3, 2,0, 4,2); 43741304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.close(); 43751304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 43761304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com} 43771304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com 43781304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.comstatic void cubicOp46d() { 43791304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com SkPath path, pathB; 43801304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 43811304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.moveTo(0,2); 43821304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.cubicTo(3,5, 5,0, 4,2); 43831304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.close(); 43841304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 43851304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.moveTo(0,5); 43861304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.cubicTo(2,4, 2,0, 5,3); 43871304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.close(); 43881304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 43891304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com} 43901304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com 43911304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.comstatic void cubicOp47d() { 43921304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com SkPath path, pathB; 43931304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 43941304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.moveTo(0,1); 43951304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.cubicTo(1,6, 6,2, 5,4); 43961304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.close(); 43971304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 43981304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.moveTo(2,6); 43991304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.cubicTo(4,5, 1,0, 6,1); 44001304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.close(); 44011304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 44021304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com} 44031304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com 44041304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.comstatic void cubicOp48d() { 44051304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com SkPath path, pathB; 44061304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 44071304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.moveTo(0,2); 44081304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.cubicTo(2,3, 5,1, 3,2); 44091304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.close(); 44101304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 44111304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.moveTo(1,5); 44121304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.cubicTo(2,3, 2,0, 3,2); 44131304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.close(); 44141304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 44151304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com} 44161304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com 44171304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.comstatic void cubicOp49d() { 44181304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com SkPath path, pathB; 44191304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 44201304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.moveTo(0,2); 44211304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.cubicTo(1,5, 3,2, 4,1); 44221304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.close(); 44231304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 44241304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.moveTo(2,3); 44251304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.cubicTo(1,4, 2,0, 5,1); 44261304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.close(); 44271304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 44281304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com} 44291304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com 44301304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.comstatic void cubicOp50d() { 44311304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com SkPath path, pathB; 44321304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 44331304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.moveTo(0,3); 44341304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.cubicTo(1,6, 5,0, 5,1); 44351304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.close(); 44361304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 44371304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.moveTo(0,5); 44381304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.cubicTo(1,5, 3,0, 6,1); 44391304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.close(); 44401304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 44411304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com} 44421304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com 44431304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.comstatic void cubicOp51d() { 44441304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com SkPath path, pathB; 44451304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 44461304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.moveTo(0,3); 44471304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.cubicTo(1,2, 4,1, 6,0); 44481304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.close(); 44491304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 44501304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.moveTo(1,4); 44511304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.cubicTo(0,6, 3,0, 2,1); 44521304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.close(); 44531304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 44541304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com} 44551304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com 44561304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.comstatic void cubicOp52d() { 44571304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com SkPath path, pathB; 44581304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 44591304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.moveTo(0,2); 44601304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.cubicTo(1,2, 5,4, 4,3); 44611304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.close(); 44621304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 44631304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.moveTo(4,5); 44641304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.cubicTo(3,4, 2,0, 2,1); 44651304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.close(); 44661304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 44671304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com} 44681304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com 44691304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.comstatic void cubicOp53d() { 44701304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com SkPath path, pathB; 44711304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 44721304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.moveTo(0,3); 44731304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.cubicTo(1,2, 5,3, 2,1); 44741304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.close(); 44751304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 44761304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.moveTo(3,5); 44771304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.cubicTo(1,2, 3,0, 2,1); 44781304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.close(); 44791304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 44801304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com} 44811304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com 44821304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.comstatic void cubicOp54d() { 44831304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com SkPath path, pathB; 44841304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 44851304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.moveTo(0,4); 44861304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.cubicTo(1,3, 5,4, 4,2); 44871304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.close(); 44881304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 44891304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.moveTo(4,5); 44901304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.cubicTo(2,4, 4,0, 3,1); 44911304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.close(); 44921304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 44931304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com} 44941304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com 44951304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.comstatic void cubicOp55d() { 44961304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com SkPath path, pathB; 44971304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 44981304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.moveTo(0,5); 44991304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.cubicTo(1,3, 3,2, 5,0); 45001304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.close(); 45011304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 45021304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.moveTo(2,3); 45031304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.cubicTo(0,5, 5,0, 3,1); 45041304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.close(); 45051304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 45061304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com} 45071304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com 45081304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.comstatic void cubicOp56d() { 45091304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com SkPath path, pathB; 45101304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 45111304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.moveTo(0,1); 45121304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.cubicTo(2,6, 5,0, 2,1); 45131304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.close(); 45141304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 45151304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.moveTo(0,5); 45161304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.cubicTo(1,2, 1,0, 6,2); 45171304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.close(); 45181304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 45191304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com} 45201304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com 45211304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.comstatic void cubicOp57d() { 45221304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com SkPath path, pathB; 45231304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 45241304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.moveTo(0,5); 45251304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.cubicTo(0,5, 5,4, 6,4); 45261304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.close(); 45271304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 45281304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.moveTo(4,5); 45291304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.cubicTo(4,6, 5,0, 5,0); 45301304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.close(); 45311304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 45321304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com} 45331304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com 45341304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.comstatic void cubicOp58d() { 45351304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com SkPath path, pathB; 45361304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 45371304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.moveTo(0,5); 45381304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.cubicTo(3,4, 6,5, 5,3); 45391304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.close(); 45401304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 45411304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.moveTo(5,6); 45421304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.cubicTo(3,5, 5,0, 4,3); 45431304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.close(); 45441304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 45451304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com} 45461304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com 45471304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.comstatic void cubicOp59d() { 45481304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com SkPath path, pathB; 45491304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 45501304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.moveTo(0,1); 45511304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.cubicTo(5,6, 4,0, 4,1); 45521304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.close(); 45531304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 45541304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.moveTo(0,4); 45551304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.cubicTo(1,4, 1,0, 6,5); 45561304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.close(); 45571304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 45581304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com} 45591304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com 45601304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.comstatic void cubicOp60d() { 45611304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com SkPath path, pathB; 45621304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 45631304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.moveTo(0,2); 45641304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.cubicTo(4,6, 6,0, 5,2); 45651304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.close(); 45661304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 45671304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.moveTo(0,6); 45681304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.cubicTo(2,5, 2,0, 6,4); 45691304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.close(); 45701304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 45711304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com} 45721304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com 45731304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.comstatic void cubicOp61d() { 45741304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com SkPath path, pathB; 45751304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 45761304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.moveTo(1,2); 45771304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.cubicTo(0,5, 3,2, 6,1); 45781304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com path.close(); 45791304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 45801304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.moveTo(2,3); 45811304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.cubicTo(1,6, 2,1, 5,0); 45821304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com pathB.close(); 45831304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 45841304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com} 45851304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com 4586996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.comstatic void cubicOp62d() { 4587996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.com SkPath path, pathB; 4588996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 4589996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.com path.moveTo(1,3); 4590996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.com path.cubicTo(5,6, 5,3, 5,4); 4591996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.com path.close(); 4592996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 4593996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.com pathB.moveTo(3,5); 4594996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.com pathB.cubicTo(4,5, 3,1, 6,5); 4595996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.com pathB.close(); 4596996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 4597996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.com} 4598996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.com 4599996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.comstatic void cubicOp63d() { 4600996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.com SkPath path, pathB; 4601996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 4602996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.com path.moveTo(2,3); 4603996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.com path.cubicTo(0,4, 3,2, 5,3); 4604996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.com path.close(); 4605996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.com pathB.setFillType(SkPath::kWinding_FillType); 4606996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.com pathB.moveTo(2,3); 4607996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.com pathB.cubicTo(3,5, 3,2, 4,0); 4608996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.com pathB.close(); 4609996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 4610996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.com} 4611996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.com 4612ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.comstatic void testQuad1() { 4613ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com SkPath path; 4614ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.moveTo(0,0); 4615ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.quadTo(0,0, 0,1); 4616ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.lineTo(1,1); 4617ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.close(); 4618ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.moveTo(0,0); 4619ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.quadTo(1,1, 0,2); 4620ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.close(); 4621ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com testSimplifyx(path); 4622ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com} 4623ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com 4624ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.comstatic void testQuad1z() { 4625ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com SkPath path; 4626ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.moveTo(0,0); 4627ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.quadTo(0,0, 0,1); 4628ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.lineTo(1,1); 4629ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.close(); 4630ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.moveTo(0,0); 4631ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.lineTo(0.5f,1); 4632ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.lineTo(0,2); 4633ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.close(); 4634ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com testSimplifyx(path); 4635ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com} 4636ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com 4637ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.comstatic void testQuad1c() { 4638ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com SkPath path; 4639ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.moveTo(0,0); 4640ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.quadTo(0,0, 0,1); 4641ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.lineTo(1,1); 4642ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.close(); 4643ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.moveTo(0,0); 4644ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.cubicTo(0.5f,0.5f, 0.5f,1.5f, 0,2); 4645ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.close(); 4646ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com testSimplifyx(path); 4647ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com} 4648ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com 4649ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.comstatic void testRectOp1d() { 4650ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com SkPath path, pathB; 4651ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.moveTo(0,1); 4652ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.cubicTo(0,1, 1,0, 3,0); 4653ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.lineTo(0,1); 4654ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.close(); 4655ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com pathB.moveTo(0,1); 4656ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com pathB.cubicTo(0,3, 1,0, 1,0); 4657ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com pathB.lineTo(0,1); 4658ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com pathB.close(); 4659ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 4660ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com} 4661ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com 4662ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.comstatic void testCubicOp64d() { 4663ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com SkPath path, pathB; 4664ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.setFillType(SkPath::kWinding_FillType); 4665ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.addRect(0, 0, 1, 1, SkPath::kCW_Direction); 4666ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com path.addRect(2, 2, 3, 3, SkPath::kCW_Direction); 4667ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com pathB.setFillType(SkPath::kEvenOdd_FillType); 4668ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com pathB.addRect(0, 0, 4, 4, SkPath::kCW_Direction); 4669ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com pathB.addRect(0, 0, 3, 3, SkPath::kCW_Direction); 4670ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com testShapeOp(path, pathB, kDifference_Op); 4671ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com} 4672ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com 4673ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.comstatic void (*firstTest)() = testRectOp1d; 467488f7d0cb09707355bc9079d4b0569537e8048fa9caryclark@google.com 46758dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.comstatic struct { 46768dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com void (*fun)(); 46778dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com const char* str; 46788dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com} tests[] = { 4679ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com TEST(testRectOp1d), 4680ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com TEST(testCubicOp64d), 4681ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com TEST(testQuad1c), 4682ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com TEST(testQuad1z), 4683ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com TEST(testQuad1), 4684ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.com TEST(testQuadratic93), // FIXME: gets stuck in a loop because top is unsortable 4685996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.com TEST(cubicOp63d), 4686996d78b7cf9863a5b574fc1b64b1715cad4d0a23caryclark@google.com TEST(cubicOp62d), 46871304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp61d), 46881304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp60d), 46891304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp59d), 46901304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp58d), 46911304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp57d), 46921304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp56d), 46931304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp55d), 46941304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp54d), 46951304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp53d), 46961304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp52d), 46971304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp51d), 46981304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp50d), 46991304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp49d), 47001304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp48d), 47011304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp47d), 47021304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp46d), 47031304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp45d), 47041304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp44d), 47051304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp43d), 47061304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp42d), 47071304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp41i), 47081304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp40d), 47091304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp39d), 47101304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp38d), 47111304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp37d), 4712d4c8e1e035bc2edb6caf2c9eac71ef918e60b80bcaryclark@google.com TEST(cubicOp36u), 47134aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com TEST(cubicOp35d), 47144aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com TEST(cubicOp34d), 47154aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com TEST(cubicOp33i), 47164aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com TEST(cubicOp32d), 47174aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com TEST(cubicOp31d), 47187ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com TEST(testCubic2), 47194aaaaeace7e617ddc473645756fb7c20790bc270caryclark@google.com TEST(cubicOp31x), 47207ff5c841bf669826b4cbd708ae1a6b3527f15dcacaryclark@google.com TEST(cubicOp31u), 4721c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com TEST(cubicOp30d), 4722c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com TEST(cubicOp29d), 4723c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com TEST(cubicOp28u), 4724c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com TEST(cubicOp27d), 4725c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com TEST(cubicOp26d), 4726c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com TEST(cubicOp25i), 4727c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com TEST(testOp8d), 4728c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com TEST(testDiff1), 4729c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com TEST(testIntersect1), 4730c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com TEST(testUnion1), 4731c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com TEST(testXor1), 4732c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com TEST(testDiff2), 4733c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com TEST(testIntersect2), 4734c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com TEST(testUnion2), 4735c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com TEST(testXor2), 4736c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com TEST(testOp1d), 4737c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com TEST(testOp2d), 4738c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com TEST(testOp3d), 4739c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com TEST(testOp1u), 4740c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com TEST(testOp4d), 4741c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com TEST(testOp5d), 4742c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com TEST(testOp6d), 4743c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com TEST(testOp7d), 4744c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com TEST(testOp2u), 4745c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com 47465e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com TEST(cubicOp24d), 47475e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com TEST(cubicOp23d), 47485e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com TEST(cubicOp22d), 47495e0500fb5f17fe14db42fc3e0aad08e6b41ccc5fcaryclark@google.com TEST(cubicOp21d), 4750d0a19eb9140ecb968357f798f06d2b052b51fd89caryclark@google.com TEST(cubicOp20d), 475147d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com TEST(cubicOp19i), 475247d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com TEST(cubicOp18d), 475347d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com TEST(cubicOp17d), 475447d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com TEST(cubicOp16d), 475547d73daa7a971e7eee5822def7922f7d43b2dc47caryclark@google.com TEST(cubicOp15d), 475645a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com TEST(cubicOp14d), 475745a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com TEST(cubicOp13d), 475845a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com TEST(cubicOp12d), 475945a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com TEST(cubicOp11d), 476045a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com TEST(cubicOp10d), 476145a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com TEST(cubicOp1i), 476245a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com TEST(cubicOp9d), 476345a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com TEST(quadOp9d), 476445a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com TEST(lineOp9d), 476545a8fc6a8b00451f807783f2a6ec640e9bcc7256caryclark@google.com TEST(cubicOp8d), 4766beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com TEST(cubicOp7d), 4767beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com TEST(cubicOp6d), 4768beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com TEST(cubicOp5d), 4769beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com TEST(cubicOp3d), 4770beda389e646d6be3cfef853584a78ca8ba39d0fccaryclark@google.com TEST(cubicOp2d), 4771aa35831d1d0e4c798a63fe772430adc4f3a038cdcaryclark@google.com TEST(cubicOp1d), 477273ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com TEST(testCubic1), 477373ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com TEST(testQuadralateral1), 47748f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com TEST(testLine85), 47758f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com TEST(testLine84), 47768f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com TEST(testLine84x), 47778f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com TEST(testLine83), 47788f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com TEST(testLine82h), 47798f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com TEST(testLine82g), 47808f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com TEST(testLine82f), 47818f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com TEST(testLine82e), 47828f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com TEST(testLine82d), 47838f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com TEST(testLine82c), 47848f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com TEST(testLine82b), 47858f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com TEST(testLine82a), 47868f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com TEST(testLine82), 47878f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com TEST(testQuadratic92x), 47888f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com TEST(testQuadratic91), 47898f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com TEST(testQuadratic90x), 47908f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com TEST(testQuadratic89x), 479110227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com TEST(testQuadratic88), 479210227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com TEST(testQuadratic87), 479310227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com TEST(testQuadratic86), 479410227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com TEST(testQuadratic85), 479510227bf4679cd0eccae337cb83de8f64dfa959ebcaryclark@google.com TEST(testQuadratic84), 47963586ece1ddbb48cabb2e7a4792be9ff5d74e40d9caryclark@google.com TEST(testQuadratic83), 4797db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com TEST(testQuadratic82), 4798db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com TEST(testQuadratic81), 4799db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com TEST(testQuadratic80), 4800db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com TEST(testEight1), 4801db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com TEST(testEight2), 4802db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com TEST(testEight3), 4803db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com TEST(testEight4), 4804db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com TEST(testEight5), 4805db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com TEST(testEight6), 4806db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com TEST(testEight7), 4807db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com TEST(testEight8), 4808db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com TEST(testEight9), 4809db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com TEST(testEight10), 4810db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com TEST(testQuadratic79), 4811db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com TEST(testQuadratic78), 4812db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com TEST(testQuadratic77), 4813db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com TEST(testQuadratic76), 4814db0b3e099f888213535c4ad4c785b84544309033caryclark@google.com TEST(testQuadratic75), 4815e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com TEST(testQuadratic74), 4816e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com TEST(testQuadratic73), 4817e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com TEST(testQuadratic72), 4818e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com TEST(testQuadratic71), 4819e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com TEST(testQuadratic70x), 4820e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com TEST(testQuadratic69), 482161b05dcc7ebe48663c3ba84b7bd7449d6c887ac1skia.committer@gmail.com TEST(testQuadratic68), 4822e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com TEST(testQuadratic67x), 4823e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com TEST(testQuadratic65), 4824e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com TEST(testQuadratic64), 4825e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com TEST(testQuadratic63), 4826e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com TEST(testLine1a), 4827e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com TEST(testLine1ax), 4828e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com TEST(testQuadratic59), 4829e7bd5f4041701cbab87f6e779eb18fbb9fe74216caryclark@google.com TEST(testQuadratic59x), 4830f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com TEST(testQuadratic58), 4831f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com TEST(testQuadratic56), 4832f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com TEST(testQuadratic55), 4833f839c0359c308fd06895d9f73fc12c4f3869e399caryclark@google.com TEST(testQuadratic53), 4834fb51afb03e76c5701fffaa847584a8b7b2c18a7ecaryclark@google.com TEST(testQuadratic51), 4835d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com TEST(testQuadratic38), 4836d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com TEST(testQuadratic37), 4837d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com TEST(testQuadratic36), 4838d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com TEST(testQuadratic35), 4839d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com TEST(testQuadratic34), 4840d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com TEST(testQuadratic33), 4841d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com TEST(testQuadratic32), 4842d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com TEST(testQuadratic31), 4843d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com TEST(testQuadratic30), 4844d1688744d537d928699b6069f99c4470a0f6e772caryclark@google.com TEST(testQuadratic29), 4845235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com TEST(testQuadratic28), 4846235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com TEST(testQuadratic27), 4847235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com TEST(testQuadratic26), 4848235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com TEST(testQuadratic25), 4849235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com TEST(testQuadratic24), 4850235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com TEST(testQuadratic23), 4851235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com TEST(testQuadratic22), 4852235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com TEST(testQuadratic21), 485332546db1494a6c6433a7919844133a6ff5b5c7b2caryclark@google.com TEST(testQuadratic20), 4854a7e483d130a65833e4c0d4abb4c2f13a9ce7703bcaryclark@google.com TEST(testQuadratic19), 48553350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com TEST(testQuadratic18), 48563350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com TEST(testQuadratic17x), 48573350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com TEST(testQuadratic15), 4858c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testQuadratic14), 4859c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testQuadratic9), 4860c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testQuadratic8), 4861c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testQuadratic7), 4862c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testQuadratic6), 4863c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testQuadratic5), 4864c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testQuadratic4x), 4865c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testQuadratic3x), 4866c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testQuadratic2x), 4867c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testQuadratic1x), 4868c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testQuadratic4), 486903f970652e07c6832cae41fa374cb68ca80d472ccaryclark@google.com TEST(testQuadratic3), 487024bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com TEST(testQuadratic2), 487124bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com TEST(testQuadratic1), 4872c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine4ax), 4873c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine3aax), 4874c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine2ax), 4875c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine1ax), 4876c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testQuadralateral9x), 4877c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testQuadralateral8x), 4878c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testQuadralateral7x), 4879c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testQuadralateral6x), 4880c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testQuadralateral6ax), 488124bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com TEST(testQuadralateral9), 488224bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com TEST(testQuadralateral8), 488324bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com TEST(testQuadralateral7), 488459823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com TEST(testQuadralateral6), 488524bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com TEST(testQuadralateral6a), 4886c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testFauxQuadralateral6dx), 4887c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testFauxQuadralateral6cx), 4888c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testFauxQuadralateral6bx), 4889c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testFauxQuadralateral6ax), 4890c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testFauxQuadralateral6x), 489124bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com TEST(testFauxQuadralateral6d), 489224bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com TEST(testFauxQuadralateral6c), 489324bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com TEST(testFauxQuadralateral6b), 489424bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com TEST(testFauxQuadralateral6a), 489524bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com TEST(testFauxQuadralateral6), 4896c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testQuadralateral5x), 489759823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com TEST(testQuadralateral5), 4898c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testNondegenerate4x), 4899c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testNondegenerate3x), 4900c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testNondegenerate2x), 4901c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testNondegenerate1x), 490259823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com TEST(testNondegenerate4), 490359823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com TEST(testNondegenerate3), 490459823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com TEST(testNondegenerate2), 490559823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com TEST(testNondegenerate1), 4906c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testDegenerate4x), 4907c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testDegenerate3x), 4908c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testDegenerate2x), 4909c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testDegenerate1x), 491059823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com TEST(testDegenerate4), 491159823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com TEST(testDegenerate3), 491259823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com TEST(testDegenerate2), 491359823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com TEST(testDegenerate1), 4914c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine79x), 4915c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine78x), 4916c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine77x), 4917c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine76x), 4918c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine75x), 4919c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine74x), 4920c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine73x), 4921c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine72x), 4922c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine71x), 4923c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine70x), 4924c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine69x), 4925c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine68hx), 4926c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine68gx), 4927c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine68fx), 4928c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine68ex), 4929c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine68dx), 4930c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine68cx), 4931c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine68bx), 4932c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine68ax), 4933c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine67x), 4934c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine66x), 4935c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine65x), 4936c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine64x), 4937c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine63x), 4938c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine62x), 4939c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine61x), 4940c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine60x), 4941c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine59x), 4942c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine58x), 4943c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine57x), 4944c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine56x), 4945c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine55x), 4946c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine54x), 4947c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine53x), 4948c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine52x), 4949c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine51x), 4950c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine50x), 4951c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine49x), 4952c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine48x), 4953c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine47x), 4954c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine46x), 4955c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine45x), 4956c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine44x), 4957c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine43x), 4958c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine42x), 4959c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine41x), 4960c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine40x), 4961c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine38x), 4962c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine37x), 4963c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine36x), 4964c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine35x), 4965c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine34x), 4966c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine33x), 4967c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine32x), 4968c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine31x), 4969c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine30x), 4970c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine29x), 4971c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine28x), 4972c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine27x), 4973c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine26x), 4974c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine25x), 4975c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine24ax), 4976c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine24x), 4977c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine23x), 4978c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine22x), 4979c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine21x), 4980c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine20x), 4981c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine19x), 4982c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine18x), 4983c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine17x), 4984c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine16x), 4985c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine15x), 4986c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine14x), 4987c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine13x), 4988c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine12x), 4989c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine11x), 4990c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine10ax), 4991c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine10x), 4992c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine9x), 4993c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine8x), 4994c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine7bx), 4995c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine7ax), 4996c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine7x), 4997c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine6x), 4998c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine5x), 4999c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine4x), 5000c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine3bx), 5001c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine3ax), 5002c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine3x), 5003c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine2x), 5004c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com TEST(testLine1x), 50057fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com TEST(testLine81), 50067fce0de0b9674ca6cc65ebbb40b924b615d9fc9ecaryclark@google.com TEST(testLine80), 50072ddff9388694263c7be9347de7eb768cd0847997caryclark@google.com TEST(testLine79), 50082ddff9388694263c7be9347de7eb768cd0847997caryclark@google.com TEST(testLine78), 50092ddff9388694263c7be9347de7eb768cd0847997caryclark@google.com TEST(testLine77), 50102ddff9388694263c7be9347de7eb768cd0847997caryclark@google.com TEST(testLine76), 50112ddff9388694263c7be9347de7eb768cd0847997caryclark@google.com TEST(testLine75), 50120c803d048c826fadfeed51207488867e17e0cc10caryclark@google.com TEST(testLine74), 5013200c211d34b11a4a988fc2549df3c17ae6875899caryclark@google.com TEST(testLine73), 5014200c211d34b11a4a988fc2549df3c17ae6875899caryclark@google.com TEST(testLine72), 5015534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com TEST(testLine71), 5016534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com TEST(testLine70), 5017534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com TEST(testLine69), 5018534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com TEST(testLine68h), 5019534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com TEST(testLine68g), 5020534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com TEST(testLine68f), 5021534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com TEST(testLine68e), 5022534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com TEST(testLine68d), 5023534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com TEST(testLine68c), 5024534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com TEST(testLine68b), 5025534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com TEST(testLine68a), 5026534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com TEST(testLine67), 502727c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com TEST(testLine66), 502827c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com TEST(testLine65), 502927c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com TEST(testLine64), 503027c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com TEST(testLine63), 503127c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com TEST(testLine62), 503227c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com TEST(testLine61), 503327c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com TEST(testLine60), 5034cc90505674cd845fcbebd7e0654c3ff04a2e4f25caryclark@google.com TEST(testLine59), 5035cc90505674cd845fcbebd7e0654c3ff04a2e4f25caryclark@google.com TEST(testLine58), 503618063441c23b334ab2ee7075c39ceeb8378e6fcfcaryclark@google.com TEST(testLine57), 503718063441c23b334ab2ee7075c39ceeb8378e6fcfcaryclark@google.com TEST(testLine56), 5038e21cb18c52fe82de3412b10fc078799ac35ca94bcaryclark@google.com TEST(testLine55), 5039e21cb18c52fe82de3412b10fc078799ac35ca94bcaryclark@google.com TEST(testLine54), 5040e21cb18c52fe82de3412b10fc078799ac35ca94bcaryclark@google.com TEST(testLine53), 5041e21cb18c52fe82de3412b10fc078799ac35ca94bcaryclark@google.com TEST(testLine52), 504247580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine51), 504347580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine50), 504447580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine49), 504547580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine48), 504647580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine47), 504747580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine46), 504847580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine45), 504947580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine44), 505047580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine43), 505147580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine42), 505247580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine41), 505347580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine40), 505447580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine38), 505547580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine37), 505647580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine36), 505747580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine35), 505847580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine34), 505947580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine33), 506047580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine32), 506147580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine31), 506247580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine30), 506347580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine29), 506447580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine28), 506547580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine27), 506647580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine26), 506747580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine25), 50688dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com TEST(testLine24a), 50698dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com TEST(testLine24), 507047580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine23), 507147580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine22), 507247580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine21), 507347580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine20), 507447580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine19), 507547580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine18), 507647580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine17), 507747580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine16), 507847580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine15), 507947580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine14), 508047580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine13), 508147580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine12), 508247580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine11), 508347580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine10a), 508447580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine10), 508547580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine9), 508647580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine8), 508747580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine7b), 508847580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine7a), 508947580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine7), 509047580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine6), 509147580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine5), 509247580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine4), 5093534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com TEST(testLine3b), 5094534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com TEST(testLine3a), 509547580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine3), 509647580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine2), 509747580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com TEST(testLine1), 5098af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com}; 5099af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com 510085ec74ca543b13739db1ad55dedd7bdfae4ab1a6caryclark@google.comstatic const size_t testCount = sizeof(tests) / sizeof(tests[0]); 510185ec74ca543b13739db1ad55dedd7bdfae4ab1a6caryclark@google.com 510273ca6243b31e225e9fd5b75a96cbc82d62557de6caryclark@google.com 5103534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.comstatic struct { 5104534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com void (*fun)(); 5105534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com const char* str; 5106534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com} subTests[] = { 51071304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp43d), 51081304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(quadOp9d), 51091304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp9d), 51101304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp1i), 51111304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp10d), 51121304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp11d), 51131304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp15d), 51141304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp18d), 51151304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp22d), 5116c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com TEST(cubicOp23d), 5117c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com TEST(cubicOp24d), 51181304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp28u), 51191304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp33i), 51201304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp36u), 51211304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com TEST(cubicOp40d), 5122534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com}; 5123534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com 5124534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.comstatic const size_t subTestCount = sizeof(subTests) / sizeof(subTests[0]); 5125534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com 5126c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.comstatic void (*firstSubTest)() = 0; 512757cff8dbdfb32b3fea426519a4fdc05f13be69d9caryclark@google.com 5128af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.comstatic bool skipAll = false; 5129c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.comstatic bool runSubTestsFirst = false; 5130ebf95ba28db75212a1313edc947ed68decc30273caryclark@google.comstatic bool runReverse = false; 51318f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.comstatic void (*stopTest)() = 0; 5132af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com 5133af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.comvoid SimplifyNew_Test() { 5134af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com if (skipAll) { 5135af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com return; 5136af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com } 513747580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com#ifdef SK_DEBUG 513827c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com gDebugMaxWindSum = 4; 513927c449af06cd1d05db441593d08b84f3530fba52caryclark@google.com gDebugMaxWindValue = 4; 514047580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com#endif 51411304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com size_t index; 5142c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com if (runSubTestsFirst && firstSubTest) { 514357cff8dbdfb32b3fea426519a4fdc05f13be69d9caryclark@google.com index = subTestCount - 1; 5144c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com while (index > 0 && subTests[index].fun != firstSubTest) { 514557cff8dbdfb32b3fea426519a4fdc05f13be69d9caryclark@google.com --index; 514657cff8dbdfb32b3fea426519a4fdc05f13be69d9caryclark@google.com } 514757cff8dbdfb32b3fea426519a4fdc05f13be69d9caryclark@google.com SkDebugf(" %s [%s]\n", __FUNCTION__, subTests[index].str); 514857cff8dbdfb32b3fea426519a4fdc05f13be69d9caryclark@google.com (*subTests[index].fun)(); 514957cff8dbdfb32b3fea426519a4fdc05f13be69d9caryclark@google.com } 5150c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com if (runSubTestsFirst) { 5151534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com index = subTestCount - 1; 5152534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com do { 5153534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com SkDebugf(" %s [%s]\n", __FUNCTION__, subTests[index].str); 5154534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com (*subTests[index].fun)(); 5155534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com } while (index--); 5156534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com } 5157534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com index = testCount - 1; 5158af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com if (firstTest) { 5159e21cb18c52fe82de3412b10fc078799ac35ca94bcaryclark@google.com while (index > 0 && tests[index].fun != firstTest) { 5160e21cb18c52fe82de3412b10fc078799ac35ca94bcaryclark@google.com --index; 5161af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com } 51621304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com #if FORCE_RELEASE == 0 51631304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com SkDebugf("<div id=\"%s\">\n", tests[index].str); 51641304bb25aa3b0baa61fc2e2900fabcef88801b59caryclark@google.com #endif 516524bec79d6f3d71ff97b50db72461a3892bd4f6b5caryclark@google.com SkDebugf(" %s [%s]\n", __FUNCTION__, tests[index].str); 516659823f7f3ba43c7c6bc1fa8c600b093ecb4236aacaryclark@google.com (*tests[index].fun)(); 5167af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com } 5168235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com index = runReverse ? testCount - 1 : 0; 5169235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com size_t last = runReverse ? 0 : testCount - 1; 5170af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com bool firstTestComplete = false; 5171e21cb18c52fe82de3412b10fc078799ac35ca94bcaryclark@google.com do { 5172e21cb18c52fe82de3412b10fc078799ac35ca94bcaryclark@google.com SkDebugf(" %s [%s]\n", __FUNCTION__, tests[index].str); 51738dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com (*tests[index].fun)(); 5174af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com firstTestComplete = true; 51758f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com if (tests[index].fun == stopTest) { 51768f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com SkDebugf("lastTest\n"); 51778f9f468b0555e95b8fc3cf4e6ee1f1fbf5492a1bcaryclark@google.com } 5178235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com if (index == last) { 5179235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com break; 5180235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com } 5181235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com index += runReverse ? -1 : 1; 5182235f56a92f6eb6accbb243e11b3c45e3798f38f2caryclark@google.com } while (true); 5183c83c70e911a38aea03db4af8dd9841d0d77bd129caryclark@google.com if (!runSubTestsFirst) { 518431143cf37fa38dc98f71c71e518ecc21c83b5e27caryclark@google.com index = subTestCount - 1; 518531143cf37fa38dc98f71c71e518ecc21c83b5e27caryclark@google.com do { 518631143cf37fa38dc98f71c71e518ecc21c83b5e27caryclark@google.com SkDebugf(" %s [%s]\n", __FUNCTION__, subTests[index].str); 518731143cf37fa38dc98f71c71e518ecc21c83b5e27caryclark@google.com (*subTests[index].fun)(); 518831143cf37fa38dc98f71c71e518ecc21c83b5e27caryclark@google.com } while (index--); 518931143cf37fa38dc98f71c71e518ecc21c83b5e27caryclark@google.com } 519047580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com#ifdef SK_DEBUG 519147580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com gDebugMaxWindSum = SK_MaxS32; 519247580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com gDebugMaxWindValue = SK_MaxS32; 519347580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com#endif 5194af46cff4ee6099cebf3aa395805748af7d193a31caryclark@google.com} 5195