相机定位.md 2.8 KB

相机控制

::: details 目录 [[toc]] :::

定位到具体模型附近

::: details 完整结构

{
        "CmdName": "PECameraLookAtFor3dObject",
        "Time": "",
        "Platform": "",
        "CmdParams": {

        },
        "OrderList": [
            {
            "OrderName": "PELookAt",//--必填-- 相机定位
            "OrderParams": {
                "ObjectID": "",//--必填-- SourceID
                "Angle": 45,//相机距离目标所在水平面的的俯视角
                "Scale": 20,//相机距离目标包围球的距离
                "Time": {//相机定位动画时间控制
                      "PositionTime": 1000,//默认1000毫秒
                      "TargetTime": 500//中心点变更的时间 默认500毫秒
                },
                "Position": {//自定义相机位移到的目标坐标
                    "x": 100,
                    "y": 100,
                    "z": 100
                }
            }
        }
    ]

}

:::

参数说明

::: details ObjectID ObjectID就是设备/空间的SourceID :::

::: details Position 相机定位的原理是引擎自动根据ObjectID对应的3D模型计算出最小的包围球,然后根据设置的角度距离等计算出相机的终点位置,但是会存在个别设备模型被墙壁遮挡等情况,此时需要前端指定Position参数指定一个自定义的位置,则引擎会自动将相机直接移动到此位置,不在进行计算 :::

自定义相机运动位置

::: details 完整结构

{
        "CmdName": "PECameraLookAtFor3dObject",
        "Time": "",
        "Platform": "",
        "CmdParams": {

        },
        "OrderList": [
        {
                "OrderName": "PELookAtPosition",//相机运动到指定的位置
                "OrderParams": {
                    "CustomPosition": {//自定义相机位置信息 如果不填写表示自动返回到场景初始化的默认位置
                        "Position": {//相机位置
                            "x": 100,
                            "y": 100,
                            "z": 100
                        },
                        "Rotation": {//相机角度
                            "x": 100,
                            "y": 100,
                            "z": 100
                        },
                        "Target": {//场景的中心点
                            "x": 100,
                            "y": 100,
                            "z": 100
                        }
                    },
                    "Time": {//动画时间
                        "PositionTime": 1000,//平移位置的动画时间
                        "RotationTime": 1000,//平移角度的动画时间
                        "TargetTime": 1000//中心点变更的时间
                    }
                }
        }
    ]

}

:::