Package org.osm2world.core.map_elevation.creation

Source Code of org.osm2world.core.map_elevation.creation.ZeroElevationCalculator

package org.osm2world.core.map_elevation.creation;

import java.util.List;

import org.osm2world.core.map_data.data.MapArea;
import org.osm2world.core.map_data.data.MapData;
import org.osm2world.core.map_data.data.MapNode;
import org.osm2world.core.map_data.data.MapWaySegment;
import org.osm2world.core.map_elevation.data.AreaElevationProfile;
import org.osm2world.core.map_elevation.data.NodeElevationProfile;
import org.osm2world.core.map_elevation.data.WaySegmentElevationProfile;

/**
* assigns an elevation of 0 to everything.
* Useful for certain use cases, e.g. fast creation of tiled pseudo-3D tiles.
*/
public class ZeroElevationCalculator implements ElevationCalculator {

  @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);
     
    }
   
  }
 
}
TOP

Related Classes of org.osm2world.core.map_elevation.creation.ZeroElevationCalculator

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.