[Dive4elements-commits] [PATCH 09 of 10] W80Parser: Actually add points while parsing w80 file

Wald Commits scm-commit at wald.intevation.org
Thu Jan 3 10:16:25 CET 2013


# HG changeset patch
# User Felix Wolfsteller <felix.wolfsteller at intevation.de>
# Date 1357203613 -3600
# Node ID 60398ab6129a4951ea3c60d7c6b5716d277dfccc
# Parent  3028037c6293c0652a0329624581c055f21aab7a
W80Parser: Actually add points while parsing w80 file.

diff -r 3028037c6293 -r 60398ab6129a flys-backend/src/main/java/de/intevation/flys/importer/parsers/W80Parser.java
--- a/flys-backend/src/main/java/de/intevation/flys/importer/parsers/W80Parser.java	Thu Jan 03 09:59:41 2013 +0100
+++ b/flys-backend/src/main/java/de/intevation/flys/importer/parsers/W80Parser.java	Thu Jan 03 10:00:13 2013 +0100
@@ -188,6 +188,9 @@
     @Override
     protected void handleLine(int lineNum, String line) {
         String pointId = line.substring(0,20);
+        String station = line.substring(9,16);
+        String pointIndex = line.substring(16,21);
+        // For GK, first seven digits are of interest.
         String gkRight = line.substring(20,30);
         String gkHigh  = line.substring(30,40);
         String date    = line.substring(40,46);
@@ -199,6 +202,21 @@
         String dateDec = line.substring(64,70);
         String note    = line.substring(70,78);
         String actual  = line.substring(78);
+        double stationKm = Double.parseDouble(station) / 1000d;
+        double gkRightKm = Double.parseDouble(gkRight.substring(0,7));
+        double gkHighKm  = Double.parseDouble(gkHigh.substring(0,7));
+        double heightM   = Double.parseDouble(height);
+
+        // New (or first) line.
+        if (anchor == null || anchor.getStation() != stationKm) {
+            this.anchor = new Anchor(new Coordinate(gkRightKm, gkHighKm, heightM), stationKm);
+            currentLine = new ArrayList<XY>();
+            data.put(stationKm, currentLine);
+            currentLine.add(new XY(0d, heightM,0));
+        }
+        else {
+            addPoint(gkRightKm, gkHighKm, heightM, pointIndex);
+        }
     }
 
 


More information about the Dive4elements-commits mailing list