Openlayers 3 OpenLayers 3、静态平铺和XYZ坐标
目标是能够放大到高分辨率图片(11520x11520),我已经分割成256x256个正方形。我拍摄了这张大图,并将其大小调整为80%、60%、40%、20%和8.89%。然后,对于从100%到8.89%的每个图像,我将它们分割。制作一个交互式视频游戏地图,如下所示: 我试过这个:Openlayers 3 OpenLayers 3、静态平铺和XYZ坐标,openlayers-3,Openlayers 3,目标是能够放大到高分辨率图片(11520x11520),我已经分割成256x256个正方形。我拍摄了这张大图,并将其大小调整为80%、60%、40%、20%和8.89%。然后,对于从100%到8.89%的每个图像,我将它们分割。制作一个交互式视频游戏地图,如下所示: 我试过这个: var map = new ol.Map({ target: 'ark_map', layers: [ new ol.layer.Tile({ source: new o
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(像素)结合在一起从未出现过
这是你的电话号码
如何基于像素系统将静态平铺和XYZ坐标结合起来?您的平铺布局非常怪异。您描述的内容映射到这组分辨率:
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
})
查看更新的fiddle以获取完整代码:。您看到了吗?我添加了JS fiddle以向您展示它在我这方面的功能。顺便问一下,您使用了什么来分割图像?我使用了TileMage图像分割器。()你能解释一下什么元素很奇怪,以及你是如何计算出你制作的分辨率阵列的吗?有时似乎有点小毛病,可能是缩放必须遵循我没有正确遵循的某些准则吗?通常,平铺网格从缩放级别为零的一个平铺开始,然后总是将一个平铺分成四个平铺,用于下一个缩放级别。幸运的是,OpenLayers支持像您这样的任意网格配置。事实上,我通过将尝试和错误与您提供的信息相结合来计算出您的分辨率。不确定您所说的“glitchy”是什么意思,但要获得更清晰的图像,您需要具有与源文件相同的视图分辨率。这可以通过将相同的分辨率数组传递给视图配置来轻松实现。缺点是,除非为视图添加更多分辨率,否则您将无法查看整个世界。有关更新的小提琴,请参阅。