现实世界中的Three.js矩阵精度

时间:2016-01-20 13:13:05

标签: three.js

我在与现实世界合作时尝试了一些问题。 我的相机中心是280000,45787254(例如)。 我的世界的延伸大约是500 x 500(不是太大)

我使用的是以公制单位(米)为单位的数据。

我用简单的平面创建了一个瓦片地图结构。 我看到平面边界之间的间隙很小,这些平面是连续的(即相邻平面的xmin等于前面的xmax)。

过去我遇到与光线投射有关的问题。 使用这种大型单元的矩阵投影精度较低。 将值附近更改为大于10的数字可以解决问题。但是,使用此值意味着可视化效果不佳(您无法将凸轮放置在场景附近,它会消失)。

我和那个开发potree的人谈过,他说我必须将激光雷达世界移动到0,0才能正常工作。

所以......最终的解决方案是在0,0世界中工作,不是吗? 或者我们可以在矩阵计算中做任何技巧吗?

我想知道三个开发者。

1 个答案:

答案 0 :(得分:0)

浮点数学最好在接近零的范围内,当你移动很远时,你最终会出现复合错误。您可以在原点附近尽可能多地进行数学计算,然后将结果转换到您需要的任何位置,这将有助于其中一些,但如果可以的话,可以在本地坐标中工作。

当距离原点太远时,Potree可能会出现奇怪的波纹锯齿效果,不是吗?