目标是能够放大我分成256x256方格的高分辨率图像(11520x11520)。我拍摄了大图,并将其调整为80%,60%,40%,20%和8.89%。然后,对于每个图像从100%到8.89%,我将它们分开。制作像这样的互动视频游戏地图:http://www.ark-survival.net/en/dynamic-livemap/
我试过这个:
var map = new ol.Map({
target: 'ark_map',
layers: [
new ol.layer.Tile({
source: new ol.source.XYZ({
url: 'images/map/{z}/map_{x}_{y}.png',
tileSize: 256,
maxZoom: 5
})
})
],
view: new ol.View({
center: [50, 50],
zoom: 5,
minZoom: 0
})
});
结果:我只看到所用缩放的左上角。我已经看过很多例子和很多问题,但结合静态图块和XYZ(像素)并没有出现。
这是JS Fiddle。
如何基于像素系统组合静态切片和XYZ坐标?
答案 0 :(得分:1)
你有一个非常奇怪的瓷砖布局。您描述的内容映射到这组解决方案:
var resolutions = [
45/4,
45/4/2*0.889,
45/4/4*0.889,
45/4/6*0.889,
45/4/8*0.889
];
通过它,您可以配置ol.tilegrid.TileGrid
:
new ol.tilegrid.TileGrid({
origin: [0, 11520],
resolutions: resolutions
})
请参阅更新的小提琴,了解完整代码:https://jsfiddle.net/6moqu7q8/4/。