ArcGIS Pro 3.4 API Reference Guide
ArcGIS.Desktop.Mapping Namespace / ElevationProfileResult Class
Members Example Version

ElevationProfileResult Class
Defines the result of calling Map.GetElevationProfileFromSurface().
Object Model
ElevationProfileResult ClassPolyline Class
Syntax
public class ElevationProfileResult 
Example
Get Elevation profile from the default ground surface
// find the elevation profile for a polyline / set of polylines
var result = await MapView.Active.Map.GetElevationProfileFromSurfaceAsync([lineGeom]);
if (result.Status == SurfaceZsResultStatus.Ok)
{
  var polylineZ = result.Polyline;

  // process the polylineZ
}

// find the elevation profile for a set of points
result = await MapView.Active.Map.GetElevationProfileFromSurfaceAsync(pts);
if (result.Status == SurfaceZsResultStatus.Ok)
{
  var polylineZ = result.Polyline;

  // process the polylineZ
}
Get Elevation profile from a specific surface
// find the elevation profile for a polyline / set of polylines
var eleLayer = MapView.Active.Map.GetElevationSurfaceLayers().FirstOrDefault(l => l.Name == "TIN");
var zResult = await MapView.Active.Map.GetElevationProfileFromSurfaceAsync([lineGeom], eleLayer);
if (zResult.Status == SurfaceZsResultStatus.Ok)
{
  var polylineZ = zResult.Polyline;

  // process the polylineZ
}

// find the elevation profile for a set of points
zResult = await MapView.Active.Map.GetElevationProfileFromSurfaceAsync(pts, eleLayer);
if (zResult.Status == SurfaceZsResultStatus.Ok)
{
  var polylineZ = zResult.Polyline;

  // process the polylineZ
}
Interpolate a line between two points and calculate the elevation profile
int numPoints = 20;

// use the default ground elevation surface
var result = await MapView.Active.Map.GetElevationProfileFromSurfaceAsync(startPt, endPt, numPoints);
if (result.Status == SurfaceZsResultStatus.Ok)
{
  var polylineZ = result.Polyline;

  // process the polylineZ
}

// use a specific elevation surface
var eleLayer = MapView.Active.Map.GetElevationSurfaceLayers().FirstOrDefault(l => l.Name == "TIN");
result = await MapView.Active.Map.GetElevationProfileFromSurfaceAsync(startPt, endPt, numPoints, eleLayer);
if (result.Status == SurfaceZsResultStatus.Ok)
{
  var polylineZ = result.Polyline;

  // process the polylineZ
}
Inheritance Hierarchy

System.Object
   ArcGIS.Desktop.Mapping.ElevationProfileResult

Requirements

Target Platforms: Windows 11, Windows 10

ArcGIS Pro version: 3.4 or higher.
See Also