STRemoveMeasure
STRemoveMeasure — Function that removes measure values from all points in linestring.
Function Specification.
Function [lrs].[STRemoveMeasure] ( @p_linestring geometry, @p_round_xy int = 3, @p_round_zm int = 2 ) Returns geometry
Description.
Removes all measure ordinate values.
Linestring with XYM ordinates is returned with XY ordinates.
Linestring with XYZM ordinates is returned with XYZ ordinates. If all Z values are NULL, the Z is removed.
Supports CircularString and CompoundCurve geometry objects and subelements from 2012 onewards.
Parameters.
@p_linestring (geometry) - Supplied Linestring geometry. @p_round_xy (int) - Decimal degrees of precision for when formatting XY ordinates in WKT. @p_round_zm (int) - Decimal degrees of precision for when formatting Z ordinate in WKT.
Result.
Returns input geometry with all M ordinates removed.
Example.
select [lrs].[STRemoveMeasure] ( geometry::STGeomFromText('LINESTRING(1 1 NULL 1,2 2 NULL 2)',0), 3, 2 ).AsTextZM() as RemoveMeasureLine union all select [lrs].[STRemoveMeasure] ( geometry::STGeomFromText('LINESTRING(1 1 1 1,2 2 2 2)',0), 3, 2 ).AsTextZM() as RemoveMeasureLine union all select [lrs].[STRemoveMeasure] ( geometry::STGeomFromText('MULTILINESTRING((1 1 NULL 1,2 2 NULL 2),(3 3 NULL 3,4 4 NULL 4))',0), 3, 2 ).AsTextZM() as RemoveMeasureLine union all select [lrs].[STRemoveMeasure] ( geometry::STGeomFromText('MULTILINESTRING((1 1 1 1,2 2 2 2),(3 3 3 3,4 4 4 4))',0), 3, 2 ).AsTextZM() as RemoveMeasureLine GO RemoveMeasureLine LINESTRING (1 1, 2 2) LINESTRING (1 1 1, 2 2 2) MULTILINESTRING ((1 1, 2 2), (3 3, 4 4)) MULTILINESTRING ((1 1 1, 2 2 2), (3 3 3, 4 4 4))