# HG changeset patch # User Sascha L. Teichmann # Date 1537373248 -7200 # Node ID c79c7be29a7a0877ec8514117e70609cfd47eb54 # Parent 899116318d5885ed14aff75c391ea51f790a25de octree: Small fix in horizontal traversal. diff -r 899116318d58 -r c79c7be29a7a cmd/octree2contour/loader.go --- a/cmd/octree2contour/loader.go Wed Sep 19 17:35:00 2018 +0200 +++ b/cmd/octree2contour/loader.go Wed Sep 19 18:07:28 2018 +0200 @@ -142,7 +142,7 @@ max float64 } - if h < ot.min.z || h > ot.max.z { + if h < ot.min.z || ot.max.z < h { return } diff -r 899116318d58 -r c79c7be29a7a cmd/octree2contour/main.go --- a/cmd/octree2contour/main.go Wed Sep 19 17:35:00 2018 +0200 +++ b/cmd/octree2contour/main.go Wed Sep 19 18:07:28 2018 +0200 @@ -9,18 +9,25 @@ var ( one = flag.Bool("o", false, "create only a single contour") step = flag.Float64("s", 0.5, "step with") - max = flag.Float64("m", 10, "max height from lowest poiint") + max = flag.Float64("m", 10, "max height from lowest point") ) func process(tree *octree) { + var triangles int + start := time.Now() if *one { - var triangles int tree.horizontal(*step, func([]int32) { triangles++ }) - log.Printf("num triangles: %d\n", triangles) } else { + for h := tree.min.z; h <= tree.max.z; h += *step { + tree.horizontal(h, func([]int32) { + triangles++ + }) + } } + log.Printf("traversal took: %v\n", time.Since(start)) + log.Printf("num triangles: %d\n", triangles) } func main() {