私は、実際の地図データではなくタイルにスライスした大きな画像を使用してリーフレットでストーリーマップを構築しています。私はこのプラグイン使用しています:https://commenthol.github.io/leaflet-rastercoords/をし、このレポ:https://github.com/jackdougherty/leaflet-storymap大規模なラスターイメージで、unproject()とGeoJSONデータを使用したリーフレットflyTo()の使用方法は?
が私にGeoJSONデータをロードして座標をunprojectingは正しく私のイメージマップ上にプロット:
$.getJSON('map.geojson', function(data) {
var geojson = L.geoJson(data, {
// correctly map the geojson coordinates on the image
coordsToLatLng: function (coords) {
return rc.unproject(coords)
},
しかし、私はonEachFeatureに着くとき、私がヒット
map.flyTo([feature.geometry.coordinates[1], feature.geometry.coordinates[0] ], feature.properties['zoom']);
私はunprojectを渡してみました:私のJSONファイルからgeometry.coordinatesを呼び出しますが、地理空間は、マップ外の道を座標としてflyTo()はそれらを解釈されるので、それらをunprojectingされていないmap.flyTo()、との壁変数への座標、およびmap.flyTo()への座標、map.flyTo.unproject(...、運がないなど)などのネスト関数のバリエーションです。
ラスタ座標をflyTo()に渡すにはどうすればよいですか?
私はリーフレットの新機能だけでなく、JavaScriptを初めて使用しています。私はこれまでに自分のやり方をハックしましたが、私は困惑しています。私は解決策が明らかだと確信しています。どんな助けでも大歓迎です。
あなたはおそらくあなたがflyTo
に渡すことができることを緯度経度にあなたの座標を変換するために
rc.unproject
を使用する必要がありますあなたの場合は
は、この非常に徹底した答えをいただき、ありがとうございます。単に 'map.flyTo( rc.unproject(feature.geometry.coordinates)、 feature.properties ['zoom'] )を使用して、 ' は私の問題を解決しました。しかし、今私はそれがラスターコードプラグインを使用しなければならないよりも難しくなっていることを知っています。 –