@Override public void calculateElevations(MapData mapData, TerrainElevationData eleData) { for (MapNode node : mapData.getMapNodes()) { NodeElevationProfile profile = new NodeElevationProfile(node); profile.setEle(0); // TODO replace old ElevationProfile stuff // node.setElevationProfile(profile); } for (MapWaySegment segment : mapData.getMapWaySegments()) { if (segment.getPrimaryRepresentation() == null) continue; WaySegmentElevationProfile profile = new WaySegmentElevationProfile(segment); // TODO replace old ElevationProfile stuff // profile.addPointWithEle( // segment.getStartNode().getElevationProfile().getPointWithEle()); // profile.addPointWithEle( // segment.getEndNode().getElevationProfile().getPointWithEle()); // // segment.setElevationProfile(profile); } /* set areas' elevation profiles (based on nodes' elevations) */ for (MapArea area : mapData.getMapAreas()) { if (area.getPrimaryRepresentation() == null) continue; AreaElevationProfile profile = new AreaElevationProfile(area); for (MapNode node : area.getBoundaryNodes()) { // TODO replace old ElevationProfile stuff // profile.addPointWithEle( // node.getElevationProfile().getPointWithEle()); } for (List<MapNode> holeOutline : area.getHoles()) { for (MapNode node : holeOutline) { // TODO replace old ElevationProfile stuff // profile.addPointWithEle( // node.getElevationProfile().getPointWithEle()); } } // TODO replace old ElevationProfile stuff // area.setElevationProfile(profile); } }
@Override protected void applyToArea(MapArea area) { if (area.getTags().containsKey("ele") && area.getRepresentations().isEmpty()) { area.addRepresentation(new InvisibleEleArea(area)); } }