Beispiel #1
0
 /// <summary>
 /// Get usual stats from an elevated point list.
 /// Min/Max altitudes, length, climb/descent
 /// Assumes that the provided list is a "line string"
 /// </summary>
 /// <param name="points"></param>
 /// <returns></returns>
 public static ElevationMetrics ComputeMetrics(this IList <GeoPoint> points, double?noDataValue = null)
 {
     return(GeometryService.ComputeMetrics(points, noDataValue));
 }
Beispiel #2
0
 /// <summary>
 /// Get <see cref="ComputeMetrics(IList{GeoPoint})"/> metrics and visiblity report if any obstacles are found
 /// </summary>
 /// <param name="points"></param>
 /// <param name="sourceVerticalOffset">Vertical elevation offset at source point. The line of sight will be calculated from this point (set to 1.8 for simulate a human eye height)</param>
 /// <returns></returns>
 public static IntervisibilityMetrics ComputeVisibilityMetrics(this IList <GeoPoint> linePoints
                                                               , double sourceVerticalOffset = 0d, double?noDataValue = null)
 {
     return(GeometryService.ComputeVisibilityMetrics(linePoints, visibilityCheck: true, sourceVerticalOffset: sourceVerticalOffset, noDataValue));
 }
Beispiel #3
0
 /// <summary>
 /// Check if a bounding box is fully covered by a set of tiles
 /// Detects when a tile is missing and thus involving a "data hole" in the future heightmap
 /// </summary>
 /// <param name="bbox"></param>
 /// <param name="bboxTiles"></param>
 /// <returns></returns>
 public bool IsBoundingBoxCovered(BoundingBox bbox, IEnumerable <BoundingBox> bboxTiles)
 {
     return(GeometryService.IsCovered(bbox, bboxTiles));
 }
Beispiel #4
0
 /// <summary>
 /// Get usual stats from an elevated point list.
 /// Min/Max altitudes, length, climb/descent
 /// Assumes that the provided list is a "line string"
 /// </summary>
 /// <param name="points"></param>
 /// <returns></returns>
 public static ElevationMetrics ComputeMetrics(this IList <GeoPoint> points)
 {
     return(GeometryService.ComputeMetrics(points));
 }