Câu trả lời:
Có lẽ cách đơn giản nhất là sử dụng một cái gì đó như QGIS và plugin văn bản được phân tách của nó để nhập và sau đó xuất dữ liệu. Nếu bạn đang tìm kiếm một thứ gì đó theo dòng lệnh và có thể mở rộng, thì phương pháp VRT mà Sasa đã đề cập là một cách tốt.
Bạn cũng có thể làm điều đó với đầu vào và đầu ra tệp bằng cách sử dụng gdaltransform
:
gdaltransform -s_srs epsg:4326 -t_srs epsg:25832 < space-delimited-coordinates.txt
Và nếu bạn cần truy cập nhiều hơn vào kết quả theo chương trình, hãy xem câu trả lời của geographika bằng pyroj cho một câu hỏi liên quan.
Với arcmap,
thêm csv và sử dụng độ dài lat để tạo bảng sự kiện. (nhấp chuột phải vào lớp> "Hiển thị dữ liệu XY")
Điều này tạo ra một lớp sự kiện với bảng và một lớp điểm (không phải là lớp điểm thực, nó cần được xuất sau)
đặt phép chiếu tài liệu (thuộc tính khung dữ liệu) thành đầu ra mong muốn của tệp. (nhấp chuột phải vào các lớp "trong TOC"> thuộc tính> tab hệ thống tọa độ).
nhấp chuột phải vào lớp trong TOC> Xuất dữ liệu
Sử dụng tùy chọn để "sử dụng cùng một hệ tọa độ như: khung dữ liệu"
ogr2ogr sẽ có thể xử lý việc này (bạn có thể tải xuống FWTools để cài đặt nhanh).
Chủ đề này minh họa cách từ chối dữ liệu CSV. Để tóm tắt, bạn sẽ cần tạo tệp VRT có chứa các tham chiếu đến các cột CSV:
<OGRVRTDataSource>
<OGRVRTLayer name="test">
<SrcDataSource>test.csv</SrcDataSource>
<GeometryType>wkbPoint</GeometryType>
<GeometryField encoding="PointFromColumns" x="RW" y="HW"/>
</OGRVRTLayer>
</OGRVRTDataSource>
Và sau đó chạy ogr2ogr để từ chối:
ogr2ogr -s_srs "epsg:31466" -t_srs "epsg:25832" -f "CSV" -lco GEOMETRY=AS_XY -sql "SELECT PNR FROM test" temp_dir test.vrt
Bạn sẽ cần thay thế epsg: 31466 bằng mã EPSG phù hợp cho hệ tọa độ UTM của bạn.
Corpscon , một công cụ miễn phí từ Quân đoàn Kỹ sư Hoa Kỳ sẽ cho phép bạn chuyển đổi hàng loạt lat / long sang / từ UTM. Lưu ý rằng nó được giới hạn ở Hoa Kỳ và có thể hoạt động ở Canada .
Có làm việc bảng tính và mã nguồn khác (Fortran, C ++, vv) tại http://www.gpsy.com/gpsinfo/geotoutm/ lớn tài nguyên cho 1996 (và vẫn hoạt động)!
Chúng tôi có một ứng dụng máy tính để bàn độc lập thương mại (nhưng giá cả phải chăng) cho phép bạn chuyển đổi hàng loạt tọa độ của mình. Thông tin chi tiết có thể được tìm thấy tại: http://geomaticsolutions.com/products/geo-suite/geo-calc
Bạn cũng có thể sử dụng dịch vụ trực tuyến miễn phí của chúng tôi để thực hiện các phép biến đổi điểm đơn. http://georeposeective.com/home.html
Theo tôi hiểu, bạn không muốn đơn giản chỉ định lại một tệp, bạn muốn tự chuyển đổi tọa độ và có một tệp mới với tọa độ mới. Nếu bạn Google "chuyển đổi lat / lon thành utm", bạn sẽ tìm thấy bảng tính excel sẽ thực hiện chuyển đổi này (ví dụ: tại Đại học Wisconsin Green Bay hoặc trong câu trả lời của người đăng ký ở trên). Hoặc, bạn có thể mua phần mềm như AllTrans hoặc Franson Tọa độ, chuyển đổi hàng loạt sang và từ nhiều hệ thống tọa độ khác nhau.
Hoặc, ít đơn giản hơn nhưng mang tính giáo dục cao hơn, là học cú pháp cho gdal hoặc FWTools.
Đối với một giải pháp kịch bản, bạn có thể sử dụng pyproj :
import sys
import csv
import pyproj
# example invocation
# ./reproj.py ./file.csv 32619 4326
if (len(sys.argv) != 4):
print '%s <csvfile> <epsg_code_in> <epsg_code_out>' % sys.argv[0]
sys.exit(1)
else:
p1 = pyproj.Proj(init='epsg:%s' % sys.argv[2])
p2 = pyproj.Proj(init='epsg:%s' % sys.argv[3])
f = open(sys.argv[1], 'r')
table = csv.reader(f)
for row in table:
print '%s %s' % (row[1], row[2])
newxy = pyproj.transform(p1, p2, row[1], row[2])
print '%s %s' % (row[0], newxy[0], newxy[1])
f.close()
Các trang web mới sau đây chuyển đổi các tập tin trực tuyến. (Nó sử dụng pyproj)
Nó cũng tạo KML và tệp đầu vào thường có thể để nguyên 'như hiện tại' và không được định dạng lại để phù hợp với chương trình chuyển đổi.
Sorry i cant post a numeric domain so have to wrap it in a code block!
http://54.251.49.75/XYZ_tools
Vui lòng cắt và dán liên kết để theo nó.
Tôi sẽ không đi giải pháp ARC; đối với các chuyển đổi phổ biến này, có nhiều công cụ trực tuyến như http://www.hamsterm.com - chỉ cần sao chép và dán danh sách tọa độ và bạn sẽ nhận được chúng ngay lập tức được chuyển đổi.