Joseph (and Ted),
In Pro 1.3 you can now use something like a sketch point tool and examine the returned geometry for the Z value.
The Z will be taken from the current elevation environment as set in the elevation group on the Edit tab. If required you can programmatically set this environment (set z modes and select a surface) but at this time you cant add an elevation source to a surface through code.
Here's a sample point sketch tool:
class pointSketchZ : MapTool
{
public pointSketchZ()
{
IsSketchTool = true;
SketchType = SketchGeometryType.Point;
SketchOutputMode = SketchOutputMode.Map;
UseSnapping = true;
}
protected override Task<bool> OnSketchCompleteAsync(Geometry geometry)
{
return QueuedTask.Run(() =>
{
var mp = geometry as MapPoint;
MessageBox.Show("X: " + mp.X + "\n" + "Y: " + mp.Y + "\n" + "Z: " + mp.Z);
return Task.FromResult(true);
});
}
}
In a future release you'll be able to query a surface with an xy to return a Z value.