Name

ST_Project — Returnerar en punkt som projiceras från en startpunkt med ett avstånd och en bäring (azimut).

Synopsis

geometry ST_Project(geometry g1, float distance, float azimuth);

geometry ST_Project(geometry g1, geometry g2, float distance);

geography ST_Project(geography g1, float distance, float azimuth);

geography ST_Project(geography g1, geography g2, float distance);

Beskrivning

Returnerar en punkt som projiceras från en punkt längs en geodetisk linje med hjälp av ett givet avstånd och azimut (bäring). Detta är känt som det direkta geodetiska problemet.

I tvåpunktsversionen används vägen från den första till den andra punkten för att implicit definiera azimut och avståndet används som tidigare.

Avståndet anges i meter. Negativa värden stöds.

Azimuten (även känd som kurs eller bäring) anges i radianer. Den mäts medurs från nordlig riktning.

  • Norr är azimut noll (0 grader)

  • Öst är azimut π/2 (90 grader)

  • Syd är azimut π (180 grader)

  • Väst är azimut 3π/2 (270 grader)

Negativa azimutvärden och värden som är större än 2π (360 grader) stöds.

Tillgänglighet: 2.0.0

Förbättrad: 2.4.0 Tillåt negativt avstånd och icke-normaliserad azimut.

Förbättrad: 3.4.0 Tillåt geometriargument och tvåpunktsform som utelämnar azimut.

Exempel: Projicerad punkt på 100.000 meter och bäring 45 grader

SELECT ST_AsText(ST_Project('POINT(0 0)'::geography, 100000, radians(45.0)));
--------------------------------------------
 POINT(0.635231029125537 0.639472334729198)