Top 5 Recent Articles
ARTICLES CATEGORIES
- Algorithms (20)
- All (400)
- Biography (1)
- Blog (45)
- Business Requirements (1)
- Commentary (1)
- 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) (4)
- Open Source (18)
- Oracle Spatial and Locator (193)
- Partitioning (1)
- PostGIS (34)
- Projections (1)
- Published Articles (1)
- qGIS (1)
- Recommendations (1)
- Services (1)
- Software Change Log (1)
- Source Code (35)
- Space Curves (9)
- Spatial Database Functions (108)
- Spatial DB comparison (1)
- Spatial XML Processing (11)
- SQL Server Spatial (92)
- Standards (3)
- Stored Procedure (15)
- Tessellation or Gridding (10)
- Tools (2)
- Topological Relationships (1)
- Training (2)
- Triangulation (2)
STSplitProcedure
STSplitProcedure — Procedure that splits a line into two parts.
Function Specification.
Function [lrs].[STSplitProcedure] ( @p_linestring geometry, @p_point geometry, @p_line1 geometry OUTPUT, @p_line2 geometry OUTPUT, @p_round_xy int = 3, @p_round_zm int = 2 ) Returns geometry
Description.
Splits @p_linestring at position defined by @p_point.
If @p_point is not on the line it is first snapped to the line.
Supports CircularString and CompoundCurve geometry objects and subelements from 2012 onewards.
Honours measures.
Parameters.
@p_linestring (geometry) - Supplied Linestring geometry. @p_point (geometry) - Supplied split point. @p_line1 (geometry) - Is an OUTPUT parameter that holds the first part of split line. @p_line2 (geometry) - Is an OUTPUT parameter that holds the second part of split line. @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 two parts of split linestring.
Example.
declare @v_linestring geometry = geometry::STGeomFromText('LINESTRING(0 0,10 10,20 20,30 30,40 40,50 50,60 60,70 70,80 80,90 90,100 100)',0), @v_point geometry = geometry::STGeomFromText('POINT(50 51)',0), @v_line1 geometry, @v_line2 geometry; exec [lrs].[STSplitProcedure] @p_linestring=@v_linestring, @p_point=@v_point, @p_line1=@v_line1 OUTPUT, @p_line2=@v_line2 OUTPUT, @p_round_xy=3, @p_round_zm=2; select @v_line1.STAsText() as line1, @v_line2.STAsText() as line2 GO line1 line2 LINESTRING (0 0, 10 10, 20 20, 30 30, 40 40, 50 50, 50.5 50.5) LINESTRING (50.5 50.5, 60 60, 70 70, 80 80, 90 90, 100 100)
Documentation
- MySQL Spatial General Function Documentation
- Oracle LRS Object Documentation
- Oracle Spatial Exporter Package Documentation
- Oracle Spatial Object Function Documentation
- Oracle Spatial Object Function Documentation (Multi Page Version)
- PostGIS pl/pgSQL Function Documentation
- SC4O Oracle Java Topology Suite (Stored Procedures) Package Documentation
- SQL Server Spatial General TSQL Function Documentation
- SQL Server Spatial LRS TSQL Function Documentation