Преобразование координат проекции ESRI в широту и длину

StackOverflow https://stackoverflow.com/questions/1150446

  •  18-09-2019
  •  | 
  •  

Вопрос

У меня есть большой набор данных координат x,y в формате «NAD 1983 StatePlane Michigan South FIPS 2113 Feet» (он же ЭСРИ 102690).Я хотел бы преобразовать их в точки широты и долготы.

Теоретически это что-то проект создан для обработки, но документация не дала мне подсказки - кажется, что она описывает гораздо более сложные случаи.

Я пробовал использовать интерфейс Python, вот так:

from pyproj import Proj
p = Proj(init='esri:102690')
sx = 13304147.06410000000 #sample points
sy = 288651.94040000000
x2, y2 = p(sx, sy, inverse=True)

Но это дает совершенно неверный результат.

Есть библиотека Javascript, но мне нужно обработать ~50 000 точек, так что это кажется неуместным.


Что сработало для меня:

Я создал файл под названием ptest каждая пара находится на отдельной строке, координаты x и y разделены пробелом, например:

13304147.06410000000 288651.94040000000
...

Затем я ввел этот файл в команду и передал результаты в выходной файл:

$>cs2cs -f %.16f +proj=lcc +lat_1=42.1 +lat_2=43.66666666666666 
+lat_0=41.5 +lon_0=-84.36666666666666 +x_0=4000000 +y_0=0 +ellps=GRS80 
+datum=NAD83 +to_meter=0.3048006096012192 +no_defs +zone=20N +to 
+proj=latlon ptest > out.txt
Это было полезно?

Решение

Если вам нужно только перепроектировать и вы можете выполнить некоторый анализ данных в своих текстовых файлах, используйте все, что вам нравится, и используйте http://spatialreference.org/ref/esri/102690/ в качестве ссылки.

Например, используйте Proj4 и сохраните его в файле оболочки/cmd и вызовите входной файл с помощью proj4 (доступна версия для Linux/Windows), без проблем с размером вашего набора данных.

cs2cs +proj=latlong +datum=NAD83 +to +proj=utm +zone=10  +datum=NAD27 -r <<EOF
cs2cs -f %.16f +proj=utm +zone=20N +to +proj=latlon - | awk '{print $1 " " $2}

так что в вашем случае что-то вроде этого:

cs2cs -f %.16f +proj=lcc +lat_1=42.1 +lat_2=43.66666666666666 +lat_0=41.5 +lon_0=-84.36666666666666 +x_0=4000000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 +no_defs +zone=20N +to +proj=latlon

http://trac.osgeo.org/proj/wiki/man_cs2cs

http://trac.osgeo.org/proj/

Другие советы

Если у вас есть координаты в файле TXT, CSV или XLS, вы можете нажать CTRL+C и вставить их в файл. http://cs2cs.mygeodata.eu где вы можете установить соответствующую входную и желаемую выходную систему координат.Можно вставить тысячи координат в различных форматах...

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top