Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(635)

Side by Side Diff: tools/pathops_visualizer.htm

Issue 2357353002: split tight quads and cubics (Closed)
Patch Set: fix linux build Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « tools/pathops_sorter.htm ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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="tiger8b_h_1"> 5 <div id="loop17">
6 seg=1 {{{{494.348663f, 224.583771f}, {494.365143f, 224.633194f}, {494.376404f, 2 24.684067f}}}, 0.998645842f} 6 seg=1 {{{1, 2}, {0, 3}, {-0.333333343f, 3.33333325f}, {0.833333373f, 3.5f}}}
7 seg=2 {{{494.376404f, 224.684067f}, {492.527069f, 224.218475f}, {492.952789f, 22 4.005585f}}} 7 seg=2 {{{0.833333373f, 3.5f}, {1, 2}}}
8 seg=3 {{{492.952789f, 224.005585f}, {494.375336f, 224.679337f}, {494.376038f, 22 4.682449f}}} 8 op sect
9 seg=4 {{{494.376038f, 224.682449f}, {494.37619f, 224.68309f}}} 9 seg=3 {{{0, 3}, {-0.333333343f, 3.33333325f}, {0.833333373f, 3.5f}, {1, 2}}}
10 seg=5 {{{494.37619f, 224.68309f}, {494.634338f, 225.414886f}, {494.895874f, 225. 840698f}}} 10 seg=4 {{{1, 2}, {0, 3}}}
11 seg=6 {{{494.895874f, 225.840698f}, {494.348663f, 224.583771f}}} 11 debugShowCubicLineIntersection wtTs[0]=0 {{{0,3}, {-0.333333343,3.33333325}, {0. 833333373,3.5}, {1,2}}} {{0,3}} wtTs[1]=1 {{1,2}} wnTs[0]=1 {{{1,2}, {0,3}}} wnT s[1]=0
12 debugShowConicQuadIntersection wtTs[0]=1 {{{{494.348663,224.583771}, {494.365143 ,224.633194}, {494.376404,224.684067}}}, 0.998645842} {{494.376404,224.684067}} wnTs[0]=0 {{{494.376404,224.684067}, {492.527069,224.218475}, {492.952789,224.00 5585}}} 12 id=1 1=(0,1) [4,2] id=2 2=(0,0.5) [1] 4=(0.5,1) [1]
13 id=1 1=(0,1) [4] id=2 4=(0.5,1) [1] 13 id=1 1=(0,0.5) [4] 3=(0.5,1) [2,4] id=2 2=(0,0) [3] 4=(0.5,1) [3,1]
14 id=1 1=(0,1) [6] id=2 6=(0.75,1) [1] 14 id=1 1=(0,0.5) [4] 3=(0.5,0.75) [4] 5=(1,1) [2] id=2 2=(0,0) [5] 4=(0.5,1) [3,1]
15 id=1 3=(0.5,1) [6] id=2 6=(0.75,1) [3] 15 id=1 1=(0,0.5) [4] 5=(1,1) [2] id=2 2=(0,0) [5] 4=(0.5,0.75) [1]
16 id=1 3=(0.5,1) [8] id=2 8=(0.875,1) [3] 16 id=1 7=(0.25,0.5) [4] 5=(1,1) [2] id=2 2=(0,0) [5] 4=(0.5,0.75) [7]
17 id=1 5=(0.75,1) [8] id=2 8=(0.875,1) [5] 17 id=1 7=(0.25,0.375) [4] 9=(0.375,0.5) [4] 5=(1,1) [2] id=2 2=(0,0) [5] 4=(0.5,0. 75) [9,7]
18 id=1 7=(0.875,1) [8] id=2 8=(0.875,1) [7] 18 id=1 7=(0.25,0.375) [8,4] 5=(1,1) [2] id=2 2=(0,0) [5] 4=(0.5,0.625) [7] 8=(0.62 5,0.75) [7]
19 id=1 7=(0.875,1) [10] id=2 10=(0.9375,1) [7] 19 id=1 7=(0.25,0.375) [10,8] 5=(1,1) [2] id=2 2=(0,0) [5] 10=(0.5625,0.625) [7] 8= (0.625,0.75) [7]
20 id=1 (empty) id=2 (empty) 20 id=1 11=(0.3125,0.375) [8] 5=(1,1) [2] id=2 2=(0,0) [5] 8=(0.625,0.75) [11]
21 debugShowConicQuadIntersection no intersect {{{{494.348663,224.583771}, {494.365 143,224.633194}, {494.376404,224.684067}}}, 0.998645842} {{{492.952789,224.00558 5}, {494.375336,224.679337}, {494.376038,224.682449}}} 21 id=1 11=(0.3125,0.375) [8] 5=(1,1) [2] id=2 2=(0,0) [5] 8=(0.625,0.6875) [11]
22 debugShowConicLineIntersection wtTs[0]=0.988457533 {{{{494.348663,224.583771}, { 494.365143,224.633194}, {494.376404,224.684067}}}, 0.998645842} {{494.376038,224 .682449}} wnTs[0]=0 {{{494.376038,224.682449}, {494.37619,224.68309}}} 22 id=1 13=(0.34375,0.375) [8] 5=(1,1) [2] id=2 2=(0,0) [5] 8=(0.625,0.6875) [13]
23 SkOpSegment::addT insert t=0.988457533 segID=1 spanID=13 23 id=1 13=(0.34375,0.375) [8] 5=(1,1) [2] id=2 2=(0,0) [5] 8=(0.625,0.65625) [13]
24 debugShowConicQuadIntersection no intersect {{{{494.348663,224.583771}, {494.365 143,224.633194}, {494.376404,224.684067}}}, 0.998645842} {{{494.37619,224.68309} , {494.634338,225.414886}, {494.895874,225.840698}}} 24 id=1 15=(0.359375,0.375) [8] 5=(1,1) [2] id=2 2=(0,0) [5] 8=(0.625,0.65625) [15]
25 debugShowConicLineIntersection wtTs[0]=0 {{{{494.348663,224.583771}, {494.365143 ,224.633194}, {494.376404,224.684067}}}, 0.998645842} {{494.348663,224.583771}} wnTs[0]=1 {{{494.895874,225.840698}, {494.348663,224.583771}}} 25 id=1 15=(0.359375,0.375) [8] 5=(1,1) [2] id=2 2=(0,0) [5] 8=(0.625,0.640625) [15 ]
26 debugShowQuadIntersection wtTs[0]=1 {{{494.376404,224.684067}, {492.527069,224.2 18475}, {492.952789,224.005585}}} {{492.952789,224.005585}} wnTs[0]=0 {{{492.952 789,224.005585}, {494.375336,224.679337}, {494.376038,224.682449}}} 26 id=1 15=(0.359375,0.367188) [8] 17=(0.367188,0.375) [8] 5=(1,1) [2] id=2 2=(0,0) [5] 8=(0.625,0.640625) [17,15]
27 debugShowQuadLineIntersection no intersect {{{494.376404,224.684067}, {492.52706 9,224.218475}, {492.952789,224.005585}}} {{{494.376038,224.682449}, {494.37619,2 24.68309}}} 27 id=1 15=(0.359375,0.367188) [18] 5=(1,1) [2] id=2 2=(0,0) [5] 18=(0.632813,0.640 625) [15]
28 id=1 1=(0,0.5) [2] id=2 2=(0,1) [1] 28 id=1 19=(0.363281,0.367188) [18] 5=(1,1) [2] id=2 2=(0,0) [5] 18=(0.632813,0.640 625) [19]
29 id=1 1=(0,0.25) [2] id=2 2=(0,1) [1] 29 setPerp t=0.36328125 cPt=(0.110739922,3.22537946) != oppT=0.627603681 fPerpPt=(0 .110965509,3.21864052)
30 id=1 (empty) id=2 (empty) 30 setPerp t=0.3671875 cPt=(0.115765816,3.22551414) != oppT=0.636601379 fPerpPt=(0. 115710094,3.22827643)
31 debugShowQuadIntersection no intersect {{{494.376404,224.684067}, {492.527069,22 4.218475}, {492.952789,224.005585}}} {{{494.37619,224.68309}, {494.634338,225.41 4886}, {494.895874,225.840698}}} 31 setPerp t=0.6328125 cPt=(0.113641506,3.22423955) != oppT=0.363729545 fPerpPt=(0. 111313976,3.22539824)
32 debugShowQuadLineIntersection no intersect {{{494.376404,224.684067}, {492.52706 9,224.218475}, {492.952789,224.005585}}} {{{494.895874,225.840698}, {494.348663, 224.583771}}} 32 setPerp t=0.63470694 cPt=(0.114662928,3.22626175) != oppT=0.367452497 fPerpPt=(0 .116108709,3.2255209)
33 debugShowQuadLineIntersection wtTs[0]=1 {{{492.952789,224.005585}, {494.375336,2 24.679337}, {494.376038,224.682449}}} {{494.376038,224.682449}} wnTs[0]=0 {{{494 .376038,224.682449}, {494.37619,224.68309}}} 33 setPerp t=0.635654159 cPt=(0.115183291,3.22727003) != oppT=0.369275918 fPerpPt=( 0.118474752,3.22555923)
34 debugShowQuadLineIntersection no intersect {{{492.952789,224.005585}, {494.37533 6,224.679337}, {494.376038,224.682449}}} {{{494.895874,225.840698}, {494.348663, 224.583771}}} 34 setPerp t=0.636127769 cPt=(0.115445887,3.22777346) != oppT=0.370178237 fPerpPt=( 0.119649848,3.22557288)
35 debugShowQuadLineIntersection wtTs[0]=0 {{{494.37619,224.68309}, {494.634338,225 .414886}, {494.895874,225.840698}}} {{494.37619,224.68309}} wnTs[0]=1 {{{494.376 038,224.682449}, {494.37619,224.68309}}} 35 setPerp t=0.636364574 cPt=(0.115577789,3.228025) != oppT=0.370627065 fPerpPt=(0. 120235406,3.22557836)
36 debugShowLineIntersection no intersect {{{494.376038,224.682449}, {494.37619,224 .68309}}} {{{494.895874,225.840698}, {494.348663,224.583771}}} 36 setPerp t=0.636482977 cPt=(0.115643891,3.22815073) != oppT=0.370850898 fPerpPt=( 0.120527686,3.22558077)
37 debugShowQuadLineIntersection wtTs[0]=1 {{{494.37619,224.68309}, {494.634338,225 .414886}, {494.895874,225.840698}}} {{494.895874,225.840698}} wnTs[0]=0 {{{494.8 95874,225.840698}, {494.348663,224.583771}}} 37 setPerp t=0.636542178 cPt=(0.11567698,3.22821358) != oppT=0.370962669 fPerpPt=(0 .120673701,3.22558189)
38 SkOpSegment::markDone id=4 (494.376038,224.682449 494.37619,224.68309) t=0 [7] ( 494.376038,224.682449) tEnd=1 newWindSum=? newOppSum=? oppSum=? windSum=? windVa lue=0 oppValue=0 38 setPerp t=0.636571779 cPt=(0.115693534,3.22824501) != oppT=0.371018519 fPerpPt=( 0.120746678,3.22558243)
39 SkOpSegment::sortAngles [1] tStart=0.988457533 [13] 39 setPerp t=0.636586579 cPt=(0.115701813,3.22826072) != oppT=0.371046435 fPerpPt=( 0.120783158,3.22558269)
40 SkOpAngle::after [1/1] 9/9 tStart=0.988457533 tEnd=0 < [3/3] 13/13 tStart=1 tEnd =0 < [1/2] 25/25 tStart=0.988457533 tEnd=1 T 4 40 setPerp t=0.636593979 cPt=(0.115705954,3.22826857) != oppT=0.37106039 fPerpPt=(0 .120801396,3.22558282)
41 SkOpAngle::afterPart {{{{494.376038,224.682449}, {494.364861,224.63218}, {494.34 8663,224.583771}}}, 0.998676896} id=1 41 setPerp t=0.636597679 cPt=(0.115708024,3.2282725) != oppT=0.371067368 fPerpPt=(0 .120810515,3.22558289)
42 SkOpAngle::afterPart {{{494.376038,224.682449}, {492.952789,224.005585}, {492.95 2789,224.005585}}} id=3 42 setPerp t=0.636599529 cPt=(0.115709059,3.22827446) != oppT=0.371070856 fPerpPt=( 0.120815074,3.22558292)
43 SkOpAngle::afterPart {{{{494.376038,224.682449}, {494.376312,224.683624}, {494.3 76404,224.684067}}}, 0.999999821} id=1 43 setPerp t=0.636600454 cPt=(0.115709577,3.22827545) != oppT=0.3710726 fPerpPt=(0. 120817354,3.22558294)
44 setPerp t=0.636600917 cPt=(0.115709835,3.22827594) != oppT=0.371073472 fPerpPt=( 0.120818494,3.22558294)
45 setPerp t=0.636601148 cPt=(0.115709965,3.22827618) != oppT=0.371073908 fPerpPt=( 0.120819063,3.22558295)
46 setPerp t=0.636601264 cPt=(0.11571003,3.2282763) != oppT=0.371074126 fPerpPt=(0. 120819348,3.22558295)
47 setPerp t=0.636601322 cPt=(0.115710062,3.22827637) != oppT=0.371074235 fPerpPt=( 0.120819491,3.22558295)
48 setPerp t=0.63660135 cPt=(0.115710078,3.2282764) != oppT=0.37107429 fPerpPt=(0.1 20819562,3.22558295)
49 setPerp t=0.636601365 cPt=(0.115710086,3.22827641) != oppT=0.371074317 fPerpPt=( 0.120819598,3.22558295)
50 setPerp t=0.636601372 cPt=(0.11571009,3.22827642) != oppT=0.371074331 fPerpPt=(0 .120819616,3.22558295)
51 setPerp t=0.636601376 cPt=(0.115710092,3.22827642) != oppT=0.371074338 fPerpPt=( 0.120819624,3.22558295)
52 setPerp t=0.636601378 cPt=(0.115710093,3.22827643) != oppT=0.371074341 fPerpPt=( 0.120819629,3.22558295)
53 setPerp t=0.636601378 cPt=(0.115710094,3.22827643) != oppT=0.371074343 fPerpPt=( 0.120819631,3.22558295)
54 setPerp t=0.636601379 cPt=(0.115710094,3.22827643) != oppT=0.371074344 fPerpPt=( 0.120819632,3.22558295)
55 setPerp t=0.636601379 cPt=(0.115710094,3.22827643) != oppT=0.371074344 fPerpPt=( 0.120819633,3.22558295)
56 setPerp t=0.636601379 cPt=(0.115710094,3.22827643) != oppT=0.371074344 fPerpPt=( 0.120819633,3.22558295)
57 setPerp t=0.636601379 cPt=(0.115710094,3.22827643) != oppT=0.371074344 fPerpPt=( 0.120819633,3.22558295)
58 setPerp t=0.636601379 cPt=(0.115710094,3.22827643) != oppT=0.371074344 fPerpPt=( 0.120819633,3.22558295)
59 setPerp t=0.636601379 cPt=(0.115710094,3.22827643) != oppT=0.371074344 fPerpPt=( 0.120819633,3.22558295)
60 setPerp t=0.636601379 cPt=(0.115710094,3.22827643) != oppT=0.371074344 fPerpPt=( 0.120819633,3.22558295)
61 setPerp t=0.636601379 cPt=(0.115710094,3.22827643) != oppT=0.371074344 fPerpPt=( 0.120819633,3.22558295)
62 setPerp t=0.636601379 cPt=(0.115710094,3.22827643) != oppT=0.371074344 fPerpPt=( 0.120819633,3.22558295)
63 setPerp t=0.636601379 cPt=(0.115710094,3.22827643) != oppT=0.371074344 fPerpPt=( 0.120819633,3.22558295)
64 setPerp t=0.636601379 cPt=(0.115710094,3.22827643) != oppT=0.371074344 fPerpPt=( 0.120819633,3.22558295)
65 setPerp t=0.636601379 cPt=(0.115710094,3.22827643) != oppT=0.371074344 fPerpPt=( 0.120819633,3.22558295)
66 setPerp t=0.636601379 cPt=(0.115710094,3.22827643) != oppT=0.371074344 fPerpPt=( 0.120819633,3.22558295)
67 setPerp t=0.636601379 cPt=(0.115710094,3.22827643) != oppT=0.371074344 fPerpPt=( 0.120819633,3.22558295)
68 setPerp t=0.636601379 cPt=(0.115710094,3.22827643) != oppT=0.371074344 fPerpPt=( 0.120819633,3.22558295)
69 setPerp t=0.636601379 cPt=(0.115710094,3.22827643) != oppT=0.371074344 fPerpPt=( 0.120819633,3.22558295)
70 setPerp t=0.636601379 cPt=(0.115710094,3.22827643) != oppT=0.371074344 fPerpPt=( 0.120819633,3.22558295)
71 setPerp t=0.636601379 cPt=(0.115710094,3.22827643) != oppT=0.371074344 fPerpPt=( 0.120819633,3.22558295)
72 setPerp t=0.636601379 cPt=(0.115710094,3.22827643) != oppT=0.371074344 fPerpPt=( 0.120819633,3.22558295)
73 id=1 5=(1,1) [2] id=2 2=(0,0) [5]
74 debugShowCubicIntersection wtTs[0]=1 {{{0,3}, {-0.333333343,3.33333325}, {0.8333 33373,3.5}, {1,2}}} {{1,2}} wnTs[0]=0 {{{1,2}, {0,3}, {-0.333333343,3.33333325}, {0.833333373,3.5}}}
75 debugShowCubicLineIntersection wtTs[0]=1 {{{0,3}, {-0.333333343,3.33333325}, {0. 833333373,3.5}, {1,2}}} {{1,2}} wnTs[0]=1 {{{0.833333373,3.5}, {1,2}}}
76 debugShowCubicLineIntersection wtTs[0]=0 {{{1,2}, {0,3}, {-0.333333343,3.3333332 5}, {0.833333373,3.5}}} {{1,2}} wnTs[0]=0 {{{1,2}, {0,3}}}
77 debugShowLineIntersection wtTs[0]=0 {{{1,2}, {0,3}}} {{1,2}} wnTs[0]=1 {{{0.8333 33373,3.5}, {1,2}}}
78 debugShowCubicLineIntersection wtTs[0]=0 {{{1,2}, {0,3}, {-0.333333343,3.3333332 5}, {0.833333373,3.5}}} {{1,2}} wtTs[1]=1 {{0.833333373,3.5}} wnTs[0]=1 {{{0.833 333373,3.5}, {1,2}}} wnTs[1]=0
79 ----------------------------------- start
80 ----------------------------------- addExpanded
81 ----------------------------------- moveMultiples
82 ----------------------------------- moveNearby
83 ----------------------------------- addEndMovedSpans
84 ----------------------------------- addMissing2
85 ----------------------------------- moveNearby2
86 ----------------------------------- expand2
87 ----------------------------------- addExpanded3
88 ----------------------------------- mark1
89 ----------------------------------- missingCoincidence2
90 ----------------------------------- missingCoincidence3
91 ----------------------------------- coincidence.reorder
92 ----------------------------------- pairs->apply
93 ----------------------------------- pairs->findOverlaps
44 SkOpSegment::sortAngles [3] tStart=1 [6] 94 SkOpSegment::sortAngles [3] tStart=1 [6]
45 SkOpSegment::debugShowActiveSpans id=1 (494.348663,224.583771 494.364952,224.632 623 494.376129,224.682892 0.998676896f) t=0 tEnd=0.988457533 windSum=? windValue =1 95 SkOpAngle::after [3/1] 21/20 tStart=1 tEnd=0 < [1/3] 20/21 tStart=0 tEnd=1 < [2/ 4] 21/21 tStart=1 tEnd=0 F 7
46 SkOpSegment::debugShowActiveSpans id=1 (494.376129,224.682892 494.376274,224.683 48 494.376404,224.684067 0.999999821f) t=0.988457533 tEnd=1 windSum=? windValue= 1 96 SkOpAngle::afterPart {{{1,2}, {0.833333373,3.5}, {-0.333333343,3.33333325}, {0,3 }}} id=3
47 SkOpSegment::debugShowActiveSpans id=2 (494.376404,224.684067 492.527069,224.218 475 492.952789,224.005585) t=0 tEnd=1 windSum=? windValue=1 97 SkOpAngle::afterPart {{{1,2}, {0,3}, {-0.333333343,3.33333325}, {0.833333373,3.5 }}} id=1
48 SkOpSegment::debugShowActiveSpans id=3 (492.952789,224.005585 494.375336,224.679 337 494.376038,224.682449) t=0 tEnd=1 windSum=? windValue=1 98 SkOpAngle::afterPart {{{1,2}, {0.833333373,3.5}}} id=2
49 SkOpSegment::debugShowActiveSpans id=5 (494.37619,224.68309 494.634338,225.41488 6 494.895874,225.840698) t=0 tEnd=1 windSum=? windValue=1 99 SkOpAngle::after [3/1] 21/20 tStart=1 tEnd=0 < [4/2] 19/19 tStart=0 tEnd=1 < [2/ 4] 21/21 tStart=1 tEnd=0 F 5
50 SkOpSegment::debugShowActiveSpans id=6 (494.895874,225.840698 494.348663,224.583 771) t=0 tEnd=1 windSum=? windValue=1 100 SkOpAngle::afterPart {{{1,2}, {0.833333373,3.5}, {-0.333333343,3.33333325}, {0,3 }}} id=3
51 SkOpSpan::sortableTop dir=kLeft seg=1 t=0.494228767 pt=(494.363678,224.63298) 101 SkOpAngle::afterPart {{{1,2}, {0,3}}} id=4
52 SkOpSpan::sortableTop [0] valid=1 operand=0 span=3 ccw=1 seg=2 {{{494.376404f, 2 24.684067f}, {492.527069f, 224.218475f}, {492.952789f, 224.005585f}}} t=0.055703 9225 pt=(494.177429,224.63298) slope=(-1.72260523,-0.451515005) 102 SkOpAngle::afterPart {{{1,2}, {0.833333373,3.5}}} id=2
53 SkOpSpan::sortableTop [1] valid=1 operand=0 span=5 ccw=0 seg=3 {{{492.952789f, 2 24.005585f}, {494.375336f, 224.679337f}, {494.376038f, 224.682449f}}} t=0.733006 652 pt=(494.274292,224.63298) slope=(0.380324923,0.182168955) 103 SkOpAngle::after [2/4] 21/21 tStart=1 tEnd=0 < [4/2] 19/19 tStart=0 tEnd=1 < [1/ 3] 20/21 tStart=0 tEnd=1 T 5
54 SkOpSpan::sortableTop [2] valid=1 operand=0 span=1 ccw=0 seg=1 {{{{494.348663f, 224.583771f}, {494.365143f, 224.633194f}, {494.376404f, 224.684067f}}}, 0.998645 842f} t=0.494228767 pt=(494.363678,224.63298) slope=(0.0138909232,0.050105697) 104 SkOpAngle::afterPart {{{1,2}, {0.833333373,3.5}}} id=2
55 SkOpSegment::markWinding id=2 (494.376404,224.684067 492.527069,224.218475 492.9 52789,224.005585) t=0 [3] (494.376404,224.684067) tEnd=1 newWindSum=-1 newOppSum =0 oppSum=0 windSum=-1 windValue=1 oppValue=0 105 SkOpAngle::afterPart {{{1,2}, {0,3}}} id=4
56 SkOpSegment::markWinding id=3 (492.952789,224.005585 494.375336,224.679337 494.3 76038,224.682449) t=0 [5] (492.952789,224.005585) tEnd=1 newWindSum=-1 newOppSum =0 oppSum=? windSum=? windValue=1 oppValue=0 106 SkOpAngle::afterPart {{{1,2}, {0,3}, {-0.333333343,3.33333325}, {0.833333373,3.5 }}} id=1
57 SkOpSegment::markWinding id=2 (494.376404,224.684067 492.527069,224.218475 492.9 52789,224.005585) t=0 [3] (494.376404,224.684067) tEnd=1 newWindSum=-1 newOppSum =0 oppSum=0 windSum=-1 windValue=1 oppValue=0 107 SkOpSegment::sortAngles [4] tStart=0 [7]
58 SkOpSegment::markWinding id=1 (494.348663,224.583771 494.365143,224.633194 494.3 76404,224.684067) t=0.988457533 [13] (494.376129,224.682892) tEnd=1 newWindSum=- 1 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0 108 SkOpSegment::sortAngles [1] tStart=0 [1]
59 SkOpSegment::markWinding id=1 (494.348663,224.583771 494.365143,224.633194 494.3 76404,224.684067) t=0 [1] (494.348663,224.583771) tEnd=0.988457533 newWindSum=1 newOppSum=0 oppSum=0 windSum=1 windValue=1 oppValue=0 109 SkOpSegment::sortAngles [2] tStart=1 [4]
60 SkOpSegment::markWinding id=1 (494.348663,224.583771 494.365143,224.633194 494.3 76404,224.684067) t=0 [1] (494.348663,224.583771) tEnd=0.988457533 newWindSum=1 newOppSum=0 oppSum=0 windSum=1 windValue=1 oppValue=0 110 SkOpSegment::debugShowActiveSpans id=3 (0,3 -0.333333343,3.33333325 0.833333373, 3.5 1,2) t=0 tEnd=1 windSum=? windValue=1
61 SkOpSegment::markWinding id=6 (494.895874,225.840698 494.348663,224.583771) t=0 [11] (494.895874,225.840698) tEnd=1 newWindSum=1 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0 111 SkOpSegment::debugShowActiveSpans id=4 (1,2 0,3) t=0 tEnd=1 windSum=? windValue= 1
62 SkOpSegment::markWinding id=5 (494.37619,224.68309 494.634338,225.414886 494.895 874,225.840698) t=0 [9] (494.37619,224.68309) tEnd=1 newWindSum=1 newOppSum=0 op pSum=? windSum=? windValue=1 oppValue=0 112 SkOpSegment::debugShowActiveSpans id=1 (1,2 0,3 -0.333333343,3.33333325 0.833333 373,3.5) t=0 tEnd=1 windSum=? windValue=1
63 SkOpSegment::findNextWinding simple 113 SkOpSegment::debugShowActiveSpans id=2 (0.833333373,3.5 1,2) t=0 tEnd=1 windSum= ? windValue=1
64 SkOpSegment::markDone id=1 (494.348663,224.583771 494.365143,224.633194 494.3764 04,224.684067) t=0 [1] (494.348663,224.583771) tEnd=0.988457533 newWindSum=1 new OppSum=0 oppSum=0 windSum=1 windValue=1 oppValue=0 114 SkOpSpan::sortableTop dir=kTop seg=3 t=0.5 pt=(0.3125,3.1875)
65 bridgeWinding current id=1 from=(494.376129,224.682892) to=(494.348663,224.58377 1) 115 SkOpSpan::sortableTop [0] valid=1 operand=1 span=7 ccw=0 seg=4 {{{1, 2}, {0, 3}} } t=0.6875 pt=(0.3125,2.6875) slope=(-1,1)
66 path.moveTo(494.376129,224.682892); 116 SkOpSpan::sortableTop [1] valid=1 operand=0 span=1 ccw=0 seg=1 {{{1, 2}, {0, 3}, {-0.333333343f, 3.33333325f}, {0.833333373f, 3.5f}}} t=0.293719533 pt=(0.3125,2 .72128606) slope=(-1.60944396,1.95452854)
67 path.conicTo(494.36496,224.632629, 494.348663,224.583771, 0.998676896); 117 SkOpSpan::sortableTop [2] valid=1 operand=1 span=5 ccw=1 seg=3 {{{0, 3}, {-0.333 333343f, 3.33333325f}, {0.833333373f, 3.5f}, {1, 2}}} t=0.5 pt=(0.3125,3.1875) s lope=(1.62500004,-0.62499994)
68 SkOpSegment::findNextWinding simple 118 SkOpSegment::markWinding id=4 (1,2 0,3) t=0 [7] (1,2) tEnd=1 newWindSum=1 newOpp Sum=0 oppSum=0 windSum=1 windValue=1 oppValue=0
69 SkOpSegment::markDone id=6 (494.895874,225.840698 494.348663,224.583771) t=0 [11 ] (494.895874,225.840698) tEnd=1 newWindSum=1 newOppSum=0 oppSum=0 windSum=1 win dValue=1 oppValue=0 119 SkOpSegment::markWinding id=3 (0,3 -0.333333343,3.33333325 0.833333373,3.5 1,2) t=0 [5] (0,3) tEnd=1 newWindSum=1 newOppSum=0 oppSum=? windSum=? windValue=1 opp Value=0
70 bridgeWinding current id=6 from=(494.348663,224.583771) to=(494.895874,225.84069 8) 120 SkOpSegment::markWinding id=4 (1,2 0,3) t=0 [7] (1,2) tEnd=1 newWindSum=1 newOpp Sum=0 oppSum=0 windSum=1 windValue=1 oppValue=0
71 SkOpSegment::markDone id=5 (494.37619,224.68309 494.634338,225.414886 494.895874 ,225.840698) t=0 [9] (494.37619,224.68309) tEnd=1 newWindSum=1 newOppSum=0 oppSu m=0 windSum=1 windValue=1 oppValue=0 121 SkOpSegment::markWinding id=1 (1,2 0,3 -0.333333343,3.33333325 0.833333373,3.5) t=0 [1] (1,2) tEnd=1 newWindSum=1 newOppSum=1 oppSum=1 windSum=1 windValue=1 opp Value=0
72 path.lineTo(494.895874,225.840698); 122 SkOpSegment::markWinding id=2 (0.833333373,3.5 1,2) t=0 [3] (0.833333373,3.5) tE nd=1 newWindSum=1 newOppSum=1 oppSum=? windSum=? windValue=1 oppValue=0
73 SkOpSegment::debugShowActiveSpans id=1 (494.376129,224.682892 494.376274,224.683 48 494.376404,224.684067 0.999999821f) t=0.988457533 tEnd=1 windSum=-1 oppSum=0 windValue=1 oppValue=0 123 SkOpSegment::markWinding id=1 (1,2 0,3 -0.333333343,3.33333325 0.833333373,3.5) t=0 [1] (1,2) tEnd=1 newWindSum=1 newOppSum=1 oppSum=1 windSum=1 windValue=1 opp Value=0
74 SkOpSegment::debugShowActiveSpans id=2 (494.376404,224.684067 492.527069,224.218 475 492.952789,224.005585) t=0 tEnd=1 windSum=-1 oppSum=0 windValue=1 oppValue=0 124 SkOpSegment::activeOp id=3 t=1 tEnd=0 op=sect miFrom=0 miTo=0 suFrom=1 suTo=0 re sult=0
75 SkOpSegment::debugShowActiveSpans id=3 (492.952789,224.005585 494.375336,224.679 337 494.376038,224.682449) t=0 tEnd=1 windSum=-1 oppSum=0 windValue=1 oppValue=0 125 SkOpSegment::markDone id=3 (0,3 -0.333333343,3.33333325 0.833333373,3.5 1,2) t=0 [5] (0,3) tEnd=1 newWindSum=1 newOppSum=0 oppSum=0 windSum=1 windValue=1 oppVal ue=0
76 SkOpSegment::findNextWinding 126 SkOpSegment::markDone id=4 (1,2 0,3) t=0 [7] (1,2) tEnd=1 newWindSum=1 newOppSum =0 oppSum=0 windSum=1 windValue=1 oppValue=0
77 SkOpAngle::dumpOne [1/2] next=1/1 sect=25/25 s=0.988457533 [13] e=1 [2] sgn=-1 windVal=1 windSum=-1 oppVal=0 oppSum=0 127 bridgeOp chase.append id=4 windSum=1
78 SkOpAngle::dumpOne [1/1] next=3/3 sect=9/9 s=0.988457533 [13] e=0 [1] sgn=1 win dVal=1 windSum=1 oppVal=0 oppSum=0 done 128 SkOpSegment::debugShowActiveSpans id=1 (1,2 0,3 -0.333333343,3.33333325 0.833333 373,3.5) t=0 tEnd=1 windSum=1 oppSum=1 windValue=1 oppValue=0
79 SkOpAngle::dumpOne [3/3] next=1/2 sect=13/13 s=1 [6] e=0 [5] sgn=1 windVal=1 wi ndSum=-1 oppVal=0 oppSum=0 129 SkOpSegment::debugShowActiveSpans id=2 (0.833333373,3.5 1,2) t=0 tEnd=1 windSum= 1 oppSum=1 windValue=1 oppValue=0
80 SkOpSegment::markDone id=3 (492.952789,224.005585 494.375336,224.679337 494.3760 38,224.682449) t=0 [5] (492.952789,224.005585) tEnd=1 newWindSum=-1 newOppSum=0 oppSum=0 windSum=-1 windValue=1 oppValue=0 130 SkOpSegment::activeOp id=1 t=0 tEnd=1 op=sect miFrom=0 miTo=1 suFrom=1 suTo=1 re sult=1
81 SkOpSegment::markDone id=2 (494.376404,224.684067 492.527069,224.218475 492.9527 89,224.005585) t=0 [3] (494.376404,224.684067) tEnd=1 newWindSum=-1 newOppSum=0 oppSum=0 windSum=-1 windValue=1 oppValue=0 131 SkOpSegment::findNextOp simple
82 SkOpSegment::markDone id=1 (494.348663,224.583771 494.365143,224.633194 494.3764 04,224.684067) t=0.988457533 [13] (494.376129,224.682892) tEnd=1 newWindSum=-1 n ewOppSum=0 oppSum=0 windSum=-1 windValue=1 oppValue=0 132 SkOpSegment::markDone id=1 (1,2 0,3 -0.333333343,3.33333325 0.833333373,3.5) t=0 [1] (1,2) tEnd=1 newWindSum=1 newOppSum=1 oppSum=1 windSum=1 windValue=1 oppVal ue=0
83 SkOpSegment::findNextWinding from:[1] to:[1] start=13259432 end=18937312 133 bridgeOp current id=1 from=(1,2) to=(0.833333373,3.5)
84 bridgeWinding current id=1 from=(494.376404,224.684067) to=(494.376129,224.68289 2) 134 path.moveTo(1,2);
85 path.moveTo(494.376404,224.684067); 135 path.cubicTo(0,3, -0.333333343,3.33333325, 0.833333373,3.5);
86 path.lineTo(494.376129,224.682892); 136 SkOpSegment::findNextOp
137 SkOpAngle::dumpOne [2/4] next=4/2 sect=21/21 s=1 [4] e=0 [3] sgn=1 windVal=1 wi ndSum=1 oppVal=0 oppSum=1
138 SkOpAngle::dumpOne [4/2] next=1/3 sect=19/19 s=0 [7] e=1 [8] sgn=-1 windVal=1 w indSum=1 oppVal=0 oppSum=0 done operand
139 SkOpAngle::dumpOne [1/3] next=3/1 sect=20/21 s=0 [1] e=1 [2] sgn=-1 windVal=1 w indSum=1 oppVal=0 oppSum=1 done
140 SkOpAngle::dumpOne [3/1] next=2/4 sect=21/20 s=1 [6] e=0 [5] sgn=1 windVal=1 wi ndSum=1 oppVal=0 oppSum=0 done operand
141 SkOpSegment::activeOp id=4 t=0 tEnd=1 op=sect miFrom=0 miTo=0 suFrom=1 suTo=1 re sult=0
142 SkOpSegment::activeOp id=1 t=0 tEnd=1 op=sect miFrom=0 miTo=1 suFrom=1 suTo=1 re sult=1
143 SkOpSegment::activeOp id=3 t=1 tEnd=0 op=sect miFrom=1 miTo=1 suFrom=1 suTo=1 re sult=0
144 SkOpSegment::markDone id=2 (0.833333373,3.5 1,2) t=0 [3] (0.833333373,3.5) tEnd= 1 newWindSum=1 newOppSum=1 oppSum=1 windSum=1 windValue=1 oppValue=0
145 SkOpSegment::findNextOp from:[2] to:[1] start=20180984 end=20181096
146 bridgeOp current id=2 from=(0.833333373,3.5) to=(1,2)
147 path.lineTo(1,2);
148 path.close();
87 </div> 149 </div>
88 150
89 </div> 151 </div>
90 152
91 <script type="text/javascript"> 153 <script type="text/javascript">
92 154
93 var testDivs = [ 155 var testDivs = [
94 tiger8b_h_1, 156 loop17,
95 ]; 157 ];
96 158
97 var decimal_places = 3; // make this 3 to show more precision 159 var decimal_places = 3; // make this 3 to show more precision
98 160
99 var tests = []; 161 var tests = [];
100 var testLines = []; 162 var testLines = [];
101 var testTitles = []; 163 var testTitles = [];
102 var testIndex = 0; 164 var testIndex = 0;
103 var ctx; 165 var ctx;
104 166
(...skipping 3856 matching lines...) Expand 10 before | Expand all | Expand 10 after
3961 </script> 4023 </script>
3962 </head> 4024 </head>
3963 4025
3964 <body onLoad="start();"> 4026 <body onLoad="start();">
3965 <canvas id="canvas" width="750" height="500" 4027 <canvas id="canvas" width="750" height="500"
3966 onmousemove="handleMouseOver()" 4028 onmousemove="handleMouseOver()"
3967 onclick="handleMouseClick()" 4029 onclick="handleMouseClick()"
3968 ></canvas > 4030 ></canvas >
3969 </body> 4031 </body>
3970 </html> 4032 </html>
OLDNEW
« no previous file with comments | « tools/pathops_sorter.htm ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698