ST_RemoveRepeatedPoints — Returnerar en version av en geometri där dubbletter av punkter har tagits bort.
geometry ST_RemoveRepeatedPoints(
geometry geom, float8 tolerance = 0.0)
;
Returnerar en version av den angivna geometrin där dubbla punkter har tagits bort. Funktionen bearbetar endast (Multi)LineStrings, (Multi)Polygons och MultiPoints men den kan anropas med alla typer av geometrier. Element i GeometryCollections bearbetas individuellt. Slutpunkterna för LineStrings bevaras.
Om en toleransparameter
som inte är noll anges, anses vertikaler som ligger inom toleransavståndet från varandra vara duplikat. Avståndet beräknas i 2D (XY-planet).
Förbättrad: 3.2.0
Tillgänglighet: 2.2.0
Denna funktion stöder polyedriska ytor.
Denna funktion stöder 3d och kommer inte att tappa z-index.
SELECT ST_AsText( ST_RemoveRepeatedPoints( 'MULTIPOINT ((1 1), (2 2), (3 3), (2 2))')); ------------------------- MULTIPOINT(1 1,2 2,3 3)
SELECT ST_AsText( ST_RemoveRepeatedPoints( 'LINESTRING (0 0, 0 0, 1 1, 0 0, 1 1, 2 2)')); --------------------------------- LINESTRING(0 0,1 1,0 0,1 1,2 2)
Exempel: Samlingselement bearbetas individuellt.
SELECT ST_AsText( ST_RemoveRepeatedPoints( 'GEOMETRYCOLLECTION (LINESTRING (1 1, 2 2, 2 2, 3 3), POINT (4 4), POINT (4 4), POINT (5 5))')); ------------------------------------------------------------------------------ GEOMETRYCOLLECTION(LINESTRING(1 1,2 2,3 3),POINT(4 4),POINT(4 4),POINT(5 5))
Exempel: Upprepad punktborttagning med en avståndstolerans.
SELECT ST_AsText( ST_RemoveRepeatedPoints( 'LINESTRING (0 0, 0 0, 1 1, 5 5, 1 1, 2 2)', 2)); ------------------------- LINESTRING(0 0,5 5,2 2)