ST_ LineInterpolatePoint - Amazon Redshift

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 tipo GEOMETRY. 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)