Ottenere la Matrice di tutti i punti del Poligono – Google Maps Strumento di Disegno API-3

sto usando Google strumenti di Disegno per disegno, poligono, rettangolo su google maps, ora ho bisogno di mostrare i marcatori che ricade all’interno del poligono disegnato e che sto usando la geometria.poli.containsLocation metodo che prende un punto(latLng) e un array di poligono punti. se io uso le mappe.poligono posso ottenere il poligono punti di via poli.getPath (), ma perché sto usando Google strumenti per il Disegno che utilizza le mappe.di disegno.DrawingManager/google.mappe.di disegno.OverlayType.POLIGONO in modo non sicuro di come trovare i punti qui. Grazie

  var drawingManager = new google.maps.drawing.DrawingManager({
  drawingMode: google.maps.drawing.OverlayType.POLYGON,
  drawingControl: true,
  drawingControlOptions: {
    position: google.maps.ControlPosition.TOP_CENTER,
    drawingModes: [
      google.maps.drawing.OverlayType.MARKER,
      google.maps.drawing.OverlayType.CIRCLE,
      google.maps.drawing.OverlayType.POLYGON,
      google.maps.drawing.OverlayType.POLYLINE,
      google.maps.drawing.OverlayType.RECTANGLE
    ]
  },
  markerOptions: {
    icon: 'images/car-icon.png'
  },
  circleOptions: {
    fillColor: '#ffff00',
    fillOpacity: 1,
    strokeWeight: 5,
    clickable: false,
    editable: true,
    zIndex: 1
  },
  polygonOptions: {
    fillColor: '#BCDCF9',
    fillOpacity: 0.5,
    strokeWeight: 2,
    strokeColor:'#57ACF9',
    clickable: false,
    editable: false,
    zIndex: 1
  }
});
console.log(drawingManager)
drawingManager.setMap(map)

OriginaleL’autore kam bajwa | 2015-06-05

2 risposte

  1. 5

    Leggermente diversa soluzione rispetto a ciò che geocodezip propone, ma con la stessa API chiamate:

    google.maps.event.addListener(drawingManager, 'polygoncomplete', function (polygon) {
        var path = polygon.getPath()
        var coordinates = [];
    
    for (var i = 0 ; i < path.length ; i++) {
          coordinates.push({
            lat: path.getAt(i).lat(),
            lng: path.getAt(i).lng()
          });
        }
        console.log(coordinates);
    });
    Molto più di un modo per farlo

    OriginaleL’autore Shane Beehler

  2. 0

    Sembra che il DrawingManager fuoco gli eventi quando l’utente termina a disegnare qualcosa e il gestore di evento verrà visualizzato un normale google.maps.Polygon, google.maps.Rectangle, e così via. Vorrei provare che.

    Ecco un collegamento documentazione.

    OriginaleL’autore Xion Dark

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *