# HG changeset patch # User Sascha L. Teichmann # Date 1571216879 -7200 # Node ID 7a93889438409e9678954a680f9c50f310725d34 # Parent 00a2c761493e8ab4f6042b54889022ac8084f9d7 morphology: Clip class breaks again Z min and max of the the height model. diff -r 00a2c761493e -r 7a9388943840 pkg/controllers/diff.go --- a/pkg/controllers/diff.go Wed Oct 16 10:52:43 2019 +0200 +++ b/pkg/controllers/diff.go Wed Oct 16 11:07:59 2019 +0200 @@ -285,6 +285,8 @@ // heights = octree.InBetweenClassBreaks(heights, 0.05, 2) } + log.Printf("info: z range: %.3f - %.3f\n", tin.Min.Z, tin.Max.Z) + log.Printf("info: num heights: %d\n", len(heights)) var isoStmt *sql.Stmt diff -r 00a2c761493e -r 7a9388943840 pkg/octree/classbreaks.go --- a/pkg/octree/classbreaks.go Wed Oct 16 10:52:43 2019 +0200 +++ b/pkg/octree/classbreaks.go Wed Oct 16 11:07:59 2019 +0200 @@ -115,6 +115,22 @@ copy(n, cbs) sort.Float64s(n) + for len(n) > 0 && n[0] < min { + n = n[1:] + } + + if len(n) == 0 { + return n + } + + for len(n) > 0 && n[len(n)-1] > max { + n = n[:len(n)-1] + } + + if len(n) == 0 { + return n + } + for min < n[0] { diff := n[1] - n[0] if diff == 0 {