changeset 2530:3f61b84ae7a6

SR import: Set missing EPSG code to TIN.
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Wed, 06 Mar 2019 21:13:46 +0100
parents 45d51a49f191
children 47b9a4f9a05c
files pkg/imports/sr.go
diffstat 1 files changed, 13 insertions(+), 21 deletions(-) [+]
line wrap: on
line diff
--- a/pkg/imports/sr.go	Wed Mar 06 17:51:58 2019 +0100
+++ b/pkg/imports/sr.go	Wed Mar 06 21:13:46 2019 +0100
@@ -265,20 +265,17 @@
 		return nil, err
 	}
 	clippingPolygon.Indexify()
-
 	feedback.Info("Building clipping polygon took %v.", time.Since(start))
 
 	start = time.Now()
 
 	var reproj []byte
 
-	err = tx.QueryRow(reprojectPointsSQL,
+	if err = tx.QueryRow(reprojectPointsSQL,
 		xyzWKB,
 		m.EPSG,
 		epsg,
-	).Scan(&reproj)
-
-	if err != nil {
+	).Scan(&reproj); err != nil {
 		return nil, err
 	}
 
@@ -295,7 +292,6 @@
 	if err != nil {
 		return nil, err
 	}
-
 	feedback.Info("Triangulation took %v.", time.Since(start))
 
 	start = time.Now()
@@ -304,7 +300,6 @@
 
 	var str octree.STRTree
 	str.Build(tin)
-
 	feedback.Info("Building STR tree took %v", time.Since(start))
 
 	start = time.Now()
@@ -315,37 +310,35 @@
 
 	start = time.Now()
 
+	tin.EPSG = epsg
+
 	builder := octree.NewBuilder(tin)
 	builder.Build(removed)
 	octreeIndex, err := builder.Bytes()
-	feedback.Info("Building octree took %v.",
-		time.Since(start))
 	if err != nil {
 		return nil, err
 	}
+	feedback.Info("Building octree took %v.", time.Since(start))
 
 	start = time.Now()
 	h := sha1.New()
 	h.Write(octreeIndex)
 	checksum := hex.EncodeToString(h.Sum(nil))
 	_, err = tx.Exec(insertOctreeSQL, id, checksum, octreeIndex)
-	feedback.Info("Storing octree index took %s.",
-		time.Since(start))
 	if err != nil {
 		return nil, err
 	}
+	feedback.Info("Storing octree index took %s.", time.Since(start))
 
 	tree := builder.Tree()
-	tree.EPSG = epsg
-	builder = nil // not needed from now on
 
 	start = time.Now()
 	err = generateContours(tree, tx, id)
-	feedback.Info("Generating and storing contour lines took %s.",
-		time.Since(start))
 	if err != nil {
 		return nil, err
 	}
+	feedback.Info("Generating and storing contour lines took %s.",
+		time.Since(start))
 
 	// Store for potential later removal.
 	if err = track(ctx, tx, importID, "waterway.sounding_results", id); err != nil {
@@ -354,14 +347,12 @@
 
 	if err = tx.Commit(); err != nil {
 		feedback.Error(
-			"Storing sounding result failed after %v.",
-			time.Since(begin))
+			"Storing sounding result failed after %v.", time.Since(begin))
 		return nil, err
 	}
 
 	feedback.Info(
-		"Storing sounding result was successful after %v.",
-		time.Since(begin))
+		"Storing sounding result was successful after %v.", time.Since(begin))
 
 	summary := struct {
 		Bottleneck string      `json:"bottleneck"`
@@ -374,7 +365,8 @@
 		Lat:        lat,
 		Lon:        lon,
 	}
-	return &summary, err
+
+	return &summary, nil
 }
 
 // CleanUp removes the folder containing the ZIP file with the
@@ -525,7 +517,7 @@
 	defer stmt.Close()
 
 	// Adjust contour lines heights to multiples of contourStepWidth
-	heights := make([]float64, 0)
+	var heights []float64
 	h := contourStepWidth * math.Ceil(tree.Min.Z/contourStepWidth)
 	for ; h <= tree.Max.Z; h += contourStepWidth {
 		heights = append(heights, h)