Прошу прощения, но я так и не смог сформулировать тему для топика :(.
Доброго времени суток. Тут недавно с друзьями решили реализовать свой картографический сервис. Взяли карандаш бумагу и поняли что ничего не знаем о таких сервисах .
Несколько дней блуждание по документации не дали результата. Поэтому этот форум наша последняя надежда.
Собственно вопросы.
Как разделаются объекты в OSM? (дома, дороги и т.д.) и что находится на загруженных тайлах?
Есть ли возможность выгрузке объектов в MS SQL или возможно только конвертировать XML и ложить в базу?
Прошу прощения если вопросы были неадекватные!! Не судите строка мы новички.
Точки - обладают координатами, Линии - соединяют точки, Отношения - содержащие в себе список точек и/или линий. У любого объекта есть его “характеристики” - теги.
В тайлах отображаются объекты из базы в зависимости от их тегов.
Хранить базу можно хоть в текстовых файлах. Но зачем ездить на уродском велосипеде, тем более если не понимать его конструкциию. Для PG написано кучу скриптов и он объезжен с разных сторон.
Я извиняюсь, что такое PG? И почему велосипед? Дело в том, что мы захотим проложить маршрут, где мы возьмём определённые точки, если мы о них не будем знать?
Вкратце: есть понятия “точка”, “ломаная линия”, “отношение”. У каждого из этих объектов есть перечень разных свойств (тегов). Каждый тег имеет название и значение.
А для того, чтобы этот набор цифирок и буковок превратился в привычное и понятное людям изображение карты, делается рендеринг. Программа-рендер рисует точки по координатам, линии, соединяющие точки, обрабатывает релейшены. Подписывает и обозначает все эти линии и точки в соответствии со значениями тегов и правилами их обработки.
тайл - это маленький файлик с картинкой. На картинке нарисован кусочек карты соответствующего масштаба. Из тайлов склеивается карта при отображении её, например, в броузере.
Это порноканал со спутника Astra 4A (бывший “Сириус”). Спутник висит на геостационарной орбите в позиции 4,8 градусов восточной долготы. Вещание в Ku-диапазоне на частоте 1211 МГц, в горизонтальной поляризации, символьная скорость 27500, FEC 5/6, стандарт DVB-S / MPEG-2. Канал кодирован в системе Cryptoworks.
Атрибутивная информация передается отдельно, например - в формате GeoJSON (который поддерживается фреймворками визуализации типа OpenLayers, Leaflet), как-то вот так: http://wiki.openstreetmap.org/wiki/Overlay_API
Вы намерены не читать то, что вам написали? Тогда ответы просто теряют смысл.
Для этого служит инструмент Osmosis
Существуют также относительно готовые варианты: http://gis-lab.info/projects/osm_dump/ (это не тот формат XML, но те данные)
Ответ зависит от того, что вы собираетесь с ними делать.
Потому что если просто хотите чтобы этот слой был вашей базовой картой на стороне пользователя, то это вопрос “как подключить слой mapsurfer к Openlayers или Leaflet”. Если же задача иная, то и вопрос другой, а ответ - тем более.
если у вас задача распарсить XML и записать результат в любимую базу вызывает трудности, то вам не с форума надо начинать, а с поиска программиста… Ибо без него вы все равно ничего не сделаете.
))) Распарсить не проблема… Я просто боюсь напутать со связями объектов.
BushmanK всё что вы дали я прочитал но понимание это не дало к сожалению. Не буду писать почему … ) Не хочется обижать людей, писавших эту документацию.
Боюсь что другой тут нет (точнее - у отдельных самостоятельных проектов может быть еще какая-то, но уровень приблизительно тот же).
Она несовершенна, но общее представление дает. По крайней мере, в статье про osmosis четко написано, что он делает (в том числе - выгрузки подмножеств данных, как вам и нужно было). И в любом случае, это не причина ее игнорировать и требовать объяснений исключительно тут.
Вы сами архитектурно свой будущий сервис уже представляете?
Правильно сказали - а вы не бойтесь) Как вариант порисуйте немного свой район. Тогда и поймете что к чему.
Данные осм по своей структуре приближаются к описанию местности на естественном языке (при этом весьма своеобразном), а не к объектной модели с иерархией наследования или реляционным отношениям.
Архитектурно ещё сложно представить. Ибо нужно разобраться, что и как. К примеру, ну поучил я XML, создал структуру в БД, забил значениями. А дальше непонятно. Если я буду грузить тайлы с одного сервера, а объекты из своей бд это будет явно не самый лучший вариант. Возможно, можно кэшировать часть данных. Тогда встаёт вопрос как прорисовывать объекты и на сколько это будет трудозатратно?