Namn

ST_ShiftLongitude — Flyttar longitudkoordinaterna för en geometri mellan -180..180 och 0..360.

Synopsis

geometry ST_ShiftLongitude(geometry geom);

Beskrivning

Läser varje punkt/vertex i en geometri och flyttar dess longitudkoordinat från -180..0 till 180..360 och vice versa om den ligger mellan dessa intervall. Denna funktion är symmetrisk så resultatet är en 0..360-representation av en -180..180-data och en -180..180-representation av en 0..360-data.

[Notera]

Detta är endast användbart för data med koordinater i longitud/latitud, till exempel SRID 4326 (geografiskt WGS 84)

[Varning]

Före 1.3.4 hindrade buggen detta från att fungera för MULTIPOINT. 1.3.4+ fungerar även med MULTIPOINT.

Denna funktion stöder 3d och kommer inte att tappa z-index.

Förbättrad: 2.0.0 stöd för polyhedrala ytor och TIN infördes.

OBS: denna funktion döptes om från "ST_Shift_Longitude" i 2.2.0

Denna funktion stöder polyedriska ytor.

Denna funktion stöder trianglar och triangulerade oregelbundna nätverksytor (TIN).

Exempel

Det här exemplet utför en framåtriktad longitudförskjutning på en enda punkt.

Kod
SELECT ST_ShiftLongitude('SRID=4326;POINT(270 0)'::geometry)
Utdata
POINT(-90 0)
Figur
Geometry figure for visual-st-shiftlongitude-01

Det här exemplet utför en bakåtriktad longitudförskjutning på en enda punkt.

Kod
SELECT ST_ShiftLongitude('SRID=4326;POINT(-90 0)'::geometry)
Utdata
POINT(270 0)
Figur
Geometry figure for visual-st-shiftlongitude-02

Det här exemplet visar att LineStrings endast förskjuts där koordinaterna kräver det.

Kod
SELECT ST_ShiftLongitude('SRID=4326;LINESTRING(174 12,182 13)'::geometry)
Utdata
LINESTRING(174 12,-178 13)
Figur
Geometry figure for visual-st-shiftlongitude-03

Se även

ST_WrapX