在数字孪生可视化场景中,当相机看向目标物体时,一般以物体的中心点作为“视角”的目标位置”。我理解的是我们拍摄时相机看物体的最佳角度。一个位置可以通过x轴旋转角度、y轴旋转角度和目标物体“中心”相对于目标物体坐标系的距离来确定,作为“视点”的位置.例如,当(x轴旋转角度,y轴旋转角度,距离)=(0,0,1)时,就是在Z轴1倍围球半径的位置看物体-物体的轴方向。不过,上图并不是数字孪生体可视化对象的“最佳视角”。ThingJS会默认计算一个对象的“最佳视角”,以数字孪生体可视化对象的边界框中心点作为“最佳视角”的目标。地点。中心点X轴旋转45度(xAngle:45),Y轴旋转-45度(yAngle:-45),2倍周围球半径的位置(radiusFactor:2)位置是“最佳视角”位置。如果需要自定义fit()对象的相机位置,可以控制如下参数进行设置:app.camera.fit({'object':obj,'xAngle':60,//旋转对象自身X轴旋转角度'yAngle':30,//绕物体自身Y轴的旋转角度'radiusFactor':3,//物体包围球体半径的倍数});通过相机的lookAt()方法,相机也可以“凝视”某个位置或者看数字孪生视觉对象,示例脚本如下://相机一直“凝视”在[0,0,0]指向看app.camera.lookAt([0,0,0]);////摄像头一直盯着一个物体varobj=app.query("car01")[0];app.camera.lookAt(obj);//取消摄像头一直盯着物体app.camera.lookAt(null);————————————————————数字孪生可视化:https://www.thingjs.com/
