Добавление пользовательских шаблонов наложений на Google Maps - PullRequest
0 голосов
/ 30 августа 2011

В настоящее время я использую API Карт Google и могу попробовать другие бесплатные API карт для выполнения своей задачи.

В одном из проектов, над которым я работаю, мне нужно иметь возможность накладывать несколько слоев наложения фигур друг на друга. Моя первоначальная мысль - создать первый оверлейный слой, использующий разные оттенки сплошных цветов. Для последующих слоев наложения я планирую использовать разные шаблоны с цветовой кодировкой ... например: второй слой наложения использует цветной полосовой рисунок, а другой слой наложения использует цветной флажок. Таким образом, я могу сложить эти слои наложения для представления нескольких вещей. Для первого наложенного слоя я могу создавать границы неправильной формы, используя Polygon объекты, и я могу устанавливать различные цвета заливки для полигонов в зависимости от связанных значений.

После копания кажется, что объект Polygon в Google Maps API принимает только цвета заливки и обводки, и я не могу установить собственный шаблон для объекта Polygon. Я надеялся, что он по крайней мере примет файл шаблона PNG, но это не так. Ближайшие вещи, которые я мог бы использовать, - это GroundOverlay объект, но он не будет работать для меня, потому что он принимает только 2 координаты (я полагаю, вверху слева и внизу справа), в то время как мне нужно создавать собственные наложения шаблонов на неправильные формы .

Можно ли сделать это с помощью API Карт Google или любых других API карт (Bing, Yahoo и т. Д.)? Существуют ли какие-либо сторонние API-интерфейсы, позволяющие мне интегрировать пользовательские наложения шаблонов в Карты Google?

Ответы [ 2 ]

1 голос
/ 30 августа 2011

Я не верю, что какой-либо API, о котором вы упомянули, поддерживает узорные векторные фигуры. Я могу придумать два варианта:

  • Чтобы использовать цвета заливки, которые являются полупрозрачными. Допустим, у вас есть слой с полупрозрачными красными полигонами, а другой слой сверху с полупрозрачными синими полигонами - области перекрытия между ними будут заполнены комбинированным цветом (т.е. фиолетовым в данном случае). Bing Maps, безусловно, поддерживает альфа-канал для многоугольной заливки, и я подозреваю, что Google Maps тоже.
  • Вместо того, чтобы использовать слой векторной формы, визуализируйте ваши данные в виде растровых слоев, используя любой желаемый шаблон заливки. Разрежьте эти слои на плитки размером 256px x 256px, пронумерованные в соответствии с системой нумерации листов quadkey, и разместите их на карте как пользовательские слои листов. (то есть способ отображения встроенной дорожной карты и аэрофотоснимков). Если вы визуализируете свои плитки в формате PNG, вы можете сложить несколько слоев друг на друга и иметь прозрачные (или полупрозрачные) области для отображения через данные в нижележащих слоях. В зависимости от источника ваших данных вы можете найти такие инструменты, как Mapnik или Geoserver, полезные для создания слоев листов.
1 голос
/ 30 августа 2011

Если вы можете жить только с шаблоном обводки, в отличие от шаблона заливки, последняя версия SDK карт Bing позволяет вам устанавливать strokeDashArray при создании полигонов.Возможно, этого будет достаточно для определения различных фигур, которые вы должны наложить на карту.

Надеюсь, это поможет ...

...