Potree / Three.js测量问题

时间:2016-05-17 22:01:03

标签: javascript three.js point-clouds

首先,我是新手,非本地人说英语,对不起。

在这一刻,我使用加载在同一页面中的多个(和不同的)点云与令人敬畏的Potree 1.4RC,但我想自动读取点云的高度,我的意思是,读取所有点云并检测最大尺寸。我曾经合作过:

Var Potree.Measure areaMeasurement = new ( ) ;
areaMeasurement.addMarker (new THREE.Vector3 (0, 0 , 0)) ;
areaMeasurement.addMarker (new THREE.Vector3 ( -10 , 0 , 0 ) ) ;
viewer.measuringTool.addMeasurement ( areaMeasurement ) ;

但我的观点是预定义的...我的问题是如何获得PointCloud(非边界框)的最大高度或宽度?

否则,当我在Potree或Three.js中给出其他坐标(p.e。:X和Y)时,如何获得空间坐标(p.e:Z)?可以自动检测这个最大值并获得她的坐标吗?

非常感谢, 最好的问候。

1 个答案:

答案 0 :(得分:0)

您可以通过计算点云中每对(x,z)点之间的平方距离来获得最大宽度

distanceSquared = ( v1.x - v2.x ) * ( v1.x - v2.x ) + ( v1.z - v2.z ) * ( v1.z - v2.z );

然后选择最大值的平方根。

最大高度只是点的最大y坐标。