19,000個のフィーチャ(ポイント)近くのチョコレートで大きなgeoJSONファイルを摂取しています。その結果、マップ上に大量の混乱が生じ、管理が難しくなります。リーフレットでlat-longでGeoJSONをフィルタリングする
目的は、ジオロケーションを使用して自分の位置をマークし、その周囲に5nmの円を描き、そのジオメトリ内に存在するgeoJSONフィーチャのみを表示することです。
私のプロジェクトの要約版は、次のとおりです。 https://jsfiddle.net/blintster/d2ucock2/3/
私は自分の場所を見つけて、円を描く出て働いてきたが、私は場所にGeoJSONの機能を解析することはできませんよ。理想的には、出力は次のように機能します:https://esri.github.io/esri-leaflet/examples/spatial-queries.htmlしかし、その方法はL.esri.FeatureLayerにのみ適用されるようです。これはローカルにインポートされたgeoJSONです。
var allairportsLayer = L.geoJson([airports], {
filter: airportFilter,
onEachFeature: function(feature, layer) {
layer.bindPopup(feature.properties.Type + " - " + feature.properties.FacilityName + "<br>Contact Info: " + feature.properties.Manager + "<br> Phone: " + feature.properties.ManagerPhone);
}
}).addTo(map);
function airportFilter(feature) {
if (feature.properties.State === "MD") return true
};
Iは状態によってフィルター法を使用して、わずかに結果をダウンペアリングすることができただけ私が決定するために許可されている:
問題のにGeoJSON層は、[空港] 19000のエントリである未満であります属性が指定された基準を満たす場合。
また、以下の方法を試みました:https://www.mapbox.com/mapbox.js/example/v1.0.0/marker-radius-search/ 運がありません。
データを解析してジオメトリ内に存在するポイントのみを表示できるようにする追加の方法について知っている人はいますか?