гугл карты многоугольник кликабелен и масштабирования - PullRequest
0 голосов
/ 15 июля 2011

Я хочу создать кликабельный многоугольник на картах Google, и после нажатия будет выделен только тот многоугольник.он следует по принципу иерархии сверху вниз, выбирая штат, затем округ, затем поселок и последний раздел.У меня есть только файл shp с информацией о поселке для разных округов.Я был в состоянии преобразовать файлы shp в kml и импортировал их в карты Google, но это не редактировалось.также я не могу извлечь какую-либо информацию из полигонов, созданных из kml, чтобы я мог использовать пары lat, lon для дальнейшего детализации

1 Ответ

0 голосов
/ 15 июля 2011

Событие Onclick для оверлеев KML передает только свойства из раздела KmlFeatureData вашего KML.Поэтому, если вы хотите получить какие-либо параметры из KML, вам нужно поместить их в этот раздел.Точки многоугольника недоступны!Событие click возвращает следующую JSON-структуру, которая доступна из вашего кода, а также позицию, которая обычно является центром многоугольника / элемента:

{
  author: {
    email: "nobody@google.com",
    name: "Mr Nobody",
    uri: "http://example.com"
  },
  description: "description",
  id: "id",
  infoWindowHtml: "html",
  name: "name",
  snippet: "snippet"
}

см. http://code.google.com/apis/maps/documentation/javascript/overlays.html#KMLLayers для получения дополнительной информации.

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

В качестве альтернативы вы можете читать в KML файл XML, читать и обрабатывать его содержимое на стороне клиента и рисоватьваши полигоны из данных, полученных таким образом ... Этот подход приемлем до тех пор, пока ваши полигоны не детализированы.

...