## Top 5 Recent Articles

##### ARTICLES CATEGORIES

- Algorithms (22)
- All (399)
- Biography (1)
- Blog (44)
- Business Requirements (1)
- Commentary (1)
- Conversion (2)
- Customers (2)
- Data Models (1)
- Education (2)
- GeoRaptor (13)
- GPS (1)
- Image Processing (2)
- Import Export (8)
- Licensing (2)
- LiDAR (1)
- Linear Referencing (4)
- Manifold GIS (3)
- Mapping (1)
- MySQL Spatial (7)
- Networking and Routing (including Optimization) (5)
- Open Source (18)
- Oracle Spatial and Locator (194)
- Partitioning (1)
- PostGIS (36)
- Projections (1)
- Published Articles (1)
- qGIS (1)
- Recommendations (1)
- Services (1)
- Software Change Log (1)
- Source Code (37)
- Space Curves (9)
- Spatial Database Functions (109)
- Spatial DB comparison (1)
- Spatial XML Processing (11)
- SQL Server Spatial (92)
- Standards (3)
- Stored Procedure (17)
- Tessellation or Gridding (10)
- Tools (2)
- Topological Relationships (1)
- Training (2)
- Triangulation (2)

# STAddMeasure

**STAddMeasure** is a TSQL function that adds measures to the supplied linestring.

**TSQL Call Signature**

Function [lrs].[STAddMeasure] ( @p_linestring geometry, @p_start_measure float, @p_end_measure float, @p_round_xy int = 3, @p_round_zm int = 2 ) Returns geometry;

**Description.**

Function that add measure ordinates to the supplied @p_linestring.

The function supports LineString, CircularString, CompoundCurve geometries

If geometry is already measured it is returned unchanged.

Start Point is assigned @p_start_measure and End Point is assigned @p_end_measure.

Intermediate Points’ measure values are calculated based on length calculations.

If a 2D linestring is supplied its Z ordinates are set to NULL.

The updated coordinate’s XY ordinates are rounded to @p_round_xy number of decimal digits of precision.

The updated coordinate’s ZM ordinates are rounded to @p_round_ZM number of decimal digits of precision.

**Result.**

measured linestring (geometry) – Input linestring with measures applied.

**Parameters.**

@p_linestring (geometry) - Supplied Linestring geometry. @p_start_measure (float) - New Start M easurevalue. @p_end_measure (float) - New End Measure value. @p_round_xy (int) - Decimal degrees of precision to which calculated XY ordinates are rounded. @p_round_zm (int) - Decimal degrees of precision to which calculated ZM ordinates are rounded.

**Example.**

The following query adds a measures to the supplied line. The start measure 1 is added to the first vertex of the linestring and an end measure of 2.141 is added to the last vertex of the linestring. Any intermediate vertices have measures added by distance interpolation.

use DEVDB -- change to your database go SELECT [lrs].[STAddMeasure] ( geometry::STGeomFromText( 'LINESTRING(0 0,0.5 0.5,1 1)',0), 1, 2.414, 3, 2 ).AsTextZM() as MeasureLine; MeasureLine LINESTRING (0 0 NULL 1, 0.5 0.5 NULL 1.71, 1 1 NULL 2.41)

## Documentation

- MySQL Spatial General Functions
- Oracle LRS Objects
- Oracle Spatial Exporter (Java + pl/SQL)
- Oracle Spatial Object Functions
- Oracle Spatial Object Functions (Multi Page)
- PostGIS pl/pgSQL Functions
- SC4O Oracle Java Topology Suite (Java + pl/SQL)
- SQL Server Spatial General TSQL Functions
- SQL Server Spatial LRS TSQL Functions