blob: 09d6f9347eb7ba84067c47c3533055a221dd547b [file] [log] [blame]
caryclark@google.com2e7f4c82012-03-20 21:11:59 +00001#include "EdgeWalker_Test.h"
2#include "Intersection_Tests.h"
caryclark@google.com198e0542012-03-30 18:47:02 +00003#include "SkBitmap.h"
caryclark@google.com2e7f4c82012-03-20 21:11:59 +00004
5// edges that didn't match
6struct misMatch {
7 SkPath::FillType fType;
8 int a, b, c, d, e, f, g, h;
9} misMatches[] = {
10/*
11___________________________________|___________________________________
12_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx__|_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx__
13__xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx___|__xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx___
14__xxxxxxxxxxxxxxxxxxxxxxxxxxxx_____|__xxxxxxxxxxxxxxxxxxxxxxxxxxxx_____
15___xxxxxxxxxx__xxxxxxxxxxxxxx______|___xxxxxxxxxx__xxxxxxxxxxxxxx______
16___xxxxxxx______xxxxxxxxxxx________|___xxxxxxx______xxxxxxxxxxx________
17____xxx__________xxxxxxxxx_________|____xxx__________xxxxxxxxx_________
18____x_____________xxxxxxx__________|____x_____________xxxxxxx__________
19__xx_______________xxxx____________|__xxx______________xxxx____________
20___xx_______________xx_____________|___xx_______________xx_____________
21____________________x______________|____________________x______________
22______x____________xxx_____________|______x____________xxx_____________
23______xxx_________xxxxx____________|______xxx_________xxxxx____________
24_______xxxx_____xxxxxxxx___________|_______xxxx_____xxxxxxxx___________
25_______xxxxxx__xxxxxxxxx___________|_______xxxxxx__xxxxxxxxxx__________
26________xxxxx__xxxxxxxxxx__________|________xxxxx__xxxxxxxxxx__________
27________xxxx_____xxxxxxxxx_________|________xxxx_____xxxxxxxxx_________
28_________xxx_______xxxxxxxx________|_________xxx_______xxxxxxxx________
29_________xxx_________xxxxxxx_______|_________xxx_________xxxxxxx_______
30__________xx____________xxxxx______|__________xx____________xxxxx______
31__________xx______________xxxx_____|__________xx______________xxxx_____
32___________x________________xxx____|___________x________________xxx____
33___________x__________________xx___|___________x__________________xx___
34___________x____________________x__|___________x____________________x__
35___________________________________|___________________________________
36___________________________________|___________________________________
37*/
38{ SkPath::kWinding_FillType, 0, 3, 9, 13, 1, 2, 4, 15 },
39/*
40___________________________________|___________________________________
41_xxxxxxxxxxx_________xxxxxxxxxxxx__|_xxxxxxxxxxx_________xxxxxxxxxxxx__
42__xxxxxxxxxxx______xxxxxxxxxxxxx___|__xxxxxxxxxxx______xxxxxxxxxxxxx___
43__xxxxxxxxxxxx__xxxxxxxxxxxxxx_____|__xxxxxxxxxxxx__xxxxxxxxxxxxxx_____
44___xxxxxxxxxx__xxxxxxxxxxxxxx______|___xxxxxxxxxx__xxxxxxxxxxxxxx______
45___xxxxxxx______xxxxxxxxxxx________|___xxxxxxx______xxxxxxxxxxx________
46____xxx__________xxxxxxxxx_________|____xxx__________xxxxxxxxx_________
47____x_____________xxxxxxx__________|____x_____________xxxxxxx__________
48__xx_______________xxxx____________|__xxx______________xxxx____________
49___xx_______________xx_____________|___xx_______________xx_____________
50____________________x______________|____________________x______________
51______x____________xxx_____________|______x____________xxx_____________
52______xxx_________xxxxx____________|______xxx_________xxxxx____________
53_______xxxx_____xxxxxxxx___________|_______xxxx_____xxxxxxxx___________
54_______xxxxxx__xxxxxxxxx___________|_______xxxxxx__xxxxxxxxxx__________
55________xxxxx__xxxxxxxxxx__________|________xxxxx__xxxxxxxxxx__________
56________xxxx_____xxxxxxxxx_________|________xxxx_____xxxxxxxxx_________
57_________xxx_______xxxxxxxx________|_________xxx_______xxxxxxxx________
58_________xxx_________xxxxxxx_______|_________xxx_________xxxxxxx_______
59__________xx____________xxxxx______|__________xx____________xxxxx______
60__________xx______________xxxx_____|__________xx______________xxxx_____
61___________x________________xxx____|___________x________________xxx____
62___________x__________________xx___|___________x__________________xx___
63___________x____________________x__|___________x____________________x__
64___________________________________|___________________________________
65___________________________________|___________________________________
66*/
67{ SkPath::kEvenOdd_FillType, 0, 3, 9, 13, 1, 2, 4, 15 },
68/*
69___________________________________|___________________________________
70_x__________xxxxxxxxx______________|_x__________xxxxxxxxx______________
71__xxx________xxxxxx________________|__xxx________xxxxxx________________
72__xxxxxx______xx___________________|__xxxxxx______xx___________________
73___xxxxxxxx__xx____________________|___xxxxxxxx__xx____________________
74___xxxxxxx____xx___________________|___xxxxxxx____xx___________________
75____xxx_________x__________________|____xxx_________x__________________
76____x_____________x________________|____x_____________x________________
77__xx_______________xxx_____________|__xxx______________xxx_____________
78___xx_______________xx_____________|___xx_______________xx_____________
79____________________x______________|____________________x______________
80______x____________xxx_____________|______x____________xxx_____________
81______xxx_________xxxxx____________|______xxx_________xxxxx____________
82_______xxxx_____xxxxxxxx___________|_______xxxx_____xxxxxxxx___________
83_______xxxxxx__xxxxxxxxx___________|_______xxxxxx__xxxxxxxxxx__________
84________xxxxx__xxxxxxxxxx__________|________xxxxx__xxxxxxxxxx__________
85________xxxx_____xxxxxxxxx_________|________xxxx_____xxxxxxxxx_________
86_________xxx_______xxxxxxxx________|_________xxx_______xxxxxxxx________
87_________xxx_________xxxxxxx_______|_________xxx_________xxxxxxx_______
88__________xx____________xxxxx______|__________xx____________xxxxx______
89__________xx______________xxxx_____|__________xx______________xxxx_____
90___________x________________xxx____|___________x________________xxx____
91___________x__________________xx___|___________x__________________xx___
92___________x____________________x__|___________x____________________x__
93___________________________________|___________________________________
94___________________________________|___________________________________
95*/
96{ SkPath::kWinding_FillType, 0, 6, 9, 13, 1, 2, 4, 15 },
97/*
98___________________________________|___________________________________
99_x__________xxxxxxxxx______________|_x__________xxxxxxxxx______________
100__xxx________xxxxxx________________|__xxx________xxxxxx________________
101__xxxxxx______xx___________________|__xxxxxx______xx___________________
102___xxxxxxxx__xx____________________|___xxxxxxxx__xx____________________
103___xxxxxxx____xx___________________|___xxxxxxx____xx___________________
104____xxx_________x__________________|____xxx_________x__________________
105____x_____________x________________|____x_____________x________________
106__xx_______________xxx_____________|__xxx______________xxx_____________
107___xx_______________xx_____________|___xx_______________xx_____________
108____________________x______________|____________________x______________
109______x____________xxx_____________|______x____________xxx_____________
110______xxx_________xxxxx____________|______xxx_________xxxxx____________
111_______xxxx_____xxxxxxxx___________|_______xxxx_____xxxxxxxx___________
112_______xxxxxx__xxxxxxxxx___________|_______xxxxxx__xxxxxxxxxx__________
113________xxxxx__xxxxxxxxxx__________|________xxxxx__xxxxxxxxxx__________
114________xxxx_____xxxxxxxxx_________|________xxxx_____xxxxxxxxx_________
115_________xxx_______xxxxxxxx________|_________xxx_______xxxxxxxx________
116_________xxx_________xxxxxxx_______|_________xxx_________xxxxxxx_______
117__________xx____________xxxxx______|__________xx____________xxxxx______
118__________xx______________xxxx_____|__________xx______________xxxx_____
119___________x________________xxx____|___________x________________xxx____
120___________x__________________xx___|___________x__________________xx___
121___________x____________________x__|___________x____________________x__
122___________________________________|___________________________________
123___________________________________|___________________________________
124*/
125{ SkPath::kEvenOdd_FillType, 0, 6, 9, 13, 1, 2, 4, 15 },
126/*
127___________________________________|___________________________________
128_xx__________________x_____________|_xx__________________x_____________
129__xxxxx____________xx______________|__xxxxx____________xx______________
130__xxxxxxxxxx____xxxx_______________|__xxxxxxxxxx____xxxx_______________
131___xxxxxxxxxx___xxx________________|___xxxxxxxxxx___xxx________________
132___xxxxxxx_________x_______________|___xxxxxxx_________x_______________
133____xxx___________xxxxxx___________|____xxx___________xxxxxx___________
134____x____________xxxxxxxxxxx_______|____x____________xxxxxxxxxxx_______
135__xx____________xxxxxxxxxxxxxxxxx__|__xxx___________xxxxxxxxxxxxxxxxx__
136__xxx__________xxxxxxxxxxxxxxxx____|__xxx__________xxxxxxxxxxxxxxxx____
137___xx_________xxxxxxxxxxxx_________|___xx_________xxxxxxxxxxxx_________
138_____x_______xxxxxxxxx_____________|_____x_______xxxxxxxxx_____________
139____________xxxxxx_________________|____________xxxxxx_________________
140_______x___xxx_____________________|_______x___xxx_____________________
141_______xx__________________________|_______xx__________________________
142_____xxx_x_________________________|_____xxx_x_________________________
143_xxxxxxxxxxx_______________________|_xxxxxxxxxxx_______________________
144__xxxxx__xx________________________|__xxxxx__xx________________________
145____xx_____________________________|____xx_____________________________
146________xx_________________________|________xx_________________________
147_____x_xxx_________________________|_____x_xxx_________________________
148____x___xxx________________________|____x___xxx________________________
149___x_____xx________________________|___x_____xx________________________
150___________________________________|___________________________________
151___________________________________|___________________________________
152___________________________________|___________________________________
153*/
154{ SkPath::kWinding_FillType, 0, 7, 8, 13, 2, 4, 9, 12 },
155/*
156___________________________________|___________________________________
157_xx__________________x_____________|_xx__________________x_____________
158__xxxxx____________xx______________|__xxxxx____________xx______________
159__xxxxxxxxxx____xxxx_______________|__xxxxxxxxxx____xxxx_______________
160___xxxxxxxxxx___xxx________________|___xxxxxxxxxx___xxx________________
161___xxxxxxx_________x_______________|___xxxxxxx_________x_______________
162____xxx___________xxxxxx___________|____xxx___________xxxxxx___________
163____x____________xxxxxxxxxxx_______|____x____________xxxxxxxxxxx_______
164__xx____________xxxxxxxxxxxxxxxxx__|__xxx___________xxxxxxxxxxxxxxxxx__
165__xxx__________xxxxxxxxxxxxxxxx____|__xxx__________xxxxxxxxxxxxxxxx____
166___xx_________xxxxxxxxxxxx_________|___xx_________xxxxxxxxxxxx_________
167_____x_______xxxxxxxxx_____________|_____x_______xxxxxxxxx_____________
168____________xxxxxx_________________|____________xxxxxx_________________
169_______x___xxx_____________________|_______x___xxx_____________________
170_______xx__________________________|_______xx__________________________
171_____xxx_x_________________________|_____xxx_x_________________________
172_xxxxxxxxxxx_______________________|_xxxxxxxxxxx_______________________
173__xxxxx__xx________________________|__xxxxx__xx________________________
174____xx_____________________________|____xx_____________________________
175________xx_________________________|________xx_________________________
176_____x_xxx_________________________|_____x_xxx_________________________
177____x___xxx________________________|____x___xxx________________________
178___x_____xx________________________|___x_____xx________________________
179___________________________________|___________________________________
180___________________________________|___________________________________
181___________________________________|___________________________________
182*/
183{ SkPath::kEvenOdd_FillType, 0, 7, 8, 13, 2, 4, 9, 12 },
184/*
185___________________________________|___________________________________
186_x_________x_______________________|_x_________x_______________________
187__x_______xxx______________________|__x_______xxx______________________
188___x____xxxxxx_____________________|___x____xxxxxx_____________________
189____xx_xxxxxxxx____________________|____xx_xxxxxxxx____________________
190_____x_xxxxxxxxx___________________|_____x_xxxxxxxxx___________________
191____xx___xxxxxxxx__________________|____xx___xxxxxxxx__________________
192___xxxx___xxxxxxxx_________________|___xxxx___xxxxxxxx_________________
193_xxxxxxx___xxxxxxxx________________|_xxxxxxx____xxxxxxx________________
194__xxxxxxx____xxxxxxx_______________|__xxxxxxx____xxxxxxx_______________
195___xxxxxxx____xxxxxxx______________|___xxxxxxx____xxxxxxx______________
196_____xxxxxx_____xxxxxx_____________|_____xxxxxx_____xxxxxx_____________
197______xxxxxx_____xxxxxx____________|______xxxxxx_____xxxxxx____________
198________xxxxx______xxxxx___________|________xxxxx______xxxxx___________
199_________xxxxx______xxxx___________|_________xxxxx______xxxx___________
200__________xxxxx______xxxx__________|__________xxxxx______xxxx__________
201____________xxx________xxx_________|____________xxx________xxx_________
202_______________x___________xxxxx___|_______________x___________xxxxx___
203____________________________xxx____|____________________________xxx____
204__________________xx_______________|__________________xx_________x_____
205___________________xxxx_____xx_____|___________________xxxx_____xx_____
206____________________xxxxxx_xxxx____|____________________xxxxxx_xxxx____
207_____________________xxxx____xxx___|_____________________xxxx____xxx___
208______________________xx_______xx__|______________________xx_______xx__
209___________________________________|___________________________________
210___________________________________|___________________________________
211*/
212{ SkPath::kWinding_FillType, 0, 10, 11, 14, 1, 4, 9, 15 },
213/*
214___________________________________|___________________________________
215_x_________x_______________________|_x_________x_______________________
216__x_______xxx______________________|__x_______xxx______________________
217___x____xxxxxx_____________________|___x____xxxxxx_____________________
218____xx_xxxxxxxx____________________|____xx_xxxxxxxx____________________
219_____x_xxxxxxxxx___________________|_____x_xxxxxxxxx___________________
220____xx___xxxxxxxx__________________|____xx___xxxxxxxx__________________
221___xxxx___xxxxxxxx_________________|___xxxx___xxxxxxxx_________________
222_xxxxxxx___xxxxxxxx________________|_xxxxxxx____xxxxxxx________________
223__xxxxxxx____xxxxxxx_______________|__xxxxxxx____xxxxxxx_______________
224___xxxxxxx____xxxxxxx______________|___xxxxxxx____xxxxxxx______________
225_____xxxxxx_____xxxxxx_____________|_____xxxxxx_____xxxxxx_____________
226______xxxxxx_____xxxxxx____________|______xxxxxx_____xxxxxx____________
227________xxxxx______xxxxx___________|________xxxxx______xxxxx___________
228_________xxxxx______xxxx___________|_________xxxxx______xxxx___________
229__________xxxxx______xxxx__________|__________xxxxx______xxxx__________
230____________xxx________xxx_________|____________xxx________xxx_________
231_______________x___________xxxxx___|_______________x___________xxxxx___
232____________________________xxx____|____________________________xxx____
233__________________xx_______________|__________________xx_________x_____
234___________________xxxx_____xx_____|___________________xxxx_____xx_____
235____________________xxxxxx_xxxx____|____________________xxxxxx_xxxx____
236_____________________xxxx____xxx___|_____________________xxxx____xxx___
237______________________xx_______xx__|______________________xx_______xx__
238___________________________________|___________________________________
239___________________________________|___________________________________
240*/
241{ SkPath::kEvenOdd_FillType, 0, 10, 11, 14, 1, 4, 9, 15 },
242/*
243___________________________________|___________________________________
244_____________xxxxxxxxxxxxxxxxxxx___|_____________xxxxxxxxxxxxxxxxxxx___
245___________xx___xxxxxxxxxxx________|___________xx___xxxxxxxxxxx________
246___________xxx_____xxxx____________|___________xxx_____xxxx____________
247__________xxxxx____xxx_____________|__________xxxxx____xxx_____________
248__________xxxxx_xxxxxxxx___________|__________xxxxx_xxxxxxxxx__________
249_________xx______xxxxxxxxxx________|_________x_______xxxxxxxxxx________
250______xxx_________xxxxxxxxxxxx_____|______xxx_________xxxxxxxxxxxx_____
251__xxxxxx___________xxxxxxxxxxxxxx__|__xxxxxx___________xxxxxxxxxxxxxx__
252___xxxxx____________xxxxxxxxxxxx___|___xxxxx____________xxxxxxxxxxxx___
253_____xx______________xxxxxxxxx_____|_____xx______________xxxxxxxxx_____
254______________________xxxxxx_______|______________________xxxxxx_______
255_______xx______________xxx_________|_______xx______________xxx_________
256______xxxxx________________________|______xxxxx________________________
257______xxxxxxx_________xx___________|______xxxxxxx_________xxx__________
258_____xxxxxxxxxx____xxxxxx__________|_____xxxxxxxxxx____xxxxxx__________
259_____xxxxxxxxxxxxxxxxxxxxx_________|_____xxxxxxxxxxxxxxxxxxxxx_________
260____xxxxxxxxxxx____xxxxxxxx________|____xxxxxxxxxxx____xxxxxxxx________
261____xxxxxxxxx________xxxxxxx_______|____xxxxxxxxx________xxxxxxx_______
262___xxxxxxxx_____________xxxxx______|___xxxxxxxx_____________xxxxx______
263___xxxxxx_________________xxxx_____|___xxxxxx_________________xxxx_____
264__xxxxx_____________________xxx____|__xxxxx_____________________xxx____
265__xxx_________________________xx___|__xxx_________________________xx___
266_xx_____________________________x__|_xx_____________________________x__
267___________________________________|___________________________________
268___________________________________|___________________________________
269*/
270{ SkPath::kEvenOdd_FillType, 1, 1, 7, 12, 1, 3, 4, 15 },
271/*
272___________________________________|___________________________________
273_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx__|_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx__
274__xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx___|__xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx___
275__xxxxxxxxxxxxxxxxxxxxxxxxxxxx_____|__xxxxxxxxxxxxxxxxxxxxxxxxxxxx_____
276___xxxxxxxxxx__xxxxxxxxxxxxxx______|___xxxxxxxxxx__xxxxxxxxxxxxxx______
277___xxxxxxx______xxxxxxxxxxx________|___xxxxxxx______xxxxxxxxxxx________
278____xxx__________xxxxxxxxx_________|____xxx__________xxxxxxxxx_________
279____x_____________xxxxxxx__________|____x_____________xxxxxxx__________
280__xx_______________xxxx____________|__xxx______________xxxx____________
281___xx_______________xx_____________|___xx_______________xx_____________
282____________________x______________|____________________x______________
283______x____________xxx_____________|______x____________xxx_____________
284______xxx_________xxxxx____________|______xxx_________xxxxx____________
285_______xxxx_____xxxxxxxx___________|_______xxxx_____xxxxxxxx___________
286_______xxxxxx__xxxxxxxxx___________|_______xxxxxx__xxxxxxxxxx__________
287________xxxxx__xxxxxxxxxx__________|________xxxxx__xxxxxxxxxx__________
288________xxxx_____xxxxxxxxx_________|________xxxx_____xxxxxxxxx_________
289_________xxx_______xxxxxxxx________|_________xxx_______xxxxxxxx________
290_________xxx_________xxxxxxx_______|_________xxx_________xxxxxxx_______
291__________xx____________xxxxx______|__________xx____________xxxxx______
292__________xx______________xxxx_____|__________xx______________xxxx_____
293___________x________________xxx____|___________x________________xxx____
294___________x__________________xx___|___________x__________________xx___
295___________x____________________x__|___________x____________________x__
296___________________________________|___________________________________
297___________________________________|___________________________________
298*/
299{ SkPath::kWinding_FillType, 1, 2, 4, 15, 0, 3, 9, 13 },
300/*
301___________________________________|___________________________________
302_xxxxxxxxxxx_________xxxxxxxxxxxx__|_xxxxxxxxxxx_________xxxxxxxxxxxx__
303__xxxxxxxxxxx______xxxxxxxxxxxxx___|__xxxxxxxxxxx______xxxxxxxxxxxxx___
304__xxxxxxxxxxxx__xxxxxxxxxxxxxx_____|__xxxxxxxxxxxx__xxxxxxxxxxxxxx_____
305___xxxxxxxxxx__xxxxxxxxxxxxxx______|___xxxxxxxxxx__xxxxxxxxxxxxxx______
306___xxxxxxx______xxxxxxxxxxx________|___xxxxxxx______xxxxxxxxxxx________
307____xxx__________xxxxxxxxx_________|____xxx__________xxxxxxxxx_________
308____x_____________xxxxxxx__________|____x_____________xxxxxxx__________
309__xx_______________xxxx____________|__xxx______________xxxx____________
310___xx_______________xx_____________|___xx_______________xx_____________
311____________________x______________|____________________x______________
312______x____________xxx_____________|______x____________xxx_____________
313______xxx_________xxxxx____________|______xxx_________xxxxx____________
314_______xxxx_____xxxxxxxx___________|_______xxxx_____xxxxxxxx___________
315_______xxxxxx__xxxxxxxxx___________|_______xxxxxx__xxxxxxxxxx__________
316________xxxxx__xxxxxxxxxx__________|________xxxxx__xxxxxxxxxx__________
317________xxxx_____xxxxxxxxx_________|________xxxx_____xxxxxxxxx_________
318_________xxx_______xxxxxxxx________|_________xxx_______xxxxxxxx________
319_________xxx_________xxxxxxx_______|_________xxx_________xxxxxxx_______
320__________xx____________xxxxx______|__________xx____________xxxxx______
321__________xx______________xxxx_____|__________xx______________xxxx_____
322___________x________________xxx____|___________x________________xxx____
323___________x__________________xx___|___________x__________________xx___
324___________x____________________x__|___________x____________________x__
325___________________________________|___________________________________
326___________________________________|___________________________________
327*/
328{ SkPath::kEvenOdd_FillType, 1, 2, 4, 15, 0, 3, 9, 13 },
329/*
330___________________________________|___________________________________
331_x__________xxxxxxxxx______________|_x__________xxxxxxxxx______________
332__xxx________xxxxxx________________|__xxx________xxxxxx________________
333__xxxxxx______xx___________________|__xxxxxx______xx___________________
334___xxxxxxxx__xx____________________|___xxxxxxxx__xx____________________
335___xxxxxxx____xx___________________|___xxxxxxx____xx___________________
336____xxx_________x__________________|____xxx_________x__________________
337____x_____________x________________|____x_____________x________________
338__xx_______________xxx_____________|__xxx______________xxx_____________
339___xx_______________xx_____________|___xx_______________xx_____________
340____________________x______________|____________________x______________
341______x____________xxx_____________|______x____________xxx_____________
342______xxx_________xxxxx____________|______xxx_________xxxxx____________
343_______xxxx_____xxxxxxxx___________|_______xxxx_____xxxxxxxx___________
344_______xxxxxx__xxxxxxxxx___________|_______xxxxxx__xxxxxxxxxx__________
345________xxxxx__xxxxxxxxxx__________|________xxxxx__xxxxxxxxxx__________
346________xxxx_____xxxxxxxxx_________|________xxxx_____xxxxxxxxx_________
347_________xxx_______xxxxxxxx________|_________xxx_______xxxxxxxx________
348_________xxx_________xxxxxxx_______|_________xxx_________xxxxxxx_______
349__________xx____________xxxxx______|__________xx____________xxxxx______
350__________xx______________xxxx_____|__________xx______________xxxx_____
351___________x________________xxx____|___________x________________xxx____
352___________x__________________xx___|___________x__________________xx___
353___________x____________________x__|___________x____________________x__
354___________________________________|___________________________________
355___________________________________|___________________________________
356*/
357{ SkPath::kWinding_FillType, 1, 2, 4, 15, 0, 6, 9, 13 },
358/*
359___________________________________|___________________________________
360_x__________xxxxxxxxx______________|_x__________xxxxxxxxx______________
361__xxx________xxxxxx________________|__xxx________xxxxxx________________
362__xxxxxx______xx___________________|__xxxxxx______xx___________________
363___xxxxxxxx__xx____________________|___xxxxxxxx__xx____________________
364___xxxxxxx____xx___________________|___xxxxxxx____xx___________________
365____xxx_________x__________________|____xxx_________x__________________
366____x_____________x________________|____x_____________x________________
367__xx_______________xxx_____________|__xxx______________xxx_____________
368___xx_______________xx_____________|___xx_______________xx_____________
369____________________x______________|____________________x______________
370______x____________xxx_____________|______x____________xxx_____________
371______xxx_________xxxxx____________|______xxx_________xxxxx____________
372_______xxxx_____xxxxxxxx___________|_______xxxx_____xxxxxxxx___________
373_______xxxxxx__xxxxxxxxx___________|_______xxxxxx__xxxxxxxxxx__________
374________xxxxx__xxxxxxxxxx__________|________xxxxx__xxxxxxxxxx__________
375________xxxx_____xxxxxxxxx_________|________xxxx_____xxxxxxxxx_________
376_________xxx_______xxxxxxxx________|_________xxx_______xxxxxxxx________
377_________xxx_________xxxxxxx_______|_________xxx_________xxxxxxx_______
378__________xx____________xxxxx______|__________xx____________xxxxx______
379__________xx______________xxxx_____|__________xx______________xxxx_____
380___________x________________xxx____|___________x________________xxx____
381___________x__________________xx___|___________x__________________xx___
382___________x____________________x__|___________x____________________x__
383___________________________________|___________________________________
384___________________________________|___________________________________
385*/
386{ SkPath::kEvenOdd_FillType, 1, 2, 4, 15, 0, 6, 9, 13 },
387/*
388___________________________________|___________________________________
389_______________________xxxxxxxxx___|_______________________xxxxxxxxx___
390___________xx____________xx________|___________xx____________xx________
391___________xxx_________xxx_________|___________xxx_________xxx_________
392__________xxxxx____xxxxxxxxx_______|__________xxxxx____xxxxxxxxx_______
393__________xxxxx_xxxxxxxxxxxxx______|__________xxxxx_xxxxxxxxxxxxx______
394_________xx______xxxxxxxxxxxxx_____|_________x_______xxxxxxxxxxxxx_____
395______xxx_________xxxxxxxxxxxxxx___|______xxx_________xxxxxxxxxxxxxx___
396__xxxxxx___________xxxxxxxxxxxxxx__|__xxxxxx___________xxxxxxxxxxxxxx__
397___xxxxx____________xxxxxxxxxxxx___|___xxxxx____________xxxxxxxxxxxx___
398_____xx______________xxxxxxxxx_____|_____xx______________xxxxxxxxx_____
399______________________xxxxxx_______|______________________xxxxxx_______
400_______xx______________xxx_________|_______xx______________xxx_________
401______xxxxx________________________|______xxxxx________________________
402______xxxxxxx_________xx___________|______xxxxxxx_________xxx__________
403_____xxxxxxxxxx____xxxxxx__________|_____xxxxxxxxxx____xxxxxx__________
404_____xxxxxxxxxxxxxxxxxxxxx_________|_____xxxxxxxxxxxxxxxxxxxxx_________
405____xxxxxxxxxxx____xxxxxxxx________|____xxxxxxxxxxx____xxxxxxxx________
406____xxxxxxxxx________xxxxxxx_______|____xxxxxxxxx________xxxxxxx_______
407___xxxxxxxx_____________xxxxx______|___xxxxxxxx_____________xxxxx______
408___xxxxxx_________________xxxx_____|___xxxxxx_________________xxxx_____
409__xxxxx_____________________xxx____|__xxxxx_____________________xxx____
410__xxx_________________________xx___|__xxx_________________________xx___
411_xx_____________________________x__|_xx_____________________________x__
412___________________________________|___________________________________
413___________________________________|___________________________________
414*/
415{ SkPath::kEvenOdd_FillType, 1, 2, 7, 12, 1, 3, 4, 15 },
416/*
417___________________________________|___________________________________
418_____________xxxxxxxxxxxxxxxxxxx___|_____________xxxxxxxxxxxxxxxxxxx___
419___________xx___xxxxxxxxxxx________|___________xx___xxxxxxxxxxx________
420___________xxx_____xxxx____________|___________xxx_____xxxx____________
421__________xxxxx____xxx_____________|__________xxxxx____xxx_____________
422__________xxxxx_xxxxxxxx___________|__________xxxxx_xxxxxxxxx__________
423_________xx______xxxxxxxxxx________|_________x_______xxxxxxxxxx________
424______xxx_________xxxxxxxxxxxx_____|______xxx_________xxxxxxxxxxxx_____
425__xxxxxx___________xxxxxxxxxxxxxx__|__xxxxxx___________xxxxxxxxxxxxxx__
426___xxxxx____________xxxxxxxxxxxx___|___xxxxx____________xxxxxxxxxxxx___
427_____xx______________xxxxxxxxx_____|_____xx______________xxxxxxxxx_____
428______________________xxxxxx_______|______________________xxxxxx_______
429_______xx______________xxx_________|_______xx______________xxx_________
430______xxxxx________________________|______xxxxx________________________
431______xxxxxxx_________xx___________|______xxxxxxx_________xxx__________
432_____xxxxxxxxxx____xxxxxx__________|_____xxxxxxxxxx____xxxxxx__________
433_____xxxxxxxxxxxxxxxxxxxxx_________|_____xxxxxxxxxxxxxxxxxxxxx_________
434____xxxxxxxxxxx____xxxxxxxx________|____xxxxxxxxxxx____xxxxxxxx________
435____xxxxxxxxx________xxxxxxx_______|____xxxxxxxxx________xxxxxxx_______
436___xxxxxxxx_____________xxxxx______|___xxxxxxxx_____________xxxxx______
437___xxxxxx_________________xxxx_____|___xxxxxx_________________xxxx_____
438__xxxxx_____________________xxx____|__xxxxx_____________________xxx____
439__xxx_________________________xx___|__xxx_________________________xx___
440_xx_____________________________x__|_xx_____________________________x__
441___________________________________|___________________________________
442___________________________________|___________________________________
443*/
444{ SkPath::kEvenOdd_FillType, 1, 3, 4, 15, 1, 1, 7, 12 },
445/*
446___________________________________|___________________________________
447_______________________xxxxxxxxx___|_______________________xxxxxxxxx___
448___________xx____________xx________|___________xx____________xx________
449___________xxx_________xxx_________|___________xxx_________xxx_________
450__________xxxxx____xxxxxxxxx_______|__________xxxxx____xxxxxxxxx_______
451__________xxxxx_xxxxxxxxxxxxx______|__________xxxxx_xxxxxxxxxxxxx______
452_________xx______xxxxxxxxxxxxx_____|_________x_______xxxxxxxxxxxxx_____
453______xxx_________xxxxxxxxxxxxxx___|______xxx_________xxxxxxxxxxxxxx___
454__xxxxxx___________xxxxxxxxxxxxxx__|__xxxxxx___________xxxxxxxxxxxxxx__
455___xxxxx____________xxxxxxxxxxxx___|___xxxxx____________xxxxxxxxxxxx___
456_____xx______________xxxxxxxxx_____|_____xx______________xxxxxxxxx_____
457______________________xxxxxx_______|______________________xxxxxx_______
458_______xx______________xxx_________|_______xx______________xxx_________
459______xxxxx________________________|______xxxxx________________________
460______xxxxxxx_________xx___________|______xxxxxxx_________xxx__________
461_____xxxxxxxxxx____xxxxxx__________|_____xxxxxxxxxx____xxxxxx__________
462_____xxxxxxxxxxxxxxxxxxxxx_________|_____xxxxxxxxxxxxxxxxxxxxx_________
463____xxxxxxxxxxx____xxxxxxxx________|____xxxxxxxxxxx____xxxxxxxx________
464____xxxxxxxxx________xxxxxxx_______|____xxxxxxxxx________xxxxxxx_______
465___xxxxxxxx_____________xxxxx______|___xxxxxxxx_____________xxxxx______
466___xxxxxx_________________xxxx_____|___xxxxxx_________________xxxx_____
467__xxxxx_____________________xxx____|__xxxxx_____________________xxx____
468__xxx_________________________xx___|__xxx_________________________xx___
469_xx_____________________________x__|_xx_____________________________x__
470___________________________________|___________________________________
471___________________________________|___________________________________
472*/
473{ SkPath::kEvenOdd_FillType, 1, 3, 4, 15, 1, 2, 7, 12 },
474/*
475___________________________________|___________________________________
476________________________________xx_|________________________________xx_
477___________xx______________xxxxxxx_|___________xx______________xxxxxxx_
478___________xxx_________xxxxxxxxxxx_|___________xxx_________xxxxxxxxxxx_
479__________xxxxx____xxxxxxxxxxxxxxx_|__________xxxxx____xxxxxxxxxxxxxxx_
480__________xxxxx_xxxxxxxxxxxxxxxxxx_|__________xxxxx_xxxxxxxxxxxxxxxxxx_
481_________xx______xxxxxxxxxxxxxxxxx_|_________x_______xxxxxxxxxxxxxxxxx_
482______xxx_________xxxxxxxxxxxxxxxx_|______xxx_________xxxxxxxxxxxxxxxx_
483__xxxxxx___________xxxxxxxxxxxxxxx_|__xxxxxx___________xxxxxxxxxxxxxxx_
484___xxxxx____________xxxxxxxxxxxx___|___xxxxx____________xxxxxxxxxxxx___
485_____xx______________xxxxxxxxx_____|_____xx______________xxxxxxxxx_____
486______________________xxxxxx_______|______________________xxxxxx_______
487_______xx______________xxx_________|_______xx______________xxx_________
488______xxxxx________________________|______xxxxx________________________
489______xxxxxxx_________xx___________|______xxxxxxx_________xxx__________
490_____xxxxxxxxxx____xxxxxx__________|_____xxxxxxxxxx____xxxxxx__________
491_____xxxxxxxxxxxxxxxxxxxxx_________|_____xxxxxxxxxxxxxxxxxxxxx_________
492____xxxxxxxxxxx____xxxxxxxx________|____xxxxxxxxxxx____xxxxxxxx________
493____xxxxxxxxx________xxxxxxx_______|____xxxxxxxxx________xxxxxxx_______
494___xxxxxxxx_____________xxxxx______|___xxxxxxxx_____________xxxxx______
495___xxxxxx_________________xxxx_____|___xxxxxx_________________xxxx_____
496__xxxxx_____________________xxx____|__xxxxx_____________________xxx____
497__xxx_________________________xx___|__xxx_________________________xx___
498_xx_____________________________x__|_xx_____________________________x__
499___________________________________|___________________________________
500___________________________________|___________________________________
501*/
502{ SkPath::kEvenOdd_FillType, 1, 3, 4, 15, 1, 3, 7, 12 },
503/*
504___________________________________|___________________________________
505_____________xxxxxxxxxxxxxxxxxxx___|_____________xxxxxxxxxxxxxxxxxxx___
506___________xx___xxxxxxxxxxx________|___________xx___xxxxxxxxxxx________
507___________xxx_____xxxx____________|___________xxx_____xxxx____________
508__________xxxxx____xxx_____________|__________xxxxx____xxx_____________
509__________xxxxx_xxxxxxxx___________|__________xxxxx_xxxxxxxxx__________
510_________xx______xxxxxxxxxx________|_________x_______xxxxxxxxxx________
511______xxx_________xxxxxxxxxxxx_____|______xxx_________xxxxxxxxxxxx_____
512__xxxxxx___________xxxxxxxxxxxxxx__|__xxxxxx___________xxxxxxxxxxxxxx__
513___xxxxx____________xxxxxxxxxxxx___|___xxxxx____________xxxxxxxxxxxx___
514_____xx______________xxxxxxxxx_____|_____xx______________xxxxxxxxx_____
515______________________xxxxxx_______|______________________xxxxxx_______
516_______xx______________xxx_________|_______xx______________xxx_________
517______xxxxx________________________|______xxxxx________________________
518______xxxxxxx_________xx___________|______xxxxxxx_________xxx__________
519_____xxxxxxxxxx____xxxxxx__________|_____xxxxxxxxxx____xxxxxx__________
520_____xxxxxxxxxxxxxxxxxxxxx_________|_____xxxxxxxxxxxxxxxxxxxxx_________
521____xxxxxxxxxxx____xxxxxxxx________|____xxxxxxxxxxx____xxxxxxxx________
522____xxxxxxxxx________xxxxxxx_______|____xxxxxxxxx________xxxxxxx_______
523___xxxxxxxx_____________xxxxx______|___xxxxxxxx_____________xxxxx______
524___xxxxxx_________________xxxx_____|___xxxxxx_________________xxxx_____
525__xxxxx_____________________xxx____|__xxxxx_____________________xxx____
526__xxx_________________________xx___|__xxx_________________________xx___
527_xx_____________________________x__|_xx_____________________________x__
528___________________________________|___________________________________
529___________________________________|___________________________________
530*/
531{ SkPath::kEvenOdd_FillType, 1, 3, 4, 15, 1, 7, 7, 12 },
532/*
533___________________________________|___________________________________
534_____________xxxxxxxxxxxxxxxxxxx___|_____________xxxxxxxxxxxxxxxxxxx___
535___________xx___xxxxxxxxxxx________|___________xx___xxxxxxxxxxx________
536___________xxx_____xxxx____________|___________xxx_____xxxx____________
537__________xxxxx____xxx_____________|__________xxxxx____xxx_____________
538__________xxxxx_xxxxxxxx___________|__________xxxxx_xxxxxxxxx__________
539_________xx______xxxxxxxxxx________|_________x_______xxxxxxxxxx________
540______xxx_________xxxxxxxxxxxx_____|______xxx_________xxxxxxxxxxxx_____
541__xxxxxx___________xxxxxxxxxxxxxx__|__xxxxxx___________xxxxxxxxxxxxxx__
542___xxxxx____________xxxxxxxxxxxx___|___xxxxx____________xxxxxxxxxxxx___
543_____xx______________xxxxxxxxx_____|_____xx______________xxxxxxxxx_____
544______________________xxxxxx_______|______________________xxxxxx_______
545_______xx______________xxx_________|_______xx______________xxx_________
546______xxxxx________________________|______xxxxx________________________
547______xxxxxxx_________xx___________|______xxxxxxx_________xxx__________
548_____xxxxxxxxxx____xxxxxx__________|_____xxxxxxxxxx____xxxxxx__________
549_____xxxxxxxxxxxxxxxxxxxxx_________|_____xxxxxxxxxxxxxxxxxxxxx_________
550____xxxxxxxxxxx____xxxxxxxx________|____xxxxxxxxxxx____xxxxxxxx________
551____xxxxxxxxx________xxxxxxx_______|____xxxxxxxxx________xxxxxxx_______
552___xxxxxxxx_____________xxxxx______|___xxxxxxxx_____________xxxxx______
553___xxxxxx_________________xxxx_____|___xxxxxx_________________xxxx_____
554__xxxxx_____________________xxx____|__xxxxx_____________________xxx____
555__xxx_________________________xx___|__xxx_________________________xx___
556_xx_____________________________x__|_xx_____________________________x__
557___________________________________|___________________________________
558___________________________________|___________________________________
559*/
560{ SkPath::kEvenOdd_FillType, 1, 3, 4, 15, 1, 7, 12, 12 },
561/*
562___________________________________|___________________________________
563________________________________xx_|________________________________xx_
564___________xx______________xxxxxxx_|___________xx______________xxxxxxx_
565___________xxx_________xxxxxxxxxxx_|___________xxx_________xxxxxxxxxxx_
566__________xxxxx____xxxxxxxxxxxxxxx_|__________xxxxx____xxxxxxxxxxxxxxx_
567__________xxxxx_xxxxxxxxxxxxxxxxxx_|__________xxxxx_xxxxxxxxxxxxxxxxxx_
568_________xx______xxxxxxxxxxxxxxxxx_|_________x_______xxxxxxxxxxxxxxxxx_
569______xxx_________xxxxxxxxxxxxxxxx_|______xxx_________xxxxxxxxxxxxxxxx_
570__xxxxxx___________xxxxxxxxxxxxxxx_|__xxxxxx___________xxxxxxxxxxxxxxx_
571___xxxxx____________xxxxxxxxxxxx___|___xxxxx____________xxxxxxxxxxxx___
572_____xx______________xxxxxxxxx_____|_____xx______________xxxxxxxxx_____
573______________________xxxxxx_______|______________________xxxxxx_______
574_______xx______________xxx_________|_______xx______________xxx_________
575______xxxxx________________________|______xxxxx________________________
576______xxxxxxx_________xx___________|______xxxxxxx_________xxx__________
577_____xxxxxxxxxx____xxxxxx__________|_____xxxxxxxxxx____xxxxxx__________
578_____xxxxxxxxxxxxxxxxxxxxx_________|_____xxxxxxxxxxxxxxxxxxxxx_________
579____xxxxxxxxxxx____xxxxxxxx________|____xxxxxxxxxxx____xxxxxxxx________
580____xxxxxxxxx________xxxxxxx_______|____xxxxxxxxx________xxxxxxx_______
581___xxxxxxxx_____________xxxxx______|___xxxxxxxx_____________xxxxx______
582___xxxxxx_________________xxxx_____|___xxxxxx_________________xxxx_____
583__xxxxx_____________________xxx____|__xxxxx_____________________xxx____
584__xxx_________________________xx___|__xxx_________________________xx___
585_xx_____________________________x__|_xx_____________________________x__
586___________________________________|___________________________________
587___________________________________|___________________________________
588*/
589{ SkPath::kEvenOdd_FillType, 1, 3, 7, 12, 1, 3, 4, 15 },
590/*
591___________________________________|___________________________________
592____________xxxxxxxxxxxxxxxxxxxxx__|____________xxxxxxxxxxxxxxxxxxxxx__
593_____________xxxxxxxxxxxxxxxxxxx___|_____________xxxxxxxxxxxxxxxxxxx___
594______________xxxxxxxxx_xxxxxx_____|______________xxxxxxxxx_xxxxxx_____
595_______________xxxxxxxx_xxxxx______|_______________xxxxxxxx_xxxxx______
596________________xxxxxxx__xx________|________________xxxxxxx__xx________
597_________________xxxxxx__x_________|_________________xxxxxx__x_________
598__________________xxxxx__x_________|__________________xxxxx__x_________
599___________________xxxxxxx_________|___________________xxxxxxx_________
600____________________x_xxxxx________|____________________x_xxxxx________
601__________________xx_xxxxxx________|__________________xx_xxxxxx________
602_______________xxxx___xxxxxx_______|_______________xxxx___xxxxxx_______
603____________xxxxxx_____xxxxx_______|____________xxxxxx_____xxxxx_______
604_________xxxxxxx________xxxxx______|_________xxxxxxx________xxxxx______
605_______xxxxxxxx_________xxxxx______|_______xxxxxxxx__________xxxx______
606____xxxxxxxxx____________xxxxx_____|____xxxxxxxxx____________xxxxx_____
607_xxxxxxxxxxx______________xxxx_____|_xxxxxxxxxxx______________xxxx_____
608_____xxxxxx________________xxx_____|_____xxxxxx________________xxx_____
609____________________________xxx____|____________________________xxx____
610________xxxxx________________xx____|________xxxxx________________xx____
611______xxxxxxxxxxxx____________xx___|______xxxxxxxxxxxx____________xx___
612_____xxxxxxxxxxxxxxxxx_________x___|_____xxxxxxxxxxxxxxxxx_________x___
613____xxxxxxxxxxxxxxxxxxxxxx______x__|____xxxxxxxxxxxxxxxxxxxxxx______x__
614__xxxxxxxxxxxxxxxxxxxxxxxxxxxx_____|__xxxxxxxxxxxxxxxxxxxxxxxxxxxx_____
615___________________________________|___________________________________
616___________________________________|___________________________________
617*/
618{ SkPath::kEvenOdd_FillType, 1, 3, 12, 15, 2, 6, 8, 15 },
619/*
620___________________________________|___________________________________
621_x_________x_______________________|_x_________x_______________________
622__x_______xxx______________________|__x_______xxx______________________
623___x____xxxxxx_____________________|___x____xxxxxx_____________________
624____xx_xxxxxxxx____________________|____xx_xxxxxxxx____________________
625_____x_xxxxxxxxx___________________|_____x_xxxxxxxxx___________________
626____xx___xxxxxxxx__________________|____xx___xxxxxxxx__________________
627___xxxx___xxxxxxxx_________________|___xxxx___xxxxxxxx_________________
628_xxxxxxx___xxxxxxxx________________|_xxxxxxx____xxxxxxx________________
629__xxxxxxx____xxxxxxx_______________|__xxxxxxx____xxxxxxx_______________
630___xxxxxxx____xxxxxxx______________|___xxxxxxx____xxxxxxx______________
631_____xxxxxx_____xxxxxx_____________|_____xxxxxx_____xxxxxx_____________
632______xxxxxx_____xxxxxx____________|______xxxxxx_____xxxxxx____________
633________xxxxx______xxxxx___________|________xxxxx______xxxxx___________
634_________xxxxx______xxxx___________|_________xxxxx______xxxx___________
635__________xxxxx______xxxx__________|__________xxxxx______xxxx__________
636____________xxx________xxx_________|____________xxx________xxx_________
637_______________x___________xxxxx___|_______________x___________xxxxx___
638____________________________xxx____|____________________________xxx____
639__________________xx_______________|__________________xx_________x_____
640___________________xxxx_____xx_____|___________________xxxx_____xx_____
641____________________xxxxxx_xxxx____|____________________xxxxxx_xxxx____
642_____________________xxxx____xxx___|_____________________xxxx____xxx___
643______________________xx_______xx__|______________________xx_______xx__
644___________________________________|___________________________________
645___________________________________|___________________________________
646*/
647{ SkPath::kWinding_FillType, 1, 4, 9, 15, 0, 10, 11, 14 },
648/*
649___________________________________|___________________________________
650_x_________x_______________________|_x_________x_______________________
651__x_______xxx______________________|__x_______xxx______________________
652___x____xxxxxx_____________________|___x____xxxxxx_____________________
653____xx_xxxxxxxx____________________|____xx_xxxxxxxx____________________
654_____x_xxxxxxxxx___________________|_____x_xxxxxxxxx___________________
655____xx___xxxxxxxx__________________|____xx___xxxxxxxx__________________
656___xxxx___xxxxxxxx_________________|___xxxx___xxxxxxxx_________________
657_xxxxxxx___xxxxxxxx________________|_xxxxxxx____xxxxxxx________________
658__xxxxxxx____xxxxxxx_______________|__xxxxxxx____xxxxxxx_______________
659___xxxxxxx____xxxxxxx______________|___xxxxxxx____xxxxxxx______________
660_____xxxxxx_____xxxxxx_____________|_____xxxxxx_____xxxxxx_____________
661______xxxxxx_____xxxxxx____________|______xxxxxx_____xxxxxx____________
662________xxxxx______xxxxx___________|________xxxxx______xxxxx___________
663_________xxxxx______xxxx___________|_________xxxxx______xxxx___________
664__________xxxxx______xxxx__________|__________xxxxx______xxxx__________
665____________xxx________xxx_________|____________xxx________xxx_________
666_______________x___________xxxxx___|_______________x___________xxxxx___
667____________________________xxx____|____________________________xxx____
668__________________xx_______________|__________________xx_________x_____
669___________________xxxx_____xx_____|___________________xxxx_____xx_____
670____________________xxxxxx_xxxx____|____________________xxxxxx_xxxx____
671_____________________xxxx____xxx___|_____________________xxxx____xxx___
672______________________xx_______xx__|______________________xx_______xx__
673___________________________________|___________________________________
674___________________________________|___________________________________
675*/
676{ SkPath::kEvenOdd_FillType, 1, 4, 9, 15, 0, 10, 11, 14 },
677/*
678___________________________________|___________________________________
679____________x__________xxxxxxxxxx__|____________x__________xxxxxxxxxx__
680_____________x_________xxxxxxxxx___|_____________x_________xxxxxxxxx___
681______________x_________xxxxxx_____|______________x_________xxxxxx_____
682_______________xx_______xxxxx______|_______________xx_______xxxxx______
683________________xx_______xx________|________________xx_______xx________
684_________________xxx_____x_________|_________________xxx_____x_________
685__________________xxx____x_________|__________________xxx____x_________
686___________________xxx_xxx_________|___________________xxx_xxx_________
687____________________x_xxxxx________|____________________x_xxxxx________
688__________________xx_xxxxxx________|__________________xx_xxxxxx________
689_______________xxxx___xxxxxx_______|_______________xxxx___xxxxxx_______
690____________xxxxxx_____xxxxx_______|____________xxxxxx_____xxxxx_______
691_________xxxxxxx________xxxxx______|_________xxxxxxx________xxxxx______
692_______xxxxxxxx_________xxxxx______|_______xxxxxxxx__________xxxx______
693____xxxxxxxxx____________xxxxx_____|____xxxxxxxxx____________xxxxx_____
694_xxxxxxxxxxx______________xxxx_____|_xxxxxxxxxxx______________xxxx_____
695_____xxxxxx________________xxx_____|_____xxxxxx________________xxx_____
696____________________________xxx____|____________________________xxx____
697________xxxxx________________xx____|________xxxxx________________xx____
698______xxxxxxxxxxxx____________xx___|______xxxxxxxxxxxx____________xx___
699_____xxxxxxxxxxxxxxxxx_________x___|_____xxxxxxxxxxxxxxxxx_________x___
700____xxxxxxxxxxxxxxxxxxxxxx______x__|____xxxxxxxxxxxxxxxxxxxxxx______x__
701__xxxxxxxxxxxxxxxxxxxxxxxxxxxx_____|__xxxxxxxxxxxxxxxxxxxxxxxxxxxx_____
702___________________________________|___________________________________
703___________________________________|___________________________________
704*/
705{ SkPath::kEvenOdd_FillType, 1, 6, 8, 15, 2, 3, 12, 15 },
706/*
707___________________________________|___________________________________
708____________x________x_____________|____________x________x_____________
709_____________x_____xx______________|_____________x_____xx______________
710______________x_xxxx_______________|______________x_xxxx_______________
711_____________xx__xx________________|_____________xx__xx________________
712__________xxxxxx__x________________|__________xxxxxx__x________________
713_______xxxxxxxxxx_xx_______________|_______xxxxxxxxxx_xx_______________
714_____xxxxxxxxxxxx_xxx______________|_____xxxxxxxxxxxx_xxx______________
715__xxxxxxxxxxxxxx___xxx_____________|__xxxxxxxxxxxxxx___xxx_____________
716____xxxxxxxxxxx_____xx_____________|____xxxxxxxxxxx_____xx_____________
717________xxxxxx______x______________|________xxxxxx______x______________
718____________x______xxx_____________|____________x______xxx_____________
719____________xxxxx_xxxxx____________|____________xxxxx_xxxxx____________
720___________xxxxx_____xxx___________|___________xxxxx_____xxx___________
721__________xxxxx_________x__________|__________xxxxx____________________
722_________xxxx____________xxxx______|_________xxxx____________xxxx______
723________xxxx______________xxxxxxxx_|________xxxx______________xxxxxxxx_
724_______xxxxxxxx____________xxx_____|_______xxxxxxxx____________xxx_____
725______xxxxxxxxxxx________xxx_______|______xxxxxxxxxxx________xxx_______
726_____xxxxxxxxxxxxxxx_xxxxxxxx______|_____xxxxxxxxxxxxxxx_xxxxxxxx______
727_____xxxxxxxxxxxx______xxxxxxx_____|_____xxxxxxxxxxxx______xxxxxxx_____
728____xxxxxxxxx_____________xxxxx____|____xxxxxxxxx_____________xxxxx____
729___xxxxxx____________________xxx___|___xxxxxx____________________xxx___
730__xx___________________________xx__|__xx___________________________xx__
731___________________________________|___________________________________
732___________________________________|___________________________________
733*/
734{ SkPath::kWinding_FillType, 1, 6, 9, 15, 2, 4, 11, 12 },
735/*
736___________________________________|___________________________________
737____________x________x_____________|____________x________x_____________
738_____________x_____xx______________|_____________x_____xx______________
739______________x_xxxx_______________|______________x_xxxx_______________
740_____________xx__xx________________|_____________xx__xx________________
741__________xxxxxx__x________________|__________xxxxxx__x________________
742_______xxxxxxxxxx_xx_______________|_______xxxxxxxxxx_xx_______________
743_____xxxxxxxxxxxx_xxx______________|_____xxxxxxxxxxxx_xxx______________
744__xxxxxxxxxxxxxx___xxx_____________|__xxxxxxxxxxxxxx___xxx_____________
745____xxxxxxxxxxx_____xx_____________|____xxxxxxxxxxx_____xx_____________
746________xxxxxx______x______________|________xxxxxx______x______________
747____________x______xxx_____________|____________x______xxx_____________
748____________xxxxx_xxxxx____________|____________xxxxx_xxxxx____________
749___________xxxxx_____xxx___________|___________xxxxx_____xxx___________
750__________xxxxx_________x__________|__________xxxxx____________________
751_________xxxx____________xxxx______|_________xxxx____________xxxx______
752________xxxx______________xxxxxxxx_|________xxxx______________xxxxxxxx_
753_______xxxxxxxx____________xxx_____|_______xxxxxxxx____________xxx_____
754______xxxxxxxxxxx________xxx_______|______xxxxxxxxxxx________xxx_______
755_____xxxxxxxxxxxxxxx_xxxxxxxx______|_____xxxxxxxxxxxxxxx_xxxxxxxx______
756_____xxxxxxxxxxxx______xxxxxxx_____|_____xxxxxxxxxxxx______xxxxxxx_____
757____xxxxxxxxx_____________xxxxx____|____xxxxxxxxx_____________xxxxx____
758___xxxxxx____________________xxx___|___xxxxxx____________________xxx___
759__xx___________________________xx__|__xx___________________________xx__
760___________________________________|___________________________________
761___________________________________|___________________________________
762*/
763{ SkPath::kEvenOdd_FillType, 1, 6, 9, 15, 2, 4, 11, 12 },
764/*
765___________________________________|___________________________________
766_____________xxxxxxxxxxxxxxxxxxx___|_____________xxxxxxxxxxxxxxxxxxx___
767___________xx___xxxxxxxxxxx________|___________xx___xxxxxxxxxxx________
768___________xxx_____xxxx____________|___________xxx_____xxxx____________
769__________xxxxx____xxx_____________|__________xxxxx____xxx_____________
770__________xxxxx_xxxxxxxx___________|__________xxxxx_xxxxxxxxx__________
771_________xx______xxxxxxxxxx________|_________x_______xxxxxxxxxx________
772______xxx_________xxxxxxxxxxxx_____|______xxx_________xxxxxxxxxxxx_____
773__xxxxxx___________xxxxxxxxxxxxxx__|__xxxxxx___________xxxxxxxxxxxxxx__
774___xxxxx____________xxxxxxxxxxxx___|___xxxxx____________xxxxxxxxxxxx___
775_____xx______________xxxxxxxxx_____|_____xx______________xxxxxxxxx_____
776______________________xxxxxx_______|______________________xxxxxx_______
777_______xx______________xxx_________|_______xx______________xxx_________
778______xxxxx________________________|______xxxxx________________________
779______xxxxxxx_________xx___________|______xxxxxxx_________xxx__________
780_____xxxxxxxxxx____xxxxxx__________|_____xxxxxxxxxx____xxxxxx__________
781_____xxxxxxxxxxxxxxxxxxxxx_________|_____xxxxxxxxxxxxxxxxxxxxx_________
782____xxxxxxxxxxx____xxxxxxxx________|____xxxxxxxxxxx____xxxxxxxx________
783____xxxxxxxxx________xxxxxxx_______|____xxxxxxxxx________xxxxxxx_______
784___xxxxxxxx_____________xxxxx______|___xxxxxxxx_____________xxxxx______
785___xxxxxx_________________xxxx_____|___xxxxxx_________________xxxx_____
786__xxxxx_____________________xxx____|__xxxxx_____________________xxx____
787__xxx_________________________xx___|__xxx_________________________xx___
788_xx_____________________________x__|_xx_____________________________x__
789___________________________________|___________________________________
790___________________________________|___________________________________
791*/
792{ SkPath::kEvenOdd_FillType, 1, 7, 7, 12, 1, 3, 4, 15 },
793/*
794___________________________________|___________________________________
795____________x____________________x_|____________x____________________x_
796_____________xxx_________________x_|_____________xxx_________________x_
797______________xxxxx_____________xx_|______________xxxxx_____________xx_
798_______________xxxxxxx__________xx_|_______________xxxxxxx__________xx_
799________________xxxxxxxx________xx_|________________xxxxxxxx________xx_
800_________________xxxxxxxxxx____xxx_|_________________xxxxxxxxxx____xxx_
801__________________xxxxxxxxxxxx_xxx_|__________________xxxxxxxxxxxx_xxx_
802___________________xxxxxxxxxxx___x_|___________________xxxxxxxxxxx___x_
803____________________xxxxxxxxxx_xxx_|____________________xxxxxxxxxx_xxx_
804_____________________xxxxx___xxxxx_|_____________________xxxxx___xxxxx_
805_____________________________xxxxx_|_____________________________xxxxx_
806__________________xxxxx_____xxxxxx_|__________________xxxxx_____xxxxxx_
807______________xxxxxxxxxx____xxxxxx_|______________xxxxxxxxxx____xxxxxx_
808__________xxxxxxxxxxxxxx___xxxxxxx_|__________xxxxxxxxxxxxxx___xxxxxxx_
809_____xxxxxxxxxxxxxxxxxxxx__xxxxxxx_|_____xxxxxxxxxxxxxxxxxxxx__xxxxxxx_
810_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_|_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_
811_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___|_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___
812_________xxxxxxxxxxxxxxxx___xxx____|_________xxxxxxxxxxxxxxxx___xxx____
813_____________xxxxxxxxxxxx__________|_____________xxxxxxxxxxxx____x_____
814__________________xxxxxxx___xx_____|__________________xxxxxxx___xx_____
815______________________xx___xxxx____|______________________xx___xxxx____
816________________________x_xxxxxx___|________________________x_xxxxxx___
817_______________________x______xxx__|_______________________x______xxx__
818___________________________________|___________________________________
819___________________________________|___________________________________
820*/
821{ SkPath::kEvenOdd_FillType, 1, 7, 8, 15, 3, 3, 11, 14 },
822/*
823___________________________________|___________________________________
824____________x___________________x__|____________x___________________x__
825_____________xxx___________xxxxxx__|_____________xxx___________xxxxxx__
826______________xxxxx____xxxxxxxxx___|______________xxxxx____xxxxxxxxx___
827_______________xxxx___xxxxxxxxxx___|_______________xxxx___xxxxxxxxxx___
828_______________x________xxxxxxxx___|_______________x_________xxxxxxx___
829___________xxxxxx__________xxxx____|___________xxxxxx__________xxxx____
830______xxxxxxxxxxxx____________x____|______xxxxxxxxxxxx____________x____
831__xxxxxxxxxxxxxxxxx___________xxx__|__xxxxxxxxxxxxxxxxx___________xxx__
832____xxxxxxxxxxxxxxxx__________x____|____xxxxxxxxxxxxxxxx__________x____
833________xxxxxxxxxxxxx_____xxx______|________xxxxxxxxxxxxx_____xxx______
834____________xxxxxxxxxxxxxxxxx______|_____________xxxxxxxxxxxxxxxx______
835_________________xxxxxxxxxxx_______|_________________xxxxxxxxxxx_______
836______________xxxxxxxxxxxxxx_______|______________xxxxxxxxxxxxxx_______
837__________xxxxxxxxxxxxxx_xx________|__________xxxxxxxxxxxxxxxxx________
838_____xxxxxxxxxxxxxxxxxxxx__xx______|_____xxxxxxxxxxxxxxxxxxxx__xx______
839_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_|_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_
840_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___|_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___
841_________xxxxxxxxxxxxxxxx___xxx____|_________xxxxxxxxxxxxxxxx___xxx____
842_____________xxxxxxxxxxxx__________|_____________xxxxxxxxxxxx____x_____
843__________________xxxxxxx___xx_____|__________________xxxxxxx___xx_____
844______________________xx___xxxx____|______________________xx___xxxx____
845________________________x_xxxxxx___|________________________x_xxxxxx___
846_______________________x______xxx__|_______________________x______xxx__
847___________________________________|___________________________________
848___________________________________|___________________________________
849*/
850{ SkPath::kWinding_FillType, 1, 7, 8, 15, 3, 4, 11, 14 },
851/*
852___________________________________|___________________________________
853____________x___________________x__|____________x___________________x__
854_____________xxx___________xxxxxx__|_____________xxx___________xxxxxx__
855______________xxxxx____xxxxxxxxx___|______________xxxxx____xxxxxxxxx___
856_______________xxxx___xxxxxxxxxx___|_______________xxxx___xxxxxxxxxx___
857_______________x________xxxxxxxx___|_______________x_________xxxxxxx___
858___________xxxxxx__________xxxx____|___________xxxxxx__________xxxx____
859______xxxxxxxxxxxx____________x____|______xxxxxxxxxxxx____________x____
860__xxxxxxxxxxxxxxxxx___________xxx__|__xxxxxxxxxxxxxxxxx___________xxx__
861____xxxxxxxxxxxxxxxx__________x____|____xxxxxxxxxxxxxxxx__________x____
862________xxxxxxxxxxxxx_____xxx______|________xxxxxxxxxxxxx_____xxx______
863____________xxxxxxxxxxxxxxxxx______|_____________xxxxxxxxxxxxxxxx______
864_________________x_____xxxxx_______|_________________x_____xxxxx_______
865______________xxxxxxx___xxxx_______|______________xxxxxxx___xxxx_______
866__________xxxxxxxxxxxxxx_xx________|__________xxxxxxxxxxxxxxxxx________
867_____xxxxxxxxxxxxxxxxxxxx__xx______|_____xxxxxxxxxxxxxxxxxxxx__xx______
868_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_|_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_
869_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___|_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___
870_________xxxxxxxxxxxxxxxx___xxx____|_________xxxxxxxxxxxxxxxx___xxx____
871_____________xxxxxxxxxxxx__________|_____________xxxxxxxxxxxx____x_____
872__________________xxxxxxx___xx_____|__________________xxxxxxx___xx_____
873______________________xx___xxxx____|______________________xx___xxxx____
874________________________x_xxxxxx___|________________________x_xxxxxx___
875_______________________x______xxx__|_______________________x______xxx__
876___________________________________|___________________________________
877___________________________________|___________________________________
878*/
879{ SkPath::kEvenOdd_FillType, 1, 7, 8, 15, 3, 4, 11, 14 },
880/*
881___________________________________|___________________________________
882____________x______________________|____________x______________________
883_____________xxx________________x__|_____________xxx________________x__
884______________xxxxx___________xx___|______________xxxxx___________xx___
885_______________xxxxxxx_______xxx___|_______________xxxxxxx_______xxx___
886________________xxxxxxxx___xxxxx___|________________xxxxxxxxx__xxxxx___
887_________________xxxxxxxxx_xxxx____|_________________xxxxxxxxx_xxxx____
888__________________xxxxxxx_____x____|__________________xxxxxxx_____x____
889___________________xxxx_______xxx__|___________________xxxx_______xxx__
890____________________xxxx______x____|____________________xxxx______x____
891_____________________xxxx_xxx______|_____________________xxxx_xxx______
892___________________________xx______|___________________________xx______
893__________________xxxxx____________|__________________xxxxx____________
894______________xxxxxxxxxx____x______|______________xxxxxxxxxx____x______
895__________xxxxxxxxxxxxxx___xxxx____|__________xxxxxxxxxxxxxx___xxxx____
896_____xxxxxxxxxxxxxxxxxxxx__xxxxx___|_____xxxxxxxxxxxxxxxxxxxx__xxxxx___
897_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_|_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_
898_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___|_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___
899_________xxxxxxxxxxxxxxxx___xxx____|_________xxxxxxxxxxxxxxxx___xxx____
900_____________xxxxxxxxxxxx__________|_____________xxxxxxxxxxxx____x_____
901__________________xxxxxxx___xx_____|__________________xxxxxxx___xx_____
902______________________xx___xxxx____|______________________xx___xxxx____
903________________________x_xxxxxx___|________________________x_xxxxxx___
904_______________________x______xxx__|_______________________x______xxx__
905___________________________________|___________________________________
906___________________________________|___________________________________
907*/
908{ SkPath::kWinding_FillType, 1, 7, 8, 15, 3, 6, 11, 14 },
909/*
910___________________________________|___________________________________
911____________x______________________|____________x______________________
912_____________xxx________________x__|_____________xxx________________x__
913______________xxxxx___________xx___|______________xxxxx___________xx___
914_______________xxxxxxx_______xxx___|_______________xxxxxxx_______xxx___
915________________xxxxxxxx___xxxxx___|________________xxxxxxxxx__xxxxx___
916_________________xxxxxxxxx_xxxx____|_________________xxxxxxxxx_xxxx____
917__________________xxxxxxx_____x____|__________________xxxxxxx_____x____
918___________________xxxx_______xxx__|___________________xxxx_______xxx__
919____________________xxxx______x____|____________________xxxx______x____
920_____________________xxxx_xxx______|_____________________xxxx_xxx______
921___________________________xx______|___________________________xx______
922__________________xxxxx____________|__________________xxxxx____________
923______________xxxxxxxxxx____x______|______________xxxxxxxxxx____x______
924__________xxxxxxxxxxxxxx___xxxx____|__________xxxxxxxxxxxxxx___xxxx____
925_____xxxxxxxxxxxxxxxxxxxx__xxxxx___|_____xxxxxxxxxxxxxxxxxxxx__xxxxx___
926_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_|_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_
927_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___|_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___
928_________xxxxxxxxxxxxxxxx___xxx____|_________xxxxxxxxxxxxxxxx___xxx____
929_____________xxxxxxxxxxxx__________|_____________xxxxxxxxxxxx____x_____
930__________________xxxxxxx___xx_____|__________________xxxxxxx___xx_____
931______________________xx___xxxx____|______________________xx___xxxx____
932________________________x_xxxxxx___|________________________x_xxxxxx___
933_______________________x______xxx__|_______________________x______xxx__
934___________________________________|___________________________________
935___________________________________|___________________________________
936*/
937{ SkPath::kEvenOdd_FillType, 1, 7, 8, 15, 3, 6, 11, 14 },
938/*
939___________________________________|___________________________________
940____________x____________________x_|____________x____________________x_
941_____________xxx_________________x_|_____________xxx_________________x_
942______________xxxxx_____________xx_|______________xxxxx_____________xx_
943_______________xxxxxxx__________xx_|_______________xxxxxxx__________xx_
944________________xxxxxxxx________xx_|________________xxxxxxxx________xx_
945_________________xxxxxxxxxx____xxx_|_________________xxxxxxxxxx____xxx_
946__________________xxxxxxxxxxxx_xxx_|__________________xxxxxxxxxxxx_xxx_
947___________________xxxxxxxxxxx___x_|___________________xxxxxxxxxxx___x_
948____________________xxxxxxxxxx_xxx_|____________________xxxxxxxxxx_xxx_
949_____________________xxxxx___xxxxx_|_____________________xxxxx___xxxxx_
950_____________________________xxxxx_|_____________________________xxxxx_
951__________________xxxxx_____xxxxxx_|__________________xxxxx_____xxxxxx_
952______________xxxxxxxxxx____xxxxxx_|______________xxxxxxxxxx____xxxxxx_
953__________xxxxxxxxxxxxxx___xxxxxxx_|__________xxxxxxxxxxxxxx___xxxxxxx_
954_____xxxxxxxxxxxxxxxxxxxx__xxxxxxx_|_____xxxxxxxxxxxxxxxxxxxx__xxxxxxx_
955_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_|_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_
956_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___|_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___
957_________xxxxxxxxxxxxxxxx___xxx____|_________xxxxxxxxxxxxxxxx___xxx____
958_____________xxxxxxxxxxxx__________|_____________xxxxxxxxxxxx____x_____
959__________________xxxxxxx___xx_____|__________________xxxxxxx___xx_____
960______________________xx___xxxx____|______________________xx___xxxx____
961________________________x_xxxxxx___|________________________x_xxxxxx___
962_______________________x______xxx__|_______________________x______xxx__
963___________________________________|___________________________________
964___________________________________|___________________________________
965*/
966{ SkPath::kEvenOdd_FillType, 1, 7, 8, 15, 3, 7, 11, 14 },
967/*
968___________________________________|___________________________________
969____________x______________________|____________x______________________
970_____________xxx___________________|_____________xxx___________________
971______________xxxxx________________|______________xxxxx________________
972_______________xxxxxxx_________x___|_______________xxxxxxx_________x___
973________________xxxxxxxx______xx___|________________xxxxxxxxx_____xx___
974_________________xxxxxxxxxx___x____|_________________xxxxxxxxxx___x____
975__________________xxxxxxxxxxx_x____|__________________xxxxxxxxxxx_x____
976___________________xxxxxxxxx__xxx__|___________________xxxxxxxxx__xxx__
977____________________xxxxxxxx__x____|____________________xxxxxxxx__x____
978_____________________xxxxx_xx______|_____________________xxxxx_xx______
979__________________________xxx______|__________________________xxx______
980__________________xxxxx___xx_______|__________________xxxxx___xx_______
981______________xxxxxxxxxx_xxx_______|______________xxxxxxxxxx_xxx_______
982__________xxxxxxxxxxxxxxxxx________|__________xxxxxxxxxxxxxxxxx________
983_____xxxxxxxxxxxxxxxxxxxxxx________|_____xxxxxxxxxxxxxxxxxxxxxx________
984_xxxxxxxxxxxxxxxxxxxxxxxxx_________|_xxxxxxxxxxxxxxxxxxxxxxxxx_________
985_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___|_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___
986_________xxxxxxxxxxxxxxxx___xxx____|_________xxxxxxxxxxxxxxxx___xxx____
987_____________xxxxxxxxxxxx__________|_____________xxxxxxxxxxxx____x_____
988__________________xxxxxxx___xx_____|__________________xxxxxxx___xx_____
989______________________xx___xxxx____|______________________xx___xxxx____
990________________________x_xxxxxx___|________________________x_xxxxxx___
991_______________________x______xxx__|_______________________x______xxx__
992___________________________________|___________________________________
993___________________________________|___________________________________
994*/
995{ SkPath::kWinding_FillType, 1, 7, 8, 15, 3, 10, 11, 14 },
996/*
997___________________________________|___________________________________
998____________x______________________|____________x______________________
999_____________xxx___________________|_____________xxx___________________
1000______________xxxxx________________|______________xxxxx________________
1001_______________xxxxxxx_________x___|_______________xxxxxxx_________x___
1002________________xxxxxxxx______xx___|________________xxxxxxxxx_____xx___
1003_________________xxxxxxxxxx___x____|_________________xxxxxxxxxx___x____
1004__________________xxxxxxxxxxx_x____|__________________xxxxxxxxxxx_x____
1005___________________xxxxxxxxx__xxx__|___________________xxxxxxxxx__xxx__
1006____________________xxxxxxxx__x____|____________________xxxxxxxx__x____
1007_____________________xxxxx_xx______|_____________________xxxxx_xx______
1008__________________________xxx______|__________________________xxx______
1009__________________xxxxx___xx_______|__________________xxxxx___xx_______
1010______________xxxxxxxxxx_xxx_______|______________xxxxxxxxxx_xxx_______
1011__________xxxxxxxxxxxxxxxxx________|__________xxxxxxxxxxxxxx_xx________
1012_____xxxxxxxxxxxxxxxxxx__xx________|_____xxxxxxxxxxxxxxxxxx__xx________
1013_xxxxxxxxxxxxxxxxxxxxxx____________|_xxxxxxxxxxxxxxxxxxxxxx____________
1014_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___|_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___
1015_________xxxxxxxxxxxxxxxx___xxx____|_________xxxxxxxxxxxxxxxx___xxx____
1016_____________xxxxxxxxxxxx__________|_____________xxxxxxxxxxxx____x_____
1017__________________xxxxxxx___xx_____|__________________xxxxxxx___xx_____
1018______________________xx___xxxx____|______________________xx___xxxx____
1019________________________x_xxxxxx___|________________________x_xxxxxx___
1020_______________________x______xxx__|_______________________x______xxx__
1021___________________________________|___________________________________
1022___________________________________|___________________________________
1023*/
1024{ SkPath::kEvenOdd_FillType, 1, 7, 8, 15, 3, 10, 11, 14 },
1025/*
1026___________________________________|___________________________________
1027____________x____________________x_|____________x____________________x_
1028_____________xxx_________________x_|_____________xxx_________________x_
1029______________xxxxx_____________xx_|______________xxxxx_____________xx_
1030_______________xxxxxxx__________xx_|_______________xxxxxxx__________xx_
1031________________xxxxxxxx________xx_|________________xxxxxxxx________xx_
1032_________________xxxxxxxxxx____xxx_|_________________xxxxxxxxxx____xxx_
1033__________________xxxxxxxxxxxx_xxx_|__________________xxxxxxxxxxxx_xxx_
1034___________________xxxxxxxxxxx___x_|___________________xxxxxxxxxxx___x_
1035____________________xxxxxxxxxx_xxx_|____________________xxxxxxxxxx_xxx_
1036_____________________xxxxx___xxxxx_|_____________________xxxxx___xxxxx_
1037_____________________________xxxxx_|_____________________________xxxxx_
1038__________________xxxxx_____xxxxxx_|__________________xxxxx_____xxxxxx_
1039______________xxxxxxxxxx____xxxxxx_|______________xxxxxxxxxx____xxxxxx_
1040__________xxxxxxxxxxxxxx___xxxxxxx_|__________xxxxxxxxxxxxxx___xxxxxxx_
1041_____xxxxxxxxxxxxxxxxxxxx__xxxxxxx_|_____xxxxxxxxxxxxxxxxxxxx__xxxxxxx_
1042_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_|_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_
1043_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___|_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___
1044_________xxxxxxxxxxxxxxxx___xxx____|_________xxxxxxxxxxxxxxxx___xxx____
1045_____________xxxxxxxxxxxx__________|_____________xxxxxxxxxxxx____x_____
1046__________________xxxxxxx___xx_____|__________________xxxxxxx___xx_____
1047______________________xx___xxxx____|______________________xx___xxxx____
1048________________________x_xxxxxx___|________________________x_xxxxxx___
1049_______________________x______xxx__|_______________________x______xxx__
1050___________________________________|___________________________________
1051___________________________________|___________________________________
1052*/
1053{ SkPath::kEvenOdd_FillType, 1, 7, 8, 15, 3, 11, 11, 14 },
1054/*
1055___________________________________|___________________________________
1056____________x____________________x_|____________x____________________x_
1057_____________xxx_________________x_|_____________xxx_________________x_
1058______________xxxxx_____________xx_|______________xxxxx_____________xx_
1059_______________xxxxxxx__________xx_|_______________xxxxxxx__________xx_
1060________________xxxxxxxx________xx_|________________xxxxxxxx________xx_
1061_________________xxxxxxxxxx____xxx_|_________________xxxxxxxxxx____xxx_
1062__________________xxxxxxxxxxxx_xxx_|__________________xxxxxxxxxxxx_xxx_
1063___________________xxxxxxxxxxx___x_|___________________xxxxxxxxxxx___x_
1064____________________xxxxxxxxxx_xxx_|____________________xxxxxxxxxx_xxx_
1065_____________________xxxxx___xxxxx_|_____________________xxxxx___xxxxx_
1066_____________________________xxxxx_|_____________________________xxxxx_
1067__________________xxxxx_____xxxxxx_|__________________xxxxx_____xxxxxx_
1068______________xxxxxxxxxx____xxxxxx_|______________xxxxxxxxxx____xxxxxx_
1069__________xxxxxxxxxxxxxx___xxxxxxx_|__________xxxxxxxxxxxxxx___xxxxxxx_
1070_____xxxxxxxxxxxxxxxxxxxx__xxxxxxx_|_____xxxxxxxxxxxxxxxxxxxx__xxxxxxx_
1071_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_|_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_
1072_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___|_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___
1073_________xxxxxxxxxxxxxxxx___xxx____|_________xxxxxxxxxxxxxxxx___xxx____
1074_____________xxxxxxxxxxxx__________|_____________xxxxxxxxxxxx____x_____
1075__________________xxxxxxx___xx_____|__________________xxxxxxx___xx_____
1076______________________xx___xxxx____|______________________xx___xxxx____
1077________________________x_xxxxxx___|________________________x_xxxxxx___
1078_______________________x______xxx__|_______________________x______xxx__
1079___________________________________|___________________________________
1080___________________________________|___________________________________
1081*/
1082{ SkPath::kEvenOdd_FillType, 1, 7, 8, 15, 3, 11, 14, 14 },
1083/*
1084___________________________________|___________________________________
1085_____________xxxxxxxxxxxxxxxxxxx___|_____________xxxxxxxxxxxxxxxxxxx___
1086___________xx___xxxxxxxxxxx________|___________xx___xxxxxxxxxxx________
1087___________xxx_____xxxx____________|___________xxx_____xxxx____________
1088__________xxxxx____xxx_____________|__________xxxxx____xxx_____________
1089__________xxxxx_xxxxxxxx___________|__________xxxxx_xxxxxxxxx__________
1090_________xx______xxxxxxxxxx________|_________x_______xxxxxxxxxx________
1091______xxx_________xxxxxxxxxxxx_____|______xxx_________xxxxxxxxxxxx_____
1092__xxxxxx___________xxxxxxxxxxxxxx__|__xxxxxx___________xxxxxxxxxxxxxx__
1093___xxxxx____________xxxxxxxxxxxx___|___xxxxx____________xxxxxxxxxxxx___
1094_____xx______________xxxxxxxxx_____|_____xx______________xxxxxxxxx_____
1095______________________xxxxxx_______|______________________xxxxxx_______
1096_______xx______________xxx_________|_______xx______________xxx_________
1097______xxxxx________________________|______xxxxx________________________
1098______xxxxxxx_________xx___________|______xxxxxxx_________xxx__________
1099_____xxxxxxxxxx____xxxxxx__________|_____xxxxxxxxxx____xxxxxx__________
1100_____xxxxxxxxxxxxxxxxxxxxx_________|_____xxxxxxxxxxxxxxxxxxxxx_________
1101____xxxxxxxxxxx____xxxxxxxx________|____xxxxxxxxxxx____xxxxxxxx________
1102____xxxxxxxxx________xxxxxxx_______|____xxxxxxxxx________xxxxxxx_______
1103___xxxxxxxx_____________xxxxx______|___xxxxxxxx_____________xxxxx______
1104___xxxxxx_________________xxxx_____|___xxxxxx_________________xxxx_____
1105__xxxxx_____________________xxx____|__xxxxx_____________________xxx____
1106__xxx_________________________xx___|__xxx_________________________xx___
1107_xx_____________________________x__|_xx_____________________________x__
1108___________________________________|___________________________________
1109___________________________________|___________________________________
1110*/
1111{ SkPath::kEvenOdd_FillType, 1, 7, 12, 12, 1, 3, 4, 15 },
1112/*
1113___________________________________|___________________________________
1114____________x__________xxxxxxxxxx__|____________x__________xxxxxxxxxx__
1115_____________x_________xxxxxxxxx___|_____________x_________xxxxxxxxx___
1116______________x_________xxxxxx_____|______________x_________xxxxxx_____
1117_______________xx_______xxxxx______|_______________xx_______xxxxx______
1118________________xx_______xx________|________________xx_______xx________
1119_________________xxx_____x_________|_________________xxx_____x_________
1120__________________xxx____x_________|__________________xxx____x_________
1121___________________xxx_xxx_________|___________________xxx_xxx_________
1122____________________x_xxxxx________|____________________x_xxxxx________
1123__________________xx_xxxxxx________|__________________xx_xxxxxx________
1124_______________xxxx___xxxxxx_______|_______________xxxx___xxxxxx_______
1125____________xxxxxx_____xxxxx_______|____________xxxxxx_____xxxxx_______
1126_________xxxxxxx________xxxxx______|_________xxxxxxx________xxxxx______
1127_______xxxxxxxx_________xxxxx______|_______xxxxxxxx__________xxxx______
1128____xxxxxxxxx____________xxxxx_____|____xxxxxxxxx____________xxxxx_____
1129_xxxxxxxxxxx______________xxxx_____|_xxxxxxxxxxx______________xxxx_____
1130_____xxxxxx________________xxx_____|_____xxxxxx________________xxx_____
1131____________________________xxx____|____________________________xxx____
1132________xxxxx________________xx____|________xxxxx________________xx____
1133______xxxxxxxxxxxx____________xx___|______xxxxxxxxxxxx____________xx___
1134_____xxxxxxxxxxxxxxxxx_________x___|_____xxxxxxxxxxxxxxxxx_________x___
1135____xxxxxxxxxxxxxxxxxxxxxx______x__|____xxxxxxxxxxxxxxxxxxxxxx______x__
1136__xxxxxxxxxxxxxxxxxxxxxxxxxxxx_____|__xxxxxxxxxxxxxxxxxxxxxxxxxxxx_____
1137___________________________________|___________________________________
1138___________________________________|___________________________________
1139*/
1140{ SkPath::kEvenOdd_FillType, 2, 3, 12, 15, 1, 6, 8, 15 },
1141/*
1142___________________________________|___________________________________
1143_xx__________________x_____________|_xx__________________x_____________
1144__xxxxx____________xx______________|__xxxxx____________xx______________
1145__xxxxxxxxxx____xxxx_______________|__xxxxxxxxxx____xxxx_______________
1146___xxxxxxxxxx___xxx________________|___xxxxxxxxxx___xxx________________
1147___xxxxxxx_________x_______________|___xxxxxxx_________x_______________
1148____xxx___________xxxxxx___________|____xxx___________xxxxxx___________
1149____x____________xxxxxxxxxxx_______|____x____________xxxxxxxxxxx_______
1150__xx____________xxxxxxxxxxxxxxxxx__|__xxx___________xxxxxxxxxxxxxxxxx__
1151__xxx__________xxxxxxxxxxxxxxxx____|__xxx__________xxxxxxxxxxxxxxxx____
1152___xx_________xxxxxxxxxxxx_________|___xx_________xxxxxxxxxxxx_________
1153_____x_______xxxxxxxxx_____________|_____x_______xxxxxxxxx_____________
1154____________xxxxxx_________________|____________xxxxxx_________________
1155_______x___xxx_____________________|_______x___xxx_____________________
1156_______xx__________________________|_______xx__________________________
1157_____xxx_x_________________________|_____xxx_x_________________________
1158_xxxxxxxxxxx_______________________|_xxxxxxxxxxx_______________________
1159__xxxxx__xx________________________|__xxxxx__xx________________________
1160____xx_____________________________|____xx_____________________________
1161________xx_________________________|________xx_________________________
1162_____x_xxx_________________________|_____x_xxx_________________________
1163____x___xxx________________________|____x___xxx________________________
1164___x_____xx________________________|___x_____xx________________________
1165___________________________________|___________________________________
1166___________________________________|___________________________________
1167___________________________________|___________________________________
1168*/
1169{ SkPath::kWinding_FillType, 2, 4, 9, 12, 0, 7, 8, 13 },
1170/*
1171___________________________________|___________________________________
1172_xx__________________x_____________|_xx__________________x_____________
1173__xxxxx____________xx______________|__xxxxx____________xx______________
1174__xxxxxxxxxx____xxxx_______________|__xxxxxxxxxx____xxxx_______________
1175___xxxxxxxxxx___xxx________________|___xxxxxxxxxx___xxx________________
1176___xxxxxxx_________x_______________|___xxxxxxx_________x_______________
1177____xxx___________xxxxxx___________|____xxx___________xxxxxx___________
1178____x____________xxxxxxxxxxx_______|____x____________xxxxxxxxxxx_______
1179__xx____________xxxxxxxxxxxxxxxxx__|__xxx___________xxxxxxxxxxxxxxxxx__
1180__xxx__________xxxxxxxxxxxxxxxx____|__xxx__________xxxxxxxxxxxxxxxx____
1181___xx_________xxxxxxxxxxxx_________|___xx_________xxxxxxxxxxxx_________
1182_____x_______xxxxxxxxx_____________|_____x_______xxxxxxxxx_____________
1183____________xxxxxx_________________|____________xxxxxx_________________
1184_______x___xxx_____________________|_______x___xxx_____________________
1185_______xx__________________________|_______xx__________________________
1186_____xxx_x_________________________|_____xxx_x_________________________
1187_xxxxxxxxxxx_______________________|_xxxxxxxxxxx_______________________
1188__xxxxx__xx________________________|__xxxxx__xx________________________
1189____xx_____________________________|____xx_____________________________
1190________xx_________________________|________xx_________________________
1191_____x_xxx_________________________|_____x_xxx_________________________
1192____x___xxx________________________|____x___xxx________________________
1193___x_____xx________________________|___x_____xx________________________
1194___________________________________|___________________________________
1195___________________________________|___________________________________
1196___________________________________|___________________________________
1197*/
1198{ SkPath::kEvenOdd_FillType, 2, 4, 9, 12, 0, 7, 8, 13 },
1199/*
1200___________________________________|___________________________________
1201____________x________x_____________|____________x________x_____________
1202_____________x_____xx______________|_____________x_____xx______________
1203______________x_xxxx_______________|______________x_xxxx_______________
1204_____________xx__xx________________|_____________xx__xx________________
1205__________xxxxxx__x________________|__________xxxxxx__x________________
1206_______xxxxxxxxxx_xx_______________|_______xxxxxxxxxx_xx_______________
1207_____xxxxxxxxxxxx_xxx______________|_____xxxxxxxxxxxx_xxx______________
1208__xxxxxxxxxxxxxx___xxx_____________|__xxxxxxxxxxxxxx___xxx_____________
1209____xxxxxxxxxxx_____xx_____________|____xxxxxxxxxxx_____xx_____________
1210________xxxxxx______x______________|________xxxxxx______x______________
1211____________x______xxx_____________|____________x______xxx_____________
1212____________xxxxx_xxxxx____________|____________xxxxx_xxxxx____________
1213___________xxxxx_____xxx___________|___________xxxxx_____xxx___________
1214__________xxxxx_________x__________|__________xxxxx____________________
1215_________xxxx____________xxxx______|_________xxxx____________xxxx______
1216________xxxx______________xxxxxxxx_|________xxxx______________xxxxxxxx_
1217_______xxxxxxxx____________xxx_____|_______xxxxxxxx____________xxx_____
1218______xxxxxxxxxxx________xxx_______|______xxxxxxxxxxx________xxx_______
1219_____xxxxxxxxxxxxxxx_xxxxxxxx______|_____xxxxxxxxxxxxxxx_xxxxxxxx______
1220_____xxxxxxxxxxxx______xxxxxxx_____|_____xxxxxxxxxxxx______xxxxxxx_____
1221____xxxxxxxxx_____________xxxxx____|____xxxxxxxxx_____________xxxxx____
1222___xxxxxx____________________xxx___|___xxxxxx____________________xxx___
1223__xx___________________________xx__|__xx___________________________xx__
1224___________________________________|___________________________________
1225___________________________________|___________________________________
1226*/
1227{ SkPath::kWinding_FillType, 2, 4, 11, 12, 1, 6, 9, 15 },
1228/*
1229___________________________________|___________________________________
1230____________x________x_____________|____________x________x_____________
1231_____________x_____xx______________|_____________x_____xx______________
1232______________x_xxxx_______________|______________x_xxxx_______________
1233_____________xx__xx________________|_____________xx__xx________________
1234__________xxxxxx__x________________|__________xxxxxx__x________________
1235_______xxxxxxxxxx_xx_______________|_______xxxxxxxxxx_xx_______________
1236_____xxxxxxxxxxxx_xxx______________|_____xxxxxxxxxxxx_xxx______________
1237__xxxxxxxxxxxxxx___xxx_____________|__xxxxxxxxxxxxxx___xxx_____________
1238____xxxxxxxxxxx_____xx_____________|____xxxxxxxxxxx_____xx_____________
1239________xxxxxx______x______________|________xxxxxx______x______________
1240____________x______xxx_____________|____________x______xxx_____________
1241____________xxxxx_xxxxx____________|____________xxxxx_xxxxx____________
1242___________xxxxx_____xxx___________|___________xxxxx_____xxx___________
1243__________xxxxx_________x__________|__________xxxxx____________________
1244_________xxxx____________xxxx______|_________xxxx____________xxxx______
1245________xxxx______________xxxxxxxx_|________xxxx______________xxxxxxxx_
1246_______xxxxxxxx____________xxx_____|_______xxxxxxxx____________xxx_____
1247______xxxxxxxxxxx________xxx_______|______xxxxxxxxxxx________xxx_______
1248_____xxxxxxxxxxxxxxx_xxxxxxxx______|_____xxxxxxxxxxxxxxx_xxxxxxxx______
1249_____xxxxxxxxxxxx______xxxxxxx_____|_____xxxxxxxxxxxx______xxxxxxx_____
1250____xxxxxxxxx_____________xxxxx____|____xxxxxxxxx_____________xxxxx____
1251___xxxxxx____________________xxx___|___xxxxxx____________________xxx___
1252__xx___________________________xx__|__xx___________________________xx__
1253___________________________________|___________________________________
1254___________________________________|___________________________________
1255*/
1256{ SkPath::kEvenOdd_FillType, 2, 4, 11, 12, 1, 6, 9, 15 },
1257/*
1258___________________________________|___________________________________
1259____________xxxxxxxxxxxxxxxxxxxxx__|____________xxxxxxxxxxxxxxxxxxxxx__
1260_____________xxxxxxxxxxxxxxxxxxx___|_____________xxxxxxxxxxxxxxxxxxx___
1261______________xxxxxxxxx_xxxxxx_____|______________xxxxxxxxx_xxxxxx_____
1262_______________xxxxxxxx_xxxxx______|_______________xxxxxxxx_xxxxx______
1263________________xxxxxxx__xx________|________________xxxxxxx__xx________
1264_________________xxxxxx__x_________|_________________xxxxxx__x_________
1265__________________xxxxx__x_________|__________________xxxxx__x_________
1266___________________xxxxxxx_________|___________________xxxxxxx_________
1267____________________x_xxxxx________|____________________x_xxxxx________
1268__________________xx_xxxxxx________|__________________xx_xxxxxx________
1269_______________xxxx___xxxxxx_______|_______________xxxx___xxxxxx_______
1270____________xxxxxx_____xxxxx_______|____________xxxxxx_____xxxxx_______
1271_________xxxxxxx________xxxxx______|_________xxxxxxx________xxxxx______
1272_______xxxxxxxx_________xxxxx______|_______xxxxxxxx__________xxxx______
1273____xxxxxxxxx____________xxxxx_____|____xxxxxxxxx____________xxxxx_____
1274_xxxxxxxxxxx______________xxxx_____|_xxxxxxxxxxx______________xxxx_____
1275_____xxxxxx________________xxx_____|_____xxxxxx________________xxx_____
1276____________________________xxx____|____________________________xxx____
1277________xxxxx________________xx____|________xxxxx________________xx____
1278______xxxxxxxxxxxx____________xx___|______xxxxxxxxxxxx____________xx___
1279_____xxxxxxxxxxxxxxxxx_________x___|_____xxxxxxxxxxxxxxxxx_________x___
1280____xxxxxxxxxxxxxxxxxxxxxx______x__|____xxxxxxxxxxxxxxxxxxxxxx______x__
1281__xxxxxxxxxxxxxxxxxxxxxxxxxxxx_____|__xxxxxxxxxxxxxxxxxxxxxxxxxxxx_____
1282___________________________________|___________________________________
1283___________________________________|___________________________________
1284*/
1285{ SkPath::kEvenOdd_FillType, 2, 6, 8, 15, 1, 3, 12, 15 },
1286/*
1287___________________________________|___________________________________
1288____________x____________________x_|____________x____________________x_
1289_____________xxx_________________x_|_____________xxx_________________x_
1290______________xxxxx_____________xx_|______________xxxxx_____________xx_
1291_______________xxxxxxx__________xx_|_______________xxxxxxx__________xx_
1292________________xxxxxxxx________xx_|________________xxxxxxxx________xx_
1293_________________xxxxxxxxxx____xxx_|_________________xxxxxxxxxx____xxx_
1294__________________xxxxxxxxxxxx_xxx_|__________________xxxxxxxxxxxx_xxx_
1295___________________xxxxxxxxxxx___x_|___________________xxxxxxxxxxx___x_
1296____________________xxxxxxxxxx_xxx_|____________________xxxxxxxxxx_xxx_
1297_____________________xxxxx___xxxxx_|_____________________xxxxx___xxxxx_
1298_____________________________xxxxx_|_____________________________xxxxx_
1299__________________xxxxx_____xxxxxx_|__________________xxxxx_____xxxxxx_
1300______________xxxxxxxxxx____xxxxxx_|______________xxxxxxxxxx____xxxxxx_
1301__________xxxxxxxxxxxxxx___xxxxxxx_|__________xxxxxxxxxxxxxx___xxxxxxx_
1302_____xxxxxxxxxxxxxxxxxxxx__xxxxxxx_|_____xxxxxxxxxxxxxxxxxxxx__xxxxxxx_
1303_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_|_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_
1304_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___|_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___
1305_________xxxxxxxxxxxxxxxx___xxx____|_________xxxxxxxxxxxxxxxx___xxx____
1306_____________xxxxxxxxxxxx__________|_____________xxxxxxxxxxxx____x_____
1307__________________xxxxxxx___xx_____|__________________xxxxxxx___xx_____
1308______________________xx___xxxx____|______________________xx___xxxx____
1309________________________x_xxxxxx___|________________________x_xxxxxx___
1310_______________________x______xxx__|_______________________x______xxx__
1311___________________________________|___________________________________
1312___________________________________|___________________________________
1313*/
1314{ SkPath::kEvenOdd_FillType, 3, 3, 11, 14, 1, 7, 8, 15 },
1315/*
1316___________________________________|___________________________________
1317____________x___________________x__|____________x___________________x__
1318_____________xxx___________xxxxxx__|_____________xxx___________xxxxxx__
1319______________xxxxx____xxxxxxxxx___|______________xxxxx____xxxxxxxxx___
1320_______________xxxx___xxxxxxxxxx___|_______________xxxx___xxxxxxxxxx___
1321_______________x________xxxxxxxx___|_______________x_________xxxxxxx___
1322___________xxxxxx__________xxxx____|___________xxxxxx__________xxxx____
1323______xxxxxxxxxxxx____________x____|______xxxxxxxxxxxx____________x____
1324__xxxxxxxxxxxxxxxxx___________xxx__|__xxxxxxxxxxxxxxxxx___________xxx__
1325____xxxxxxxxxxxxxxxx__________x____|____xxxxxxxxxxxxxxxx__________x____
1326________xxxxxxxxxxxxx_____xxx______|________xxxxxxxxxxxxx_____xxx______
1327____________xxxxxxxxxxxxxxxxx______|_____________xxxxxxxxxxxxxxxx______
1328_________________xxxxxxxxxxx_______|_________________xxxxxxxxxxx_______
1329______________xxxxxxxxxxxxxx_______|______________xxxxxxxxxxxxxx_______
1330__________xxxxxxxxxxxxxx_xx________|__________xxxxxxxxxxxxxxxxx________
1331_____xxxxxxxxxxxxxxxxxxxx__xx______|_____xxxxxxxxxxxxxxxxxxxx__xx______
1332_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_|_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_
1333_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___|_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___
1334_________xxxxxxxxxxxxxxxx___xxx____|_________xxxxxxxxxxxxxxxx___xxx____
1335_____________xxxxxxxxxxxx__________|_____________xxxxxxxxxxxx____x_____
1336__________________xxxxxxx___xx_____|__________________xxxxxxx___xx_____
1337______________________xx___xxxx____|______________________xx___xxxx____
1338________________________x_xxxxxx___|________________________x_xxxxxx___
1339_______________________x______xxx__|_______________________x______xxx__
1340___________________________________|___________________________________
1341___________________________________|___________________________________
1342*/
1343{ SkPath::kWinding_FillType, 3, 4, 11, 14, 1, 7, 8, 15 },
1344/*
1345___________________________________|___________________________________
1346____________x___________________x__|____________x___________________x__
1347_____________xxx___________xxxxxx__|_____________xxx___________xxxxxx__
1348______________xxxxx____xxxxxxxxx___|______________xxxxx____xxxxxxxxx___
1349_______________xxxx___xxxxxxxxxx___|_______________xxxx___xxxxxxxxxx___
1350_______________x________xxxxxxxx___|_______________x_________xxxxxxx___
1351___________xxxxxx__________xxxx____|___________xxxxxx__________xxxx____
1352______xxxxxxxxxxxx____________x____|______xxxxxxxxxxxx____________x____
1353__xxxxxxxxxxxxxxxxx___________xxx__|__xxxxxxxxxxxxxxxxx___________xxx__
1354____xxxxxxxxxxxxxxxx__________x____|____xxxxxxxxxxxxxxxx__________x____
1355________xxxxxxxxxxxxx_____xxx______|________xxxxxxxxxxxxx_____xxx______
1356____________xxxxxxxxxxxxxxxxx______|_____________xxxxxxxxxxxxxxxx______
1357_________________x_____xxxxx_______|_________________x_____xxxxx_______
1358______________xxxxxxx___xxxx_______|______________xxxxxxx___xxxx_______
1359__________xxxxxxxxxxxxxx_xx________|__________xxxxxxxxxxxxxxxxx________
1360_____xxxxxxxxxxxxxxxxxxxx__xx______|_____xxxxxxxxxxxxxxxxxxxx__xx______
1361_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_|_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_
1362_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___|_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___
1363_________xxxxxxxxxxxxxxxx___xxx____|_________xxxxxxxxxxxxxxxx___xxx____
1364_____________xxxxxxxxxxxx__________|_____________xxxxxxxxxxxx____x_____
1365__________________xxxxxxx___xx_____|__________________xxxxxxx___xx_____
1366______________________xx___xxxx____|______________________xx___xxxx____
1367________________________x_xxxxxx___|________________________x_xxxxxx___
1368_______________________x______xxx__|_______________________x______xxx__
1369___________________________________|___________________________________
1370___________________________________|___________________________________
1371*/
1372{ SkPath::kEvenOdd_FillType, 3, 4, 11, 14, 1, 7, 8, 15 },
1373/*
1374___________________________________|___________________________________
1375____________x______________________|____________x______________________
1376_____________xxx________________x__|_____________xxx________________x__
1377______________xxxxx___________xx___|______________xxxxx___________xx___
1378_______________xxxxxxx_______xxx___|_______________xxxxxxx_______xxx___
1379________________xxxxxxxx___xxxxx___|________________xxxxxxxxx__xxxxx___
1380_________________xxxxxxxxx_xxxx____|_________________xxxxxxxxx_xxxx____
1381__________________xxxxxxx_____x____|__________________xxxxxxx_____x____
1382___________________xxxx_______xxx__|___________________xxxx_______xxx__
1383____________________xxxx______x____|____________________xxxx______x____
1384_____________________xxxx_xxx______|_____________________xxxx_xxx______
1385___________________________xx______|___________________________xx______
1386__________________xxxxx____________|__________________xxxxx____________
1387______________xxxxxxxxxx____x______|______________xxxxxxxxxx____x______
1388__________xxxxxxxxxxxxxx___xxxx____|__________xxxxxxxxxxxxxx___xxxx____
1389_____xxxxxxxxxxxxxxxxxxxx__xxxxx___|_____xxxxxxxxxxxxxxxxxxxx__xxxxx___
1390_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_|_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_
1391_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___|_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___
1392_________xxxxxxxxxxxxxxxx___xxx____|_________xxxxxxxxxxxxxxxx___xxx____
1393_____________xxxxxxxxxxxx__________|_____________xxxxxxxxxxxx____x_____
1394__________________xxxxxxx___xx_____|__________________xxxxxxx___xx_____
1395______________________xx___xxxx____|______________________xx___xxxx____
1396________________________x_xxxxxx___|________________________x_xxxxxx___
1397_______________________x______xxx__|_______________________x______xxx__
1398___________________________________|___________________________________
1399___________________________________|___________________________________
1400*/
1401{ SkPath::kWinding_FillType, 3, 6, 11, 14, 1, 7, 8, 15 },
1402/*
1403___________________________________|___________________________________
1404____________x______________________|____________x______________________
1405_____________xxx________________x__|_____________xxx________________x__
1406______________xxxxx___________xx___|______________xxxxx___________xx___
1407_______________xxxxxxx_______xxx___|_______________xxxxxxx_______xxx___
1408________________xxxxxxxx___xxxxx___|________________xxxxxxxxx__xxxxx___
1409_________________xxxxxxxxx_xxxx____|_________________xxxxxxxxx_xxxx____
1410__________________xxxxxxx_____x____|__________________xxxxxxx_____x____
1411___________________xxxx_______xxx__|___________________xxxx_______xxx__
1412____________________xxxx______x____|____________________xxxx______x____
1413_____________________xxxx_xxx______|_____________________xxxx_xxx______
1414___________________________xx______|___________________________xx______
1415__________________xxxxx____________|__________________xxxxx____________
1416______________xxxxxxxxxx____x______|______________xxxxxxxxxx____x______
1417__________xxxxxxxxxxxxxx___xxxx____|__________xxxxxxxxxxxxxx___xxxx____
1418_____xxxxxxxxxxxxxxxxxxxx__xxxxx___|_____xxxxxxxxxxxxxxxxxxxx__xxxxx___
1419_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_|_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_
1420_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___|_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___
1421_________xxxxxxxxxxxxxxxx___xxx____|_________xxxxxxxxxxxxxxxx___xxx____
1422_____________xxxxxxxxxxxx__________|_____________xxxxxxxxxxxx____x_____
1423__________________xxxxxxx___xx_____|__________________xxxxxxx___xx_____
1424______________________xx___xxxx____|______________________xx___xxxx____
1425________________________x_xxxxxx___|________________________x_xxxxxx___
1426_______________________x______xxx__|_______________________x______xxx__
1427___________________________________|___________________________________
1428___________________________________|___________________________________
1429*/
1430{ SkPath::kEvenOdd_FillType, 3, 6, 11, 14, 1, 7, 8, 15 },
1431/*
1432___________________________________|___________________________________
1433____________x____________________x_|____________x____________________x_
1434_____________xxx_________________x_|_____________xxx_________________x_
1435______________xxxxx_____________xx_|______________xxxxx_____________xx_
1436_______________xxxxxxx__________xx_|_______________xxxxxxx__________xx_
1437________________xxxxxxxx________xx_|________________xxxxxxxx________xx_
1438_________________xxxxxxxxxx____xxx_|_________________xxxxxxxxxx____xxx_
1439__________________xxxxxxxxxxxx_xxx_|__________________xxxxxxxxxxxx_xxx_
1440___________________xxxxxxxxxxx___x_|___________________xxxxxxxxxxx___x_
1441____________________xxxxxxxxxx_xxx_|____________________xxxxxxxxxx_xxx_
1442_____________________xxxxx___xxxxx_|_____________________xxxxx___xxxxx_
1443_____________________________xxxxx_|_____________________________xxxxx_
1444__________________xxxxx_____xxxxxx_|__________________xxxxx_____xxxxxx_
1445______________xxxxxxxxxx____xxxxxx_|______________xxxxxxxxxx____xxxxxx_
1446__________xxxxxxxxxxxxxx___xxxxxxx_|__________xxxxxxxxxxxxxx___xxxxxxx_
1447_____xxxxxxxxxxxxxxxxxxxx__xxxxxxx_|_____xxxxxxxxxxxxxxxxxxxx__xxxxxxx_
1448_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_|_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_
1449_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___|_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___
1450_________xxxxxxxxxxxxxxxx___xxx____|_________xxxxxxxxxxxxxxxx___xxx____
1451_____________xxxxxxxxxxxx__________|_____________xxxxxxxxxxxx____x_____
1452__________________xxxxxxx___xx_____|__________________xxxxxxx___xx_____
1453______________________xx___xxxx____|______________________xx___xxxx____
1454________________________x_xxxxxx___|________________________x_xxxxxx___
1455_______________________x______xxx__|_______________________x______xxx__
1456___________________________________|___________________________________
1457___________________________________|___________________________________
1458*/
1459{ SkPath::kEvenOdd_FillType, 3, 7, 11, 14, 1, 7, 8, 15 },
1460/*
1461___________________________________|___________________________________
1462____________x______________________|____________x______________________
1463_____________xxx___________________|_____________xxx___________________
1464______________xxxxx________________|______________xxxxx________________
1465_______________xxxxxxx_________x___|_______________xxxxxxx_________x___
1466________________xxxxxxxx______xx___|________________xxxxxxxxx_____xx___
1467_________________xxxxxxxxxx___x____|_________________xxxxxxxxxx___x____
1468__________________xxxxxxxxxxx_x____|__________________xxxxxxxxxxx_x____
1469___________________xxxxxxxxx__xxx__|___________________xxxxxxxxx__xxx__
1470____________________xxxxxxxx__x____|____________________xxxxxxxx__x____
1471_____________________xxxxx_xx______|_____________________xxxxx_xx______
1472__________________________xxx______|__________________________xxx______
1473__________________xxxxx___xx_______|__________________xxxxx___xx_______
1474______________xxxxxxxxxx_xxx_______|______________xxxxxxxxxx_xxx_______
1475__________xxxxxxxxxxxxxxxxx________|__________xxxxxxxxxxxxxxxxx________
1476_____xxxxxxxxxxxxxxxxxxxxxx________|_____xxxxxxxxxxxxxxxxxxxxxx________
1477_xxxxxxxxxxxxxxxxxxxxxxxxx_________|_xxxxxxxxxxxxxxxxxxxxxxxxx_________
1478_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___|_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___
1479_________xxxxxxxxxxxxxxxx___xxx____|_________xxxxxxxxxxxxxxxx___xxx____
1480_____________xxxxxxxxxxxx__________|_____________xxxxxxxxxxxx____x_____
1481__________________xxxxxxx___xx_____|__________________xxxxxxx___xx_____
1482______________________xx___xxxx____|______________________xx___xxxx____
1483________________________x_xxxxxx___|________________________x_xxxxxx___
1484_______________________x______xxx__|_______________________x______xxx__
1485___________________________________|___________________________________
1486___________________________________|___________________________________
1487*/
1488{ SkPath::kWinding_FillType, 3, 10, 11, 14, 1, 7, 8, 15 },
1489/*
1490___________________________________|___________________________________
1491____________x______________________|____________x______________________
1492_____________xxx___________________|_____________xxx___________________
1493______________xxxxx________________|______________xxxxx________________
1494_______________xxxxxxx_________x___|_______________xxxxxxx_________x___
1495________________xxxxxxxx______xx___|________________xxxxxxxxx_____xx___
1496_________________xxxxxxxxxx___x____|_________________xxxxxxxxxx___x____
1497__________________xxxxxxxxxxx_x____|__________________xxxxxxxxxxx_x____
1498___________________xxxxxxxxx__xxx__|___________________xxxxxxxxx__xxx__
1499____________________xxxxxxxx__x____|____________________xxxxxxxx__x____
1500_____________________xxxxx_xx______|_____________________xxxxx_xx______
1501__________________________xxx______|__________________________xxx______
1502__________________xxxxx___xx_______|__________________xxxxx___xx_______
1503______________xxxxxxxxxx_xxx_______|______________xxxxxxxxxx_xxx_______
1504__________xxxxxxxxxxxxxxxxx________|__________xxxxxxxxxxxxxx_xx________
1505_____xxxxxxxxxxxxxxxxxx__xx________|_____xxxxxxxxxxxxxxxxxx__xx________
1506_xxxxxxxxxxxxxxxxxxxxxx____________|_xxxxxxxxxxxxxxxxxxxxxx____________
1507_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___|_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___
1508_________xxxxxxxxxxxxxxxx___xxx____|_________xxxxxxxxxxxxxxxx___xxx____
1509_____________xxxxxxxxxxxx__________|_____________xxxxxxxxxxxx____x_____
1510__________________xxxxxxx___xx_____|__________________xxxxxxx___xx_____
1511______________________xx___xxxx____|______________________xx___xxxx____
1512________________________x_xxxxxx___|________________________x_xxxxxx___
1513_______________________x______xxx__|_______________________x______xxx__
1514___________________________________|___________________________________
1515___________________________________|___________________________________
1516*/
1517{ SkPath::kEvenOdd_FillType, 3, 10, 11, 14, 1, 7, 8, 15 },
1518/*
1519___________________________________|___________________________________
1520____________x____________________x_|____________x____________________x_
1521_____________xxx_________________x_|_____________xxx_________________x_
1522______________xxxxx_____________xx_|______________xxxxx_____________xx_
1523_______________xxxxxxx__________xx_|_______________xxxxxxx__________xx_
1524________________xxxxxxxx________xx_|________________xxxxxxxx________xx_
1525_________________xxxxxxxxxx____xxx_|_________________xxxxxxxxxx____xxx_
1526__________________xxxxxxxxxxxx_xxx_|__________________xxxxxxxxxxxx_xxx_
1527___________________xxxxxxxxxxx___x_|___________________xxxxxxxxxxx___x_
1528____________________xxxxxxxxxx_xxx_|____________________xxxxxxxxxx_xxx_
1529_____________________xxxxx___xxxxx_|_____________________xxxxx___xxxxx_
1530_____________________________xxxxx_|_____________________________xxxxx_
1531__________________xxxxx_____xxxxxx_|__________________xxxxx_____xxxxxx_
1532______________xxxxxxxxxx____xxxxxx_|______________xxxxxxxxxx____xxxxxx_
1533__________xxxxxxxxxxxxxx___xxxxxxx_|__________xxxxxxxxxxxxxx___xxxxxxx_
1534_____xxxxxxxxxxxxxxxxxxxx__xxxxxxx_|_____xxxxxxxxxxxxxxxxxxxx__xxxxxxx_
1535_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_|_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_
1536_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___|_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___
1537_________xxxxxxxxxxxxxxxx___xxx____|_________xxxxxxxxxxxxxxxx___xxx____
1538_____________xxxxxxxxxxxx__________|_____________xxxxxxxxxxxx____x_____
1539__________________xxxxxxx___xx_____|__________________xxxxxxx___xx_____
1540______________________xx___xxxx____|______________________xx___xxxx____
1541________________________x_xxxxxx___|________________________x_xxxxxx___
1542_______________________x______xxx__|_______________________x______xxx__
1543___________________________________|___________________________________
1544___________________________________|___________________________________
1545*/
1546{ SkPath::kEvenOdd_FillType, 3, 11, 11, 14, 1, 7, 8, 15 },
1547/*
1548___________________________________|___________________________________
1549____________x____________________x_|____________x____________________x_
1550_____________xxx_________________x_|_____________xxx_________________x_
1551______________xxxxx_____________xx_|______________xxxxx_____________xx_
1552_______________xxxxxxx__________xx_|_______________xxxxxxx__________xx_
1553________________xxxxxxxx________xx_|________________xxxxxxxx________xx_
1554_________________xxxxxxxxxx____xxx_|_________________xxxxxxxxxx____xxx_
1555__________________xxxxxxxxxxxx_xxx_|__________________xxxxxxxxxxxx_xxx_
1556___________________xxxxxxxxxxx___x_|___________________xxxxxxxxxxx___x_
1557____________________xxxxxxxxxx_xxx_|____________________xxxxxxxxxx_xxx_
1558_____________________xxxxx___xxxxx_|_____________________xxxxx___xxxxx_
1559_____________________________xxxxx_|_____________________________xxxxx_
1560__________________xxxxx_____xxxxxx_|__________________xxxxx_____xxxxxx_
1561______________xxxxxxxxxx____xxxxxx_|______________xxxxxxxxxx____xxxxxx_
1562__________xxxxxxxxxxxxxx___xxxxxxx_|__________xxxxxxxxxxxxxx___xxxxxxx_
1563_____xxxxxxxxxxxxxxxxxxxx__xxxxxxx_|_____xxxxxxxxxxxxxxxxxxxx__xxxxxxx_
1564_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_|_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_
1565_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___|_____xxxxxxxxxxxxxxxxxxxxx_xxxxx___
1566_________xxxxxxxxxxxxxxxx___xxx____|_________xxxxxxxxxxxxxxxx___xxx____
1567_____________xxxxxxxxxxxx__________|_____________xxxxxxxxxxxx____x_____
1568__________________xxxxxxx___xx_____|__________________xxxxxxx___xx_____
1569______________________xx___xxxx____|______________________xx___xxxx____
1570________________________x_xxxxxx___|________________________x_xxxxxx___
1571_______________________x______xxx__|_______________________x______xxx__
1572___________________________________|___________________________________
1573___________________________________|___________________________________
1574*/
1575{ SkPath::kEvenOdd_FillType, 3, 11, 14, 14, 1, 7, 8, 15 },
1576};
1577
1578size_t misMatchCount = sizeof(misMatches) / sizeof(misMatches[0]);
1579
1580void TestMismatches();
1581
1582void TestMismatches() {
caryclark@google.com198e0542012-03-30 18:47:02 +00001583 SkBitmap bitmap;
caryclark@google.com2e7f4c82012-03-20 21:11:59 +00001584 for (size_t index = 0; index < misMatchCount; ++index) {
1585 const misMatch& miss = misMatches[index];
1586 int ax = miss.a & 0x03;
1587 int ay = miss.a >> 2;
1588 int bx = miss.b & 0x03;
1589 int by = miss.b >> 2;
1590 int cx = miss.c & 0x03;
1591 int cy = miss.c >> 2;
1592 int dx = miss.d & 0x03;
1593 int dy = miss.d >> 2;
1594 int ex = miss.e & 0x03;
1595 int ey = miss.e >> 2;
1596 int fx = miss.f & 0x03;
1597 int fy = miss.f >> 2;
1598 int gx = miss.g & 0x03;
1599 int gy = miss.g >> 2;
1600 int hx = miss.h & 0x03;
1601 int hy = miss.h >> 2;
1602 SkPath path, out;
1603 path.setFillType(miss.fType);
1604 path.moveTo(ax, ay);
1605 path.lineTo(bx, by);
1606 path.lineTo(cx, cy);
1607 path.lineTo(dx, dy);
1608 path.close();
1609 path.moveTo(ex, ey);
1610 path.lineTo(fx, fy);
1611 path.lineTo(gx, gy);
1612 path.lineTo(hx, hy);
1613 path.close();
caryclark@google.com198e0542012-03-30 18:47:02 +00001614 testSimplify(path, true, out, bitmap);
caryclark@google.com2e7f4c82012-03-20 21:11:59 +00001615 }
1616}