Changeset 30324 in osm for applications/editors/josm/plugins/smed2
- Timestamp:
- 2014-03-14T21:03:15+01:00 (11 years ago)
- Location:
- applications/editors/josm/plugins/smed2
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
applications/editors/josm/plugins/smed2/js57toosm/src/js57toosm/Js57toosm.java
r30323 r30324 167 167 out.println("</osm>\n"); 168 168 out.close(); 169 System. out.println("Finished");169 System.err.println("Finished"); 170 170 } 171 171 -
applications/editors/josm/plugins/smed2/src/panels/PanelS57.java
r30323 r30324 41 41 ArrayList<Obj> types = new ArrayList<Obj>(); 42 42 S57map map; 43 ArrayList<Long> done = newArrayList<Long>();43 HashMap<Long, Long> done = new HashMap<Long, Long>(); 44 44 45 45 public PanelS57() { … … 82 82 Snode snode; 83 83 while ((snode = map.nodes.get(ref)) != null) { 84 if (!done.contains(ref)) { 85 Node node = new Node( ref, 1);84 if (!done.containsKey(ref)) { 85 Node node = new Node(0, 1); 86 86 node.setCoor((new LatLon(Math.toDegrees(snode.lat), Math.toDegrees(snode.lon)))); 87 87 data.addPrimitive(node); 88 88 addKeys(node, feature, type); 89 done. add(ref);89 done.put(ref, node.getUniqueId()); 90 90 } 91 91 ref++; … … 110 110 long ref = git.nextRef(); 111 111 Snode snode = map.nodes.get(ref); 112 if (!done.contains(ref)) { 113 Node node = new Node( ref, 1);112 if (!done.containsKey(ref)) { 113 Node node = new Node(0, 1); 114 114 node.setCoor((new LatLon(Math.toDegrees(snode.lat), Math.toDegrees(snode.lon)))); 115 115 data.addPrimitive(node); 116 done. add(ref);116 done.put(ref, node.getUniqueId()); 117 117 } 118 118 } … … 122 122 while (git.hasComp()) { 123 123 long edge = git.nextComp(); 124 Way way = new Way( edge, 1);124 Way way = new Way(0, 1); 125 125 data.addPrimitive(way); 126 126 while (git.hasEdge()) { … … 128 128 while (git.hasNode()) { 129 129 long ref = git.nextRef(); 130 way.addNode((Node)data.getPrimitiveById( ref, OsmPrimitiveType.NODE));130 way.addNode((Node)data.getPrimitiveById(done.get(ref), OsmPrimitiveType.NODE)); 131 131 } 132 132 } … … 142 142 long ref = git.nextRef(); 143 143 Snode snode = map.nodes.get(ref); 144 if (!done.contains(ref)) { 145 Node node = new Node( ref, 1);144 if (!done.containsKey(ref)) { 145 Node node = new Node(0, 1); 146 146 node.setCoor((new LatLon(Math.toDegrees(snode.lat), Math.toDegrees(snode.lon)))); 147 147 data.addPrimitive(node); 148 done. add(ref);148 done.put(ref, node.getUniqueId()); 149 149 } 150 150 } … … 154 154 while (git.hasComp()) { 155 155 long ref = git.nextComp(); 156 Way way = new Way(ref, 1); 156 Way way = new Way(0, 1); 157 done.put(ref, way.getUniqueId()); 157 158 data.addPrimitive(way); 158 159 while (git.hasEdge()) { … … 160 161 while (git.hasNode()) { 161 162 ref = git.nextRef(); 162 way.addNode((Node) data.getPrimitiveById( ref, OsmPrimitiveType.NODE));163 } 164 } 165 } 166 Relation rel = new Relation( map.ref++, 1);163 way.addNode((Node) data.getPrimitiveById(done.get(ref), OsmPrimitiveType.NODE)); 164 } 165 } 166 } 167 Relation rel = new Relation(0, 1); 167 168 data.addPrimitive(rel); 168 169 git = map.new GeomIterator(feature.geom); … … 171 172 long ref = git.nextComp(); 172 173 if (outers-- > 0) { 173 rel.addMember(new RelationMember("outer", (Way) data.getPrimitiveById( ref, OsmPrimitiveType.WAY)));174 rel.addMember(new RelationMember("outer", (Way) data.getPrimitiveById(done.get(ref), OsmPrimitiveType.WAY))); 174 175 } else { 175 rel.addMember(new RelationMember("inner", (Way) data.getPrimitiveById( ref, OsmPrimitiveType.WAY)));176 rel.addMember(new RelationMember("inner", (Way) data.getPrimitiveById(done.get(ref), OsmPrimitiveType.WAY))); 176 177 } 177 178 }
Note:
See TracChangeset
for help on using the changeset viewer.