ST_AddMeasure — Interpolates measures along a linear geometry.
geometry ST_AddMeasure(
geometry geom_mline, float8 measure_start, float8 measure_end)
;
Gibt eine abgeleitete Geometrie mit einer zwischen Anfangs- und Endpunkt linear interpolierten Kilometrierung zurück. Wenn die Geometrie keine Dimension für die Kilometrierung aufweist, wird diese hinzugefügt. Wenn die Geometrie eine Dimension für die Kilometrierung hat, wird diese mit den neuen Werten überschrieben. Es werden nur LINESTRINGs und MULTILINESTRINGs unterstützt.
Verfügbarkeit: 1.5.0
This function supports 3d and will not drop the z-index.
SELECT ST_AsText(ST_AddMeasure( ST_GeomFromEWKT('LINESTRING(1 0, 2 0, 4 0)'),1,4)) As ewelev; ewelev -------------------------------- LINESTRINGM(1 0 1,2 0 2,4 0 4) SELECT ST_AsText(ST_AddMeasure( ST_GeomFromEWKT('LINESTRING(1 0 4, 2 0 4, 4 0 4)'),10,40)) As ewelev; ewelev ---------------------------------------- LINESTRING(1 0 4 10,2 0 4 20,4 0 4 40) SELECT ST_AsText(ST_AddMeasure( ST_GeomFromEWKT('LINESTRINGM(1 0 4, 2 0 4, 4 0 4)'),10,40)) As ewelev; ewelev ---------------------------------------- LINESTRINGM(1 0 10,2 0 20,4 0 40) SELECT ST_AsText(ST_AddMeasure( ST_GeomFromEWKT('MULTILINESTRINGM((1 0 4, 2 0 4, 4 0 4),(1 0 4, 2 0 4, 4 0 4))'),10,70)) As ewelev; ewelev ----------------------------------------------------------------- MULTILINESTRINGM((1 0 10,2 0 20,4 0 40),(1 0 40,2 0 50,4 0 70))