web map api: google vs dojo, etc

Все, что вы хотели знать о программизме, но боялись спросить.
Ответить
Аватара пользователя
eprst
Маньяк
Сообщения: 4722
Зарегистрирован: 01 июл 2004, 17:53
Откуда: Пи Тер -> Ню Вест

web map api: google vs dojo, etc

Сообщение eprst »

может кто-нибудь сталкивался с топографическими картами и подскажет какую платформу лучше выбрать для программирования.

задачка такая: надо создать веб-страничку примерно с таким интерфейсом

Изображение

на карте должны показываться различные маркеры (группы маркеров, слои) и поверхности (полигоны) в зависимости от выбора пользователя. гео-информация (координаты) хранится в так-называемых shape файлах.

я так понимаю, что эти shape файлы надо конвертировать в удобоваримый для выбранного api формат. вроде бы, google использует kml, а dojo - json. беда, мне кажется, в том, что эти файлы очень большие и картинка может не загрузиться.

вот с этих позиций (layers, shapefiles), что лучше использовать google api, dojo или, вообще, какое-то другой софт?
Аватара пользователя
eprst
Маньяк
Сообщения: 4722
Зарегистрирован: 01 июл 2004, 17:53
Откуда: Пи Тер -> Ню Вест

Re: web map api: google vs dojo, etc

Сообщение eprst »

не пошла тема, добавим вопросов.

получил я эти kml & json from shapefiles. размер у них оказался значительно больше, чем у shape-файлов, но я их почищу - возьму только координаты и названия. а вопросы образовались такие:

* эти данные лучше сразу в браузер клиента запихивать или отдавать частями в зависимости от зума и "окошка"?
* сколько данных можно сравнительно безболезненно запихать в браузер?
* может лучше все на сервере делать, а в браузер отдавать картинку?
Аватара пользователя
johndoe
Маньяк
Сообщения: 3571
Зарегистрирован: 25 июл 2009, 22:00
Откуда: Port Moody

Re: web map api: google vs dojo, etc

Сообщение johndoe »

у нас похожее на MS Silverlight сделано. Используем Bing карты. Как сделано - не скажу :)
Аватара пользователя
eprst
Маньяк
Сообщения: 4722
Зарегистрирован: 01 июл 2004, 17:53
Откуда: Пи Тер -> Ню Вест

Re: web map api: google vs dojo, etc

Сообщение eprst »

johndoe писал(а):у нас похожее на MS Silverlight сделано. Используем Bing карты.
спасибо за идею. посмотрел этот примерчик мне понравилось.
Как сделано - не скажу :)
а можно хотя бы ссылочку "на ваше похожее"?
Аватара пользователя
johndoe
Маньяк
Сообщения: 3571
Зарегистрирован: 25 июл 2009, 22:00
Откуда: Port Moody

Re: web map api: google vs dojo, etc

Сообщение johndoe »

eprst писал(а):а можно хотя бы ссылочку "на ваше похожее"?
боюсь что для этого вам придется стать нашим клиентом ;)
Аватара пользователя
seliger
Частый Гость
Сообщения: 17
Зарегистрирован: 23 мар 2006, 23:01
Откуда: Тверь

Re: web map api: google vs dojo, etc

Сообщение seliger »

Есть хорошая (хотя и чуть устаревшая) книжка по теме: "Beginning Google Maps Mashups with Mapplets, KML, and GeoRSS"
Я бы держался Google Maps, ну просто они раньше Microsoft начали web mapping для народа. Это если наскоро слепить и без претензиев.

А нет- так kроме Google/ Bing есть крупнокалиберные web mapping server applications: ArcIMS, Arc Server (ESRI). Cтоят много денег.
A вот Autodesk MapGuide есть open source, MapServer тоже есть open source - Все они работают с shape files напрямую.

Ну а вообще-то да - это чей-то кусок хлеба - может лучше отдать спецам чтоб не изобрететь велосипед...
Аватара пользователя
eprst
Маньяк
Сообщения: 4722
Зарегистрирован: 01 июл 2004, 17:53
Откуда: Пи Тер -> Ню Вест

Re: web map api: google vs dojo, etc

Сообщение eprst »

seliger писал(а):Ну а вообще-то да - это чей-то кусок хлеба - может лучше отдать спецам чтоб не изобрететь велосипед...
я бы с удовольствием отдал это спецам (каким кстати?), но мне сказали это сделать самому. спасибо, anyway.

я попробовал client script - dojo & google - и мой браузер задохнулся, когда я передавал все данные из shape файла. однозначно надо либо данные резать/упрощать в зависимости от зума, либо на сервере все делать. но сервер тоже может умереть если много пользователей будут одновременно запросы делать... а silverliht мне понравился
Аватара пользователя
seliger
Частый Гость
Сообщения: 17
Зарегистрирован: 23 мар 2006, 23:01
Откуда: Тверь

Re: web map api: google vs dojo, etc

Сообщение seliger »

eprst писал(а):(каким кстати?)
http://pat.ca/ivault-gis/projects/citiesmunicipalities/
Аватара пользователя
eprst
Маньяк
Сообщения: 4722
Зарегистрирован: 01 июл 2004, 17:53
Откуда: Пи Тер -> Ню Вест

Re: web map api: google vs dojo, etc

Сообщение eprst »

спасибо. вот таких еше посоветовали mapbox. завтра посмотрю
Vlad
Частый Гость
Сообщения: 19
Зарегистрирован: 31 авг 2010, 21:02

Re: web map api: google vs dojo, etc

Сообщение Vlad »

Вам непростую задачу поставили. Что бы запустить подобный сервис есть два пути - либо отдать спецам как советовали выше, либо самому познать кучу вещей и написать много кода.

В принципе, клиентская часть занимает не так много времени. Вы можете взять Гугл АПИ и разобраться для начала в примерах. Почему Гугл, из выше перечисленного работал только с ним, да и примеров в сети приличное количество. Далее, нужно сразу готовится к тому, что все данные в браузер загрузить не получится. Лучше и оптимальнее, тянуть все с сервера. Маркеры и группы маркеров подгружать массивами координат и использовать что-нибудь типа: http://acme.com/javascript/#Clusterer (кстати там есть пример).
А вот с покрытиями будет сложнее. Если оно состоит из сотни точек, то в принципе можно использовать полигоны (в Гугл АПИ есть примеры) Но если больше - проблема, браузер не потянет.
Самый оптимальный вариант - создать отдельный слой. Предстоит создать из kml - серию тайлов, причем для всех нужных слоев вашей карты. тайл - изображение 256х256рх, накладывается поверх оригинальной карты. Тайл имеет прозрачность. Карту под тайлом видно и видно какую поверхность накрывает ваш дополнительный слой. За счет того, что изображения маленькие они подгружаются быстро + они нужны только для видимой части карты.
Основная задача - как перевести kml в тайлы. В момем случае был написан свой софт

И вот когда все это будет пройдено, придется заняться отладкой и оптимизацией. Включить все слой и маркеры сразу и посомтреть как себя чувствует браузер. Возможно ему будет плохо... Ну Вы понимаете.

Возможно, идея с Сильверлайт будет неплоха, никогда не видел в работе и внутри. Могу гарантированно сказать, что накладывал на карты Гугл до 4х слоев одноврееменно + группу маркеров и все работало с использованием родного АПИ на чистом JS. Против Сильверлайт - гарантированная работа во всех браузерах.

В итоге - много времени, много кода, сторонее ПО или разработка своего. Серьезная задача, но очень интересная. Хочу пожелать Вам удачи!
Аватара пользователя
eprst
Маньяк
Сообщения: 4722
Зарегистрирован: 01 июл 2004, 17:53
Откуда: Пи Тер -> Ню Вест

Re: web map api: google vs dojo, etc

Сообщение eprst »

Vlad писал(а):Серьезная задача, но очень интересная. Хочу пожелать Вам удачи!
спасибо большое за советы, подсказки и пожелания. чувствуется, что вы проделали грандиозную работу в этом направлении. в моем случае, задача и усложнилась, и упростилась одновременно. усложнилась в том смысле, что надо также обрабатывать спутниковые картинки, ecw-, tiff- files, etc и shapefiles размером в гигабайты. но зато выбор софта сразу сузился. все будет делаться на сервере.

пару дней игрался вот с этим контролом - map suite. пока нравится. вроде бы, все что надо сделал. но performance для некоторых слоев (реки, 1gb) пока не очень. наверное, надо резать на tiles и не показывать этот слой при маленьком увеличении.

а так да - интересно
Ответить