Страница 1 из 1
Раскраска домиков
Добавлено: 28 сен 2010, 09:08
version
С помощью OpenLayers подключил базовый слой OSM.
Теперь встала задача раскрашивать определенные домики.
Как это лучше сделать ? Рисовать сверху них полигоны плохо - не будет видно подписей на домах.
Нужно ставить GeoServer/Mapnik и задавать там стили ? Какой сервер проще и лучше подходит для этих целей ? Можно ли реализовать такую возможность не импортируя в базу весь большущий planet.osm ?
Re: Раскраска домиков
Добавлено: 28 сен 2010, 10:26
Mavka
Сильно не уверен, что это правильное решение вашей задачи. Но т.к. подробной информации нет, отвечу на вопросы:
Какой сервер проще и лучше подходит для этих целей
Проще - GeoServer. Лучше - не могу знать.
не импортируя в базу весь большущий planet.osm
Если бы существовал public WFS, то можно было бы на GeoServer организовать каскад. Беглый поиск по Google таких сервисов не дал. Можно прозондировать на тему каскадного WMS, но это не пятиминутная работа.
Рисовать сверху них полигоны плохо - не будет видно подписей на домах
Расскажите, как вы планируете программно это организовать. Может быть тогда и "надписи на домах" продублировать?
Re: Раскраска домиков
Добавлено: 28 сен 2010, 11:31
version
Сильно не уверен, что это правильное решение вашей задачи
Я сам ищу как лучше
Расскажите, как вы планируете программно это организовать. Может быть тогда и "надписи на домах" продублировать?
Я хочу минимум усилий на server-side, и побольще делать в client-side на стороне браузера. Вообще изначально я думал рисовать каким-нибудь geoserver'ом те же тайлы что я сейчас беру от OSM, только к определенным домам (выборке) применять свои стили, статьи на эту тему, благо, тут имеются.
С другой стороны было бы здорово иметь не растровые тайлы, а какой-нибудь векторный svg в браузере - там уже можно перекрашивать как заблагорассудиться. Я довольно силен в браузерных технологиях, а вот в гисе слабо разбираюсь, поэтому пока в поисках подходящего решения.
Re: Раскраска домиков
Добавлено: 28 сен 2010, 11:40
Mavka
Я имел в виду что если вы можете "рисовать сверху них полигоны", значит имеете на client-side доступ к данным в векторном виде. Вы же не руками обводите каждый домик?
А рисовать тайлы GeoServer'ом - это можно, но потребуется установка БД и регулярная загрузка исходников OSM. А если домики будут раскрашиваться каждый раз по-разному, то и закэшировать не получится. Нагрузка приличная...
Re: Раскраска домиков
Добавлено: 28 сен 2010, 11:49
version
Я имел в виду что если вы можете "рисовать сверху них полигоны", значит имеете на client-side доступ к данным в векторном виде. Вы же не руками обводите каждый домик?
Прямо сейчас не имею

Просто представляю что можно такой доступ организовать через WMS или WFS, точно не уверен, запрос GetFeatureInfo.
Тогда такой вопрос, можно ли подключить OSM, чтобы слой отрисовывался не растровыми тайлами, а векторными данными ? Что-нибудь вроде
Код: Выделить всё
var layer = new OpenLayers.Layer.OSM(.... format: 'svg' ... )
map.addLayer(layer);
Или тут нужно свой сервер ставить и настраивать на отдачу таких данных ?
Re: Раскраска домиков
Добавлено: 28 сен 2010, 12:27
Mavka
GeoServer и некоторые другие могут по WMS выдавать картинку в формате SVG. Или выдавать чисто-векторный вариант - WFS.
Re: Раскраска домиков
Добавлено: 28 сен 2010, 13:00
version
Спасибо большое за ответы :)
Re: Раскраска домиков
Добавлено: 29 сен 2010, 05:40
Максим Дубинин
целиком с planet.osm работать невозможно, режьте его на части осмосисом, если РФ или один из субъектов, здесь на сайте есть ежедневно обновляемые вырезки в том числе шейпы, с которыми работать легче
Re: Раскраска домиков
Добавлено: 29 сен 2010, 06:08
version
Максим Дубинин писал(а):целиком с planet.osm работать невозможно, режьте его на части осмосисом, если РФ или один из субъектов, здесь на сайте есть ежедневно обновляемые вырезки в том числе шейпы, с которыми работать легче
Спасибо за совет.
Мне в принципе вся планета и не нужна, только кусочек :)
Re: Раскраска домиков
Добавлено: 29 сен 2010, 09:38
version
А если раскрашивать домики через WFS, есть ли общедоступные сервера которые имеют информацию о геометрии домов в РФ, желательно чтобы база у них была от osm ?
Или такие сервисы еще пока никто общедоступными не делал и нужно самим реализовывать ?
Есть ли у OSM'а WMS сервис чтобы отрисовать карту именно через OpenLayers.Layer.WMS ?
Re: Раскраска домиков
Добавлено: 29 сен 2010, 10:03
Mavka
Re: Раскраска домиков
Добавлено: 29 сен 2010, 16:45
version
Впечатления такие
WMS от TelaScience - не работает.
WMS от Vizure - не понятно где у них wms-сервис, а вообще конструктор у них классный.
Re: Раскраска домиков
Добавлено: 29 сен 2010, 17:24
Mavka
Vizure - как то все поменялось. Вот их сервер для OSM:
http://geoposer.com:443/server/services/osm.xml
Re: Раскраска домиков
Добавлено: 29 сен 2010, 18:23
Максим Дубинин
вроде вот это у меня неплохо работает в QGIS
http://irs.gis-lab.info/?layers=osm&
Re: Раскраска домиков
Добавлено: 01 окт 2010, 10:56
version
Решил развернуть свой WMS-сервер с помощью GeoServer.
Немного не понятно насчет стилей.
Следуя инструкциям в
этой статье импортировал osm-данные в базу.
В итоге получил 4 таблички:
planet_osm_polygon
planet_osm_line
planet_osm_point
planet_osm_roads
Для каждой сделал свой слой (Data->Layers->Add new resource).
Теперь, если я правильно понимаю, для каждого нужно определить стили чтобы они выглядели более-менее как на osm.org.
Нашел sld-стили
тут
Теперь не могу понять какие стили к каким слоям подключать.
Если подключить polygon.sld или стандартный line.sld уже видны очертания домов на слое planet_osm_line, но все равно нет надписей на них.
Как среди них ориентироваться ? Хочется хорошую карту, а не так как в аттаче сейчас..