VKSession
vision kit 会话对象
支持情况:
方法
参数 | 类型 | 说明 |
---|---|---|
state | keyof State | 会话状态 |
config | Config | 会话配置 |
cameraSize | Size | 相机尺寸 |
cancelAnimationFrame
取消由 requestAnimationFrame 添加到计划中的动画帧请求
支持情况:
(requestID: number) => void
参数 | 类型 |
---|---|
requestID | number |
destroy
销毁会话
支持情况:
() => void
getVKFrame
获取帧对象,每调用一次都会触发一次帧分析过程
支持情况:
(width: number, height: number) => VKFrame
参数 | 类型 | 说明 |
---|---|---|
width | number | 宽度 |
height | number | 高度 |
hitTest
触摸检测,v1 版本只支持单平面(即 hitTest 生成一次平面后,后续 hitTest 均不会再生成平面,而是以之前生成的平面为基础进行检测)。
如果需要重新识别其他平面,可以在调用此方法时将 reset 参数置为 true。
支持情况:
(x: number, y: number, reset?: boolean) => hitTestResult[]
参数 | 类型 | 说明 |
---|---|---|
x | number | 相对视窗的横坐标,取值范围为 [0, 1],0 为左边缘,1 为右边缘 |
y | number | 相对视窗的纵坐标,取值范围为 [0, 1],0 为上边缘,1 为下边缘 |
reset | boolean | 是否需要重新识别其他平面,v2 版本不再需要此参数 |
off
取消监听会话事件。
支持情况:
(eventName: string, fn: Function) => void
参数 | 类型 | 说明 |
---|---|---|
eventName | string | 事件名称 |
fn | Function | 事件监听函数 |
on
监听会话事件。
支持情况:
(eventName: string, fn: Function) => void
参数 | 类型 | 说明 |
---|---|---|
eventName | string | 事件名称 |
fn | Function | 事件监听函数 |
requestAnimationFrame
在下次进行重绘时执行。
支持情况:
(callback: Function) => number
参数 | 类型 | 说明 |
---|---|---|
callback | Function | 执行函数 |
start
开启会话。
支持情况:
(callback: (status: keyof StartStatus) => void) => void
参数 | 类型 | 说明 |
---|---|---|
callback | (status: keyof StartStatus) => void | 开启会话回调 |
stop
停止会话。
支持情况:
() => void
参数
State
state 的合法值
参数 | 说明 |
---|---|
0 | 不可用 |
1 | 运行中 |
2 | 暂停中 |
Config
会话配置
参数 | 类型 | 说明 |
---|---|---|
version | keyof version | 不可用 |
track | track | 运行中 |
version
vision kit 版本
参数 | 说明 |
---|---|
v1 | 旧版本 |
v2 | v2 版本,目前只有 iOS 基础库 2.22.0 以上支持 |
track
跟踪配置
参数 | 类型 | 说明 |
---|---|---|
plane | plane | 平面跟踪配置 |
plane
平面跟踪配置
参数 | 类型 | 说明 |
---|---|---|
mode | keyof PlaneMode | 平面跟踪配置模式 |
PlaneMode
平面跟踪配置模式合法值
参数 | 说明 |
---|---|
1 | 检测横向平面 |
2 | 检测纵向平面,只有 v2 版本支持 |
3 | 检测横向和纵向平面,只有 v2 版本支持 |
Size
相机尺寸
参数 | 类型 | 说明 |
---|---|---|
width | number | 宽度 |
height | number | 高度 |
hitTestResult
hitTest 检测结果
参数 | 类型 | 说明 |
---|---|---|
transform | Float32Array | 包含位置、旋转、放缩信息的矩阵,以列为主序 |
StartStatus
start status 的合法值
参数 | 说明 |
---|---|
0 | 成功 |
2000000 | 系统错误 |
2000001 | 参数错误 |
2000002 | 设备不支持 |
2000003 | 系统不支持 |
2003000 | 会话不可用 |
2003001 | 未开启系统相机权限 |
2003002 | 未开启小程序相机权限 |
API 支持度
API | 微信小程序 | H5 | React Native |
---|---|---|---|
VKSession | ✔️ | ||
VKSession.cancelAnimationFrame | ✔️ | ||
VKSession.destroy | ✔️ | ||
VKSession.getVKFrame | ✔️ | ||
VKSession.hitTest | ✔️ | ||
VKSession.off | ✔️ | ||
VKSession.on | ✔️ | ||
VKSession.requestAnimationFrame | ✔️ | ||
VKSession.start | ✔️ | ||
VKSession.stop | ✔️ |