Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
ST_ LineInterpolatePoint
ST_ LineInterpolatePoint restituisce un punto lungo una linea a una distanza frazionaria dall'inizio della linea.
Per determinare l'uguaglianza dei punti, ST_ LineInterpolatePoint opera sulla proiezione 2D della geometria di input. Se la geometria di input è vuota, una sua copia viene restituita nella stessa dimensione dell'input. Per le geometrie 3DZ, 3DM e 4D, la coordinata z
o m
è la media delle coordinate z
o m
del segmento in cui si trova il punto.
Sintassi
ST_LineInterpolatePoint(geom, fraction)
Argomenti
- geom
-
Un valore di tipo
GEOMETRY
o un'espressione che restituisce un valore di tipoGEOMETRY
. Il sottotipo èLINESTRING
. - fraction
-
Un valore di tipo di dati
DOUBLE PRECISION
che rappresenta la posizione di un punto lungo la linestring della linea. Il valore è una frazione nell'intervallo 0-1, estremi inclusi.
Tipo restituito
GEOMETRY
di sottotipo POINT
.
Se geom o fraction sono null, allora viene restituito null.
Se geom è vuoto, allora viene restituito il punto vuoto.
Il valore dell'identificatore del sistema di riferimento spaziale (SRID) della geometria restituito è il valore SRID della geometria di input.
Se fraction è fuori intervallo, allora viene restituito un errore.
Se geom non è una linestring, allora viene restituito un errore.
Esempi
Il seguente SQL restituisce un punto a metà strada lungo una linestring.
SELECT ST_AsEWKT(ST_LineInterpolatePoint(ST_GeomFromText('LINESTRING(0 0, 5 5, 7 7, 10 10)'), 0.50));
st_asewkt
-----------
POINT(5 5)
Il seguente SQL restituisce un punto al 90% sulla strada lungo una linestring.
SELECT ST_AsEWKT(ST_LineInterpolatePoint(ST_GeomFromText('LINESTRING(0 0, 5 5, 7 7, 10 10)'), 0.90));
st_asewkt
-----------
POINT(9 9)