Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js Mapbox gl本机缝合瓷砖的间距大于0_Node.js_3d_Coordinates_Mapbox_Mapbox Gl - Fatal编程技术网

Node.js Mapbox gl本机缝合瓷砖的间距大于0

Node.js Mapbox gl本机缝合瓷砖的间距大于0,node.js,3d,coordinates,mapbox,mapbox-gl,Node.js,3d,Coordinates,Mapbox,Mapbox Gl,Mapbox gl native允许在服务器端渲染矢量平铺。API通过传递平铺的中心坐标来渲染平铺 它返回一个贴图平铺图像。要获得更大的图像,需要渲染多个瓷砖并将它们缝合在一起。要从一个平铺移动到相邻的平铺非常简单,您必须将缩放级别的分辨率乘以平铺地理信息的宽度或高度(取决于您希望相邻平铺的方向) 因此,如果我有一个以中心点[24.5 56.2]渲染的平铺,并且我希望它旁边的平铺在右边,我计算它的中心,如下所示: 偏移量=水平分辨率*256 中心点WebMercator->x+=偏移量 邻接Ti

Mapbox gl native允许在服务器端渲染矢量平铺。API通过传递平铺的中心坐标来渲染平铺

它返回一个贴图平铺图像。要获得更大的图像,需要渲染多个瓷砖并将它们缝合在一起。要从一个平铺移动到相邻的平铺非常简单,您必须将缩放级别的分辨率乘以平铺地理信息的宽度或高度(取决于您希望相邻平铺的方向)

因此,如果我有一个以中心点[24.5 56.2]渲染的平铺,并且我希望它旁边的平铺在右边,我计算它的中心,如下所示:

偏移量=水平分辨率*256

中心点WebMercator->x+=偏移量

邻接TileCenter=toLatLon(WebMercator中的中心点)

这确实是正确的。问题是当瓷砖的间距值大于0时。 在这种情况下,上述算法似乎不正确,因为瓷砖没有正确对齐


这是请求的两个平铺的示例。第一个问题是它们包含重复信息,第二个问题是某些重复特征似乎具有不同的位置(旋转方式不同)。请参见高亮显示的区域。好的,我找到了解决方案,问题是,我正在渲染默认大小为512x512的平铺,然后将其缩放到更高的分辨率


但是可以通过将贴图大小增加到更大的值来增加贴图大小。

请求的分幅,它们是否具有相同的间距?当你缝合它们时,它们是否都包含在同一平面内?嗨@LuisTavares!是的,两个图像都要求具有相同的节距值(60)。请求中唯一更改的是平铺中心坐标。