すばらしいProj4Leafletプラグインを使用してリーフレット マップをセットアップしました。私のマップ内では、カスタム参照システム ( EPSG:28533 ) を使用しています。マップ タイル ( WMTSCapabilities ) がフェッチされ、レンダリングされます。しかし、タイルが間違った場所に変換されていることに遭遇しました。オフセットは約+9° latおよび+7° lngです。参照システム ( fiddleorigin
)の定義内で間違った設定をしたと思います。
var rs25832 = new L.Proj.CRS(
'EPSG:25832',
'+proj=utm +zone=32 +ellps=GRS80 +units=m +no_defs', {
origin: [
// I suppose the error is here!
265948.8191,
7288831.7014
],
resolutions: [
// TileMatrixScaleDenominator * OGC_PixelWidth
17471320.7509 * 0.00028,
8735660.37545 * 0.00028,
4367830.18772 * 0.00028,
2183915.09386 * 0.00028,
1091957.54693 * 0.00028,
545978.773466 * 0.00028,
272989.386733 * 0.00028,
136494.693366 * 0.00028,
68247.3466832 * 0.00028,
34123.6733416 * 0.00028,
17061.8366708 * 0.00028,
8530.9183354 * 0.00028,
4265.4591677 * 0.00028,
2132.72958385 * 0.00028
]
}
);
var url = 'http://sg.geodatenzentrum.de/wmts_webatlasde/tile/1.0.0/webatlasde/default/DE_EPSG_25832_ADV/{z}/{y}/{x}.png';
var layer = L.tileLayer(url, {
maxZoom: rs25832.options.resolutions.length,
continuousWorld: true
}
);
var map = L.map('map', {
crs: rs25832,
center: [ 50.5881112, 7.2676084 ],
zoom: 0,
maxZoom: rs25832.options.resolutions.length,
layers: [ layer ]
});
map.on('click', function(e) {
alert('lat: ' + e.latlng.lat + ' lng: ' + e.latlng.lng)
});
私が設定を理解している限りorigin
、参照システムの投影された境界の左上隅を定義します。spatialreference.orgの定義によると、この特定の参照系の境界は次のとおりです。
265948.8191, 6421521.2254, 677786.3629, 7288831.7014
CRS を決定するために間違ったアプローチを使用していorigin
ますか?