MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Não é possível exibir apenas os pontos dentro de um intervalo específico (círculo) usando a função .getBounds() (Folheto)


Você pode criar seus próprios contains e adicione-o ao L.Circle class porque não tem um por padrão. Você pode usar o método utilitário distanceTo do L.LatLng objetos para calcular a distância entre o seu marcador e o centro do círculo e comparar com o raio do círculo:
L.Circle.include({
    contains: function (latLng) {
        return this.getLatLng().distanceTo(latLng) < this.getRadius();
    }
});

Agora, quando você tem um círculo e um marcador ou objeto lateral, você pode fazer isso:
var map = L.map(...);

var circle = L.circle(...).addTo(map),
    marker = L.marker(...).addTo(map);
    latLng = L.latLng(...);

// Returns true when in the circle and false when outside
circle.contains(marker.getLatLng());
circle.contains(latLng);

Exemplo de trabalho no Plunker:http://plnkr.co/edit/OPF7DM?p=preview

Referência L.Circle:http://leafletjs.com/reference.html#circle

Referência L.Marker:http://leafletjs.com/reference.html#marker

Referência L.LatLng:http://leafletjs.com/reference.html#latlng