更新时间:2023-04-28 GMT+08:00
分享

空间位置追踪与渲染

接口列表

空间位置追踪与渲染需要使用到的接口如表1所示。

表1 空间位置追踪与渲染接口列表

接口

描述

参数名

参数类型

参数说明

返回值

createARSession

创建AR会话。

-

-

-

Promise<void>

setARStatus

设置AR状态。

isAR

boolean

是否开启AR。

  • true:开启会话,开始发送请求。
  • false:关闭会话,停止发送请求。

void

apkUuidIsUpdate

boolean

是否更新会话。可选。

默认为false。

  • true:重置会话,重新进行VPS请求。
  • false:不重置会话。

multiFrame

boolean

是否连续请求定位。可选。

默认false。

  • true:连续请求定位,直到请求成功。
  • false:不连续请求定位。

registerRefreshCameraMat

设置接收相机矩阵的回调函数。

funCallBack

Function

回调函数。需要接收cameraMat(相机矩阵)和imgData(视频流图片)两个参数。

cameraMat和imgData参数类型:

  • cameraMat:{ elements: Float32Array; isMatrix4: boolean }
  • imgData:ImageData

void

utm2Render

utm坐标转成渲染坐标。

listUtm

number[]

坐标数组。

Vector3

render2Utm

渲染坐标转成UTM坐标。

listRender

number[]

坐标数组。

Vector3

接口调用示例

// 创建AR会话
hwar.createARSession().then((res) => { });

// 设置AR状态
hwar.setARStatus(true, true, true);

// 设置接收相机矩阵的回调函数(TS语言,以Three.js为例)
hwar.registerRefreshCameraMat((cameraMat: THREE.Matrix4, imgData: ImageData) => { });

// UTM坐标转成渲染坐标(TS语言,以Three.js为例)
let vecInit: THREE.Vector3 = hwar.utm2Render([xxx, xxx, xxx]);

// 渲染坐标转成UTM坐标(TS语言,以Three.js为例)
let renderPosUtm:THREE.Vector3 = hwar.render2Utm([xxx, xxx, xxx]);

相关文档