Làm cách nào để thêm phần bù vào lat / lon để có điểm mới bằng PostGIS


9

Sử dụng PostGIS Tôi có một điểm lat / lon và muốn thêm một điểm bù đông / tây và bắc / nam tính bằng mét để có điểm mới. Điều đó có thể không?

Câu trả lời:


8

Bạn có thể sử dụng ST_TransTable:

Hàm ST_Translate nhận bất kỳ hình học nào (linestring, multiline, v.v.) trả về một hình học mới là hình học ban đầu được di chuyển bởi một vectơ được xác định bởi X, Y, Z. Lưu ý các đơn vị đo luôn nằm trong các đơn vị của hệ quy chiếu không gian của đối số hình học. Có hai hình thức của nó ST_TransTable. ST_TransTable (hình học, X, Y, Z) và ST_TransTable (hình học, X, Y).

Nguồn: http://www.bostongis.com/postgis_translate.snippet

Bạn sẽ phải chuyển lat / lon thành mét trước. Bạn có thể sử dụng ST_Transform để đạt được điều này:

ST_Transform - Trả về hình dạng mới với tọa độ được chuyển đổi thành SRID được tham chiếu bởi tham số nguyên.

Nguồn: http://postgis.net/docs/ST_Transform.html


Đó là phần lat / lon to mét mà tôi gặp rắc rối. Bất kỳ đề nghị về điều đó?
Dave Jennings

Tôi đã thêm chức năng tương ứng để trả lời. Nếu bạn không biết nên chọn SRID mục tiêu nào, bạn sẽ phải sử dụng phạm vi địa lý của dữ liệu của mình.
underdark

Cảm ơn. Nghiên cứu khác của tôi cuối cùng đã nói với tôi điều tương tự. Tôi ngây thơ nghĩ rằng nó có thể đơn giản hơn và có một SRID duy nhất tôi có thể sử dụng, nhưng có vẻ như bạn phải chọn một cái dựa trên vị trí của bạn.
Dave Jennings
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.