Я решил предоставить некоторую информацию о том, каким образом я наконец-то выбрал свой картографический сервис. Чистый JavaScript и GeoJSON не были решением, потому что мне приходилось обрабатывать примерно 40 000 полигонов и 33 000 точек. Итак, я пошел за плиткой. О, и у меня до сих пор нет доступа к корневому серверу, поэтому я не могу настроить GeoServer или что-то подобное (в настоящий момент это не представляется возможным с финансовой точки зрения для одного клиента)
После некоторого исследования и чтения я наконец-то остановился на OpenLayers (после некоторой демонстрации с GMaps). Великая книга Эрика Хаззарда «OpenLayers 2.10» (Packt Publishing, 2011) действительно очень мне помогла, потому что она также охватывает некоторые основы JavaScript и советы по отладке.
Конечно, я делал всю свою работу с векторными данными в QGIS, и это определенно способ пойти на такого маленького фрилансера, как я (я также знаю кое-что из ArcGIS из университета, но QGIS предлагает все, что мне когда-либо было нужно).
Разработка карты и создание плиток было более сложной задачей. Во-первых, я согласился с « GMapCreator » от CASA, но наложение нескольких шейп-файлов оказалось утомительным (я должен предоставить точечные данные по полигонам, а затем по городской границе, охватывающей все). Это абсолютно возможно сделать в GMapsCreator (и я сделал это на этапе демонстрации), но это занимает 3 полных цикла рендеринга (сначала вы создаете плитки, затем существующие плитки «перезаписываются» с более поздними функциями - рендеринг выполняется в правильном порядке). важно!), а меню стиля немного громоздкие и запутанные. Сохранение карты и ее последующее редактирование также является сложной задачей.
TileMill выглядел очень многообещающе, особенно их CSS-подобный стиль, поэтому я изучил его. К сожалению, это только Mac или Linux, так что это может отпугнуть некоторых людей. Мне очень понравилось то, что я увидел, поэтому я установил раздел Ubuntu на свой жесткий диск, загрузил его и стилизовал свои карты. Документация по синтаксису стиля иногда немного скудна, но просмотр их демо-видео (ссылка на главном сайте) дает ответы практически на все вопросы. Можно сделать некоторые интересные вещи с вложенными и / или условными стилями, и некоторое базовое понимание CSS должно действительно привести вас туда, куда вы хотите.
В конце концов, TileMill отображает хороший одиночный файл * .mbtiles. Я не думаю, что есть способ напрямую отобразить их в OpenLayers (по крайней мере, я не смог найти один?), Поэтому пришло время использовать другой инструмент: mbutil . Этот инструмент "распаковывает" файл mbtiles в обычную структуру папок, содержащую png-файлы моих данных на выбранных уровнях масштабирования.
Наконец, я загрузил все эти файлы на свой FTP-сервер, немного поработал над OL, чтобы запустить мою веб-карту (вы добавляете созданные плитки в качестве слоя TMS, но угадывание правильного исходного URL-адреса и имени слоя заняло некоторое время и googling), а затем прожег несколько часов, возясь с основными проблемами HTML / CSS. Я хотел карту 100% ширины / высоты с плавающей легендой, следуя моим корпоративным (как уже упоминалось, муниципалитету) правилам идентификации.
О, и до сих пор я использую Карты Google в качестве базовых слоев, но это может вскоре заменить некоторые пользовательские аэрофотоснимки, предоставляемые через WMS (не предоставлено мной, но администрация штата проводит опрос и управление геоданными).
Я надеюсь, что не забыл ничего важного, но если я это сделал, пожалуйста, не стесняйтесь спрашивать! Я проверю эту ветку время от времени.