我将一些传统代码从Leaflet 0.7.7移到Leaflet 1.2.0。有一个用于覆盖getTileUrl()的自定义TileLayer。在1.2.0中,坐标缩放到0.7.7的一半。这对使用该服务查询磁贴造成问题。从0.7.7到1.2.0的自定义传单磁贴层
这里是getTileUrl()的现有实现:
getTileUrl: function (tilePoint) {
var imgType = "png",
yHex = tilePoint.y.toString(0x10),
xHex = tilePoint.x.toString(0x10),
yPath = 'R' + this.padString(yHex, 8, '0').toUpperCase(),
xPath = 'C' + this.padString(xHex, 8, '0').toUpperCase() + '.' + imgType,
z = (tilePoint.z + 1),
zL = 'L'+ (z<10?'0':'')+ z,
final_url = this._url +zL+"/"+ yPath + "/" + xPath;
return final_url;
}
就加倍x和y的值不起作用。在Leaflet中是否有一些机制来纠正这个问题,比如内部坐标的乘数?无法找到好的资源来从0.7.7移动到1.2.0这样的东西。
下面是一个例子:
在0.7.7我使用中心位置[38.854699,-94.797763]
这具有这样的一个tilepoint为{X:7755,Y:12540,...}
而在1.2.0具有相同中心位置点为{X:3877,Y:6270,...}
因此,它在0.7.7中使用的旧值的清晰减半。
如果您可以通过给定'tilePoint'输入提供期望的URL,以及什么是“错误”结果,这可能会有所帮助。 – ghybs
无法重现您的问题:http://playground-leaflet.rhcloud.com/seno/1/edit?html,output – ghybs
@ghybs任何想法,为什么它减半我?一些配置?我的主要问题是如何能够/可以在Leaflet中进行调整。 –