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à.
Funzioni operazione
Utilizzare le funzioni di operazione per eseguire operazioni su valori dei tipi di dati di geometria. Ad esempio, è possibile ottenere i limiti di un singolo tipo di dati di geometria; intersezioni tra due tipi di dati di geometria; differenza tra geometria a sinistra e a destra, dove ogni geometria è dello stesso tipo di dati; oppure un buffer esterno o anello intorno a un determinato tipo di dati di geometria.
geometry_union(array(geometry))
Restituisce una geometria che rappresenta l'unione degli insiemi di punti delle geometrie specificate. Esempio:
SELECT geometry_union(ARRAY[ST_Point(-158.54, 61.56), ST_Point(-158.55, 61.56)])
ST_Boundary(geometry)
Richiede come input uno dei tipi di dati di geometria e restituisce il tipo di dati di geometria boundary
.
Esempi:
SELECT ST_Boundary(ST_Line('linestring(0 1, 1 0)')))
SELECT ST_Boundary(ST_Polygon('polygon((1 1, 1 4, 4 4, 4 1))'))
ST_Buffer(geometry,
double)
Richiede come input uno dei tipi di dati di geometria, ad esempio punto, linea, poligono, multilinea o multipoligono e una distanza come tipo double
). Restituisce il tipo di dati di geometria eseguiti in buffer dalla distanza specificata (o raggio). Esempio:
SELECT ST_Buffer(ST_Point(1, 2), 2.0)
Nell'esempio seguente le coordinate geografiche sono specificate in longitudine e latitudine e il valore .072284
, che è la distanza buffer, è specificato in unità angolari come gradi decimali:
SELECT ST_Buffer(ST_Point(-74.006801, 40.705220), .072284)
ST_Difference(geometry, geometry)
Restituisce una rappresentazione della differenza tra geometria a sinistra e geometria a destra. Esempio:
SELECT ST_AsText(ST_Difference(ST_Polygon('polygon((0 0, 0 10, 10 10, 10 0))'), ST_Polygon('polygon((0 0, 0 5, 5 5, 5 0))')))
ST_Envelope(geometry)
Accetta tipi di dati di geometria line
, polygon
, multiline
e multipolygon
come input. Non supporta il tipo di dati di geometria point
. Restituisce l'envelope come geometria, dove l'envelope è un rettangolo attorno al tipo di dati di geometria specificato. Esempi:
SELECT ST_Envelope(ST_Line('linestring(0 1, 1 0)'))
SELECT ST_Envelope(ST_Polygon('polygon((1 1, 1 4, 4 4, 4 1))'))
ST_EnvelopeAsPts(geometry)
Restituisce un array di due punti che rappresentano gli angoli inferiore sinistro e superiore destro del poligono rettangolare che delimita la geometria. Restituisce null se la geometria specificata è vuoto. Esempio:
SELECT ST_EnvelopeAsPts(ST_Point(-158.54, 61.56))
ST_ExteriorRing(geometry)
Restituisce la geometria dell'anello esterno del tipo di input polygon
. A partire dalla versione 2 del motore Athena, i poligoni sono le uniche geometrie accettate come input. Esempi:
SELECT ST_ExteriorRing(ST_Polygon(1,1, 1,4, 4,1))
SELECT ST_ExteriorRing(ST_Polygon('polygon ((0 0, 8 0, 0 8, 0 0), (1 1, 1 5, 5 1, 1 1))'))
ST_Intersection(geometry, geometry)
Restituisce la geometria dell'intersezione della geometria a sinistra e a destra. Esempi:
SELECT ST_Intersection(ST_Point(1,1), ST_Point(1,1))
SELECT ST_Intersection(ST_Line('linestring(0 1, 1 0)'), ST_Polygon('polygon((1 1, 1 4, 4 4, 4 1))'))
SELECT ST_AsText(ST_Intersection(ST_Polygon('polygon((2 0, 2 3, 3 0))'), ST_Polygon('polygon((1 1, 4 1, 4 4, 1 4))')))
ST_SymDifference(geometry, geometry)
Restituisce la geometria della differenza geometricamente simmetrica tra la geometria a sinistra e quella a destra. Esempio:
SELECT ST_AsText(ST_SymDifference(ST_Line('linestring(0 2, 2 2)'), ST_Line('linestring(1 2, 3 2)')))
ST_Union(geometry,
geometry)
Restituisce un tipo di dati della geometria che rappresenta l'unione di set di punti delle geometrie specificate. Esempio:
SELECT ST_Union(ST_Point(-158.54, 61.56),ST_LineString(array[ST_Point(1,2), ST_Point(3,4)]))