# Support for 3D methods and M values on ArcPy geometries

Idea created by xander_bakker on Feb 24, 2016
New
Score70
Currently (ArcMap 10.3.1 and probably 10.4 too, ArcGIS Pro 1.2) the methods on the arcpy geometries do not support 3D or M values. For instance the method to determine a position on a line will do this 2D and not take into account the third dimension, if the geometry has it:

arcpy.Polyline()::positionAlongLine (value, {use_percentage})

See discussion: https://geonet.esri.com/message/589921

Neither is it possible to extract a part of a polyline based on the M values with

arcpy.Polyline()::segmentAlongLine (start_measure, end_measure, {use_percentage})

... since the measures mentioned as parameters are distances (absolute or in percentage of the total length of the polyline).

See discussion: https://geonet.esri.com/message/516789

My request is to add additional methods and properties to ArcPy geometries to support Z and M values.
Perhaps initially additional methods for using M values for:
arcpy.Polyline()::segmentAlongLineM(start_measure, end_measure, {use_percentage})
arcpy.Polyline()::positionAlongLineM(value, {use_percentage})

Additional methods for using 3D length values for:
arcpy.Polyline()::segmentAlongLine3D(start_measure, end_measure, {use_percentage})
arcpy.Polyline()::positionAlongLine3D(value, {use_percentage})
arcpy.Polyline()::getLength3D({measurement_type}, {units})

... but I can imagine that these would be helpful too:
buffer3D(distance)
distanceTo3D(other)
measureOnLineM(in_point, {as_percentage})
measureOnLine3D(in_point, {as_percentage})
pointFromAngleAndDistance3D(angle, distance, {method})
queryPointAndDistance3D(in_point, {as_percentage})

... and others