OSDN Git Service

FIX: 出力GPXにWPTが出力されない問題を解消 release_2016-10-30
authoryuuhayashi <hayashi.yuu@gmail.com>
Sun, 30 Oct 2016 01:56:53 +0000 (10:56 +0900)
committeryuuhayashi <hayashi.yuu@gmail.com>
Sun, 30 Oct 2016 01:56:53 +0000 (10:56 +0900)
importPicture/src/osm/jp/gpx/ImportPicture.java

index e0ef313..46dd1c7 100644 (file)
@@ -300,6 +300,7 @@ public class ImportPicture extends Thread {
             }\r
         }\r
         catch(ParserConfigurationException | DOMException | SAXException | IOException | ParseException | ImageReadException | ImageWriteException | IllegalArgumentException | TransformerException e) {\r
+               e.printStackTrace();\r
         }\r
     }\r
     \r
@@ -355,12 +356,12 @@ public class ImportPicture extends Thread {
          *   <wpt lat="35.2564461" lon="139.15437809"></wpt>\r
          * </gpx>\r
          */\r
-        TreeMap<Long,Element> map = new TreeMap<>();\r
+        TreeMap<Long,Element> map = new TreeMap<Long, Element>();\r
         TreeMap<Long,Element> mapTRKSEG = new TreeMap<>();\r
         Element trk = null;\r
         //Element maeTRKPT = null;\r
         gpx    = builder.parse(gpxFile).getFirstChild();\r
-        Document doc = gpx.getOwnerDocument();\r
+        document = gpx.getOwnerDocument();\r
         NodeList nodes = gpx.getChildNodes();\r
         for (int i=0; i < nodes.getLength(); i++) {\r
             Node node2 = nodes.item(i);\r
@@ -373,7 +374,7 @@ public class ImportPicture extends Thread {
                     Node nodeTRKSEG = nodes1.item(i1);\r
                     if (nodeTRKSEG.getNodeName().equals("trkseg")) {\r
                        trksegCounter++;\r
-                       Element newTRKSEG = doc.createElement("trkseg");\r
+                       Element newTRKSEG = document.createElement("trkseg");\r
                         Element trkseg = (Element) nodeTRKSEG;\r
                         NodeList nodes2 = trkseg.getChildNodes();\r
                         for (int i2=0; i2 < nodes2.getLength(); i2++) {\r
@@ -382,10 +383,10 @@ public class ImportPicture extends Thread {
                                if (param_GpxNoFirstNode && (i2 == 0)) {\r
                                        continue;\r
                                }\r
-                               newTRKSEG.appendChild(getCopy(doc, nodeTRKPT));\r
+                               newTRKSEG.appendChild(getCopy(document, nodeTRKPT));\r
                             }\r
                         }\r
-                        mapTRKSEG.put(new Long(trksegCounter), getCopy(doc, newTRKSEG));\r
+                        mapTRKSEG.put(new Long(trksegCounter), getCopy(document, newTRKSEG));\r
 \r
                         // <trk>から<trkseg>を削除する。\r
                         trk.removeChild(nodeTRKSEG);\r
@@ -421,6 +422,29 @@ public class ImportPicture extends Thread {
                             gpxEndTime = gpxTime;\r
                        }\r
                }\r
+               \r
+               /*\r
+                * SPEEDをGPXに設定する\r
+                * 条件: SPEEDを書き出すフラグがONの時\r
+                * 条件: オリジナルのSPEEDがある場合「上書きする/変更しない」(GPX_OUTPUT_SPEED)\r
+                */\r
+               /*\r
+        TreeMap<Long,Element> map2 = new TreeMap<Long, Element>();\r
+               if (Boolean.parseBoolean(params.getProperty(AppParameters.GPX_OUTPUT_SPEED))) {\r
+                       for (Long timeL : keySet) {\r
+                   Element trkptE = trkpt(map, new Date(timeL));\r
+                   if (trkptE != null) {\r
+                       map2.put(timeL, trkptE);\r
+                   }\r
+                   else {\r
+                       map2.put(timeL, map.get(timeL));\r
+                   }\r
+                       }\r
+               }\r
+               else {\r
+                       map2 = (TreeMap<Long, Element>) map.clone();\r
+               }\r
+               */\r
                 \r
                System.out.println("GPX start time: "+ dfjp.format(new Date(gpxStartTime)) + "\t[GMT " + dfuk.format(new Date(gpxStartTime))+"]");\r
                System.out.println("  GPX end time: "+ dfjp.format(new Date(gpxEndTime)) + "\t[GMT " + dfuk.format(new Date(gpxEndTime))+"]");\r
@@ -652,7 +676,7 @@ public class ImportPicture extends Thread {
             }\r
 \r
             if (Boolean.parseBoolean(params.getProperty(AppParameters.GPX_OUTPUT_WPT))) {\r
-                Element temp = getCopy(gpx.getOwnerDocument(), trkptT.trkpt);\r
+               Element temp = createWptTag(image, itime.getTime(), trkptT.trkpt);\r
                 gpx.appendChild(temp);\r
             }\r
         }\r