# HG changeset patch # User Sascha L. Teichmann # Date 1537375143 -7200 # Node ID a8d32a11b1133c5a173111007b3f5e4b2ab9dd3e # Parent c79c7be29a7a0877ec8514117e70609cfd47eb54 octree: more consistent traversal order in contour tool. diff -r c79c7be29a7a -r a8d32a11b113 cmd/octree2contour/loader.go --- a/cmd/octree2contour/loader.go Wed Sep 19 18:07:28 2018 +0200 +++ b/cmd/octree2contour/loader.go Wed Sep 19 18:39:03 2018 +0200 @@ -162,12 +162,12 @@ stack = append(stack, frame{ot.index[pos+0], min, mid}, frame{ot.index[pos+1], min, mid}, - frame{ot.index[pos+4], min, mid}, + frame{ot.index[pos+3], min, mid}, frame{ot.index[pos+5], min, mid}) } else { stack = append(stack, - frame{ot.index[pos+2], mid, max}, - frame{ot.index[pos+3], mid, max}, + frame{ot.index[pos+4], mid, max}, + frame{ot.index[pos+5], mid, max}, frame{ot.index[pos+6], mid, max}, frame{ot.index[pos+7], mid, max}) } diff -r c79c7be29a7a -r a8d32a11b113 cmd/octree2contour/main.go --- a/cmd/octree2contour/main.go Wed Sep 19 18:07:28 2018 +0200 +++ b/cmd/octree2contour/main.go Wed Sep 19 18:39:03 2018 +0200 @@ -21,9 +21,12 @@ }) } else { for h := tree.min.z; h <= tree.max.z; h += *step { + var level int tree.horizontal(h, func([]int32) { - triangles++ + level++ }) + log.Printf("level %f: %d\n", h, level) + triangles += level } } log.Printf("traversal took: %v\n", time.Since(start))