Данные OpenStreetMap в формате Shape

Обсуждение материалов сайта: вопросы, замечания, предложения
Ответить
Аватара пользователя
Aleksandr Dezhin
Активный участник
Сообщения: 244
Зарегистрирован: 03 фев 2010, 10:47
Репутация: 14
Откуда: Москва

Re: Данные OpenStreetMap в формате Shape и Postgis

Сообщение Aleksandr Dezhin » 20 окт 2011, 18:42

Shurik писал(а):Пробелы в именах таблиц присутствуют из чувства особого цинизма?
А в чем с ними проблема? Ограничиться только подчеркиваниями мне показалось неуместным, ну а все остальное так или иначе требует заключения в кавычки... Ну и опять таки с разными разделителями несколько проще из имени таблицы получить регион и имя слоя.

Аватара пользователя
Shurik
Интересующийся
Сообщения: 25
Зарегистрирован: 04 июн 2011, 20:03
Репутация: 2
Откуда: Москва
Контактная информация:

Re: Данные OpenStreetMap в формате Shape и Postgis

Сообщение Shurik » 21 окт 2011, 12:13

Вообще-то автодополнение по tab очень плохо работает с таблицами, содержащими пробелы.

Stud
Интересующийся
Сообщения: 46
Зарегистрирован: 12 сен 2010, 06:16
Репутация: 0

Re: Данные OpenStreetMap в формате Shape и Postgis

Сообщение Stud » 21 окт 2011, 13:57

На мой запрос из php

Код: Выделить всё

SELECT * FROM 'RU-MO poi-point';
выходит ошибка
Query failed: ERROR: syntax error at or near "'RU-MO poi-point'" LINE 1: SELECT * FROM 'RU-MO poi-point';
На запрос

Код: Выделить всё

SELECT * FROM "RU-MO poi-point";
выходит ошибка
Query failed: ERROR: relation "RU-MO poi-point" does not exist LINE 1: SELECT * FROM "RU-MO poi-point";

В чем может быть причина?

Аватара пользователя
Aleksandr Dezhin
Активный участник
Сообщения: 244
Зарегистрирован: 03 фев 2010, 10:47
Репутация: 14
Откуда: Москва

Re: Данные OpenStreetMap в формате Shape и Postgis

Сообщение Aleksandr Dezhin » 21 окт 2011, 14:07

Stud писал(а):В чем может быть причина?
Таблицы на экспорт лежат в отдельной схеме layer, т.е. надо как-то так:

Код: Выделить всё

SELECT * FROM layer."RU-MO poi-point";

Stud
Интересующийся
Сообщения: 46
Зарегистрирован: 12 сен 2010, 06:16
Репутация: 0

Re: Данные OpenStreetMap в формате Shape и Postgis

Сообщение Stud » 21 окт 2011, 14:14

dezhin писал(а):
Stud писал(а):В чем может быть причина?
Таблицы на экспорт лежат в отдельной схеме layer, т.е. надо как-то так:

Код: Выделить всё

SELECT * FROM layer."RU-MO poi-point";
Я уже какие только варианты и кавычки не перепробовал. Ни чего не получается. :(

Аватара пользователя
Aleksandr Dezhin
Активный участник
Сообщения: 244
Зарегистрирован: 03 фев 2010, 10:47
Репутация: 14
Откуда: Москва

Re: Данные OpenStreetMap в формате Shape и Postgis

Сообщение Aleksandr Dezhin » 21 окт 2011, 14:41

Stud писал(а):Я уже какие только варианты и кавычки не перепробовал. Ни чего не получается. :(
В postgresql одинарные для строк, двойные для идентификаторов.

sanyasi
Активный участник
Сообщения: 115
Зарегистрирован: 18 ноя 2009, 11:31
Репутация: 0

Re: Данные OpenStreetMap в формате Shape и Postgis

Сообщение sanyasi » 21 окт 2011, 17:25

Скачиваю всю Россию, обрезаю по полигону на точечные слои ругается:

Код: Выделить всё

ERROR 1: Attempt to write non-multipoint (POINT) geometry to multipoint shapefile.
ERROR 1: Attempt to write non-multipoint (POINT) geometry to multipoint shapefile.
ERROR 1: Attempt to write non-multipoint (POINT) geometry to multipoint shapefile.
More than 1000 errors or warnings have been reported. No more will be reported from now.


ogr2ogr -skipfailures -clipsrc clipping_polygon.shp asettlement-point.shp settlement-point.shp

Аватара пользователя
Aleksandr Dezhin
Активный участник
Сообщения: 244
Зарегистрирован: 03 фев 2010, 10:47
Репутация: 14
Откуда: Москва

Re: Данные OpenStreetMap в формате Shape и Postgis

Сообщение Aleksandr Dezhin » 21 окт 2011, 17:40

sanyasi писал(а):Скачиваю всю Россию, обрезаю по полигону на точечные слои ругается:

Код: Выделить всё

ERROR 1: Attempt to write non-multipoint (POINT) geometry to multipoint shapefile.
ogr2ogr -skipfailures -clipsrc clipping_polygon.shp asettlement-point.shp settlement-point.shp
По всей видимости это связано с тем что точечные слои пока все равно имеют тип MULTIPOINT - со временем это поправиться. Но с другой стороны непонятно каким образом у ogr2ogr в результате обрезки получается POINT.
Возможно поможет указание SHPT=POINT.

Аватара пользователя
Shurik
Интересующийся
Сообщения: 25
Зарегистрирован: 04 июн 2011, 20:03
Репутация: 2
Откуда: Москва
Контактная информация:

Re: Данные OpenStreetMap в формате Shape и Postgis

Сообщение Shurik » 21 окт 2011, 23:22

Можно увидеть описание критериев отбора объектов по тэгам?

Аватара пользователя
Aleksandr Dezhin
Активный участник
Сообщения: 244
Зарегистрирован: 03 фев 2010, 10:47
Репутация: 14
Откуда: Москва

Re: Данные OpenStreetMap в формате Shape и Postgis

Сообщение Aleksandr Dezhin » 21 окт 2011, 23:47

Shurik писал(а):Можно увидеть описание критериев отбора объектов по тэгам?
Да, в первом топике была ссылка на конфиг - вот она http://pastebin.com/CrrELZTv

Аватара пользователя
Aleksandr Dezhin
Активный участник
Сообщения: 244
Зарегистрирован: 03 фев 2010, 10:47
Репутация: 14
Откуда: Москва

Re: Данные OpenStreetMap в формате Shape и Postgis

Сообщение Aleksandr Dezhin » 22 окт 2011, 06:05

sanyasi писал(а):В сборке на всю Россию нет полигона города Вышнего Волочка. В архиве Тверской области - есть. Это необязательный признак того что что-то еще отсутствует в RU.7z
Максим Дубинин писал(а): - нужен файлик cpg, как в пред. версии
- нужен файлик readme.txt, как в пред. версии
Починено.
Надеюсь с сегодня заработают ежедневные апдейты.

Stud
Интересующийся
Сообщения: 46
Зарегистрирован: 12 сен 2010, 06:16
Репутация: 0

Re: Данные OpenStreetMap в формате Shape и Postgis

Сообщение Stud » 22 окт 2011, 09:39

Прошло 2 дня и вдруг заработал вариант:

Код: Выделить всё

SELECT * FROM layer."RU-MO poi-point";

dkiselev
Новоприбывший
Сообщения: 13
Зарегистрирован: 17 дек 2010, 09:25
Репутация: 0

Re: Данные OpenStreetMap в формате Shape и Postgis

Сообщение dkiselev » 28 окт 2011, 15:26

А есть возможность в слой buildings-poly в атрибуты добавить имя города в полигон которого попадает дом? Либо id place-полигона внутрь которого попал домик. Или и то и другое. Тогда можно импортить данные для геокодинга по двум dbf'кам и одному полику.

dkiselev
Новоприбывший
Сообщения: 13
Зарегистрирован: 17 дек 2010, 09:25
Репутация: 0

Re: Данные OpenStreetMap в формате Shape и Postgis

Сообщение dkiselev » 28 окт 2011, 22:00

В общем разобрался как это сделать используя postgis базу. (Не велико наверно достижение, а приятно :) )

Если я хочу иметь локальную копию, что лучше, через osmosis+osm2psql синхронизовать или можно дамп с этой БД сливать?

Аватара пользователя
Aleksandr Dezhin
Активный участник
Сообщения: 244
Зарегистрирован: 03 фев 2010, 10:47
Репутация: 14
Откуда: Москва

Re: Данные OpenStreetMap в формате Shape и Postgis

Сообщение Aleksandr Dezhin » 28 окт 2011, 23:01

dkiselev писал(а):А есть возможность в слой buildings-poly в атрибуты добавить имя города в полигон которого попадает дом? Либо id place-полигона внутрь которого попал домик.
Теоретически это сделать можно, но я не уверен, что это стоит делать в рамках этого проекта - все таки это довольно специфичная задача.
dkiselev писал(а):Если я хочу иметь локальную копию, что лучше, через osmosis+osm2psql синхронизовать или можно дамп с этой БД сливать?
Лучше конечно обновляться дифами - это быстрее. Сливать эту базу целиком довольно долго будет я думаю.

Ответить

Вернуться в «Материалы сайта»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 22 гостя