独自のcontains
を作成できます メソッドを作成し、L.Circle
に追加します デフォルトではクラスがないためです。ユーティリティメソッドdistanceTo
を使用できます L.LatLng
の マーカーと円の中心の間の距離を計算し、それを円の半径と比較するオブジェクト:
L.Circle.include({
contains: function (latLng) {
return this.getLatLng().distanceTo(latLng) < this.getRadius();
}
});
これで、円とマーカーまたはlatlngオブジェクトがある場合、これを行うことができます:
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);
プランカーの実例: http://plnkr.co/edit/OPF7DM?p=preview
L.Circleリファレンス: http://leafletjs.com/reference.html#circle
L.Markerリファレンス: http://leafletjs.com/reference.html#marker
L.LatLngリファレンス: http://leafletjs.com/reference.html#latlng