OLD | NEW |
1 <html> | 1 <html> |
2 <head> | 2 <head> |
3 <div height="0" hidden="true"> | 3 <div height="0" hidden="true"> |
4 | 4 |
5 <div id="loops59i"> | 5 <div id="cubics45u_release"> |
6 SkDCubic::ComplexBreak | 6 seg=-1 {{{1, 3}, {1.84861219f, 5.54583645f}, {3.41736698f, 3.77081728f}, {4.4840
2119f, 2.56391668f}}} |
7 {{{1, 2}, {7.3333330154418945, 1.6666666269302368}, {-7.5, 2}, {0, 6}}}, | 7 seg=-1 {{{4.48402119f, 2.56391668f}, {4.67430639f, 2.34861207f}, {4.84861231f, 2
.15138769f}, {5, 2}}} |
8 inflectionsTs[0]=0.22755391 {{{5.6899562470344014, 1.5351137489099846}, {-0.5939
5324579271769, 2.2875990427916371}}}, | 8 seg=-1 {{{5, 2}, {1, 3}}} |
9 inflectionsTs[1]=0.134608255 {{{-1.7562572007939035, 2.2074401507711405}, {6.782
4037520473279, 1.6104549548102116}}}, | 9 op union |
10 maxCurvature[0]=0.184583395 {{{2.612965320628251, 1.8574526830515183}, {2.621321
0132912339, 1.9473982945574213}}}, | 10 seg=-1 {{{3, 4}, {2.61882615f, 4.38117361f}, {2.52823925f, 4.03588009f}, {2.7282
393f, 3.51794004f}}} |
11 maxCurvature[1]=0.764880287 {{{-0.3599143419711428, -3.5772335093952985}, {-3.94
35828934112642, 11.072562225478482}}}, | 11 seg=-1 {{{2.7282393f, 3.51794004f}, {3.05293441f, 2.67707705f}, {4.14352131f, 1.
38117373f}, {6, 2}}} |
12 maxCurvature[2]=0.500240448 {{{11.93379531543474, -0.87734455447864557}, {-11.81
4505983496176, 5.6289081865421942}}}, | 12 seg=-1 {{{6, 2}, {3, 4}}} |
13 seg=1 {{{0, 6}, {0.293506175f, 4.82597542f}, {1.04645705f, 3.96781874f}, {1.5888
1736f, 3.34967732f}}} | 13 debugShowCubicIntersection wtTs[0]=1 {{{3,4}, {2.61882615,4.38117361}, {2.528239
25,4.03588009}, {2.7282393,3.51794004}}} {{2.7282393,3.51794004}} wnTs[0]=0 {{{2
.7282393,3.51794004}, {3.05293441,2.67707705}, {4.14352131,1.38117373}, {6,2}}} |
14 seg=2 {{{1.58881736f, 3.34967732f}, {2.89432383f, 1.86175978f}, {2.97965813f, 1.
76450205f}, {-7.5f, 2}}} | 14 debugShowCubicLineIntersection wtTs[0]=0 {{{3,4}, {2.61882615,4.38117361}, {2.52
823925,4.03588009}, {2.7282393,3.51794004}}} {{3,4}} wnTs[0]=1 {{{6,2}, {3,4}}} |
15 seg=3 {{{-7.5f, 2}, {0, 6}}} | 15 debugShowCubicLineIntersection wtTs[0]=1 {{{2.7282393,3.51794004}, {3.05293441,2
.67707705}, {4.14352131,1.38117373}, {6,2}}} {{6,2}} wnTs[0]=0 {{{6,2}, {3,4}}} |
16 op sect | 16 debugShowCubicIntersection wtTs[0]=0 {{{3,4}, {2.61882615,4.38117361}, {2.528239
25,4.03588009}, {2.7282393,3.51794004}}} {{3,4}} wtTs[1]=0.322114632 {{2.7221069
3,4.16072464}} wnTs[0]=0.589197 {{{1,3}, {1.84861219,5.54583645}, {3.41736698,3.
77081728}, {4.48402119,2.56391668}}} wnTs[1]=0.516302729 |
17 seg=4 {{{1, 2}, {2.16902828f, 1.93847215f}, {2.61688614f, 1.89965844f}, {2.61714
315f, 1.90242553f}}} | 17 SkOpSegment::addT insert t=0.589197265 segID=-1 spanID=-1 |
18 seg=5 {{{2.61714315f, 1.90242553f}, {2.61827874f, 1.91464937f}, {-6.11562443f, 2
.7383337f}, {0, 6}}} | 18 SkOpSegment::addT insert t=0.322114632 segID=-1 spanID=-1 |
19 seg=6 {{{0, 6}, {1, 2}}} | 19 SkOpSegment::addT insert t=0.516302729 segID=-1 spanID=-1 |
20 debugShowCubicIntersection wtTs[0]=1 {{{0,6}, {0.293506175,4.82597542}, {1.04645
705,3.96781874}, {1.58881736,3.34967732}}} {{1.58881736,3.34967732}} wnTs[0]=0 {
{{1.58881736,3.34967732}, {2.89432383,1.86175978}, {2.97965813,1.76450205}, {-7.
5,2}}} | 20 debugShowCubicIntersection no intersect {{{2.7282393,3.51794004}, {3.05293441,2.
67707705}, {4.14352131,1.38117373}, {6,2}}} {{{1,3}, {1.84861219,5.54583645}, {3
.41736698,3.77081728}, {4.48402119,2.56391668}}} |
21 debugShowCubicLineIntersection wtTs[0]=0 {{{0,6}, {0.293506175,4.82597542}, {1.0
4645705,3.96781874}, {1.58881736,3.34967732}}} {{0,6}} wnTs[0]=1 {{{-7.5,2}, {0,
6}}} | 21 debugShowCubicIntersection no intersect {{{2.7282393,3.51794004}, {3.05293441,2.
67707705}, {4.14352131,1.38117373}, {6,2}}} {{{4.48402119,2.56391668}, {4.674306
39,2.34861207}, {4.84861231,2.15138769}, {5,2}}} |
22 debugShowCubicLineIntersection wtTs[0]=1 {{{1.58881736,3.34967732}, {2.89432383,
1.86175978}, {2.97965813,1.76450205}, {-7.5,2}}} {{-7.5,2}} wnTs[0]=0 {{{-7.5,2}
, {0,6}}} | 22 debugShowCubicLineIntersection wtTs[0]=0.437504678 {{{2.7282393,3.51794004}, {3.
05293441,2.67707705}, {4.14352131,1.38117373}, {6,2}}} {{3.5942049,2.35144877}}
wnTs[0]=0.351449 {{{5,2}, {1,3}}} |
23 debugShowCubicIntersection wtTs[0]=0 {{{0,6}, {0.293506175,4.82597542}, {1.04645
705,3.96781874}, {1.58881736,3.34967732}}} {{0,6}} wnTs[0]=1 {{{2.61714315,1.902
42553}, {2.61827874,1.91464937}, {-6.11562443,2.7383337}, {0,6}}} | 23 SkOpSegment::addT insert t=0.437504678 segID=-1 spanID=-1 |
24 debugShowCubicLineIntersection wtTs[0]=0 {{{0,6}, {0.293506175,4.82597542}, {1.0
4645705,3.96781874}, {1.58881736,3.34967732}}} {{0,6}} wnTs[0]=0 {{{0,6}, {1,2}}
} | 24 SkOpSegment::addT insert t=0.351448746 segID=-1 spanID=-1 |
25 debugShowCubicIntersection wtTs[0]=0.538493706 {{{1.58881736,3.34967732}, {2.894
32383,1.86175978}, {2.97965813,1.76450205}, {-7.5,2}}} {{1.17718506,1.99055469}}
wnTs[0]=0.0521913 {{{1,2}, {2.16902828,1.93847215}, {2.61688614,1.89965844}, {2
.61714315,1.90242553}}} | 25 debugShowCubicLineIntersection wtTs[0]=0.589250227 {{{1,3}, {1.84861219,5.545836
45}, {3.41736698,3.77081728}, {4.48402119,2.56391668}}} {{3.00020218,3.99986529}
} wnTs[0]=0.999933 {{{6,2}, {3,4}}} |
26 SkOpSegment::addT insert t=0.538493706 segID=2 spanID=13 | 26 SkOpSegment::addT insert t=0.999932596 segID=-1 spanID=-1 |
27 SkOpSegment::addT insert t=0.0521913275 segID=4 spanID=14 | 27 SkOpSegment::addT insert t=0.589250227 segID=-1 spanID=-1 |
28 debugShowCubicIntersection wtTs[0]=0.481912781 {{{1.58881736,3.34967732}, {2.894
32383,1.86175978}, {2.97965813,1.76450205}, {-7.5,2}}} {{1.58025348,2.04903817}}
wnTs[0]=0.222514 {{{2.61714315,1.90242553}, {2.61827874,1.91464937}, {-6.115624
43,2.7383337}, {0,6}}} | 28 debugShowCubicLineIntersection no intersect {{{4.48402119,2.56391668}, {4.674306
39,2.34861207}, {4.84861231,2.15138769}, {5,2}}} {{{6,2}, {3,4}}} |
29 SkOpSegment::addT insert t=0.481912781 segID=2 spanID=15 | 29 debugShowLineIntersection no intersect {{{6,2}, {3,4}}} {{{5,2}, {1,3}}} |
30 SkOpSegment::addT insert t=0.222514468 segID=5 spanID=16 | 30 debugShowCubicIntersection wtTs[0]=1 {{{1,3}, {1.84861219,5.54583645}, {3.417366
98,3.77081728}, {4.48402119,2.56391668}}} {{4.48402119,2.56391668}} wnTs[0]=0 {{
{4.48402119,2.56391668}, {4.67430639,2.34861207}, {4.84861231,2.15138769}, {5,2}
}} |
31 debugShowCubicLineIntersection no intersect {{{1.58881736,3.34967732}, {2.894323
83,1.86175978}, {2.97965813,1.76450205}, {-7.5,2}}} {{{0,6}, {1,2}}} | 31 debugShowCubicLineIntersection wtTs[0]=0 {{{1,3}, {1.84861219,5.54583645}, {3.41
736698,3.77081728}, {4.48402119,2.56391668}}} {{1,3}} wnTs[0]=1 {{{5,2}, {1,3}}} |
32 debugShowCubicLineIntersection wtTs[0]=1 {{{2.61714315,1.90242553}, {2.61827874,
1.91464937}, {-6.11562443,2.7383337}, {0,6}}} {{0,6}} wnTs[0]=1 {{{-7.5,2}, {0,6
}}} | 32 debugShowCubicLineIntersection wtTs[0]=1 {{{4.48402119,2.56391668}, {4.67430639,
2.34861207}, {4.84861231,2.15138769}, {5,2}}} {{5,2}} wnTs[0]=0 {{{5,2}, {1,3}}} |
33 debugShowLineIntersection wtTs[0]=1 {{{-7.5,2}, {0,6}}} {{0,6}} wnTs[0]=0 {{{0,6
}, {1,2}}} | 33 SkOpSegment::sortAngles [-1] tStart=0 [-1] |
34 debugShowCubicIntersection wtTs[0]=1 {{{1,2}, {2.16902828,1.93847215}, {2.616886
14,1.89965844}, {2.61714315,1.90242553}}} {{2.61714315,1.90242553}} wnTs[0]=0 {{
{2.61714315,1.90242553}, {2.61827874,1.91464937}, {-6.11562443,2.7383337}, {0,6}
}} | 34 SkOpAngle::after [-1/-1] 18/17 tStart=0 tEnd=0.322114632 < [-1/-1] 1/1 tStart=0.
589197265 tEnd=0.589250227 < [-1/-1] 17/17 tStart=0.589197265 tEnd=0.516302729
T 5 |
35 debugShowCubicLineIntersection wtTs[0]=0 {{{1,2}, {2.16902828,1.93847215}, {2.61
688614,1.89965844}, {2.61714315,1.90242553}}} {{1,2}} wnTs[0]=1 {{{0,6}, {1,2}}} | 35 SkOpAngle::afterPart {{{3,4}, {2.87721833,4.1227816}, {2.78458726,4.17018661}, {
2.72210693,4.16072464}}} id=-1 |
36 debugShowCubicLineIntersection wtTs[0]=0.293280033 {{{2.61714315,1.90242553}, {2
.61827874,1.91464937}, {-6.11562443,2.7383337}, {0,6}}} {{0.959100008,2.16359997
}} wtTs[1]=1 {{0,6}} wnTs[0]=0.9591 {{{0,6}, {1,2}}} wnTs[1]=0 | 36 SkOpAngle::afterPart {{{3,4}, {3.00006742,3.99995506}, {3.00013476,3.99991025},
{3.00020218,3.99986529}}} id=-1 |
37 SkOpSegment::addT insert t=0.293280033 segID=5 spanID=17 | 37 SkOpAngle::afterPart {{{3,4}, {2.9072112,4.06185918}, {2.81442231,4.11606536}, {
2.72210693,4.16072464}}} id=-1 |
38 SkOpSegment::addT insert t=0.959100004 segID=6 spanID=18 | 38 SkOpAngle::after [-1/-1] 18/17 tStart=0 tEnd=0.322114632 < [-1/-1] 1/1 tStart=1
tEnd=0.999932596 < [-1/-1] 1/1 tStart=0.589197265 tEnd=0.589250227 F 11 |
39 SkOpSegment::sortAngles [1] tStart=0 [1] | 39 SkOpAngle::afterPart {{{3,4}, {2.87721833,4.1227816}, {2.78458726,4.17018661}, {
2.72210693,4.16072464}}} id=-1 |
40 SkOpAngle::after [1/1] 5/5 tStart=0 tEnd=1 < [5/13] 13/5 tStart=1 tEnd=0.2932800
33 < [6/14] 5/5 tStart=0 tEnd=0.959100004 F 7 | 40 SkOpAngle::afterPart {{{3,4}, {3.00020218,3.99986529}}} id=-1 |
41 SkOpAngle::afterPart {{{0,6}, {0.293506175,4.82597542}, {1.04645705,3.96781874},
{1.58881736,3.34967732}}} id=1 | 41 SkOpAngle::afterPart {{{3,4}, {3.00006742,3.99995506}, {3.00013476,3.99991025},
{3.00020218,3.99986529}}} id=-1 |
42 SkOpAngle::afterPart {{{0,6}, {-4.3220339,3.6949153}, {-1.22742501,2.60748826},
{0.959100008,2.16359997}}} id=5 | 42 SkOpAngle::after [-1/-1] 1/1 tStart=0.589197265 tEnd=0.589250227 < [-1/-1] 1/1 t
Start=1 tEnd=0.999932596 < [-1/-1] 17/17 tStart=0.589197265 tEnd=0.516302729 T
12 |
43 SkOpAngle::afterPart {{{0,6}, {0.959100008,2.16359997}}} id=6 | 43 SkOpAngle::afterPart {{{3,4}, {3.00006742,3.99995506}, {3.00013476,3.99991025},
{3.00020218,3.99986529}}} id=-1 |
44 SkOpAngle::after [1/1] 5/5 tStart=0 tEnd=1 < [3/6] 13/13 tStart=1 tEnd=0 < [6/14
] 5/5 tStart=0 tEnd=0.959100004 F 5 | 44 SkOpAngle::afterPart {{{3,4}, {3.00020218,3.99986529}}} id=-1 |
45 SkOpAngle::afterPart {{{0,6}, {0.293506175,4.82597542}, {1.04645705,3.96781874},
{1.58881736,3.34967732}}} id=1 | 45 SkOpAngle::afterPart {{{3,4}, {2.9072112,4.06185918}, {2.81442231,4.11606536}, {
2.72210693,4.16072464}}} id=-1 |
46 SkOpAngle::afterPart {{{0,6}, {-7.5,2}}} id=3 | 46 SkOpSegment::sortAngles [-1] tStart=0.322114632 [-1] |
47 SkOpAngle::afterPart {{{0,6}, {0.959100008,2.16359997}}} id=6 | 47 SkOpAngle::after [-1/-1] 29/1 tStart=0.322114632 tEnd=0 < [-1/-1] 17/13 tStart=0
.516302729 tEnd=0 < [-1/-1] 13/5 tStart=0.322114632 tEnd=1 F 11 |
48 SkOpAngle::after [6/14] 5/5 tStart=0 tEnd=0.959100004 < [3/6] 13/13 tStart=1 tEn
d=0 < [5/13] 13/5 tStart=1 tEnd=0.293280033 F 7 | 48 SkOpAngle::afterPart {{{2.72210693,4.16072464}, {2.78458726,4.17018661}, {2.8772
1833,4.1227816}, {3,4}}} id=-1 |
49 SkOpAngle::afterPart {{{0,6}, {0.959100008,2.16359997}}} id=6 | 49 SkOpAngle::afterPart {{{2.72210693,4.16072464}, {2.06824885,4.47704065}, {1.4381
4079,4.31442231}, {1,3}}} id=-1 |
50 SkOpAngle::afterPart {{{0,6}, {-7.5,2}}} id=3 | 50 SkOpAngle::afterPart {{{2.72210693,4.16072464}, {2.59061803,4.14081206}, {2.5926
6219,3.86904402}, {2.7282393,3.51794004}}} id=-1 |
51 SkOpAngle::afterPart {{{0,6}, {-4.3220339,3.6949153}, {-1.22742501,2.60748826},
{0.959100008,2.16359997}}} id=5 | 51 SkOpAngle::after [-1/-1] 29/1 tStart=0.322114632 tEnd=0 < [-1/-1] 1/1 tStart=0.5
16302729 tEnd=0.589197265 < [-1/-1] 13/5 tStart=0.322114632 tEnd=1 T 12 |
52 SkOpAngle::after [5/13] 13/5 tStart=1 tEnd=0.293280033 < [3/6] 13/13 tStart=1 tE
nd=0 < [1/1] 5/5 tStart=0 tEnd=1 T 7 | 52 SkOpAngle::afterPart {{{2.72210693,4.16072464}, {2.78458726,4.17018661}, {2.8772
1833,4.1227816}, {3,4}}} id=-1 |
53 SkOpAngle::afterPart {{{0,6}, {-4.3220339,3.6949153}, {-1.22742501,2.60748826},
{0.959100008,2.16359997}}} id=5 | 53 SkOpAngle::afterPart {{{2.72210693,4.16072464}, {2.81442231,4.11606536}, {2.9072
112,4.06185918}, {3,4}}} id=-1 |
54 SkOpAngle::afterPart {{{0,6}, {-7.5,2}}} id=3 | 54 SkOpAngle::afterPart {{{2.72210693,4.16072464}, {2.59061803,4.14081206}, {2.5926
6219,3.86904402}, {2.7282393,3.51794004}}} id=-1 |
55 SkOpAngle::afterPart {{{0,6}, {0.293506175,4.82597542}, {1.04645705,3.96781874},
{1.58881736,3.34967732}}} id=1 | 55 SkOpSegment::sortAngles [-1] tStart=0.437504678 [-1] |
56 SkOpSegment::sortAngles [2] tStart=0.481912781 [15] | 56 SkOpAngle::after [-1/-1] 17/21 tStart=0.437504678 tEnd=0 < [-1/-1] 1/1 tStart=0.
351448746 tEnd=0 < [-1/-1] 1/1 tStart=0.437504678 tEnd=1 T 11 |
57 SkOpAngle::after [2/2] 29/25 tStart=0.481912781 tEnd=0 < [5/9] 1/1 tStart=0.2225
14468 tEnd=0 < [2/3] 13/13 tStart=0.481912781 tEnd=0.538493706 T 4 | 57 SkOpAngle::afterPart {{{3.5942049,2.35144877}, {3.15895005,2.69507766}, {2.87029
493,3.15005855}, {2.7282393,3.51794004}}} id=-1 |
58 SkOpAngle::afterPart {{{1.58025348,2.04903817}, {2.5637252,2.23855117}, {2.21795
761,2.63263084}, {1.58881736,3.34967732}}} id=2 | 58 SkOpAngle::afterPart {{{3.5942049,2.35144877}, {5,2}}} id=-1 |
59 SkOpAngle::afterPart {{{1.58025348,2.04903817}, {2.18515331,1.94804315}, {2.6173
9584,1.90514551}, {2.61714315,1.90242553}}} id=5 | 59 SkOpAngle::afterPart {{{3.5942049,2.35144877}, {4.15380764,1.9096486}, {4.955739
42,1.65191312}, {6,2}}} id=-1 |
60 SkOpAngle::afterPart {{{1.58025348,2.04903817}, {1.464785,2.02678763}, {1.330993
07,2.007357}, {1.17718506,1.99055469}}} id=2 | 60 SkOpAngle::after [-1/-1] 17/21 tStart=0.437504678 tEnd=0 < [-1/-1] 17/17 tStart=
0.351448746 tEnd=1 < [-1/-1] 1/1 tStart=0.351448746 tEnd=0 F 12 |
61 SkOpAngle::after [2/2] 29/25 tStart=0.481912781 tEnd=0 < [5/10] 17/17 tStart=0.2
22514468 tEnd=0.293280033 < [5/9] 1/1 tStart=0.222514468 tEnd=0 F 4 | 61 SkOpAngle::afterPart {{{3.5942049,2.35144877}, {3.15895005,2.69507766}, {2.87029
493,3.15005855}, {2.7282393,3.51794004}}} id=-1 |
62 SkOpAngle::afterPart {{{1.58025348,2.04903817}, {2.5637252,2.23855117}, {2.21795
761,2.63263084}, {1.58881736,3.34967732}}} id=2 | 62 SkOpAngle::afterPart {{{3.5942049,2.35144877}, {1,3}}} id=-1 |
63 SkOpAngle::afterPart {{{1.58025348,2.04903817}, {1.38787913,2.0811573}, {1.17804
2,2.11915237}, {0.959100008,2.16359997}}} id=5 | 63 SkOpAngle::afterPart {{{3.5942049,2.35144877}, {5,2}}} id=-1 |
64 SkOpAngle::afterPart {{{1.58025348,2.04903817}, {2.18515331,1.94804315}, {2.6173
9584,1.90514551}, {2.61714315,1.90242553}}} id=5 | 64 SkOpAngle::after [-1/-1] 1/1 tStart=0.351448746 tEnd=0 < [-1/-1] 17/17 tStart=0.
351448746 tEnd=1 < [-1/-1] 1/1 tStart=0.437504678 tEnd=1 F 5 |
65 SkOpAngle::after [5/9] 1/1 tStart=0.222514468 tEnd=0 < [5/10] 17/17 tStart=0.222
514468 tEnd=0.293280033 < [2/3] 13/13 tStart=0.481912781 tEnd=0.538493706 F 4 | 65 SkOpAngle::afterPart {{{3.5942049,2.35144877}, {5,2}}} id=-1 |
66 SkOpAngle::afterPart {{{1.58025348,2.04903817}, {2.18515331,1.94804315}, {2.6173
9584,1.90514551}, {2.61714315,1.90242553}}} id=5 | 66 SkOpAngle::afterPart {{{3.5942049,2.35144877}, {1,3}}} id=-1 |
67 SkOpAngle::afterPart {{{1.58025348,2.04903817}, {1.38787913,2.0811573}, {1.17804
2,2.11915237}, {0.959100008,2.16359997}}} id=5 | 67 SkOpAngle::afterPart {{{3.5942049,2.35144877}, {4.15380764,1.9096486}, {4.955739
42,1.65191312}, {6,2}}} id=-1 |
68 SkOpAngle::afterPart {{{1.58025348,2.04903817}, {1.464785,2.02678763}, {1.330993
07,2.007357}, {1.17718506,1.99055469}}} id=2 | 68 SkOpAngle::after [-1/-1] 1/1 tStart=0.437504678 tEnd=1 < [-1/-1] 17/17 tStart=0.
351448746 tEnd=1 < [-1/-1] 17/21 tStart=0.437504678 tEnd=0 T 11 |
69 SkOpAngle::after [2/3] 13/13 tStart=0.481912781 tEnd=0.538493706 < [5/10] 17/17
tStart=0.222514468 tEnd=0.293280033 < [2/2] 29/25 tStart=0.481912781 tEnd=0 T 4 | 69 SkOpAngle::afterPart {{{3.5942049,2.35144877}, {4.15380764,1.9096486}, {4.955739
42,1.65191312}, {6,2}}} id=-1 |
70 SkOpAngle::afterPart {{{1.58025348,2.04903817}, {1.464785,2.02678763}, {1.330993
07,2.007357}, {1.17718506,1.99055469}}} id=2 | 70 SkOpAngle::afterPart {{{3.5942049,2.35144877}, {1,3}}} id=-1 |
71 SkOpAngle::afterPart {{{1.58025348,2.04903817}, {1.38787913,2.0811573}, {1.17804
2,2.11915237}, {0.959100008,2.16359997}}} id=5 | 71 SkOpAngle::afterPart {{{3.5942049,2.35144877}, {3.15895005,2.69507766}, {2.87029
493,3.15005855}, {2.7282393,3.51794004}}} id=-1 |
72 SkOpAngle::afterPart {{{1.58025348,2.04903817}, {2.5637252,2.23855117}, {2.21795
761,2.63263084}, {1.58881736,3.34967732}}} id=2 | 72 SkOpSegment::sortAngles [-1] tStart=0.999932596 [-1] |
73 SkOpSegment::sortAngles [2] tStart=0.538493706 [13] | 73 SkOpAngle::after [-1/-1] 1/1 tStart=0.999932596 tEnd=0 < [-1/-1] 17/17 tStart=0.
589250227 tEnd=0.589197265 < [-1/-1] 17/17 tStart=0.999932596 tEnd=1 T 11 |
74 SkOpAngle::after [2/4] 29/29 tStart=0.538493706 tEnd=0.481912781 < [4/7] 17/17 t
Start=0.0521913275 tEnd=0 < [2/5] 13/17 tStart=0.538493706 tEnd=1 F 11 | 74 SkOpAngle::afterPart {{{3.00020218,3.99986529}, {6,2}}} id=-1 |
75 SkOpAngle::afterPart {{{1.17718506,1.99055469}, {1.33099307,2.007357}, {1.464785
,2.02678763}, {1.58025348,2.04903817}}} id=2 | 75 SkOpAngle::afterPart {{{3.00020218,3.99986529}, {3.00013476,3.99991025}, {3.0000
6742,3.99995506}, {3,4}}} id=-1 |
76 SkOpAngle::afterPart {{{1.17718506,1.99055469}, {1.12006187,1.99363948}, {1.0610
1314,1.99678878}, {1,2}}} id=4 | 76 SkOpAngle::afterPart {{{3.00020218,3.99986529}, {3,4}}} id=-1 |
77 SkOpAngle::afterPart {{{1.17718506,1.99055469}, {-0.0773608463,1.85350547}, {-2.
66357181,1.89131621}, {-7.5,2}}} id=2 | 77 SkOpAngle::after [-1/-1] 1/1 tStart=0.999932596 tEnd=0 < [-1/-1] 1/1 tStart=0.58
9250227 tEnd=1 < [-1/-1] 17/17 tStart=0.589250227 tEnd=0.589197265 T 12 |
78 SkOpAngle::after [2/4] 29/29 tStart=0.538493706 tEnd=0.481912781 < [4/8] 1/1 tSt
art=0.0521913275 tEnd=1 < [2/5] 13/17 tStart=0.538493706 tEnd=1 T 4 | 78 SkOpAngle::afterPart {{{3.00020218,3.99986529}, {6,2}}} id=-1 |
79 SkOpAngle::afterPart {{{1.17718506,1.99055469}, {1.33099307,2.007357}, {1.464785
,2.02678763}, {1.58025348,2.04903817}}} id=2 | 79 SkOpAngle::afterPart {{{3.00020218,3.99986529}, {3.52305312,3.65123542}, {4.0458
9321,3.05965083}, {4.48402119,2.56391668}}} id=-1 |
80 SkOpAngle::afterPart {{{1.17718506,1.99055469}, {2.21455765,1.93453399}, {2.6168
9955,1.89980286}, {2.61714315,1.90242553}}} id=4 | 80 SkOpAngle::afterPart {{{3.00020218,3.99986529}, {3.00013476,3.99991025}, {3.0000
6742,3.99995506}, {3,4}}} id=-1 |
81 SkOpAngle::afterPart {{{1.17718506,1.99055469}, {-0.0773608463,1.85350547}, {-2.
66357181,1.89131621}, {-7.5,2}}} id=2 | 81 SkOpSegment::sortAngles [-1] tStart=1 [-1] |
82 SkOpSegment::sortAngles [3] tStart=1 [6] | 82 SkOpSegment::sortAngles [-1] tStart=0.516302729 [-1] |
83 SkOpSegment::sortAngles [4] tStart=0.0521913275 [14] | 83 SkOpSegment::sortAngles [-1] tStart=0.589197265 [-1] |
84 SkOpSegment::sortAngles [5] tStart=0.222514468 [16] | 84 SkOpSegment::sortAngles [-1] tStart=0.589250227 [-1] |
85 SkOpSegment::sortAngles [5] tStart=0.293280033 [17] | 85 SkOpSegment::sortAngles [-1] tStart=0.351448746 [-1] |
86 SkOpAngle::after [5/11] 1/1 tStart=0.293280033 tEnd=0.222514468 < [6/15] 21/21 t
Start=0.959100004 tEnd=0 < [5/12] 17/21 tStart=0.293280033 tEnd=1 F 11 | 86 SkOpSegment::debugShowActiveSpans id=-1 (3,4 2.61882615,4.38117361 2.52823925,4.
03588009 2.7282393,3.51794004) t=0 (3,4) tEnd=0.322114632 windSum=? windValue=1 |
87 SkOpAngle::afterPart {{{0.959100008,2.16359997}, {1.178042,2.11915237}, {1.38787
913,2.0811573}, {1.58025348,2.04903817}}} id=5 | 87 SkOpSegment::debugShowActiveSpans id=-1 (3,4 2.61882615,4.38117361 2.52823925,4.
03588009 2.7282393,3.51794004) t=0.322114632 (2.72210693,4.16072464) tEnd=1 wind
Sum=? windValue=1 |
88 SkOpAngle::afterPart {{{0.959100008,2.16359997}, {0,6}}} id=6 | 88 SkOpSegment::debugShowActiveSpans id=-1 (2.7282393,3.51794004 3.05293441,2.67707
705 4.14352131,1.38117373 6,2) t=0 (2.7282393,3.51794004) tEnd=0.437504678 windS
um=? windValue=1 |
89 SkOpAngle::afterPart {{{0.959100008,2.16359997}, {-1.22742501,2.60748826}, {-4.3
220339,3.6949153}, {0,6}}} id=5 | 89 SkOpSegment::debugShowActiveSpans id=-1 (2.7282393,3.51794004 3.05293441,2.67707
705 4.14352131,1.38117373 6,2) t=0.437504678 (3.5942049,2.35144877) tEnd=1 windS
um=? windValue=1 |
90 SkOpAngle::after [5/11] 1/1 tStart=0.293280033 tEnd=0.222514468 < [6/16] 5/5 tSt
art=0.959100004 tEnd=1 < [5/12] 17/21 tStart=0.293280033 tEnd=1 T 4 | 90 SkOpSegment::debugShowActiveSpans id=-1 (6,2 3,4) t=0 (6,2) tEnd=0.999932596 win
dSum=? windValue=1 |
91 SkOpAngle::afterPart {{{0.959100008,2.16359997}, {1.178042,2.11915237}, {1.38787
913,2.0811573}, {1.58025348,2.04903817}}} id=5 | 91 SkOpSegment::debugShowActiveSpans id=-1 (6,2 3,4) t=0.999932596 (3.00020218,3.99
986529) tEnd=1 windSum=? windValue=1 |
92 SkOpAngle::afterPart {{{0.959100008,2.16359997}, {1,2}}} id=6 | 92 SkOpSegment::debugShowActiveSpans id=-1 (1,3 1.84861219,5.54583645 3.41736698,3.
77081728 4.48402119,2.56391668) t=0 (1,3) tEnd=0.516302729 windSum=? windValue=1 |
93 SkOpAngle::afterPart {{{0.959100008,2.16359997}, {-1.22742501,2.60748826}, {-4.3
220339,3.6949153}, {0,6}}} id=5 | 93 SkOpSegment::debugShowActiveSpans id=-1 (1,3 1.84861219,5.54583645 3.41736698,3.
77081728 4.48402119,2.56391668) t=0.516302729 (2.72210693,4.16072464) tEnd=0.589
197265 windSum=? windValue=1 |
94 SkOpSegment::sortAngles [5] tStart=1 [10] | 94 SkOpSegment::debugShowActiveSpans id=-1 (1,3 1.84861219,5.54583645 3.41736698,3.
77081728 4.48402119,2.56391668) t=0.589197265 (3,4) tEnd=0.589250227 windSum=? w
indValue=1 |
95 SkOpSegment::sortAngles [6] tStart=0 [11] | 95 SkOpSegment::debugShowActiveSpans id=-1 (1,3 1.84861219,5.54583645 3.41736698,3.
77081728 4.48402119,2.56391668) t=0.589250227 (3.00020218,3.99986529) tEnd=1 win
dSum=? windValue=1 |
96 SkOpSegment::sortAngles [6] tStart=0.959100004 [18] | 96 SkOpSegment::debugShowActiveSpans id=-1 (4.48402119,2.56391668 4.67430639,2.3486
1207 4.84861231,2.15138769 5,2) t=0 (4.48402119,2.56391668) tEnd=1 windSum=? win
dValue=1 |
97 SkOpSegment::debugShowActiveSpans id=1 (0,6 0.293506175,4.82597542 1.04645705,3.
96781874 1.58881736,3.34967732) t=0 (0,6) tEnd=1 windSum=? windValue=1 oppValue=
0 | 97 SkOpSegment::debugShowActiveSpans id=-1 (5,2 1,3) t=0 (5,2) tEnd=0.351448746 win
dSum=? windValue=1 |
98 SkOpSegment::debugShowActiveSpans id=2 (1.58881736,3.34967732 2.89432383,1.86175
978 2.97965813,1.76450205 -7.5,2) t=0 (1.58881736,3.34967732) tEnd=0.481912781 w
indSum=? windValue=1 oppValue=0 | 98 SkOpSegment::debugShowActiveSpans id=-1 (5,2 1,3) t=0.351448746 (3.5942049,2.351
44877) tEnd=1 windSum=? windValue=1 |
99 SkOpSegment::debugShowActiveSpans id=2 (1.58881736,3.34967732 2.89432383,1.86175
978 2.97965813,1.76450205 -7.5,2) t=0.481912781 (1.58025348,2.04903817) tEnd=0.5
38493706 windSum=? windValue=1 oppValue=0 | 99 SkOpSpan::sortableTop dir=kTop seg=-1 t=0.161057316 pt=(2.83844042,4.12995338) |
100 SkOpSegment::debugShowActiveSpans id=2 (1.58881736,3.34967732 2.89432383,1.86175
978 2.97965813,1.76450205 -7.5,2) t=0.538493706 (1.17718506,1.99055469) tEnd=1 w
indSum=? windValue=1 oppValue=0 | 100 SkOpSpan::sortableTop [0] valid=1 operand=0 span=-1 ccw=0 seg=-1 {{{5, 2}, {1, 3
}}} t=0.540389895 pt=(2.83844042,2.54039001) slope=(-4,1) |
101 SkOpSegment::debugShowActiveSpans id=3 (-7.5,2 0,6) t=0 (-7.5,2) tEnd=1 windSum=
? windValue=1 oppValue=0 | 101 SkOpSpan::sortableTop [1] valid=1 operand=1 span=-1 ccw=1 seg=-1 {{{2.7282393f,
3.51794004f}, {3.05293441f, 2.67707705f}, {4.14352131f, 1.38117373f}, {6, 2}}} t
=0.0928134153 pt=(2.83844042,3.27394509) slope=(1.40059553,-2.71475011) |
102 SkOpSegment::debugShowActiveSpans id=4 (1,2 2.16902828,1.93847215 2.61688614,1.8
9965844 2.61714315,1.90242553) t=0 (1,2) tEnd=0.0521913275 windSum=? windValue=1
oppValue=0 | 102 SkOpSpan::sortableTop [2] valid=1 operand=0 span=-1 ccw=1 seg=-1 {{{1, 3}, {1.84
861219f, 5.54583645f}, {3.41736698f, 3.77081728f}, {4.48402119f, 2.56391668f}}}
t=0.546866125 pt=(2.83844042,4.09965467) slope=(3.81218461,-2.15374068) |
103 SkOpSegment::debugShowActiveSpans id=4 (1,2 2.16902828,1.93847215 2.61688614,1.8
9965844 2.61714315,1.90242553) t=0.0521913275 (1.17718506,1.99055469) tEnd=1 win
dSum=? windValue=1 oppValue=0 | 103 SkOpSpan::sortableTop [3] valid=1 operand=1 span=-1 ccw=0 seg=-1 {{{3, 4}, {2.61
882615f, 4.38117361f}, {2.52823925f, 4.03588009f}, {2.7282393f, 3.51794004f}}} t
=0.161057316 pt=(2.83844042,4.12995338) slope=(-0.862714624,0.484601174) |
104 SkOpSegment::debugShowActiveSpans id=5 (2.61714315,1.90242553 2.61827874,1.91464
937 -6.11562443,2.7383337 0,6) t=0 (2.61714315,1.90242553) tEnd=0.222514468 wind
Sum=? windValue=1 oppValue=0 | 104 SkOpSegment::markWinding id=-1 (5,2 1,3) t=0.351448746 [-1] (3.5942049,2.3514487
7) tEnd=1 newWindSum=1 newOppSum=0 oppSum=0 windSum=1 windValue=1 oppValue=0 |
105 SkOpSegment::debugShowActiveSpans id=5 (2.61714315,1.90242553 2.61827874,1.91464
937 -6.11562443,2.7383337 0,6) t=0.222514468 (1.58025348,2.04903817) tEnd=0.2932
80033 windSum=? windValue=1 oppValue=0 | 105 SkOpSegment::markWinding id=-1 (1,3 1.84861219,5.54583645 3.41736698,3.77081728
4.48402119,2.56391668) t=0 [-1] (1,3) tEnd=0.516302729 newWindSum=1 newOppSum=0
oppSum=? windSum=? windValue=1 oppValue=0 |
106 SkOpSegment::debugShowActiveSpans id=5 (2.61714315,1.90242553 2.61827874,1.91464
937 -6.11562443,2.7383337 0,6) t=0.293280033 (0.959100008,2.16359997) tEnd=1 win
dSum=? windValue=1 oppValue=0 | 106 SkOpSegment::markWinding id=-1 (5,2 1,3) t=0.351448746 [-1] (3.5942049,2.3514487
7) tEnd=1 newWindSum=1 newOppSum=0 oppSum=0 windSum=1 windValue=1 oppValue=0 |
107 SkOpSegment::debugShowActiveSpans id=6 (0,6 1,2) t=0 (0,6) tEnd=0.959100004 wind
Sum=? windValue=1 oppValue=0 | 107 SkOpSegment::markWinding id=-1 (2.7282393,3.51794004 3.05293441,2.67707705 4.143
52131,1.38117373 6,2) t=0 [-1] (2.7282393,3.51794004) tEnd=0.437504678 newWindSu
m=-1 newOppSum=1 oppSum=1 windSum=-1 windValue=1 oppValue=0 |
108 SkOpSegment::debugShowActiveSpans id=6 (0,6 1,2) t=0.959100004 (0.959100008,2.16
359997) tEnd=1 windSum=? windValue=1 oppValue=0 | 108 SkOpSegment::markWinding id=-1 (2.7282393,3.51794004 3.05293441,2.67707705 4.143
52131,1.38117373 6,2) t=0 [-1] (2.7282393,3.51794004) tEnd=0.437504678 newWindSu
m=-1 newOppSum=1 oppSum=1 windSum=-1 windValue=1 oppValue=0 |
109 -SkOpSegment::findTop- baseAngle | 109 SkOpSegment::markWinding id=-1 (3,4 2.61882615,4.38117361 2.52823925,4.03588009
2.7282393,3.51794004) t=0.322114632 [-1] (2.72210693,4.16072464) tEnd=1 newWindS
um=-1 newOppSum=1 oppSum=? windSum=? windValue=1 oppValue=0 |
110 SkOpAngle::dumpOne [4/8] next=2/5 sect=1/1 s=0.0521913275 [14] e=1 [8] sgn=-1 w
indVal=1 windSum=? operand | 110 SkOpSegment::markWinding id=-1 (1,3 1.84861219,5.54583645 3.41736698,3.77081728
4.48402119,2.56391668) t=0.516302729 [-1] (2.72210693,4.16072464) tEnd=0.5891972
65 newWindSum=1 newOppSum=-1 oppSum=-1 windSum=1 windValue=1 oppValue=0 |
111 SkOpAngle::dumpOne [2/5] next=4/7 sect=13/17 s=0.538493706 [13] e=1 [4] sgn=-1
windVal=1 windSum=? stop | 111 SkOpSegment::markWinding id=-1 (1,3 1.84861219,5.54583645 3.41736698,3.77081728
4.48402119,2.56391668) t=0.516302729 [-1] (2.72210693,4.16072464) tEnd=0.5891972
65 newWindSum=1 newOppSum=-1 oppSum=-1 windSum=1 windValue=1 oppValue=0 |
112 SkOpAngle::dumpOne [4/7] next=2/4 sect=17/17 s=0.0521913275 [14] e=0 [7] sgn=1
windVal=1 windSum=? operand | 112 SkOpSegment::markWinding id=-1 (3,4 2.61882615,4.38117361 2.52823925,4.03588009
2.7282393,3.51794004) t=0 [-1] (3,4) tEnd=0.322114632 newWindSum=-1 newOppSum=0
oppSum=0 windSum=-1 windValue=1 oppValue=0 |
113 SkOpAngle::dumpOne [2/4] next=4/8 sect=29/29 s=0.538493706 [13] e=0.481912781 [
15] sgn=1 windVal=1 windSum=? stop | 113 SkOpSegment::markWinding id=-1 (3,4 2.61882615,4.38117361 2.52823925,4.03588009
2.7282393,3.51794004) t=0 [-1] (3,4) tEnd=0.322114632 newWindSum=-1 newOppSum=0
oppSum=0 windSum=-1 windValue=1 oppValue=0 |
114 -SkOpSegment::findTop- firstAngle | 114 SkOpSegment::activeOp id=-1 t=0.322114632 tEnd=0 op=union miFrom=0 miTo=0 suFrom
=0 suTo=1 result=1 |
115 SkOpAngle::dumpOne [4/8] next=2/5 sect=1/1 s=0.0521913275 [14] e=1 [8] sgn=-1 w
indVal=1 windSum=? operand | 115 SkOpSegment::markWinding id=-1 (1,3 1.84861219,5.54583645 3.41736698,3.77081728
4.48402119,2.56391668) t=0.589197265 [-1] (3,4) tEnd=0.589250227 newWindSum=1 ne
wOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0 |
116 SkOpAngle::dumpOne [2/5] next=4/7 sect=13/17 s=0.538493706 [13] e=1 [4] sgn=-1
windVal=1 windSum=? stop | 116 SkOpSegment::markAngle last segment=-1 span=-1 windSum=? |
117 SkOpAngle::dumpOne [4/7] next=2/4 sect=17/17 s=0.0521913275 [14] e=0 [7] sgn=1
windVal=1 windSum=? operand | 117 SkOpSegment::markWinding id=-1 (6,2 3,4) t=0.999932596 [-1] (3.00020218,3.999865
29) tEnd=1 newWindSum=-1 newOppSum=1 oppSum=? windSum=? windValue=1 oppValue=0 |
118 SkOpAngle::dumpOne [2/4] next=4/8 sect=29/29 s=0.538493706 [13] e=0.481912781 [
15] sgn=1 windVal=1 windSum=? stop | 118 SkOpSegment::markAngle last segment=-1 span=-1 windSum=-1 |
119 SkDCubic::clockwise pt1dist=0.00263265113 pt2dist=-0.00745519926 | 119 SkOpSegment::findNextOp |
120 SkOpSegment::findTop id=4 s=1 e=0.0521913275 (+) cw=1 swap=0 inflections=1 monot
onic=0 | 120 SkOpAngle::dumpOne [-1/-1] next=-1/-1 sect=18/17 s=0 [-1] e=0.322114632 [-1] sg
n=-1 windVal=1 windSum=-1 oppVal=0 oppSum=0 operand |
121 SkOpSegment::markWinding id=4 (1,2 2.16902828,1.93847215 2.61688614,1.89965844 2
.61714315,1.90242553) t=0.0521913275 [14] (1.17718506,1.99055469) tEnd=1 newWind
Sum=1 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0 | 121 SkOpAngle::dumpOne [-1/-1] next=-1/-1 sect=1/1 s=0.589197265 [-1] e=0.589250227
[-1] sgn=-1 windVal=1 windSum=1 oppVal=0 oppSum=0 |
122 SkOpSegment::markWinding id=4 (1,2 2.16902828,1.93847215 2.61688614,1.89965844 2
.61714315,1.90242553) t=0.0521913275 [14] (1.17718506,1.99055469) tEnd=1 newWind
Sum=1 newOppSum=0 oppSum=0 windSum=1 windValue=1 oppValue=0 | 122 SkOpAngle::dumpOne [-1/-1] next=-1/-1 sect=1/1 s=1 [-1] e=0.999932596 [-1] sgn=
1 windVal=1 windSum=-1 oppVal=0 oppSum=1 operand |
123 SkOpSegment::markWinding id=5 (2.61714315,1.90242553 2.61827874,1.91464937 -6.11
562443,2.7383337 0,6) t=0 [9] (2.61714315,1.90242553) tEnd=0.222514468 newWindSu
m=1 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0 | 123 SkOpAngle::dumpOne [-1/-1] next=-1/-1 sect=17/17 s=0.589197265 [-1] e=0.5163027
29 [-1] sgn=1 windVal=1 windSum=1 oppVal=0 oppSum=-1 |
124 SkOpSegment::activeOp id=4 t=1 tEnd=0.0521913275 op=sect miFrom=0 miTo=0 suFrom=
1 suTo=0 result=0 | 124 SkOpSegment::activeOp id=-1 t=0.589197265 tEnd=0.589250227 op=union miFrom=0 miT
o=1 suFrom=0 suTo=0 result=1 |
125 SkOpSegment::markDone id=4 (1,2 2.16902828,1.93847215 2.61688614,1.89965844 2.61
714315,1.90242553) t=0.0521913275 [14] (1.17718506,1.99055469) tEnd=1 newWindSum
=1 newOppSum=0 oppSum=0 windSum=1 windValue=1 oppValue=0 | 125 SkOpSegment::findNextOp chase.append segment=-1 span=-1 windSum=-2147483647 |
126 bridgeOp chase.append id=4 windSum=1 | 126 SkOpSegment::activeOp id=-1 t=1 tEnd=0.999932596 op=union miFrom=1 miTo=1 suFrom
=0 suTo=1 result=0 |
127 SkOpSegment::markWinding id=2 (1.58881736,3.34967732 2.89432383,1.86175978 2.979
65813,1.76450205 -7.5,2) t=0.538493706 [13] (1.17718506,1.99055469) tEnd=1 newWi
ndSum=1 newOppSum=1 oppSum=? windSum=? windValue=1 oppValue=0 | 127 SkOpSegment::markDone id=-1 (6,2 3,4) t=0.999932596 [-1] (3.00020218,3.99986529)
tEnd=1 newWindSum=-1 newOppSum=1 oppSum=1 windSum=-1 windValue=1 oppValue=0 |
128 SkOpSegment::markWinding id=3 (-7.5,2 0,6) t=0 [5] (-7.5,2) tEnd=1 newWindSum=1
newOppSum=1 oppSum=? windSum=? windValue=1 oppValue=0 | 128 SkOpSegment::findNextOp chase.append segment=-1 span=-1 windSum=-1 |
129 SkOpSegment::markAngle last segment=3 span=6 | 129 SkOpSegment::activeOp id=-1 t=0.589197265 tEnd=0.516302729 op=union miFrom=1 miT
o=0 suFrom=1 suTo=1 result=0 |
130 SkOpSegment::markWinding id=4 (1,2 2.16902828,1.93847215 2.61688614,1.89965844 2
.61714315,1.90242553) t=0 [7] (1,2) tEnd=0.0521913275 newWindSum=1 newOppSum=1 o
ppSum=? windSum=? windValue=1 oppValue=0 | 130 SkOpSegment::markDone id=-1 (1,3 1.84861219,5.54583645 3.41736698,3.77081728 4.4
8402119,2.56391668) t=0.516302729 [-1] (2.72210693,4.16072464) tEnd=0.589197265
newWindSum=1 newOppSum=-1 oppSum=-1 windSum=1 windValue=1 oppValue=0 |
131 SkOpSegment::markWinding id=6 (0,6 1,2) t=0.959100004 [18] (0.959100008,2.163599
97) tEnd=1 newWindSum=1 newOppSum=1 oppSum=? windSum=? windValue=1 oppValue=0 | 131 SkOpSegment::markDone id=-1 (3,4 2.61882615,4.38117361 2.52823925,4.03588009 2.7
282393,3.51794004) t=0 [-1] (3,4) tEnd=0.322114632 newWindSum=-1 newOppSum=0 opp
Sum=0 windSum=-1 windValue=1 oppValue=0 |
132 SkOpSegment::markAngle last segment=6 span=18 windSum=1 | 132 SkOpSegment::findNextOp from:[-1] to:[-1] start=7083452 end=7084028 |
133 SkOpSegment::markWinding id=2 (1.58881736,3.34967732 2.89432383,1.86175978 2.979
65813,1.76450205 -7.5,2) t=0.481912781 [15] (1.58025348,2.04903817) tEnd=0.53849
3706 newWindSum=1 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0 | 133 bridgeOp current id=-1 from=(2.72210693,4.16072464) to=(3,4) |
134 SkOpSegment::markAngle last segment=2 span=15 windSum=1 | 134 path.moveTo(2.72210693,4.16072464); |
135 SkOpSegment::debugShowActiveSpans id=1 (0,6 0.293506175,4.82597542 1.04645705,3.
96781874 1.58881736,3.34967732) t=0 (0,6) tEnd=1 windSum=? windValue=1 oppValue=
0 | 135 path.cubicTo(2.78458714,4.17018652, 2.87721825,4.12278175, 3,4); |
136 SkOpSegment::debugShowActiveSpans id=2 (1.58881736,3.34967732 2.89432383,1.86175
978 2.97965813,1.76450205 -7.5,2) t=0 (1.58881736,3.34967732) tEnd=0.481912781 w
indSum=? windValue=1 oppValue=0 | 136 SkOpSegment::markDone id=-1 (1,3 1.84861219,5.54583645 3.41736698,3.77081728 4.4
8402119,2.56391668) t=0.589197265 [-1] (3,4) tEnd=0.589250227 newWindSum=1 newOp
pSum=0 oppSum=0 windSum=1 windValue=1 oppValue=0 |
137 SkOpSegment::debugShowActiveSpans id=2 (1.58881736,3.34967732 2.89432383,1.86175
978 2.97965813,1.76450205 -7.5,2) t=0.481912781 (1.58025348,2.04903817) tEnd=0.5
38493706 windSum=1 windValue=1 oppValue=0 | 137 SkOpSegment::markWinding id=-1 (6,2 3,4) t=0 [-1] (6,2) tEnd=0.999932596 newWind
Sum=1 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0 |
138 SkOpSegment::debugShowActiveSpans id=2 (1.58881736,3.34967732 2.89432383,1.86175
978 2.97965813,1.76450205 -7.5,2) t=0.538493706 (1.17718506,1.99055469) tEnd=1 w
indSum=1 windValue=1 oppValue=0 | 138 SkOpSegment::markWinding id=-1 (2.7282393,3.51794004 3.05293441,2.67707705 4.143
52131,1.38117373 6,2) t=0.437504678 [-1] (3.5942049,2.35144877) tEnd=1 newWindSu
m=1 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0 |
139 SkOpSegment::debugShowActiveSpans id=3 (-7.5,2 0,6) t=0 (-7.5,2) tEnd=1 windSum=
1 windValue=1 oppValue=0 | 139 SkOpSegment::markAngle last segment=-1 span=-1 windSum=1 |
140 SkOpSegment::debugShowActiveSpans id=4 (1,2 2.16902828,1.93847215 2.61688614,1.8
9965844 2.61714315,1.90242553) t=0 (1,2) tEnd=0.0521913275 windSum=1 windValue=1
oppValue=0 | 140 SkOpSegment::markWinding id=-1 (1,3 1.84861219,5.54583645 3.41736698,3.77081728
4.48402119,2.56391668) t=0.589250227 [-1] (3.00020218,3.99986529) tEnd=1 newWind
Sum=1 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0 |
141 SkOpSegment::debugShowActiveSpans id=5 (2.61714315,1.90242553 2.61827874,1.91464
937 -6.11562443,2.7383337 0,6) t=0 (2.61714315,1.90242553) tEnd=0.222514468 wind
Sum=1 windValue=1 oppValue=0 | 141 SkOpSegment::markWinding id=-1 (4.48402119,2.56391668 4.67430639,2.34861207 4.84
861231,2.15138769 5,2) t=0 [-1] (4.48402119,2.56391668) tEnd=1 newWindSum=1 newO
ppSum=0 oppSum=? windSum=? windValue=1 oppValue=0 |
142 SkOpSegment::debugShowActiveSpans id=5 (2.61714315,1.90242553 2.61827874,1.91464
937 -6.11562443,2.7383337 0,6) t=0.222514468 (1.58025348,2.04903817) tEnd=0.2932
80033 windSum=? windValue=1 oppValue=0 | 142 SkOpSegment::markWinding id=-1 (5,2 1,3) t=0 [-1] (5,2) tEnd=0.351448746 newWind
Sum=1 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0 |
143 SkOpSegment::debugShowActiveSpans id=5 (2.61714315,1.90242553 2.61827874,1.91464
937 -6.11562443,2.7383337 0,6) t=0.293280033 (0.959100008,2.16359997) tEnd=1 win
dSum=? windValue=1 oppValue=0 | 143 SkOpSegment::markAngle last segment=-1 span=-1 windSum=1 |
144 SkOpSegment::debugShowActiveSpans id=6 (0,6 1,2) t=0 (0,6) tEnd=0.959100004 wind
Sum=? windValue=1 oppValue=0 | 144 SkOpSegment::debugShowActiveSpans id=-1 (3,4 2.61882615,4.38117361 2.52823925,4.
03588009 2.7282393,3.51794004) t=0.322114632 (2.72210693,4.16072464) tEnd=1 wind
Sum=-1 oppSum=1 windValue=1 oppValue=0 |
145 SkOpSegment::debugShowActiveSpans id=6 (0,6 1,2) t=0.959100004 (0.959100008,2.16
359997) tEnd=1 windSum=1 windValue=1 oppValue=0 | 145 SkOpSegment::debugShowActiveSpans id=-1 (2.7282393,3.51794004 3.05293441,2.67707
705 4.14352131,1.38117373 6,2) t=0 (2.7282393,3.51794004) tEnd=0.437504678 windS
um=-1 oppSum=1 windValue=1 oppValue=0 |
146 SkOpSegment::activeOp id=2 t=0.538493706 tEnd=1 op=sect miFrom=0 miTo=1 suFrom=1
suTo=1 result=1 | 146 SkOpSegment::debugShowActiveSpans id=-1 (2.7282393,3.51794004 3.05293441,2.67707
705 4.14352131,1.38117373 6,2) t=0.437504678 (3.5942049,2.35144877) tEnd=1 windS
um=1 oppSum=0 windValue=1 oppValue=0 |
147 SkOpSegment::findNextOp simple | 147 SkOpSegment::debugShowActiveSpans id=-1 (6,2 3,4) t=0 (6,2) tEnd=0.999932596 win
dSum=1 oppSum=0 windValue=1 oppValue=0 |
148 SkOpSegment::markDone id=2 (1.58881736,3.34967732 2.89432383,1.86175978 2.979658
13,1.76450205 -7.5,2) t=0.538493706 [13] (1.17718506,1.99055469) tEnd=1 newWindS
um=1 newOppSum=1 oppSum=1 windSum=1 windValue=1 oppValue=0 | 148 SkOpSegment::debugShowActiveSpans id=-1 (1,3 1.84861219,5.54583645 3.41736698,3.
77081728 4.48402119,2.56391668) t=0 (1,3) tEnd=0.516302729 windSum=1 oppSum=0 wi
ndValue=1 oppValue=0 |
149 bridgeOp current id=2 from=(1.17718506,1.99055469) to=(-7.5,2) | 149 SkOpSegment::debugShowActiveSpans id=-1 (1,3 1.84861219,5.54583645 3.41736698,3.
77081728 4.48402119,2.56391668) t=0.589250227 (3.00020218,3.99986529) tEnd=1 win
dSum=1 oppSum=0 windValue=1 oppValue=0 |
150 path.moveTo(1.17718506,1.99055469); | 150 SkOpSegment::debugShowActiveSpans id=-1 (4.48402119,2.56391668 4.67430639,2.3486
1207 4.84861231,2.15138769 5,2) t=0 (4.48402119,2.56391668) tEnd=1 windSum=1 opp
Sum=0 windValue=1 oppValue=0 |
151 path.cubicTo(-0.0773608461,1.85350549, -2.66357183,1.89131618, -7.5,2); | 151 SkOpSegment::debugShowActiveSpans id=-1 (5,2 1,3) t=0 (5,2) tEnd=0.351448746 win
dSum=1 oppSum=0 windValue=1 oppValue=0 |
152 SkOpSegment::markWinding id=1 (0,6 0.293506175,4.82597542 1.04645705,3.96781874
1.58881736,3.34967732) t=0 [1] (0,6) tEnd=1 newWindSum=1 newOppSum=1 oppSum=? wi
ndSum=? windValue=1 oppValue=0 | 152 SkOpSegment::debugShowActiveSpans id=-1 (5,2 1,3) t=0.351448746 (3.5942049,2.351
44877) tEnd=1 windSum=1 oppSum=0 windValue=1 oppValue=0 |
153 SkOpSegment::markWinding id=2 (1.58881736,3.34967732 2.89432383,1.86175978 2.979
65813,1.76450205 -7.5,2) t=0 [3] (1.58881736,3.34967732) tEnd=0.481912781 newWin
dSum=1 newOppSum=1 oppSum=? windSum=? windValue=1 oppValue=0 | 153 SkOpSegment::activeOp id=-1 t=0.999932596 tEnd=0 op=union miFrom=0 miTo=0 suFrom
=1 suTo=0 result=1 |
154 SkOpSegment::markAngle last segment=2 span=15 windSum=1 | 154 SkOpSegment::findNextOp simple |
155 SkOpSegment::markWinding id=6 (0,6 1,2) t=0 [11] (0,6) tEnd=0.959100004 newWindS
um=2 newOppSum=1 oppSum=? windSum=? windValue=1 oppValue=0 | 155 SkOpSegment::markDone id=-1 (6,2 3,4) t=0 [-1] (6,2) tEnd=0.999932596 newWindSum
=1 newOppSum=0 oppSum=0 windSum=1 windValue=1 oppValue=0 |
156 SkOpSegment::markAngle last segment=6 span=18 windSum=1 | 156 bridgeOp current id=-1 from=(3.00020218,3.99986529) to=(6,2) |
157 SkOpSegment::markWinding id=5 (2.61714315,1.90242553 2.61827874,1.91464937 -6.11
562443,2.7383337 0,6) t=0.293280033 [17] (0.959100008,2.16359997) tEnd=1 newWind
Sum=2 newOppSum=1 oppSum=? windSum=? windValue=1 oppValue=0 | 157 SkOpSegment::findNextOp |
158 SkOpSegment::markAngle last segment=5 span=17 windSum=2 | 158 SkOpAngle::dumpOne [-1/-1] next=-1/-1 sect=1/1 s=0.437504678 [-1] e=1 [-1] sgn=
-1 windVal=1 windSum=1 oppVal=0 oppSum=0 operand |
159 SkOpSegment::findNextOp | 159 SkOpAngle::dumpOne [-1/-1] next=-1/-1 sect=17/17 s=0.351448746 [-1] e=1 [-1] sg
n=-1 windVal=1 windSum=1 oppVal=0 oppSum=0 |
160 SkOpAngle::dumpOne [3/6] next=1/1 sect=13/13 s=1 [6] e=0 [5] sgn=1 windVal=1 wi
ndSum=1 oppVal=0 oppSum=1 | 160 SkOpAngle::dumpOne [-1/-1] next=-1/-1 sect=17/21 s=0.437504678 [-1] e=0 [-1] sg
n=1 windVal=1 windSum=-1 oppVal=0 oppSum=1 operand |
161 SkOpAngle::dumpOne [1/1] next=6/14 sect=5/5 s=0 [1] e=1 [2] sgn=-1 windVal=1 wi
ndSum=1 oppVal=0 oppSum=1 | 161 SkOpAngle::dumpOne [-1/-1] next=-1/-1 sect=1/1 s=0.351448746 [-1] e=0 [-1] sgn=
1 windVal=1 windSum=1 oppVal=0 oppSum=0 |
162 SkOpAngle::dumpOne [6/14] next=5/13 sect=5/5 s=0 [11] e=0.959100004 [18] sgn=-1
windVal=1 windSum=2 oppVal=0 oppSum=1 operand | 162 SkOpSegment::activeOp id=-1 t=0.351448746 tEnd=1 op=union miFrom=0 miTo=1 suFrom
=1 suTo=1 result=0 |
163 SkOpAngle::dumpOne [5/13] next=3/6 sect=13/5 s=1 [10] e=0.293280033 [17] sgn=1
windVal=1 windSum=2 oppVal=0 oppSum=1 operand | 163 SkOpSegment::markDone id=-1 (5,2 1,3) t=0.351448746 [-1] (3.5942049,2.35144877)
tEnd=1 newWindSum=1 newOppSum=0 oppSum=0 windSum=1 windValue=1 oppValue=0 |
164 SkOpSegment::activeOp id=1 t=0 tEnd=1 op=sect miFrom=0 miTo=1 suFrom=1 suTo=1 re
sult=1 | 164 SkOpSegment::markDone id=-1 (1,3 1.84861219,5.54583645 3.41736698,3.77081728 4.4
8402119,2.56391668) t=0 [-1] (1,3) tEnd=0.516302729 newWindSum=1 newOppSum=0 opp
Sum=0 windSum=1 windValue=1 oppValue=0 |
165 SkOpSegment::findNextOp chase.append segment=2 span=15 windSum=1 | 165 SkOpSegment::activeOp id=-1 t=0.437504678 tEnd=0 op=union miFrom=1 miTo=1 suFrom
=1 suTo=0 result=0 |
166 SkOpSegment::activeOp id=6 t=0 tEnd=0.959100004 op=sect miFrom=1 miTo=1 suFrom=1
suTo=1 result=0 | 166 SkOpSegment::markDone id=-1 (2.7282393,3.51794004 3.05293441,2.67707705 4.143521
31,1.38117373 6,2) t=0 [-1] (2.7282393,3.51794004) tEnd=0.437504678 newWindSum=-
1 newOppSum=1 oppSum=1 windSum=-1 windValue=1 oppValue=0 |
167 SkOpSegment::markDone id=6 (0,6 1,2) t=0 [11] (0,6) tEnd=0.959100004 newWindSum=
2 newOppSum=1 oppSum=1 windSum=2 windValue=1 oppValue=0 | 167 SkOpSegment::markDone id=-1 (3,4 2.61882615,4.38117361 2.52823925,4.03588009 2.7
282393,3.51794004) t=0.322114632 [-1] (2.72210693,4.16072464) tEnd=1 newWindSum=
-1 newOppSum=1 oppSum=1 windSum=-1 windValue=1 oppValue=0 |
168 SkOpSegment::findNextOp chase.append segment=6 span=18 windSum=1 | 168 SkOpSegment::activeOp id=-1 t=0.351448746 tEnd=0 op=union miFrom=1 miTo=0 suFrom
=0 suTo=0 result=1 |
169 SkOpSegment::activeOp id=5 t=1 tEnd=0.293280033 op=sect miFrom=1 miTo=1 suFrom=1
suTo=1 result=0 | 169 SkOpSegment::markDone id=-1 (2.7282393,3.51794004 3.05293441,2.67707705 4.143521
31,1.38117373 6,2) t=0.437504678 [-1] (3.5942049,2.35144877) tEnd=1 newWindSum=1
newOppSum=0 oppSum=0 windSum=1 windValue=1 oppValue=0 |
170 SkOpSegment::markDone id=5 (2.61714315,1.90242553 2.61827874,1.91464937 -6.11562
443,2.7383337 0,6) t=0.293280033 [17] (0.959100008,2.16359997) tEnd=1 newWindSum
=2 newOppSum=1 oppSum=1 windSum=2 windValue=1 oppValue=0 | 170 SkOpSegment::findNextOp from:[-1] to:[-1] start=7083836 end=7082508 |
171 SkOpSegment::findNextOp chase.append segment=5 span=17 windSum=2 | 171 bridgeOp current id=-1 from=(6,2) to=(3.5942049,2.35144877) |
172 SkOpSegment::markDone id=3 (-7.5,2 0,6) t=0 [5] (-7.5,2) tEnd=1 newWindSum=1 new
OppSum=1 oppSum=1 windSum=1 windValue=1 oppValue=0 | 172 path.moveTo(3.00020218,3.99986529); |
173 SkOpSegment::findNextOp from:[3] to:[1] start=43971536 end=43971632 | 173 path.lineTo(6,2); |
174 bridgeOp current id=3 from=(-7.5,2) to=(0,6) | 174 path.cubicTo(4.9557395,1.65191317, 4.15380764,1.90964866, 3.5942049,2.35144877); |
175 SkOpSegment::findNextOp simple | 175 SkOpSegment::findNextOp simple |
176 SkOpSegment::markDone id=1 (0,6 0.293506175,4.82597542 1.04645705,3.96781874 1.5
8881736,3.34967732) t=0 [1] (0,6) tEnd=1 newWindSum=1 newOppSum=1 oppSum=1 windS
um=1 windValue=1 oppValue=0 | 176 SkOpSegment::markDone id=-1 (5,2 1,3) t=0 [-1] (5,2) tEnd=0.351448746 newWindSum
=1 newOppSum=0 oppSum=0 windSum=1 windValue=1 oppValue=0 |
177 bridgeOp current id=1 from=(0,6) to=(1.58881736,3.34967732) | 177 bridgeOp current id=-1 from=(3.5942049,2.35144877) to=(5,2) |
178 path.lineTo(0,6); | 178 SkOpSegment::findNextOp simple |
179 path.cubicTo(0.293506175,4.82597542, 1.04645705,3.96781874, 1.58881736,3.3496773
2); | 179 SkOpSegment::markDone id=-1 (4.48402119,2.56391668 4.67430639,2.34861207 4.84861
231,2.15138769 5,2) t=0 [-1] (4.48402119,2.56391668) tEnd=1 newWindSum=1 newOppS
um=0 oppSum=0 windSum=1 windValue=1 oppValue=0 |
180 SkOpSegment::markWinding id=5 (2.61714315,1.90242553 2.61827874,1.91464937 -6.11
562443,2.7383337 0,6) t=0.222514468 [16] (1.58025348,2.04903817) tEnd=0.29328003
3 newWindSum=1 newOppSum=1 oppSum=? windSum=? windValue=1 oppValue=0 | 180 bridgeOp current id=-1 from=(5,2) to=(4.48402119,2.56391668) |
181 SkOpSegment::markAngle last segment=5 span=17 windSum=2 | 181 path.lineTo(5,2); |
182 SkOpSegment::findNextOp | 182 path.cubicTo(4.84861231,2.15138769, 4.67430639,2.34861207, 4.48402119,2.56391668
); |
183 SkOpAngle::dumpOne [2/2] next=5/9 sect=29/25 s=0.481912781 [15] e=0 [3] sgn=1 w
indVal=1 windSum=1 oppVal=0 oppSum=1 | 183 SkOpSegment::findNextOp |
184 SkOpAngle::dumpOne [5/9] next=2/3 sect=1/1 s=0.222514468 [16] e=0 [9] sgn=1 win
dVal=1 windSum=1 oppVal=0 oppSum=0 operand | 184 SkOpAngle::dumpOne [-1/-1] next=-1/-1 sect=1/1 s=0.589250227 [-1] e=1 [-1] sgn=
-1 windVal=1 windSum=1 oppVal=0 oppSum=0 |
185 SkOpAngle::dumpOne [2/3] next=5/10 sect=13/13 s=0.481912781 [15] e=0.538493706
[13] sgn=-1 windVal=1 windSum=1 oppVal=0 oppSum=0 | 185 SkOpAngle::dumpOne [-1/-1] next=-1/-1 sect=17/17 s=0.589250227 [-1] e=0.5891972
65 [-1] sgn=1 windVal=1 windSum=1 oppVal=0 oppSum=0 done unorderable |
186 SkOpAngle::dumpOne [5/10] next=2/2 sect=17/17 s=0.222514468 [16] e=0.293280033
[17] sgn=-1 windVal=1 windSum=1 oppVal=0 oppSum=1 operand | 186 SkOpAngle::dumpOne [-1/-1] next=-1/-1 sect=17/17 s=0.999932596 [-1] e=1 [-1] sg
n=-1 windVal=1 windSum=-1 oppVal=0 oppSum=1 done unorderable operand |
187 SkOpSegment::activeOp id=5 t=0.222514468 tEnd=0 op=sect miFrom=0 miTo=0 suFrom=1
suTo=0 result=0 | 187 SkOpAngle::dumpOne [-1/-1] next=-1/-1 sect=1/1 s=0.999932596 [-1] e=0 [-1] sgn=
1 windVal=1 windSum=1 oppVal=0 oppSum=0 done operand |
188 SkOpSegment::markDone id=5 (2.61714315,1.90242553 2.61827874,1.91464937 -6.11562
443,2.7383337 0,6) t=0 [9] (2.61714315,1.90242553) tEnd=0.222514468 newWindSum=1
newOppSum=0 oppSum=0 windSum=1 windValue=1 oppValue=0 | 188 SkOpSegment::activeOp id=-1 t=0.589250227 tEnd=0.589197265 op=union miFrom=1 miT
o=0 suFrom=0 suTo=0 result=1 |
189 SkOpSegment::activeOp id=2 t=0.481912781 tEnd=0.538493706 op=sect miFrom=0 miTo=
1 suFrom=0 suTo=0 result=0 | 189 SkOpSegment::activeOp id=-1 t=0.999932596 tEnd=1 op=union miFrom=0 miTo=0 suFrom
=0 suTo=1 result=1 |
190 SkOpSegment::markDone id=2 (1.58881736,3.34967732 2.89432383,1.86175978 2.979658
13,1.76450205 -7.5,2) t=0.481912781 [15] (1.58025348,2.04903817) tEnd=0.53849370
6 newWindSum=1 newOppSum=0 oppSum=0 windSum=1 windValue=1 oppValue=0 | 190 SkOpSegment::activeOp id=-1 t=0.999932596 tEnd=0 op=union miFrom=0 miTo=0 suFrom
=1 suTo=0 result=1 |
191 SkOpSegment::activeOp id=5 t=0.222514468 tEnd=0.293280033 op=sect miFrom=1 miTo=
1 suFrom=0 suTo=1 result=1 | 191 SkOpSegment::markDone id=-1 (1,3 1.84861219,5.54583645 3.41736698,3.77081728 4.4
8402119,2.56391668) t=0.589250227 [-1] (3.00020218,3.99986529) tEnd=1 newWindSum
=1 newOppSum=0 oppSum=0 windSum=1 windValue=1 oppValue=0 |
192 SkOpSegment::markDone id=2 (1.58881736,3.34967732 2.89432383,1.86175978 2.979658
13,1.76450205 -7.5,2) t=0 [3] (1.58881736,3.34967732) tEnd=0.481912781 newWindSu
m=1 newOppSum=1 oppSum=1 windSum=1 windValue=1 oppValue=0 | 192 SkOpSegment::findNextOp from:[-1] to:[-1] start=7083932 end=7083244 |
193 SkOpSegment::findNextOp from:[2] to:[5] start=2579180 end=2579276 | 193 bridgeOp current id=-1 from=(4.48402119,2.56391668) to=(3.00020218,3.99986529) |
194 bridgeOp current id=2 from=(1.58881736,3.34967732) to=(1.58025348,2.04903817) | 194 path.cubicTo(4.04589319,3.0596509, 3.52305317,3.65123534, 3.00020218,3.99986529)
; |
195 path.cubicTo(2.2179575,2.63263083, 2.56372523,2.23855114, 1.58025348,2.04903817)
; | |
196 SkOpSegment::findNextOp | |
197 SkOpAngle::dumpOne [5/11] next=6/16 sect=1/1 s=0.293280033 [17] e=0.222514468 [
16] sgn=1 windVal=1 windSum=1 oppVal=0 oppSum=1 operand | |
198 SkOpAngle::dumpOne [6/16] next=5/12 sect=5/5 s=0.959100004 [18] e=1 [12] sgn=-1
windVal=1 windSum=1 oppVal=0 oppSum=1 operand | |
199 SkOpAngle::dumpOne [5/12] next=6/15 sect=17/21 s=0.293280033 [17] e=1 [10] sgn=
-1 windVal=1 windSum=2 oppVal=0 oppSum=1 done operand | |
200 SkOpAngle::dumpOne [6/15] next=5/11 sect=21/21 s=0.959100004 [18] e=0 [11] sgn=
1 windVal=1 windSum=2 oppVal=0 oppSum=1 done operand | |
201 SkOpSegment::activeOp id=6 t=0.959100004 tEnd=1 op=sect miFrom=1 miTo=1 suFrom=0
suTo=1 result=1 | |
202 SkOpSegment::activeOp id=5 t=0.293280033 tEnd=1 op=sect miFrom=1 miTo=1 suFrom=1
suTo=1 result=0 | |
203 SkOpSegment::activeOp id=6 t=0.959100004 tEnd=0 op=sect miFrom=1 miTo=1 suFrom=1
suTo=1 result=0 | |
204 SkOpSegment::markDone id=5 (2.61714315,1.90242553 2.61827874,1.91464937 -6.11562
443,2.7383337 0,6) t=0.222514468 [16] (1.58025348,2.04903817) tEnd=0.293280033 n
ewWindSum=1 newOppSum=1 oppSum=1 windSum=1 windValue=1 oppValue=0 | |
205 SkOpSegment::findNextOp from:[5] to:[6] start=2579372 end=2578764 | |
206 bridgeOp current id=5 from=(1.58025348,2.04903817) to=(0.959100008,2.16359997) | |
207 path.cubicTo(1.38787913,2.08115721, 1.17804205,2.11915231, 0.959100008,2.1635999
7); | |
208 SkOpSegment::findNextOp simple | |
209 SkOpSegment::markDone id=6 (0,6 1,2) t=0.959100004 [18] (0.959100008,2.16359997)
tEnd=1 newWindSum=1 newOppSum=1 oppSum=1 windSum=1 windValue=1 oppValue=0 | |
210 bridgeOp current id=6 from=(0.959100008,2.16359997) to=(1,2) | |
211 SkOpSegment::findNextOp | |
212 SkOpAngle::dumpOne [4/7] next=2/4 sect=17/17 s=0.0521913275 [14] e=0 [7] sgn=1
windVal=1 windSum=1 oppVal=0 oppSum=1 operand | |
213 SkOpAngle::dumpOne [2/4] next=4/8 sect=29/29 s=0.538493706 [13] e=0.481912781 [
15] sgn=1 windVal=1 windSum=1 oppVal=0 oppSum=0 done stop | |
214 SkOpAngle::dumpOne [4/8] next=2/5 sect=1/1 s=0.0521913275 [14] e=1 [8] sgn=-1 w
indVal=1 windSum=1 oppVal=0 oppSum=0 done operand | |
215 SkOpAngle::dumpOne [2/5] next=4/7 sect=13/17 s=0.538493706 [13] e=1 [4] sgn=-1
windVal=1 windSum=1 oppVal=0 oppSum=1 done stop | |
216 SkOpSegment::activeOp id=2 t=0.538493706 tEnd=0.481912781 op=sect miFrom=1 miTo=
0 suFrom=0 suTo=0 result=0 | |
217 SkOpSegment::activeOp id=4 t=0.0521913275 tEnd=1 op=sect miFrom=0 miTo=0 suFrom=
0 suTo=1 result=0 | |
218 SkOpSegment::activeOp id=2 t=0.538493706 tEnd=1 op=sect miFrom=0 miTo=1 suFrom=1
suTo=1 result=1 | |
219 SkOpSegment::markDone id=4 (1,2 2.16902828,1.93847215 2.61688614,1.89965844 2.61
714315,1.90242553) t=0 [7] (1,2) tEnd=0.0521913275 newWindSum=1 newOppSum=1 oppS
um=1 windSum=1 windValue=1 oppValue=0 | |
220 SkOpSegment::findNextOp from:[4] to:[2] start=2578892 end=2577740 | |
221 bridgeOp current id=4 from=(1,2) to=(1.17718506,1.99055469) | |
222 path.lineTo(1,2); | |
223 path.cubicTo(1.0610131,1.99678874, 1.12006187,1.99363947, 1.17718506,1.99055469)
; | |
224 path.close(); | 195 path.close(); |
225 </div> | 196 </div> |
226 | 197 |
| 198 <div id="cubics45u_debug"> |
| 199 seg=1 {{{1, 3}, {1.84861219f, 5.54583645f}, {3.41736698f, 3.77081728f}, {4.48402
119f, 2.56391668f}}} |
| 200 seg=2 {{{4.48402119f, 2.56391668f}, {4.67430639f, 2.34861207f}, {4.84861231f, 2.
15138769f}, {5, 2}}} |
| 201 seg=3 {{{5, 2}, {1, 3}}} |
| 202 op union |
| 203 seg=4 {{{3, 4}, {2.61882615f, 4.38117361f}, {2.52823925f, 4.03588009f}, {2.72823
93f, 3.51794004f}}} |
| 204 seg=5 {{{2.7282393f, 3.51794004f}, {3.05293441f, 2.67707705f}, {4.14352131f, 1.3
8117373f}, {6, 2}}} |
| 205 seg=6 {{{6, 2}, {3, 4}}} |
| 206 debugShowCubicIntersection wtTs[0]=1 {{{3,4}, {2.61882615,4.38117361}, {2.528239
25,4.03588009}, {2.7282393,3.51794004}}} {{2.7282393,3.51794004}} wnTs[0]=0 {{{2
.7282393,3.51794004}, {3.05293441,2.67707705}, {4.14352131,1.38117373}, {6,2}}} |
| 207 debugShowCubicLineIntersection wtTs[0]=0 {{{3,4}, {2.61882615,4.38117361}, {2.52
823925,4.03588009}, {2.7282393,3.51794004}}} {{3,4}} wnTs[0]=1 {{{6,2}, {3,4}}} |
| 208 debugShowCubicLineIntersection wtTs[0]=1 {{{2.7282393,3.51794004}, {3.05293441,2
.67707705}, {4.14352131,1.38117373}, {6,2}}} {{6,2}} wnTs[0]=0 {{{6,2}, {3,4}}} |
| 209 debugShowCubicIntersection wtTs[0]=0 {{{3,4}, {2.61882615,4.38117361}, {2.528239
25,4.03588009}, {2.7282393,3.51794004}}} {{3,4}} wtTs[1]=0.322114632 {{2.7221069
3,4.16072464}} wnTs[0]=0.589197 {{{1,3}, {1.84861219,5.54583645}, {3.41736698,3.
77081728}, {4.48402119,2.56391668}}} wnTs[1]=0.516302729 |
| 210 SkOpSegment::addT insert t=0.589197265 segID=1 spanID=13 |
| 211 SkOpSegment::addT insert t=0.322114632 segID=4 spanID=14 |
| 212 SkOpSegment::addT insert t=0.516302729 segID=1 spanID=15 |
| 213 debugShowCubicIntersection no intersect {{{2.7282393,3.51794004}, {3.05293441,2.
67707705}, {4.14352131,1.38117373}, {6,2}}} {{{1,3}, {1.84861219,5.54583645}, {3
.41736698,3.77081728}, {4.48402119,2.56391668}}} |
| 214 debugShowCubicIntersection no intersect {{{2.7282393,3.51794004}, {3.05293441,2.
67707705}, {4.14352131,1.38117373}, {6,2}}} {{{4.48402119,2.56391668}, {4.674306
39,2.34861207}, {4.84861231,2.15138769}, {5,2}}} |
| 215 debugShowCubicLineIntersection wtTs[0]=0.437504678 {{{2.7282393,3.51794004}, {3.
05293441,2.67707705}, {4.14352131,1.38117373}, {6,2}}} {{3.5942049,2.35144877}}
wnTs[0]=0.351449 {{{5,2}, {1,3}}} |
| 216 SkOpSegment::addT insert t=0.437504678 segID=5 spanID=16 |
| 217 SkOpSegment::addT insert t=0.351448746 segID=3 spanID=17 |
| 218 debugShowCubicLineIntersection wtTs[0]=0.589250227 {{{1,3}, {1.84861219,5.545836
45}, {3.41736698,3.77081728}, {4.48402119,2.56391668}}} {{3.00020218,3.99986529}
} wnTs[0]=0.999933 {{{6,2}, {3,4}}} |
| 219 SkOpSegment::addT insert t=0.999932596 segID=6 spanID=18 |
| 220 SkOpSegment::addT insert t=0.589250227 segID=1 spanID=19 |
| 221 debugShowCubicLineIntersection no intersect {{{4.48402119,2.56391668}, {4.674306
39,2.34861207}, {4.84861231,2.15138769}, {5,2}}} {{{6,2}, {3,4}}} |
| 222 debugShowLineIntersection no intersect {{{6,2}, {3,4}}} {{{5,2}, {1,3}}} |
| 223 debugShowCubicIntersection wtTs[0]=1 {{{1,3}, {1.84861219,5.54583645}, {3.417366
98,3.77081728}, {4.48402119,2.56391668}}} {{4.48402119,2.56391668}} wnTs[0]=0 {{
{4.48402119,2.56391668}, {4.67430639,2.34861207}, {4.84861231,2.15138769}, {5,2}
}} |
| 224 debugShowCubicLineIntersection wtTs[0]=0 {{{1,3}, {1.84861219,5.54583645}, {3.41
736698,3.77081728}, {4.48402119,2.56391668}}} {{1,3}} wnTs[0]=1 {{{5,2}, {1,3}}} |
| 225 debugShowCubicLineIntersection wtTs[0]=1 {{{4.48402119,2.56391668}, {4.67430639,
2.34861207}, {4.84861231,2.15138769}, {5,2}}} {{5,2}} wnTs[0]=0 {{{5,2}, {1,3}}} |
| 226 SkOpSegment::sortAngles [4] tStart=0 [7] |
| 227 SkOpAngle::after [4/1] 18/17 tStart=0 tEnd=0.322114632 < [1/12] 1/1 tStart=0.589
197265 tEnd=0.589250227 < [1/11] 17/17 tStart=0.589197265 tEnd=0.516302729 T 5 |
| 228 SkOpAngle::afterPart {{{3,4}, {2.87721833,4.1227816}, {2.78458726,4.17018661}, {
2.72210693,4.16072464}}} id=4 |
| 229 SkOpAngle::afterPart {{{3,4}, {3.00006742,3.99995506}, {3.00013476,3.99991025},
{3.00020218,3.99986529}}} id=1 |
| 230 SkOpAngle::afterPart {{{3,4}, {2.9072112,4.06185918}, {2.81442231,4.11606536}, {
2.72210693,4.16072464}}} id=1 |
| 231 SkOpAngle::after [4/1] 18/17 tStart=0 tEnd=0.322114632 < [6/8] 1/1 tStart=1 tEnd
=0.999932596 < [1/12] 1/1 tStart=0.589197265 tEnd=0.589250227 F 11 |
| 232 SkOpAngle::afterPart {{{3,4}, {2.87721833,4.1227816}, {2.78458726,4.17018661}, {
2.72210693,4.16072464}}} id=4 |
| 233 SkOpAngle::afterPart {{{3,4}, {3.00020218,3.99986529}}} id=6 |
| 234 SkOpAngle::afterPart {{{3,4}, {3.00006742,3.99995506}, {3.00013476,3.99991025},
{3.00020218,3.99986529}}} id=1 |
| 235 SkOpAngle::after [1/12] 1/1 tStart=0.589197265 tEnd=0.589250227 < [6/8] 1/1 tSta
rt=1 tEnd=0.999932596 < [1/11] 17/17 tStart=0.589197265 tEnd=0.516302729 T 12 |
| 236 SkOpAngle::afterPart {{{3,4}, {3.00006742,3.99995506}, {3.00013476,3.99991025},
{3.00020218,3.99986529}}} id=1 |
| 237 SkOpAngle::afterPart {{{3,4}, {3.00020218,3.99986529}}} id=6 |
| 238 SkOpAngle::afterPart {{{3,4}, {2.9072112,4.06185918}, {2.81442231,4.11606536}, {
2.72210693,4.16072464}}} id=1 |
| 239 SkOpSegment::sortAngles [4] tStart=0.322114632 [14] |
| 240 SkOpAngle::after [4/2] 29/1 tStart=0.322114632 tEnd=0 < [1/9] 17/13 tStart=0.516
302729 tEnd=0 < [4/3] 13/5 tStart=0.322114632 tEnd=1 F 11 |
| 241 SkOpAngle::afterPart {{{2.72210693,4.16072464}, {2.78458726,4.17018661}, {2.8772
1833,4.1227816}, {3,4}}} id=4 |
| 242 SkOpAngle::afterPart {{{2.72210693,4.16072464}, {2.06824885,4.47704065}, {1.4381
4079,4.31442231}, {1,3}}} id=1 |
| 243 SkOpAngle::afterPart {{{2.72210693,4.16072464}, {2.59061803,4.14081206}, {2.5926
6219,3.86904402}, {2.7282393,3.51794004}}} id=4 |
| 244 SkOpAngle::after [4/2] 29/1 tStart=0.322114632 tEnd=0 < [1/10] 1/1 tStart=0.5163
02729 tEnd=0.589197265 < [4/3] 13/5 tStart=0.322114632 tEnd=1 T 12 |
| 245 SkOpAngle::afterPart {{{2.72210693,4.16072464}, {2.78458726,4.17018661}, {2.8772
1833,4.1227816}, {3,4}}} id=4 |
| 246 SkOpAngle::afterPart {{{2.72210693,4.16072464}, {2.81442231,4.11606536}, {2.9072
112,4.06185918}, {3,4}}} id=1 |
| 247 SkOpAngle::afterPart {{{2.72210693,4.16072464}, {2.59061803,4.14081206}, {2.5926
6219,3.86904402}, {2.7282393,3.51794004}}} id=4 |
| 248 SkOpSegment::sortAngles [5] tStart=0.437504678 [16] |
| 249 SkOpAngle::after [5/4] 17/21 tStart=0.437504678 tEnd=0 < [3/15] 1/1 tStart=0.351
448746 tEnd=0 < [5/5] 1/1 tStart=0.437504678 tEnd=1 T 11 |
| 250 SkOpAngle::afterPart {{{3.5942049,2.35144877}, {3.15895005,2.69507766}, {2.87029
493,3.15005855}, {2.7282393,3.51794004}}} id=5 |
| 251 SkOpAngle::afterPart {{{3.5942049,2.35144877}, {5,2}}} id=3 |
| 252 SkOpAngle::afterPart {{{3.5942049,2.35144877}, {4.15380764,1.9096486}, {4.955739
42,1.65191312}, {6,2}}} id=5 |
| 253 SkOpAngle::after [5/4] 17/21 tStart=0.437504678 tEnd=0 < [3/16] 17/17 tStart=0.3
51448746 tEnd=1 < [3/15] 1/1 tStart=0.351448746 tEnd=0 F 12 |
| 254 SkOpAngle::afterPart {{{3.5942049,2.35144877}, {3.15895005,2.69507766}, {2.87029
493,3.15005855}, {2.7282393,3.51794004}}} id=5 |
| 255 SkOpAngle::afterPart {{{3.5942049,2.35144877}, {1,3}}} id=3 |
| 256 SkOpAngle::afterPart {{{3.5942049,2.35144877}, {5,2}}} id=3 |
| 257 SkOpAngle::after [3/15] 1/1 tStart=0.351448746 tEnd=0 < [3/16] 17/17 tStart=0.35
1448746 tEnd=1 < [5/5] 1/1 tStart=0.437504678 tEnd=1 F 5 |
| 258 SkOpAngle::afterPart {{{3.5942049,2.35144877}, {5,2}}} id=3 |
| 259 SkOpAngle::afterPart {{{3.5942049,2.35144877}, {1,3}}} id=3 |
| 260 SkOpAngle::afterPart {{{3.5942049,2.35144877}, {4.15380764,1.9096486}, {4.955739
42,1.65191312}, {6,2}}} id=5 |
| 261 SkOpAngle::after [5/5] 1/1 tStart=0.437504678 tEnd=1 < [3/16] 17/17 tStart=0.351
448746 tEnd=1 < [5/4] 17/21 tStart=0.437504678 tEnd=0 T 11 |
| 262 SkOpAngle::afterPart {{{3.5942049,2.35144877}, {4.15380764,1.9096486}, {4.955739
42,1.65191312}, {6,2}}} id=5 |
| 263 SkOpAngle::afterPart {{{3.5942049,2.35144877}, {1,3}}} id=3 |
| 264 SkOpAngle::afterPart {{{3.5942049,2.35144877}, {3.15895005,2.69507766}, {2.87029
493,3.15005855}, {2.7282393,3.51794004}}} id=5 |
| 265 SkOpSegment::sortAngles [6] tStart=0.999932596 [18] |
| 266 SkOpAngle::after [6/6] 1/1 tStart=0.999932596 tEnd=0 < [1/13] 17/17 tStart=0.589
250227 tEnd=0.589197265 < [6/7] 17/17 tStart=0.999932596 tEnd=1 T 11 |
| 267 SkOpAngle::afterPart {{{3.00020218,3.99986529}, {6,2}}} id=6 |
| 268 SkOpAngle::afterPart {{{3.00020218,3.99986529}, {3.00013476,3.99991025}, {3.0000
6742,3.99995506}, {3,4}}} id=1 |
| 269 SkOpAngle::afterPart {{{3.00020218,3.99986529}, {3,4}}} id=6 |
| 270 SkOpAngle::after [6/6] 1/1 tStart=0.999932596 tEnd=0 < [1/14] 1/1 tStart=0.58925
0227 tEnd=1 < [1/13] 17/17 tStart=0.589250227 tEnd=0.589197265 T 12 |
| 271 SkOpAngle::afterPart {{{3.00020218,3.99986529}, {6,2}}} id=6 |
| 272 SkOpAngle::afterPart {{{3.00020218,3.99986529}, {3.52305312,3.65123542}, {4.0458
9321,3.05965083}, {4.48402119,2.56391668}}} id=1 |
| 273 SkOpAngle::afterPart {{{3.00020218,3.99986529}, {3.00013476,3.99991025}, {3.0000
6742,3.99995506}, {3,4}}} id=1 |
| 274 SkOpSegment::sortAngles [6] tStart=1 [12] |
| 275 SkOpSegment::sortAngles [1] tStart=0.516302729 [15] |
| 276 SkOpSegment::sortAngles [1] tStart=0.589197265 [13] |
| 277 SkOpSegment::sortAngles [1] tStart=0.589250227 [19] |
| 278 SkOpSegment::sortAngles [3] tStart=0.351448746 [17] |
| 279 SkOpSegment::debugShowActiveSpans id=4 (3,4 2.61882615,4.38117361 2.52823925,4.0
3588009 2.7282393,3.51794004) t=0 (3,4) tEnd=0.322114632 windSum=? windValue=1 |
| 280 SkOpSegment::debugShowActiveSpans id=4 (3,4 2.61882615,4.38117361 2.52823925,4.0
3588009 2.7282393,3.51794004) t=0.322114632 (2.72210693,4.16072464) tEnd=1 windS
um=? windValue=1 |
| 281 SkOpSegment::debugShowActiveSpans id=5 (2.7282393,3.51794004 3.05293441,2.677077
05 4.14352131,1.38117373 6,2) t=0 (2.7282393,3.51794004) tEnd=0.437504678 windSu
m=? windValue=1 |
| 282 SkOpSegment::debugShowActiveSpans id=5 (2.7282393,3.51794004 3.05293441,2.677077
05 4.14352131,1.38117373 6,2) t=0.437504678 (3.5942049,2.35144877) tEnd=1 windSu
m=? windValue=1 |
| 283 SkOpSegment::debugShowActiveSpans id=6 (6,2 3,4) t=0 (6,2) tEnd=0.999932596 wind
Sum=? windValue=1 |
| 284 SkOpSegment::debugShowActiveSpans id=6 (6,2 3,4) t=0.999932596 (3.00020218,3.999
86529) tEnd=1 windSum=? windValue=1 |
| 285 SkOpSegment::debugShowActiveSpans id=1 (1,3 1.84861219,5.54583645 3.41736698,3.7
7081728 4.48402119,2.56391668) t=0 (1,3) tEnd=0.516302729 windSum=? windValue=1 |
| 286 SkOpSegment::debugShowActiveSpans id=1 (1,3 1.84861219,5.54583645 3.41736698,3.7
7081728 4.48402119,2.56391668) t=0.516302729 (2.72210693,4.16072464) tEnd=0.5891
97265 windSum=? windValue=1 |
| 287 SkOpSegment::debugShowActiveSpans id=1 (1,3 1.84861219,5.54583645 3.41736698,3.7
7081728 4.48402119,2.56391668) t=0.589197265 (3,4) tEnd=0.589250227 windSum=? wi
ndValue=1 |
| 288 SkOpSegment::debugShowActiveSpans id=1 (1,3 1.84861219,5.54583645 3.41736698,3.7
7081728 4.48402119,2.56391668) t=0.589250227 (3.00020218,3.99986529) tEnd=1 wind
Sum=? windValue=1 |
| 289 SkOpSegment::debugShowActiveSpans id=2 (4.48402119,2.56391668 4.67430639,2.34861
207 4.84861231,2.15138769 5,2) t=0 (4.48402119,2.56391668) tEnd=1 windSum=? wind
Value=1 |
| 290 SkOpSegment::debugShowActiveSpans id=3 (5,2 1,3) t=0 (5,2) tEnd=0.351448746 wind
Sum=? windValue=1 |
| 291 SkOpSegment::debugShowActiveSpans id=3 (5,2 1,3) t=0.351448746 (3.5942049,2.3514
4877) tEnd=1 windSum=? windValue=1 |
| 292 SkOpSpan::sortableTop dir=kTop seg=4 t=0.161057316 pt=(2.83844042,4.12995338) |
| 293 SkOpSpan::sortableTop [0] valid=1 operand=0 span=17 ccw=0 seg=3 {{{5, 2}, {1, 3}
}} t=0.540389895 pt=(2.83844042,2.54039001) slope=(-4,1) |
| 294 SkOpSpan::sortableTop [1] valid=1 operand=1 span=9 ccw=1 seg=5 {{{2.7282393f, 3.
51794004f}, {3.05293441f, 2.67707705f}, {4.14352131f, 1.38117373f}, {6, 2}}} t=0
.0928134153 pt=(2.83844042,3.27394509) slope=(1.40059553,-2.71475011) |
| 295 SkOpSpan::sortableTop [2] valid=1 operand=0 span=15 ccw=1 seg=1 {{{1, 3}, {1.848
61219f, 5.54583645f}, {3.41736698f, 3.77081728f}, {4.48402119f, 2.56391668f}}} t
=0.546866125 pt=(2.83844042,4.09965467) slope=(3.81218461,-2.15374068) |
| 296 SkOpSpan::sortableTop [3] valid=1 operand=1 span=7 ccw=0 seg=4 {{{3, 4}, {2.6188
2615f, 4.38117361f}, {2.52823925f, 4.03588009f}, {2.7282393f, 3.51794004f}}} t=0
.161057316 pt=(2.83844042,4.12995338) slope=(-0.862714624,0.484601174) |
| 297 SkOpSegment::markWinding id=3 (5,2 1,3) t=0.351448746 [17] (3.5942049,2.35144877
) tEnd=1 newWindSum=1 newOppSum=0 oppSum=0 windSum=1 windValue=1 oppValue=0 |
| 298 SkOpSegment::markWinding id=1 (1,3 1.84861219,5.54583645 3.41736698,3.77081728 4
.48402119,2.56391668) t=0 [1] (1,3) tEnd=0.516302729 newWindSum=1 newOppSum=0 op
pSum=? windSum=? windValue=1 oppValue=0 |
| 299 SkOpSegment::markWinding id=3 (5,2 1,3) t=0.351448746 [17] (3.5942049,2.35144877
) tEnd=1 newWindSum=1 newOppSum=0 oppSum=0 windSum=1 windValue=1 oppValue=0 |
| 300 SkOpSegment::markWinding id=5 (2.7282393,3.51794004 3.05293441,2.67707705 4.1435
2131,1.38117373 6,2) t=0 [9] (2.7282393,3.51794004) tEnd=0.437504678 newWindSum=
-1 newOppSum=1 oppSum=1 windSum=-1 windValue=1 oppValue=0 |
| 301 SkOpSegment::markWinding id=5 (2.7282393,3.51794004 3.05293441,2.67707705 4.1435
2131,1.38117373 6,2) t=0 [9] (2.7282393,3.51794004) tEnd=0.437504678 newWindSum=
-1 newOppSum=1 oppSum=1 windSum=-1 windValue=1 oppValue=0 |
| 302 SkOpSegment::markWinding id=4 (3,4 2.61882615,4.38117361 2.52823925,4.03588009 2
.7282393,3.51794004) t=0.322114632 [14] (2.72210693,4.16072464) tEnd=1 newWindSu
m=-1 newOppSum=1 oppSum=? windSum=? windValue=1 oppValue=0 |
| 303 SkOpSegment::markWinding id=1 (1,3 1.84861219,5.54583645 3.41736698,3.77081728 4
.48402119,2.56391668) t=0.516302729 [15] (2.72210693,4.16072464) tEnd=0.58919726
5 newWindSum=1 newOppSum=-1 oppSum=-1 windSum=1 windValue=1 oppValue=0 |
| 304 SkOpSegment::markWinding id=1 (1,3 1.84861219,5.54583645 3.41736698,3.77081728 4
.48402119,2.56391668) t=0.516302729 [15] (2.72210693,4.16072464) tEnd=0.58919726
5 newWindSum=1 newOppSum=-1 oppSum=-1 windSum=1 windValue=1 oppValue=0 |
| 305 SkOpSegment::markWinding id=4 (3,4 2.61882615,4.38117361 2.52823925,4.03588009 2
.7282393,3.51794004) t=0 [7] (3,4) tEnd=0.322114632 newWindSum=-1 newOppSum=0 op
pSum=0 windSum=-1 windValue=1 oppValue=0 |
| 306 SkOpSegment::markWinding id=4 (3,4 2.61882615,4.38117361 2.52823925,4.03588009 2
.7282393,3.51794004) t=0 [7] (3,4) tEnd=0.322114632 newWindSum=-1 newOppSum=0 op
pSum=0 windSum=-1 windValue=1 oppValue=0 |
| 307 SkOpSegment::activeOp id=4 t=0.322114632 tEnd=0 op=union miFrom=0 miTo=0 suFrom=
0 suTo=1 result=1 |
| 308 SkOpSegment::markWinding id=1 (1,3 1.84861219,5.54583645 3.41736698,3.77081728 4
.48402119,2.56391668) t=0.589197265 [13] (3,4) tEnd=0.589250227 newWindSum=1 new
OppSum=0 oppSum=? windSum=? windValue=1 oppValue=0 |
| 309 SkOpSegment::markAngle last segment=1 span=19 windSum=? |
| 310 SkOpSegment::markWinding id=6 (6,2 3,4) t=0.999932596 [18] (3.00020218,3.9998652
9) tEnd=1 newWindSum=-1 newOppSum=1 oppSum=? windSum=? windValue=1 oppValue=0 |
| 311 SkOpSegment::markAngle last segment=6 span=18 windSum=-1 |
| 312 SkOpSegment::findNextOp |
| 313 SkOpAngle::dumpOne [4/1] next=1/12 sect=18/17 s=0 [7] e=0.322114632 [14] sgn=-1
windVal=1 windSum=-1 oppVal=0 oppSum=0 operand |
| 314 SkOpAngle::dumpOne [1/12] next=6/8 sect=1/1 s=0.589197265 [13] e=0.589250227 [1
9] sgn=-1 windVal=1 windSum=1 oppVal=0 oppSum=0 |
| 315 SkOpAngle::dumpOne [6/8] next=1/11 sect=1/1 s=1 [12] e=0.999932596 [18] sgn=1 w
indVal=1 windSum=-1 oppVal=0 oppSum=1 operand |
| 316 SkOpAngle::dumpOne [1/11] next=4/1 sect=17/17 s=0.589197265 [13] e=0.516302729
[15] sgn=1 windVal=1 windSum=1 oppVal=0 oppSum=-1 |
| 317 SkOpSegment::activeOp id=1 t=0.589197265 tEnd=0.589250227 op=union miFrom=0 miTo
=1 suFrom=0 suTo=0 result=1 |
| 318 SkOpSegment::findNextOp chase.append segment=1 span=19 windSum=-2147483647 |
| 319 SkOpSegment::activeOp id=6 t=1 tEnd=0.999932596 op=union miFrom=1 miTo=1 suFrom=
0 suTo=1 result=0 |
| 320 SkOpSegment::markDone id=6 (6,2 3,4) t=0.999932596 [18] (3.00020218,3.99986529)
tEnd=1 newWindSum=-1 newOppSum=1 oppSum=1 windSum=-1 windValue=1 oppValue=0 |
| 321 SkOpSegment::findNextOp chase.append segment=6 span=18 windSum=-1 |
| 322 SkOpSegment::activeOp id=1 t=0.589197265 tEnd=0.516302729 op=union miFrom=1 miTo
=0 suFrom=1 suTo=1 result=0 |
| 323 SkOpSegment::markDone id=1 (1,3 1.84861219,5.54583645 3.41736698,3.77081728 4.48
402119,2.56391668) t=0.516302729 [15] (2.72210693,4.16072464) tEnd=0.589197265 n
ewWindSum=1 newOppSum=-1 oppSum=-1 windSum=1 windValue=1 oppValue=0 |
| 324 SkOpSegment::markDone id=4 (3,4 2.61882615,4.38117361 2.52823925,4.03588009 2.72
82393,3.51794004) t=0 [7] (3,4) tEnd=0.322114632 newWindSum=-1 newOppSum=0 oppSu
m=0 windSum=-1 windValue=1 oppValue=0 |
| 325 SkOpSegment::findNextOp from:[4] to:[1] start=11952148 end=11952772 |
| 326 bridgeOp current id=4 from=(2.72210693,4.16072464) to=(3,4) |
| 327 path.moveTo(2.72210693,4.16072464); |
| 328 path.cubicTo(2.78458714,4.17018652, 2.87721825,4.12278175, 3,4); |
| 329 SkOpSegment::markDone id=1 (1,3 1.84861219,5.54583645 3.41736698,3.77081728 4.48
402119,2.56391668) t=0.589197265 [13] (3,4) tEnd=0.589250227 newWindSum=1 newOpp
Sum=0 oppSum=0 windSum=1 windValue=1 oppValue=0 |
| 330 SkOpSegment::markWinding id=6 (6,2 3,4) t=0 [11] (6,2) tEnd=0.999932596 newWindS
um=1 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0 |
| 331 SkOpSegment::markWinding id=5 (2.7282393,3.51794004 3.05293441,2.67707705 4.1435
2131,1.38117373 6,2) t=0.437504678 [16] (3.5942049,2.35144877) tEnd=1 newWindSum
=1 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0 |
| 332 SkOpSegment::markAngle last segment=5 span=16 windSum=1 |
| 333 SkOpSegment::markWinding id=1 (1,3 1.84861219,5.54583645 3.41736698,3.77081728 4
.48402119,2.56391668) t=0.589250227 [19] (3.00020218,3.99986529) tEnd=1 newWindS
um=1 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0 |
| 334 SkOpSegment::markWinding id=2 (4.48402119,2.56391668 4.67430639,2.34861207 4.848
61231,2.15138769 5,2) t=0 [3] (4.48402119,2.56391668) tEnd=1 newWindSum=1 newOpp
Sum=0 oppSum=? windSum=? windValue=1 oppValue=0 |
| 335 SkOpSegment::markWinding id=3 (5,2 1,3) t=0 [5] (5,2) tEnd=0.351448746 newWindSu
m=1 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0 |
| 336 SkOpSegment::markAngle last segment=3 span=17 windSum=1 |
| 337 SkOpSegment::debugShowActiveSpans id=4 (3,4 2.61882615,4.38117361 2.52823925,4.0
3588009 2.7282393,3.51794004) t=0.322114632 (2.72210693,4.16072464) tEnd=1 windS
um=-1 oppSum=1 windValue=1 oppValue=0 |
| 338 SkOpSegment::debugShowActiveSpans id=5 (2.7282393,3.51794004 3.05293441,2.677077
05 4.14352131,1.38117373 6,2) t=0 (2.7282393,3.51794004) tEnd=0.437504678 windSu
m=-1 oppSum=1 windValue=1 oppValue=0 |
| 339 SkOpSegment::debugShowActiveSpans id=5 (2.7282393,3.51794004 3.05293441,2.677077
05 4.14352131,1.38117373 6,2) t=0.437504678 (3.5942049,2.35144877) tEnd=1 windSu
m=1 oppSum=0 windValue=1 oppValue=0 |
| 340 SkOpSegment::debugShowActiveSpans id=6 (6,2 3,4) t=0 (6,2) tEnd=0.999932596 wind
Sum=1 oppSum=0 windValue=1 oppValue=0 |
| 341 SkOpSegment::debugShowActiveSpans id=1 (1,3 1.84861219,5.54583645 3.41736698,3.7
7081728 4.48402119,2.56391668) t=0 (1,3) tEnd=0.516302729 windSum=1 oppSum=0 win
dValue=1 oppValue=0 |
| 342 SkOpSegment::debugShowActiveSpans id=1 (1,3 1.84861219,5.54583645 3.41736698,3.7
7081728 4.48402119,2.56391668) t=0.589250227 (3.00020218,3.99986529) tEnd=1 wind
Sum=1 oppSum=0 windValue=1 oppValue=0 |
| 343 SkOpSegment::debugShowActiveSpans id=2 (4.48402119,2.56391668 4.67430639,2.34861
207 4.84861231,2.15138769 5,2) t=0 (4.48402119,2.56391668) tEnd=1 windSum=1 oppS
um=0 windValue=1 oppValue=0 |
| 344 SkOpSegment::debugShowActiveSpans id=3 (5,2 1,3) t=0 (5,2) tEnd=0.351448746 wind
Sum=1 oppSum=0 windValue=1 oppValue=0 |
| 345 SkOpSegment::debugShowActiveSpans id=3 (5,2 1,3) t=0.351448746 (3.5942049,2.3514
4877) tEnd=1 windSum=1 oppSum=0 windValue=1 oppValue=0 |
| 346 SkOpSegment::activeOp id=6 t=0.999932596 tEnd=0 op=union miFrom=0 miTo=0 suFrom=
1 suTo=0 result=1 |
| 347 SkOpSegment::findNextOp simple |
| 348 SkOpSegment::markDone id=6 (6,2 3,4) t=0 [11] (6,2) tEnd=0.999932596 newWindSum=
1 newOppSum=0 oppSum=0 windSum=1 windValue=1 oppValue=0 |
| 349 bridgeOp current id=6 from=(3.00020218,3.99986529) to=(6,2) |
| 350 SkOpSegment::findNextOp |
| 351 SkOpAngle::dumpOne [5/5] next=3/16 sect=1/1 s=0.437504678 [16] e=1 [10] sgn=-1
windVal=1 windSum=1 oppVal=0 oppSum=0 operand |
| 352 SkOpAngle::dumpOne [3/16] next=5/4 sect=17/17 s=0.351448746 [17] e=1 [6] sgn=-1
windVal=1 windSum=1 oppVal=0 oppSum=0 |
| 353 SkOpAngle::dumpOne [5/4] next=3/15 sect=17/21 s=0.437504678 [16] e=0 [9] sgn=1
windVal=1 windSum=-1 oppVal=0 oppSum=1 operand |
| 354 SkOpAngle::dumpOne [3/15] next=5/5 sect=1/1 s=0.351448746 [17] e=0 [5] sgn=1 wi
ndVal=1 windSum=1 oppVal=0 oppSum=0 |
| 355 SkOpSegment::activeOp id=3 t=0.351448746 tEnd=1 op=union miFrom=0 miTo=1 suFrom=
1 suTo=1 result=0 |
| 356 SkOpSegment::markDone id=3 (5,2 1,3) t=0.351448746 [17] (3.5942049,2.35144877) t
End=1 newWindSum=1 newOppSum=0 oppSum=0 windSum=1 windValue=1 oppValue=0 |
| 357 SkOpSegment::markDone id=1 (1,3 1.84861219,5.54583645 3.41736698,3.77081728 4.48
402119,2.56391668) t=0 [1] (1,3) tEnd=0.516302729 newWindSum=1 newOppSum=0 oppSu
m=0 windSum=1 windValue=1 oppValue=0 |
| 358 SkOpSegment::activeOp id=5 t=0.437504678 tEnd=0 op=union miFrom=1 miTo=1 suFrom=
1 suTo=0 result=0 |
| 359 SkOpSegment::markDone id=5 (2.7282393,3.51794004 3.05293441,2.67707705 4.1435213
1,1.38117373 6,2) t=0 [9] (2.7282393,3.51794004) tEnd=0.437504678 newWindSum=-1
newOppSum=1 oppSum=1 windSum=-1 windValue=1 oppValue=0 |
| 360 SkOpSegment::markDone id=4 (3,4 2.61882615,4.38117361 2.52823925,4.03588009 2.72
82393,3.51794004) t=0.322114632 [14] (2.72210693,4.16072464) tEnd=1 newWindSum=-
1 newOppSum=1 oppSum=1 windSum=-1 windValue=1 oppValue=0 |
| 361 SkOpSegment::activeOp id=3 t=0.351448746 tEnd=0 op=union miFrom=1 miTo=0 suFrom=
0 suTo=0 result=1 |
| 362 SkOpSegment::markDone id=5 (2.7282393,3.51794004 3.05293441,2.67707705 4.1435213
1,1.38117373 6,2) t=0.437504678 [16] (3.5942049,2.35144877) tEnd=1 newWindSum=1
newOppSum=0 oppSum=0 windSum=1 windValue=1 oppValue=0 |
| 363 SkOpSegment::findNextOp from:[5] to:[3] start=11952564 end=11951100 |
| 364 bridgeOp current id=5 from=(6,2) to=(3.5942049,2.35144877) |
| 365 path.moveTo(3.00020218,3.99986529); |
| 366 path.lineTo(6,2); |
| 367 path.cubicTo(4.9557395,1.65191317, 4.15380764,1.90964866, 3.5942049,2.35144877); |
| 368 SkOpSegment::findNextOp simple |
| 369 SkOpSegment::markDone id=3 (5,2 1,3) t=0 [5] (5,2) tEnd=0.351448746 newWindSum=1
newOppSum=0 oppSum=0 windSum=1 windValue=1 oppValue=0 |
| 370 bridgeOp current id=3 from=(3.5942049,2.35144877) to=(5,2) |
| 371 SkOpSegment::findNextOp simple |
| 372 SkOpSegment::markDone id=2 (4.48402119,2.56391668 4.67430639,2.34861207 4.848612
31,2.15138769 5,2) t=0 [3] (4.48402119,2.56391668) tEnd=1 newWindSum=1 newOppSum
=0 oppSum=0 windSum=1 windValue=1 oppValue=0 |
| 373 bridgeOp current id=2 from=(5,2) to=(4.48402119,2.56391668) |
| 374 path.lineTo(5,2); |
| 375 path.cubicTo(4.84861231,2.15138769, 4.67430639,2.34861207, 4.48402119,2.56391668
); |
| 376 SkOpSegment::findNextOp |
| 377 SkOpAngle::dumpOne [1/14] next=1/13 sect=1/1 s=0.589250227 [19] e=1 [2] sgn=-1
windVal=1 windSum=1 oppVal=0 oppSum=0 |
| 378 SkOpAngle::dumpOne [1/13] next=6/7 sect=17/17 s=0.589250227 [19] e=0.589197265
[13] sgn=1 windVal=1 windSum=1 oppVal=0 oppSum=0 done unorderable |
| 379 SkOpAngle::dumpOne [6/7] next=6/6 sect=17/17 s=0.999932596 [18] e=1 [12] sgn=-1
windVal=1 windSum=-1 oppVal=0 oppSum=1 done unorderable operand |
| 380 SkOpAngle::dumpOne [6/6] next=1/14 sect=1/1 s=0.999932596 [18] e=0 [11] sgn=1 w
indVal=1 windSum=1 oppVal=0 oppSum=0 done operand |
| 381 SkOpSegment::activeOp id=1 t=0.589250227 tEnd=0.589197265 op=union miFrom=1 miTo
=0 suFrom=0 suTo=0 result=1 |
| 382 SkOpSegment::activeOp id=6 t=0.999932596 tEnd=1 op=union miFrom=0 miTo=0 suFrom=
0 suTo=1 result=1 |
| 383 SkOpSegment::activeOp id=6 t=0.999932596 tEnd=0 op=union miFrom=0 miTo=0 suFrom=
1 suTo=0 result=1 |
| 384 SkOpSegment::markDone id=1 (1,3 1.84861219,5.54583645 3.41736698,3.77081728 4.48
402119,2.56391668) t=0.589250227 [19] (3.00020218,3.99986529) tEnd=1 newWindSum=
1 newOppSum=0 oppSum=0 windSum=1 windValue=1 oppValue=0 |
| 385 SkOpSegment::findNextOp from:[1] to:[6] start=11952668 end=11951916 |
| 386 bridgeOp current id=1 from=(4.48402119,2.56391668) to=(3.00020218,3.99986529) |
| 387 path.cubicTo(4.04589319,3.0596509, 3.52305317,3.65123534, 3.00020218,3.99986529)
; |
| 388 path.close(); |
227 </div> | 389 </div> |
228 | 390 |
| 391 </div> |
| 392 |
229 <script type="text/javascript"> | 393 <script type="text/javascript"> |
230 | 394 |
231 var testDivs = [ | 395 var testDivs = [ |
232 loops59i, | 396 cubics45u_release, |
| 397 cubics45u_debug, |
233 ]; | 398 ]; |
234 | 399 |
235 var decimal_places = 3; // make this 3 to show more precision | 400 var decimal_places = 3; // make this 3 to show more precision |
236 | 401 |
237 var tests = []; | 402 var tests = []; |
238 var testLines = []; | 403 var testLines = []; |
239 var testTitles = []; | 404 var testTitles = []; |
240 var testIndex = 0; | 405 var testIndex = 0; |
241 var ctx; | 406 var ctx; |
242 | 407 |
(...skipping 10 matching lines...) Expand all Loading... |
253 var collect_bounds = false; | 418 var collect_bounds = false; |
254 var control_lines = 0; | 419 var control_lines = 0; |
255 var curve_t = false; | 420 var curve_t = false; |
256 var debug_xy = 1; | 421 var debug_xy = 1; |
257 var focus_enabled = false; | 422 var focus_enabled = false; |
258 var focus_on_selection = false; | 423 var focus_on_selection = false; |
259 var step_limit = 0; | 424 var step_limit = 0; |
260 var draw_active = false; | 425 var draw_active = false; |
261 var draw_add = false; | 426 var draw_add = false; |
262 var draw_angle = 0; | 427 var draw_angle = 0; |
| 428 var draw_coincidence = false; |
263 var draw_deriviatives = 0; | 429 var draw_deriviatives = 0; |
264 var draw_hints = false; | 430 var draw_hints = false; |
265 var draw_id = false; | 431 var draw_id = false; |
266 var draw_intersection = 0; | 432 var draw_intersection = 0; |
267 var draw_intersectT = false; | 433 var draw_intersectT = false; |
268 var draw_legend = true; | 434 var draw_legend = true; |
269 var draw_log = false; | 435 var draw_log = false; |
270 var draw_mark = false; | 436 var draw_mark = false; |
271 var draw_midpoint = false; | 437 var draw_midpoint = false; |
272 var draw_op = 0; | 438 var draw_op = 0; |
273 var draw_sequence = false; | 439 var draw_sequence = false; |
274 var draw_sort = 0; | 440 var draw_sort = 0; |
275 var draw_top = false; | 441 var draw_top = false; |
276 var draw_path = 3; | 442 var draw_path = 3; |
277 var draw_computed = 0; | 443 var draw_computed = 0; |
278 var retina_scale = !!window.devicePixelRatio; | 444 var retina_scale = !!window.devicePixelRatio; |
279 | 445 |
280 var activeCount = 0; | 446 var activeCount = 0; |
281 var addCount = 0; | 447 var addCount = 0; |
282 var angleCount = 0; | 448 var angleCount = 0; |
| 449 var coinCount = 0; |
283 var opCount = 0; | 450 var opCount = 0; |
284 var sectCount = 0; | 451 var sectCount = 0; |
285 var sortCount = 0; | 452 var sortCount = 0; |
286 var topCount = 0; | 453 var topCount = 0; |
287 var markCount = 0; | 454 var markCount = 0; |
288 var activeMax = 0; | 455 var activeMax = 0; |
289 var addMax = 0; | 456 var addMax = 0; |
290 var angleMax = 0; | 457 var angleMax = 0; |
| 458 var coinMax = 0; |
291 var sectMax = 0; | 459 var sectMax = 0; |
292 var sectMax2 = 0; | 460 var sectMax2 = 0; |
293 var sortMax = 0; | 461 var sortMax = 0; |
294 var topMax = 0; | 462 var topMax = 0; |
295 var markMax = 0; | 463 var markMax = 0; |
296 var opMax = 0; | 464 var opMax = 0; |
297 var stepMax = 0; | 465 var stepMax = 0; |
298 var lastIndex = 0; | 466 var lastIndex = 0; |
299 var hasPath = false; | 467 var hasPath = false; |
300 var hasComputedPath = false; | 468 var hasComputedPath = false; |
(...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
443 var MARK_SIMPLE_DONE_CUBIC = MARK_SIMPLE_DONE_CONIC + 1; | 611 var MARK_SIMPLE_DONE_CUBIC = MARK_SIMPLE_DONE_CONIC + 1; |
444 var MARK_DONE_UNARY_LINE = MARK_SIMPLE_DONE_CUBIC + 1; | 612 var MARK_DONE_UNARY_LINE = MARK_SIMPLE_DONE_CUBIC + 1; |
445 var MARK_DONE_UNARY_QUAD = MARK_DONE_UNARY_LINE + 1; | 613 var MARK_DONE_UNARY_QUAD = MARK_DONE_UNARY_LINE + 1; |
446 var MARK_DONE_UNARY_CONIC = MARK_DONE_UNARY_QUAD + 1; | 614 var MARK_DONE_UNARY_CONIC = MARK_DONE_UNARY_QUAD + 1; |
447 var MARK_DONE_UNARY_CUBIC = MARK_DONE_UNARY_CONIC + 1; | 615 var MARK_DONE_UNARY_CUBIC = MARK_DONE_UNARY_CONIC + 1; |
448 var MARK_ANGLE_LAST = MARK_DONE_UNARY_CUBIC + 1; | 616 var MARK_ANGLE_LAST = MARK_DONE_UNARY_CUBIC + 1; |
449 | 617 |
450 var COMPUTED_SET_1 = MARK_ANGLE_LAST + 1; | 618 var COMPUTED_SET_1 = MARK_ANGLE_LAST + 1; |
451 var COMPUTED_SET_2 = COMPUTED_SET_1 + 1; | 619 var COMPUTED_SET_2 = COMPUTED_SET_1 + 1; |
452 | 620 |
453 var ANGLE_AFTER = COMPUTED_SET_2; | 621 var ANGLE_AFTER = COMPUTED_SET_2 + 1; |
454 var ANGLE_AFTERPART = ANGLE_AFTER + 1; | 622 var ANGLE_AFTERPART = ANGLE_AFTER + 1; |
455 | 623 |
456 var ACTIVE_OP = ANGLE_AFTERPART + 1; | 624 var ACTIVE_OP = ANGLE_AFTERPART + 1; |
457 | 625 |
458 var FRAG_TYPE_LAST = ACTIVE_OP; | 626 var COIN_MAIN_SPAN = ACTIVE_OP + 1; |
| 627 var COIN_OPP_SPAN = COIN_MAIN_SPAN + 1; |
| 628 |
| 629 var FRAG_TYPE_LAST = COIN_OPP_SPAN; |
459 | 630 |
460 var REC_TYPE_UNKNOWN = -1; | 631 var REC_TYPE_UNKNOWN = -1; |
461 var REC_TYPE_PATH = 0; | 632 var REC_TYPE_PATH = 0; |
462 var REC_TYPE_PATH2 = 1; | 633 var REC_TYPE_PATH2 = 1; |
463 var REC_TYPE_SECT = 2; | 634 var REC_TYPE_SECT = 2; |
464 var REC_TYPE_ACTIVE = 3; | 635 var REC_TYPE_ACTIVE = 3; |
465 var REC_TYPE_ADD = 4; | 636 var REC_TYPE_ADD = 4; |
466 var REC_TYPE_SORT = 5; | 637 var REC_TYPE_SORT = 5; |
467 var REC_TYPE_OP = 6; | 638 var REC_TYPE_OP = 6; |
468 var REC_TYPE_MARK = 7; | 639 var REC_TYPE_MARK = 7; |
469 var REC_TYPE_COMPUTED = 8; | 640 var REC_TYPE_COMPUTED = 8; |
470 var REC_TYPE_COIN = 9; | 641 var REC_TYPE_COIN = 9; |
471 var REC_TYPE_ANGLE = 10; | 642 var REC_TYPE_ANGLE = 10; |
472 var REC_TYPE_ACTIVE_OP = 11; | 643 var REC_TYPE_ACTIVE_OP = 11; |
473 var REC_TYPE_AFTERPART = 12; | 644 var REC_TYPE_AFTERPART = 12; |
474 var REC_TYPE_TOP = 13; | 645 var REC_TYPE_TOP = 13; |
475 var REC_TYPE_LAST = REC_TYPE_TOP; | 646 var REC_TYPE_COINCIDENCE = 14; |
| 647 var REC_TYPE_LAST = REC_TYPE_COINCIDENCE; |
476 | 648 |
477 function strs_to_nums(strs) { | 649 function strs_to_nums(strs) { |
478 var result = []; | 650 var result = []; |
479 for (var idx = 1; idx < strs.length; ++idx) { | 651 for (var idx = 1; idx < strs.length; ++idx) { |
480 var str = strs[idx]; | 652 var str = strs[idx]; |
481 var num = parseFloat(str); | 653 var num = parseFloat(str); |
482 if (isNaN(num)) { | 654 if (isNaN(num)) { |
483 result.push(str); | 655 result.push(str); |
484 } else { | 656 } else { |
485 result.push(num); | 657 result.push(num); |
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
567 continue; | 739 continue; |
568 } | 740 } |
569 var opStart = "SkOpSegment::"; | 741 var opStart = "SkOpSegment::"; |
570 if (line.lastIndexOf(opStart, 0) === 0) { | 742 if (line.lastIndexOf(opStart, 0) === 0) { |
571 line = line.substr(opStart.length); | 743 line = line.substr(opStart.length); |
572 } | 744 } |
573 var angleStart = "SkOpAngle::"; | 745 var angleStart = "SkOpAngle::"; |
574 if (line.lastIndexOf(angleStart, 0) === 0) { | 746 if (line.lastIndexOf(angleStart, 0) === 0) { |
575 line = line.substr(angleStart.length); | 747 line = line.substr(angleStart.length); |
576 } | 748 } |
| 749 var coinStart = "SkOpCoincidence::"; |
| 750 if (line.lastIndexOf(coinStart, 0) === 0) { |
| 751 line = line.substr(coinStart.length); |
| 752 } |
577 var type = line.lastIndexOf("debugShowActiveSpans", 0) === 0 ? REC_TYPE_
ACTIVE | 753 var type = line.lastIndexOf("debugShowActiveSpans", 0) === 0 ? REC_TYPE_
ACTIVE |
| 754 : line.lastIndexOf("debugShowCoincidence", 0) === 0 ? REC_TYPE_C
OINCIDENCE |
578 : line.lastIndexOf("((SkOpSegment*)", 0) === 0 ? REC_TYPE_PATH2 | 755 : line.lastIndexOf("((SkOpSegment*)", 0) === 0 ? REC_TYPE_PATH2 |
579 : line.lastIndexOf("debugShowTs", 0) === 0 ? REC_TYPE_COIN | 756 : line.lastIndexOf("debugShowTs", 0) === 0 ? REC_TYPE_COIN |
580 : line.lastIndexOf("afterPart", 0) === 0 ? REC_TYPE_AFTERPART | 757 : line.lastIndexOf("afterPart", 0) === 0 ? REC_TYPE_AFTERPART |
581 : line.lastIndexOf("debugShow", 0) === 0 ? REC_TYPE_SECT | 758 : line.lastIndexOf("debugShow", 0) === 0 ? REC_TYPE_SECT |
582 : line.lastIndexOf("activeOp", 0) === 0 ? REC_TYPE_ACTIVE_OP | 759 : line.lastIndexOf("activeOp", 0) === 0 ? REC_TYPE_ACTIVE_OP |
583 : line.lastIndexOf("computed", 0) === 0 ? REC_TYPE_COMPUTED | 760 : line.lastIndexOf("computed", 0) === 0 ? REC_TYPE_COMPUTED |
584 : line.lastIndexOf("debugOne", 0) === 0 ? REC_TYPE_SORT | 761 : line.lastIndexOf("debugOne", 0) === 0 ? REC_TYPE_SORT |
585 : line.lastIndexOf("dumpOne", 0) === 0 ? REC_TYPE_SORT | 762 : line.lastIndexOf("dumpOne", 0) === 0 ? REC_TYPE_SORT |
586 : line.lastIndexOf("findTop", 0) === 0 ? REC_TYPE_TOP | 763 : line.lastIndexOf("findTop", 0) === 0 ? REC_TYPE_TOP |
587 : line.lastIndexOf("pathB.", 0) === 0 ? REC_TYPE_ADD | 764 : line.lastIndexOf("pathB.", 0) === 0 ? REC_TYPE_ADD |
(...skipping 13 matching lines...) Expand all Loading... |
601 records.push(record); | 778 records.push(record); |
602 } | 779 } |
603 record = []; | 780 record = []; |
604 recType = type; | 781 recType = type; |
605 lastLineNo = lineNo; | 782 lastLineNo = lineNo; |
606 } | 783 } |
607 var found = false; | 784 var found = false; |
608 switch (recType) { | 785 switch (recType) { |
609 case REC_TYPE_ACTIVE: | 786 case REC_TYPE_ACTIVE: |
610 found = match_regexp(line, lineNo, record, ACTIVE_LINE_SPAN, "de
bugShowActiveSpans" + | 787 found = match_regexp(line, lineNo, record, ACTIVE_LINE_SPAN, "de
bugShowActiveSpans" + |
611 " id=IDX LINE_VAL t=T_VAL PT_VAL tEnd=T_VAL windSum=OPT windValue=IDX oppValue=N
UM" | 788 " id=IDX LINE_VAL t=T_VAL PT_VAL tEnd=T_VAL windSum=OPT windValue=IDX" |
612 ) || match_regexp(line, lineNo, record, ACTIVE_QUAD_SPAN, "debug
ShowActiveSpans" + | 789 ) || match_regexp(line, lineNo, record, ACTIVE_QUAD_SPAN, "debug
ShowActiveSpans" + |
613 " id=IDX QUAD_VAL t=T_VAL PT_VAL tEnd=T_VAL windSum=OPT windValue=IDX oppValue=N
UM" | 790 " id=IDX QUAD_VAL t=T_VAL PT_VAL tEnd=T_VAL windSum=OPT windValue=IDX" |
614 ) || match_regexp(line, lineNo, record, ACTIVE_CONIC_SPAN, "debu
gShowActiveSpans" + | 791 ) || match_regexp(line, lineNo, record, ACTIVE_CONIC_SPAN, "debu
gShowActiveSpans" + |
615 " id=IDX CONIC_VAL t=T_VAL PT_VAL tEnd=T_VAL windSum=OPT windValue=IDX oppValue=
NUM" | 792 " id=IDX CONIC_VAL t=T_VAL PT_VAL tEnd=T_VAL windSum=OPT windValue=IDX" |
616 ) || match_regexp(line, lineNo, record, ACTIVE_CUBIC_SPAN, "debu
gShowActiveSpans" + | 793 ) || match_regexp(line, lineNo, record, ACTIVE_CUBIC_SPAN, "debu
gShowActiveSpans" + |
617 " id=IDX CUBIC_VAL t=T_VAL PT_VAL tEnd=T_VAL windSum=OPT windValue=IDX oppValue=
NUM" | 794 " id=IDX CUBIC_VAL t=T_VAL PT_VAL tEnd=T_VAL windSum=OPT windValue=IDX" |
| 795 ) || match_regexp(line, lineNo, record, ACTIVE_LINE_SPAN, "debug
ShowActiveSpans" + |
| 796 " id=IDX LINE_VAL t=T_VAL PT_VAL tEnd=T_VAL windSum=OPT oppSum=OPT windValue=IDX
oppValue=NUM" |
| 797 ) || match_regexp(line, lineNo, record, ACTIVE_QUAD_SPAN, "debug
ShowActiveSpans" + |
| 798 " id=IDX QUAD_VAL t=T_VAL PT_VAL tEnd=T_VAL windSum=OPT oppSum=OPT windValue=IDX
oppValue=NUM" |
| 799 ) || match_regexp(line, lineNo, record, ACTIVE_CONIC_SPAN, "debu
gShowActiveSpans" + |
| 800 " id=IDX CONIC_VAL t=T_VAL PT_VAL tEnd=T_VAL windSum=OPT oppSum=OPT windValue=ID
X oppValue=NUM" |
| 801 ) || match_regexp(line, lineNo, record, ACTIVE_CUBIC_SPAN, "debu
gShowActiveSpans" + |
| 802 " id=IDX CUBIC_VAL t=T_VAL PT_VAL tEnd=T_VAL windSum=OPT oppSum=OPT windValue=ID
X oppValue=NUM" |
618 ); | 803 ); |
619 break; | 804 break; |
620 case REC_TYPE_ACTIVE_OP: | 805 case REC_TYPE_ACTIVE_OP: |
621 found = match_regexp(line, lineNo, record, ACTIVE_OP, "activeOp"
+ | 806 found = match_regexp(line, lineNo, record, ACTIVE_OP, "activeOp"
+ |
622 " id=IDX t=T_VAL tEnd=T_VAL op=OPER miFrom=NUM miTo=NUM suFrom=NUM suTo=NUM resu
lt=IDX" | 807 " id=IDX t=T_VAL tEnd=T_VAL op=OPER miFrom=NUM miTo=NUM suFrom=NUM suTo=NUM resu
lt=IDX" |
623 ); | 808 ); |
624 break; | 809 break; |
625 case REC_TYPE_ADD: | 810 case REC_TYPE_ADD: |
626 if (match_regexp(line, lineNo, record, ADD_MOVETO, "PATH.moveTo(
P_VAL);")) { | 811 if (match_regexp(line, lineNo, record, ADD_MOVETO, "PATH.moveTo(
P_VAL);")) { |
627 moveX = record[1][0]; | 812 moveX = record[1][0]; |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
663 || match_regexp(line, lineNo, record, PATH_CONIC, "afterPart
CONIC_VAL") | 848 || match_regexp(line, lineNo, record, PATH_CONIC, "afterPart
CONIC_VAL") |
664 || match_regexp(line, lineNo, record, PATH_CUBIC, "afterPart
CUBIC_VAL") | 849 || match_regexp(line, lineNo, record, PATH_CUBIC, "afterPart
CUBIC_VAL") |
665 break; | 850 break; |
666 case REC_TYPE_ANGLE: | 851 case REC_TYPE_ANGLE: |
667 found = match_regexp(line, lineNo, record, ANGLE_AFTER, "after "
+ | 852 found = match_regexp(line, lineNo, record, ANGLE_AFTER, "after "
+ |
668 "[IDX/IDX] NUM/NUM tStart=T_VAL tEnd=T_VAL < [IDX/IDX] NUM/NUM tStart=T_VAL tEnd
=T_VAL < [IDX/IDX] NUM/NUM tStart=T_VAL tEnd=T_VAL T_F IDX"); | 853 "[IDX/IDX] NUM/NUM tStart=T_VAL tEnd=T_VAL < [IDX/IDX] NUM/NUM tStart=T_VAL tEnd
=T_VAL < [IDX/IDX] NUM/NUM tStart=T_VAL tEnd=T_VAL T_F IDX"); |
669 break; | 854 break; |
670 case REC_TYPE_COIN: | 855 case REC_TYPE_COIN: |
671 found = true; | 856 found = true; |
672 break; | 857 break; |
| 858 case REC_TYPE_COINCIDENCE: |
| 859 found = match_regexp(line, lineNo, record, COIN_MAIN_SPAN, "debu
gShowCoincidence" + |
| 860 " + id=IDX t=T_VAL tEnd=T_VAL" |
| 861 ) || match_regexp(line, lineNo, record, COIN_OPP_SPAN, "debugSho
wCoincidence" + |
| 862 " - id=IDX t=T_VAL tEnd=T_VAL" |
| 863 ); |
| 864 break; |
673 case REC_TYPE_COMPUTED: | 865 case REC_TYPE_COMPUTED: |
674 found = line == "computed quadratics given" | 866 found = line == "computed quadratics given" |
675 || match_regexp(line, lineNo, record, COMPUTED_SET_1, "compute
d quadratics set 1" | 867 || match_regexp(line, lineNo, record, COMPUTED_SET_1, "compute
d quadratics set 1" |
676 ) || match_regexp(line, lineNo, record, COMPUTED_SET_2, "compute
d quadratics set 2" | 868 ) || match_regexp(line, lineNo, record, COMPUTED_SET_2, "compute
d quadratics set 2" |
677 ) || match_regexp(line, lineNo, record, PATH_QUAD, " QUAD_VAL," | 869 ) || match_regexp(line, lineNo, record, PATH_QUAD, " QUAD_VAL," |
678 ) || match_regexp(line, lineNo, record, PATH_CONIC, " CONIC_VAL
," | 870 ) || match_regexp(line, lineNo, record, PATH_CONIC, " CONIC_VAL
," |
679 ) || match_regexp(line, lineNo, record, PATH_CUBIC, " CUBIC_VAL
," | 871 ) || match_regexp(line, lineNo, record, PATH_CUBIC, " CUBIC_VAL
," |
680 ); | 872 ); |
681 break; | 873 break; |
682 case REC_TYPE_PATH: | 874 case REC_TYPE_PATH: |
(...skipping 461 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1144 break; | 1336 break; |
1145 } | 1337 } |
1146 { | 1338 { |
1147 var curve = curvePartialByID(test, frags[0], frags[4], f
rags[5]); | 1339 var curve = curvePartialByID(test, frags[0], frags[4], f
rags[5]); |
1148 curve_extremes(curve, angleBounds); | 1340 curve_extremes(curve, angleBounds); |
1149 curve = curvePartialByID(test, frags[6], frags[10], frag
s[11]); | 1341 curve = curvePartialByID(test, frags[6], frags[10], frag
s[11]); |
1150 curve_extremes(curve, angleBounds); | 1342 curve_extremes(curve, angleBounds); |
1151 curve = curvePartialByID(test, frags[12], frags[16], fra
gs[17]); | 1343 curve = curvePartialByID(test, frags[12], frags[16], fra
gs[17]); |
1152 } | 1344 } |
1153 break; | 1345 break; |
| 1346 case REC_TYPE_COINCIDENCE: |
| 1347 if (!draw_coincidence) { |
| 1348 break; |
| 1349 } |
| 1350 { |
| 1351 var curve = curvePartialByID(test, frags[0], frags[1], f
rags[2]); |
| 1352 curve_extremes(curve, angleBounds); |
| 1353 } |
| 1354 break; |
1154 case REC_TYPE_SORT: | 1355 case REC_TYPE_SORT: |
1155 if (!draw_sort) { | 1356 if (!draw_sort) { |
1156 break; | 1357 break; |
1157 } | 1358 } |
1158 if (fragType == SORT_UNARY || fragType == SORT_BINARY) { | 1359 if (fragType == SORT_UNARY || fragType == SORT_BINARY) { |
1159 var curve = curvePartialByID(test, frags[0], frags[6], f
rags[8]); | 1360 var curve = curvePartialByID(test, frags[0], frags[6], f
rags[8]); |
1160 curve_extremes(curve, angleBounds); | 1361 curve_extremes(curve, angleBounds); |
1161 } | 1362 } |
1162 break; | 1363 break; |
1163 case REC_TYPE_TOP: | 1364 case REC_TYPE_TOP: |
(...skipping 1246 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2410 var secondPath = test.length; | 2611 var secondPath = test.length; |
2411 var closeCount = 0; | 2612 var closeCount = 0; |
2412 logStart = -1; | 2613 logStart = -1; |
2413 logRange = 0; | 2614 logRange = 0; |
2414 // find last active rec type at this step | 2615 // find last active rec type at this step |
2415 var curType = test[0]; | 2616 var curType = test[0]; |
2416 var curStep = 0; | 2617 var curStep = 0; |
2417 var hasOp = false; | 2618 var hasOp = false; |
2418 var lastActive = 0; | 2619 var lastActive = 0; |
2419 var lastAdd = 0; | 2620 var lastAdd = 0; |
| 2621 var lastCoin = 0; |
2420 var lastSect = 0; | 2622 var lastSect = 0; |
2421 var lastSort = 0; | 2623 var lastSort = 0; |
2422 var lastMark = 0; | 2624 var lastMark = 0; |
2423 var lastTop = 0; | 2625 var lastTop = 0; |
2424 activeCount = 0; | 2626 activeCount = 0; |
2425 addCount = 0; | 2627 addCount = 0; |
2426 angleCount = 0; | 2628 angleCount = 0; |
2427 opCount = 0; | 2629 opCount = 0; |
2428 sectCount = 0; | 2630 sectCount = 0; |
2429 sortCount = 0; | 2631 sortCount = 0; |
2430 topCount = 0; | 2632 topCount = 0; |
2431 markCount = 0; | 2633 markCount = 0; |
2432 activeMax = 0; | 2634 activeMax = 0; |
2433 addMax = 0; | 2635 addMax = 0; |
2434 angleMax = 0; | 2636 angleMax = 0; |
| 2637 coinMax = 0; |
2435 opMax = 0; | 2638 opMax = 0; |
2436 sectMax = 0; | 2639 sectMax = 0; |
2437 sectMax2 = 0; | 2640 sectMax2 = 0; |
2438 sortMax = 0; | 2641 sortMax = 0; |
2439 topMax = 0; | 2642 topMax = 0; |
2440 markMax = 0; | 2643 markMax = 0; |
2441 lastIndex = test.length - 3; | 2644 lastIndex = test.length - 3; |
2442 for (var tIndex = 0; tIndex < test.length; tIndex += 3) { | 2645 for (var tIndex = 0; tIndex < test.length; tIndex += 3) { |
2443 var recType = test[tIndex]; | 2646 var recType = test[tIndex]; |
2444 if (!typeof recType == 'number' || recType < REC_TYPE_UNKNOWN || recType
> REC_TYPE_LAST) { | 2647 if (!typeof recType == 'number' || recType < REC_TYPE_UNKNOWN || recType
> REC_TYPE_LAST) { |
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2511 } | 2714 } |
2512 if (recType == REC_TYPE_ANGLE) { | 2715 if (recType == REC_TYPE_ANGLE) { |
2513 ++angleMax; | 2716 ++angleMax; |
2514 if (draw_angle == 0 || draw_angle == 3 || !inStepRange) { | 2717 if (draw_angle == 0 || draw_angle == 3 || !inStepRange) { |
2515 continue; | 2718 continue; |
2516 } | 2719 } |
2517 lastAngle = tIndex; | 2720 lastAngle = tIndex; |
2518 ++angleCount; | 2721 ++angleCount; |
2519 bumpStep = true; | 2722 bumpStep = true; |
2520 } | 2723 } |
| 2724 if (recType == REC_TYPE_COINCIDENCE) { |
| 2725 ++coinMax; |
| 2726 if (!draw_coincidence || !inStepRange) { |
| 2727 continue; |
| 2728 } |
| 2729 lastCoin = tIndex; |
| 2730 ++coinCount; |
| 2731 bumpStep = true; |
| 2732 } |
2521 if (recType == REC_TYPE_SECT) { | 2733 if (recType == REC_TYPE_SECT) { |
2522 if (records.length != 2) { | 2734 if (records.length != 2) { |
2523 console.log("expect only two elements: " + records.length); | 2735 console.log("expect only two elements: " + records.length); |
2524 throw "stop execution"; | 2736 throw "stop execution"; |
2525 } | 2737 } |
2526 ++sectMax; | 2738 ++sectMax; |
2527 var sectBump = 1; | 2739 var sectBump = 1; |
2528 switch (fragType) { | 2740 switch (fragType) { |
2529 case INTERSECT_LINE: | 2741 case INTERSECT_LINE: |
2530 case INTERSECT_QUAD_LINE: | 2742 case INTERSECT_QUAD_LINE: |
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2609 if (bumpStep) { | 2821 if (bumpStep) { |
2610 lastIndex = tIndex; | 2822 lastIndex = tIndex; |
2611 logStart = test[tIndex + 1]; | 2823 logStart = test[tIndex + 1]; |
2612 logRange = records.length / 2; | 2824 logRange = records.length / 2; |
2613 ++curStep; | 2825 ++curStep; |
2614 } | 2826 } |
2615 } | 2827 } |
2616 stepMax = (draw_add ? addMax : 0) | 2828 stepMax = (draw_add ? addMax : 0) |
2617 + (draw_active ? activeMax : 0) | 2829 + (draw_active ? activeMax : 0) |
2618 + (draw_angle ? angleMax : 0) | 2830 + (draw_angle ? angleMax : 0) |
| 2831 + (draw_coincidence ? coinMax : 0) |
2619 + (draw_op ? opMax : 0) | 2832 + (draw_op ? opMax : 0) |
2620 + (draw_sort ? sortMax : 0) | 2833 + (draw_sort ? sortMax : 0) |
2621 + (draw_top ? topMax : 0) | 2834 + (draw_top ? topMax : 0) |
2622 + (draw_mark ? markMax : 0) | 2835 + (draw_mark ? markMax : 0) |
2623 + (draw_intersection == 2 ? sectMax : draw_intersection == 3 ? sectM
ax2 : 0); | 2836 + (draw_intersection == 2 ? sectMax : draw_intersection == 3 ? sectM
ax2 : 0); |
2624 if (stepMax == 0) { | 2837 if (stepMax == 0) { |
2625 stepMax = addMax + activeMax + angleMax + opMax + sortMax + topMax + mar
kMax; | 2838 stepMax = addMax + activeMax + angleMax + coinMax + opMax + sortMax + to
pMax + markMax; |
2626 } | 2839 } |
2627 drawnPts = []; | 2840 drawnPts = []; |
2628 drawnLines = []; | 2841 drawnLines = []; |
2629 drawnQuads = []; | 2842 drawnQuads = []; |
2630 drawnConics = []; | 2843 drawnConics = []; |
2631 drawnCubics = []; | 2844 drawnCubics = []; |
2632 focusXmin = focusYmin = Infinity; | 2845 focusXmin = focusYmin = Infinity; |
2633 focusXmax = focusYmax = -Infinity; | 2846 focusXmax = focusYmax = -Infinity; |
2634 var pathIndex = 0; | 2847 var pathIndex = 0; |
2635 var opLetter = 'S'; | 2848 var opLetter = 'S'; |
(...skipping 274 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2910 case PATH_CUBIC: | 3123 case PATH_CUBIC: |
2911 drawCubic(frags[0], frags[1], frags[2], frags[3], | 3124 drawCubic(frags[0], frags[1], frags[2], frags[3], |
2912 frags[4], frags[5], frags[6], frags[7]); | 3125 frags[4], frags[5], frags[6], frags[7]); |
2913 break; | 3126 break; |
2914 default: | 3127 default: |
2915 console.log("unknown REC_TYPE_AFTERPART frag type: "
+ fragType); | 3128 console.log("unknown REC_TYPE_AFTERPART frag type: "
+ fragType); |
2916 throw "stop execution"; | 3129 throw "stop execution"; |
2917 } | 3130 } |
2918 ++afterIndex; | 3131 ++afterIndex; |
2919 break; | 3132 break; |
| 3133 case REC_TYPE_COINCIDENCE: |
| 3134 if (!draw_coincidence || (step_limit > 0 && tIndex < lastCoi
n)) { |
| 3135 continue; |
| 3136 } |
| 3137 focus_enabled = true; |
| 3138 ctx.lineWidth = 3; |
| 3139 ctx.strokeStyle = "rgba(127,45,63, 0.3)"; |
| 3140 var curve = curvePartialByID(test, frags[0], frags[1], frags
[2]); |
| 3141 drawCurve(curve); |
| 3142 break; |
2920 case REC_TYPE_SECT: | 3143 case REC_TYPE_SECT: |
2921 if (!draw_intersection) { | 3144 if (!draw_intersection) { |
2922 continue; | 3145 continue; |
2923 } | 3146 } |
2924 if (draw_intersection != 1 && (step_limit > 0 && tIndex < la
stSect)) { | 3147 if (draw_intersection != 1 && (step_limit > 0 && tIndex < la
stSect)) { |
2925 continue; | 3148 continue; |
2926 } | 3149 } |
2927 // draw_intersection == 1 : show all | 3150 // draw_intersection == 1 : show all |
2928 // draw_intersection == 2 : step == 0 ? show all : show inte
rsection line #step | 3151 // draw_intersection == 2 : step == 0 ? show all : show inte
rsection line #step |
2929 // draw_intersection == 3 : step == 0 ? show all : show inte
rsection #step | 3152 // draw_intersection == 3 : step == 0 ? show all : show inte
rsection #step |
(...skipping 434 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3364 for (var idx = 0; idx < logRange; ++idx) { | 3587 for (var idx = 0; idx < logRange; ++idx) { |
3365 ctx.fillText(lines[logStart + idx], 50, top + 18 + 10 * idx); | 3588 ctx.fillText(lines[logStart + idx], 50, top + 18 + 10 * idx); |
3366 } | 3589 } |
3367 ctx.fillStyle = "rgba(0,0,0, 0.5)"; | 3590 ctx.fillStyle = "rgba(0,0,0, 0.5)"; |
3368 if (logStart + logRange < lines.length) { | 3591 if (logStart + logRange < lines.length) { |
3369 ctx.fillText(lines[logStart + logRange], 50, top + 18 + 10 * logRang
e); | 3592 ctx.fillText(lines[logStart + logRange], 50, top + 18 + 10 * logRang
e); |
3370 } | 3593 } |
3371 } | 3594 } |
3372 if (draw_legend) { | 3595 if (draw_legend) { |
3373 var pos = 0; | 3596 var pos = 0; |
3374 var drawSomething = draw_add | draw_active | draw_angle | draw_sort | dr
aw_mark; | 3597 var drawSomething = draw_add | draw_active | draw_angle | draw_coinciden
ce | draw_sort | draw_mark; |
3375 // drawBox(pos++, "yellow", "black", opLetter, true, ''); | 3598 // drawBox(pos++, "yellow", "black", opLetter, true, ''); |
3376 drawBox(pos++, "rgba(0,0,255, 0.3)", "black", draw_intersection > 1 ? se
ctCount : sectMax2, draw_intersection, intersectionKey); | 3599 drawBox(pos++, "rgba(0,0,255, 0.3)", "black", draw_intersection > 1 ? se
ctCount : sectMax2, draw_intersection, intersectionKey); |
3377 drawBox(pos++, "rgba(0,0,255, 0.3)", "black", draw_add ? addCount : addM
ax, draw_add, addKey); | 3600 drawBox(pos++, "rgba(0,0,255, 0.3)", "black", draw_add ? addCount : addM
ax, draw_add, addKey); |
3378 drawBox(pos++, "rgba(0,0,255, 0.3)", "black", draw_active ? activeCount
: activeMax, draw_active, activeKey); | 3601 drawBox(pos++, "rgba(0,0,255, 0.3)", "black", draw_active ? activeCount
: activeMax, draw_active, activeKey); |
3379 drawBox(pos++, "rgba(127,127,0, 0.3)", "black", draw_angle ? angleCount
: angleMax, draw_angle, angleKey); | 3602 drawBox(pos++, "rgba(127,127,0, 0.3)", "black", draw_angle ? angleCount
: angleMax, draw_angle, angleKey); |
| 3603 drawBox(pos++, "rgba(127,127,0, 0.3)", "black", draw_coincidence ? coinC
ount : coinMax, draw_coincidence, coincidenceKey); |
3380 drawBox(pos++, "rgba(127,127,0, 0.3)", "black", draw_op ? opCount : opMa
x, draw_op, opKey); | 3604 drawBox(pos++, "rgba(127,127,0, 0.3)", "black", draw_op ? opCount : opMa
x, draw_op, opKey); |
3381 drawBox(pos++, "rgba(127,127,0, 0.3)", "black", draw_sort ? sortCount :
sortMax, draw_sort, sortKey); | 3605 drawBox(pos++, "rgba(127,127,0, 0.3)", "black", draw_sort ? sortCount :
sortMax, draw_sort, sortKey); |
3382 drawBox(pos++, "rgba(127,127,0, 0.3)", "black", draw_top ? topCount : to
pMax, draw_top, topKey); | 3606 drawBox(pos++, "rgba(127,127,0, 0.3)", "black", draw_top ? topCount : to
pMax, draw_top, topKey); |
3383 drawBox(pos++, "rgba(127,0,127, 0.3)", "black", draw_mark ? markCount :
markMax, draw_mark, markKey); | 3607 drawBox(pos++, "rgba(127,0,127, 0.3)", "black", draw_mark ? markCount :
markMax, draw_mark, markKey); |
3384 drawBox(pos++, "black", "white", | 3608 drawBox(pos++, "black", "white", |
3385 (new Array('P', 'P1', 'P2', 'P'))[draw_path], draw_path != 0, pa
thKey); | 3609 (new Array('P', 'P1', 'P2', 'P'))[draw_path], draw_path != 0, pa
thKey); |
3386 drawBox(pos++, "rgba(0,63,0, 0.7)", "white", | 3610 drawBox(pos++, "rgba(0,63,0, 0.7)", "white", |
3387 (new Array('Q', 'Q', 'C', 'QC', 'Qc', 'Cq'))[draw_computed], | 3611 (new Array('Q', 'Q', 'C', 'QC', 'Qc', 'Cq'))[draw_computed], |
3388 draw_computed != 0, computedKey); | 3612 draw_computed != 0, computedKey); |
3389 drawBox(pos++, "green", "black", step_limit, drawSomething, ''); | 3613 drawBox(pos++, "green", "black", step_limit, drawSomething, ''); |
(...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3553 console.log("}; //"); | 3777 console.log("}; //"); |
3554 } | 3778 } |
3555 } | 3779 } |
3556 } | 3780 } |
3557 } | 3781 } |
3558 | 3782 |
3559 var activeKey = 'a'; | 3783 var activeKey = 'a'; |
3560 var pathKey = 'b'; | 3784 var pathKey = 'b'; |
3561 var pathBackKey = 'B'; | 3785 var pathBackKey = 'B'; |
3562 var centerKey = 'c'; | 3786 var centerKey = 'c'; |
| 3787 var coincidenceKey = 'C'; |
3563 var addKey = 'd'; | 3788 var addKey = 'd'; |
3564 var deriviativesKey = 'f'; | 3789 var deriviativesKey = 'f'; |
3565 var angleKey = 'g'; | 3790 var angleKey = 'g'; |
3566 var angleBackKey = 'G'; | 3791 var angleBackKey = 'G'; |
3567 var intersectionKey = 'i'; | 3792 var intersectionKey = 'i'; |
3568 var intersectionBackKey = 'I'; | 3793 var intersectionBackKey = 'I'; |
3569 var sequenceKey = 'j'; | 3794 var sequenceKey = 'j'; |
3570 var midpointKey = 'k'; | 3795 var midpointKey = 'k'; |
3571 var logKey = 'l'; | 3796 var logKey = 'l'; |
3572 var logToConsoleKey = 'L'; | 3797 var logToConsoleKey = 'L'; |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3620 redraw(); | 3845 redraw(); |
3621 break; | 3846 break; |
3622 case angleBackKey: | 3847 case angleBackKey: |
3623 draw_angle = (draw_angle + 2) % 3; | 3848 draw_angle = (draw_angle + 2) % 3; |
3624 redraw(); | 3849 redraw(); |
3625 break; | 3850 break; |
3626 case centerKey: | 3851 case centerKey: |
3627 setScale(xmin, xmax, ymin, ymax); | 3852 setScale(xmin, xmax, ymin, ymax); |
3628 redraw(); | 3853 redraw(); |
3629 break; | 3854 break; |
| 3855 case coincidenceKey: |
| 3856 draw_coincidence ^= true; |
| 3857 redraw(); |
| 3858 break; |
3630 case controlLinesBackKey: | 3859 case controlLinesBackKey: |
3631 control_lines = (control_lines + 3) % 4; | 3860 control_lines = (control_lines + 3) % 4; |
3632 redraw(); | 3861 redraw(); |
3633 break; | 3862 break; |
3634 case controlLinesKey: | 3863 case controlLinesKey: |
3635 control_lines = (control_lines + 1) % 4; | 3864 control_lines = (control_lines + 1) % 4; |
3636 redraw(); | 3865 redraw(); |
3637 break; | 3866 break; |
3638 case computedBackKey: | 3867 case computedBackKey: |
3639 draw_computed = (draw_computed + 5) % 6; | 3868 draw_computed = (draw_computed + 5) % 6; |
(...skipping 283 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3923 </script> | 4152 </script> |
3924 </head> | 4153 </head> |
3925 | 4154 |
3926 <body onLoad="start();"> | 4155 <body onLoad="start();"> |
3927 <canvas id="canvas" width="750" height="500" | 4156 <canvas id="canvas" width="750" height="500" |
3928 onmousemove="handleMouseOver()" | 4157 onmousemove="handleMouseOver()" |
3929 onclick="handleMouseClick()" | 4158 onclick="handleMouseClick()" |
3930 ></canvas > | 4159 ></canvas > |
3931 </body> | 4160 </body> |
3932 </html> | 4161 </html> |
OLD | NEW |