在数字孪生可视化场景中,当摄像机看向指标物体时,个别将物体中心点作为 “看点” 的 target 地位。我了解的就是像咱们拍摄时摄像机看向物体的最佳角度。
能够通过绝对于指标物体的坐标系下 x 轴旋转角度、 y 轴旋转角度以及距指标物体“核心”的间隔来确定一个地位,作为“看点”的 position 地位。
比方,当( x 轴旋转角度, y 轴旋转角度,间隔)=(0,0,1)时,是在正朝向物体 Z 轴方向上 1 倍突围球半径的地位看向物体。
然而上图并不是数字孪生可视化物体的“最佳看点”,ThingJS 会默认计算一个物体的“最佳看点”,将数字孪生可视化物体突围盒的中心点作为“最佳看点”的 target 地位。
以中心点的 X 轴旋转 45 度(xAngle:45),Y 轴旋转 -45 度方向(yAngle:-45),2倍突围球半径间隔(radiusFactor:2)的地位为“最佳看点”的 position 地位。
如果需自定义 fit() 物体的摄像机地位,可管制以下参数来进行设置:
app.camera.fit({ 'object': obj, 'xAngle': 60, //绕物体本身X轴旋转角度 'yAngle': 30, //绕物体本身Y轴旋转角度 'radiusFactor':3, //物体突围球半径的倍数});
通过摄像机的 lookAt() 办法,也能够让摄像机始终“盯着”某个地位或数字孪生可视化物体看,示例脚本如下:
//摄像机始终“盯着”[0,0,0]点看app.camera.lookAt([0, 0, 0]); ////摄像机始终“盯着”某物体看var obj = app.query("car01")[0];app.camera.lookAt(obj);//勾销摄像机始终盯着物体看app.camera.lookAt(null);
—————————————————
数字孪生可视化:https://www.thingjs.com/