Làm cách nào để chuyển đổi tọa độ Mặt phẳng trạng thái sang kinh độ vĩ độ?


32

Cho một hệ tọa độ mặt phẳng trạng thái cụ thể (cho dù NAD27 hoặc NAD83), có tài nguyên nào để chuyển đổi thành kinh độ vĩ độ không?

Câu trả lời:


19

Bạn sẽ cần phải từ chối họ để xử lý việc chuyển đổi này.

Proj.4 là một thư viện rất chuẩn, được sử dụng bởi rất nhiều phần mềm để chỉnh sửa.

Một phương tiện sử dụng này là sử dụng một tiện ích như gdaltransform để thực hiện chuyển đổi cho bạn.


9

Nếu bạn biết các mã EPSG hoặc các tham số proj.4 có liên quan, cả hai gdaltransformvà proj.4 cs2cs( trang man ) là một lộ trình tốt, như Reed đã đề cập.

Tuy nhiên, nếu bạn thấy mình không có thông tin này, hãy thử spatialreference.org : nó cung cấp các tham số và bản đồ web để thực hiện chuyển đổi hệ thống lat / long ( ví dụ với mặt phẳng trạng thái IL ). Vì nhiều phép chiếu mặt phẳng trạng thái thiếu mã EPSG, hãy sử dụng sr.org để tìm chuỗi proj.4, điều này có gdaltransformthể hiểu được. Dưới đây là một ví dụ chuyển đổi từ các cặp máy bay của bang California V sang các cặp lat / long WGS84:

gdaltransform -s_srs '+proj=lcc +lat_1=34.03333333333333 \ 
+lat_2=35.46666666666667 +lat_0=33.5 +lon_0=-118 +x_0=2000000 +y_0=500000 \ 
+ellps=GRS80 +units=m +no_defs' -t_srs epsg:4326

Sau đó, gõ 1815241.25377291 557301.336190851sẽ trở lại -120 33.9999999999996.


Điều này đúng, nhưng có một lỗi đánh máy, đối số -s_srs được đưa ra hai lần. Lệnh sẽ kết thúc bằng -t_srs:gdaltransform -s_srs '+proj=lcc +lat_1=34.03333333333333 +lat_2=35.46666666666667 +lat_0=33.5 +lon_0=-118 +x_0=2000000 +y_0=500000 +ellps=GRS80 +units=m +no_defs' -t_srs epsg:4326
alvin

@alvin, tôi đã sửa lỗi đánh máy, cảm ơn vì đã đề phòng!
scw

8

Khách hàng hay máy chủ? Ngôn ngữ cụ thể? Một lần hay số lượng lớn?

Ví dụ: đối với phía máy khách - với JavaScript - sử dụng OpenLayers + Proj4js.

0) Nhập tất cả các lib phù hợp

1) tạo quan điểm của bạn

var lonlat = new OpenLayers.LonLat( ....)

2) chuyển đổi nó

lonlat.transform( new OpenLayers.Projection("epsg:XXXX"), new OpenLayers.Projection("epsg:4326"));

bây giờ lonlat.lon và lonlat.lat nằm trong các giá trị lon / lat WGS84.


Điều này hoạt động, nhưng đòi hỏi phát triển tùy chỉnh. Không chắc chắn nếu OP chỉ muốn một công cụ có thể sử dụng.
Sậy Copsey

1
Phải, tôi chỉ đưa ra một ví dụ - phía máy khách, javascript, bằng mã. OP không chỉ định những gì anh ta đang tìm kiếm. Ngay cả câu trả lời được chấp nhận là một thư viện. Ngoài ra còn có rất nhiều trang web cung cấp cho bạn một hình thức đơn giản để nhập thủ công các hợp đồng và cho phép bạn chuyển đổi.
Vadim

6

Một chương trình miễn phí và cực kỳ dễ dàng là CorpsCon sẽ chuyển đổi các điểm đơn lẻ, lô điểm trong tệp văn bản và có một DLL có thể được sử dụng từ trong các môi trường lập trình như python.

2014 / 07-09: Liên kết được cập nhật là http://www.agc.army.mil/Missions/Corpscon.aspx Nhấp vào "Tải xuống CorpsCon" sẽ đưa bạn đến một trang trông hơi kỳ lạ và tạm thời nhưng không hoạt động.


Liên kết là xuống. Bạn có khác không?
Scott_B

Tôi quan tâm đến việc sử dụng Corpscon dll trong python có tài liệu cho việc này mà tôi không thấy ở trang corpscon.
Gary Lester


Một thời gian trước, tôi bắt đầu sử dụng pyproj cho tất cả các biến đổi bên trong python ở cuối bài được liệt kê bên dưới, bạn có thể thấy cách nó có thể được thực hiện rất dễ dàng chỉ trong một vài dòng. dshimer.blogspot.com/2012/11/
Dennis


2

Một tùy chọn khác (nhưng chỉ dành cho NAD83) là SPCS83 tại http://www.ngs.noaa.gov/PC_PROD/SPCS83 . Nó chạy trong cửa sổ dòng lệnh trên PC và chuyển đổi tương tác hoặc từ đầu vào tệp văn bản. Nó bao gồm mã nguồn nếu bạn thực sự chỉ muốn thuật toán. Nguồn là Fortran, có thể là một nỗi đau để sử dụng nhưng đủ dễ để giải mã để đưa ra các thuật toán. Đồng thời xem www.metzgerwillard.us/spcge/spcge.html là giao diện người dùng cho SPCS83 trong Google Earth.


2

Kiểm tra dịch vụ dịch thuật miễn phí. Tải lên dữ liệu của bạn và sau đó chỉ định hệ tọa độ đầu ra mong muốn. Bằng cách chọn định dạng tương tự cho đầu ra làm đầu vào, bạn đang thực hiện việc từ chối một cách hiệu quả.

Dịch vụ này được tìm thấy tại http://fmeserver.com/userweb/sharper/Portal/PalTranslator/index.html

và được dựa trên sản phẩm FME. Ngoài ra còn có bản dùng thử 14 ngày miễn phí về điều này. www.safe.com



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.