Ho una mappa con vari marcatori e ho bisogno di essere in grado di disegnare un rettangolo sulla mappa e selezionare i marcatori che si trovano all'interno dei limiti del rettangolo.controllare se i contrassegni di mappa sono all'interno dei limiti selezionati
Finora ho trovato qualche grande informazioni qui: How to get markers inside an area selected by mouse drag?
Ho implementato il plugin keymapzoom ok. in questo modo
$('#dispatcher').gmap3({action:'get'}).enableKeyDragZoom({
boxStyle: {
border: "dashed black",
//backgroundColor: "red",
opacity: 0.5
},
paneStyle: {
backgroundColor: "gray",
opacity: 0.2
}
});
var dz = $('#dispatcher').gmap3({action:'get'}).getDragZoomObject();
google.maps.event.addListener(dz, 'dragend', function (bnds) {
alert(bnds);
});
Questo mi dà il seguente ((lat, long), (lat, long)) formato dal alert (BNDS);
Ho bisogno di sapere come posso ora verificare se ci sono dei marcatori all'interno di questo?
Ho già un oggetto che sta memorizzando i marcatori per un altro motivo. Mi piace:
markers[name] = {};
markers[name].lat = lati;
markers[name].lng = longi;
che potrebbe essere utile?
Non capisco come utilizzare GLatLngBounds e containsLatLng (latlng: GLatLng) come suggerito.
sì la sua v3 api. grazie per la tua risposta Peter. quindi dovrei essere in grado di usare var bounds = new google.maps.LatLngBounds (bnds); ? –
Il costruttore prende 2 argomenti: sud-ovest e nord-est. Basta fare clic sul link che ho fornito. –
vedo, quindi come posso ottenere gli argomenti sw e ne dal mio output di bnd? –