Кластер Google Maps Marker после извлечения координат из базы данных MySQL - PullRequest
0 голосов
/ 25 июля 2011

У меня в основном есть карта, отображающая простые маркеры Google.

Расположение маркеров хранится в базе данных MySQL.Теперь я хочу использовать MarkerCluster, чтобы организовать вещи.Однако у меня проблемы.Хотя рекомендации выглядят хорошо (http://gmaps -utility-library.googlecode.com / svn / trunk / markerclusterer / 1.0 / docs / examples.html ), я действительно не могу заставить его работать.

В настоящее время мои маркеры определены как:

// Change this depending on the name of your PHP file
    GDownloadUrl("gen.php", function(data) {
      var xml = GXml.parse(data);
      var markers = xml.documentElement.getElementsByTagName("marker");
      for (var i = 0; i < markers.length; i++) {
        var name = markers[i].getAttribute("name");
        var address = markers[i].getAttribute("address");
        var type = markers[i].getAttribute("type");
        var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")),
                                parseFloat(markers[i].getAttribute("lng")));
        var marker = createMarker(point, name, address, type);
        map.addOverlay(marker);
      }
    });
  }
}

Теперь в примере для MarkerCluster я должен определить свои маркеры следующим образом:

var markers = [];
for (var i = 0; i < 100; ++i) {
  var latlng = new GLatLng(data.photos[i].latitude, data.photos[i].longitude);
  var marker = new GMarker(latlng);
  markers.push(marker);
}
var markerCluster = new MarkerClusterer(map, markers);

Однако я понятия не имеюкак совместить эти два.Маркеры уже определены, и я не вижу, как вызывается markerCluster, и при этом я не понимаю, как я получаю данные в маркеры в примере.

Любой указатель оценен.Спасибо.

Джордж

Ответы [ 2 ]

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

Проблема решена. Благодарю. Тем не менее, я закончил портировать все на v3. «Если вы делаете это, делайте это правильно.»

Спасибо, что читаете!

0 голосов
/ 25 июля 2011
// Change this depending on the name of your PHP file
GDownloadUrl("gen.php", function(data) {
  var xml = GXml.parse(data);
  var clusteredmarkers = [];
  var markers = xml.documentElement.getElementsByTagName("marker");
  for (var i = 0; i < markers.length; i++) {
    var name = markers[i].getAttribute("name");
    var address = markers[i].getAttribute("address");
    var type = markers[i].getAttribute("type");
    var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")),
                            parseFloat(markers[i].getAttribute("lng")));
    var marker = createMarker(point, name, address, type);
    clusteredmarkers.push(marker);
  }
  var markerCluster = new MarkerClusterer(map,clusteredmarkers);//this also add the cluster to the map
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...