comparison pkg/imports/isr.go @ 4658:4bbfe3dd2ab5 stree-experiment

Completed usage of STRTrees.
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Mon, 14 Oct 2019 14:58:04 +0200
parents fb09a43b062e
children 65845c6522fb
comparison
equal deleted inserted replaced
4656:a2f16987911b 4658:4bbfe3dd2ab5
169 } 169 }
170 defer insertAreasStmt.Close() 170 defer insertAreasStmt.Close()
171 171
172 // For all sounding results in bottleneck. 172 // For all sounding results in bottleneck.
173 for _, sr := range bn.srs { 173 for _, sr := range bn.srs {
174 tree, err := octree.FetchOctreeDirectly(ctx, tx, sr) 174 tree, err := octree.FetchMeshDirectly(ctx, tx, sr)
175 if err != nil { 175 if err != nil {
176 return err 176 return err
177 } 177 }
178 hs := octree.ExtrapolateClassBreaks(heights, tree.Min.Z, tree.Max.Z) 178 hs := octree.ExtrapolateClassBreaks(heights, tree.Min().Z, tree.Max().Z)
179 hs = common.DedupFloat64s(hs) 179 hs = common.DedupFloat64s(hs)
180 180
181 // Delete the old iso areas. 181 // Delete the old iso areas.
182 if _, err := tx.ExecContext(ctx, deleteIsoAreasSQL, sr); err != nil { 182 if _, err := tx.ExecContext(ctx, deleteIsoAreasSQL, sr); err != nil {
183 return err 183 return err
184 } 184 }
185 185
186 // Calculate and store the iso areas. 186 // Calculate and store the iso areas.
187 areas := octree.TraceAreas(hs, isoCellSize, tree.Min, tree.Max, tree.Value) 187 areas := octree.TraceAreas(hs, isoCellSize, tree.Min(), tree.Max(), tree.Value)
188 for i, a := range areas { 188 for i, a := range areas {
189 if len(a) == 0 { 189 if len(a) == 0 {
190 continue 190 continue
191 } 191 }
192 if _, err := insertAreasStmt.ExecContext( 192 if _, err := insertAreasStmt.ExecContext(