Package com.graphhopper.reader.dem
Class EdgeElevationSmoothingRamer
java.lang.Object
com.graphhopper.reader.dem.EdgeElevationSmoothingRamer
Elevation data is read from DEM tiles that have data points for rectangular tiles usually having an
edge length of 30 or 90 meter. Elevation in between the middle points of those tiles will be
interpolated and weighted by the distance from a node to adjacent tile centers.
Ways that go along cliffs or ridges are particularly affected by ups and downs that do not reflect the actual elevation but may be artifacts originated from very accurately mapping when elevation has a lower resolution.
- Author:
- Peter Karich
-
Constructor Summary
Constructors -
Method Summary
-
Constructor Details
-
EdgeElevationSmoothingRamer
public EdgeElevationSmoothingRamer()
-
-
Method Details
-
smooth
This method removes elevation fluctuations up to maxElevationDelta. Compared to the smoothMovingAverage function this method has the advantage that the maximum slope of a PointList never increases (max(abs(slope_i))). The disadvantage is that the appearance might be still more spiky (at tower nodes) as a result when a bigger positive slope changes to a bigger negative slope.The underlying algorithm is an adapted Ramer-Douglas-Peucker algorithm (see #2634) with a maximum elevation change and: 1. only elevation changes are considered and any lat,lon difference is ignored 2. instead of removing the point the elevation will be calculated from the average slope of the first and last point of the specified pointList
-