#postgresql #postgis
#postgresql #postgis
Вопрос:
Я довольно новичок в PostGIS. Я импортировал shp-файл бесчисленное количество раз разными способами. Вот моя последняя попытка.
shp2pgsql -d -s 4269 /var/www/Shape/Hamilton_City/Election_Poll_Boundaries.shp city_hamilton | psql -U postgres -d shape
Я импортирую в srid 4269, потому что в файле .prj указано: GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]]
Когда я выполняю любой тип поиска по геометрии полигонов, например: select ST_Astext(geom) AS coordinates FROM city_hamilton limit 1;
я получаю нечетные координаты, такие как:
MULTIPOLYGON(((574380.4001 4808575.0399,574434.7803 4808545.44,574496.2521 4808512.3351,…..
Что я здесь делаю не так?
Комментарии:
1. вероятно, это в UTM (или другом) с единицами измерения в метрах, а не в градусах. Попробуйте открыть шейп-файл в QGIS / Arcmap и посмотрите на свойства проекции, чтобы найти правильный код EPSG.
2. Спасибо, я просмотрел его в GGIS, и он распознает его как EPSG: 4269 — NAD83. Когда я смотрю на версию KML тех же данных из источника, выводятся фактические координаты. Кроме того, исследуя разницу между 4269 и 4326, я вижу, что они имеют сравнительно схожую геометрию. Таким образом, цифры не будут такими уж далекими (особенно в 10 тысячах [т.е. -79.8874647968378, 43.289415004346 против 574380,4001 4808575.0399 ).