xr-frame / Exports / ARTracker
# Class: ARTracker
AR追踪组件,配合ARSystem和Camera的isARCamera
属性一起使用。
一般被代理到XRARTracker元素。
其提供了追踪的能力,节点将会自动同步识别到的追踪目标的位置和旋转,
# Hierarchy
-
↳
ARTracker
# Table of contents
# Constructors
# Events
# Properties
# Accessors
# Methods
# Constructors
# constructor
• new ARTracker()
# Inherited from
# Events
# onAdd
▸ onAdd(parent
, data
): void
所挂载的element
被挂载到场景时触发的回调。
# Parameters
Name | Type |
---|---|
parent | Element |
data | IARTrackerData |
# Returns
void
# Inherited from
# onRelease
▸ onRelease(data
): void
从被挂载的element
上被移除,或是element
被销毁时,触发的回调。
一般用于释放持有的资源。
# Parameters
Name | Type |
---|---|
data | IARTrackerData |
# Returns
void
# Inherited from
# onRemove
▸ onRemove(parent
, data
): void
所挂载的element
从父节点parent
被移除时,或者自己从element
上被移除时,触发的回调。
一般用于消除功能的运作。
如果一个组件的元素直接被销毁了,那这个组件就不会经历onRemove而是直接进入onRelease。
# Parameters
Name | Type |
---|---|
parent | Element |
data | IARTrackerData |
# Returns
void
# Inherited from
# onTick
▸ onTick(deltaTime
, data
): void
渲染每帧触发的回调。
# Parameters
Name | Type | Description |
---|---|---|
deltaTime | number | 单位为毫秒(ms)。 |
data | IARTrackerData | - |
# Returns
void
# Inherited from
# onUpdate
▸ onUpdate(data
, preData
): void
数据更新时触发的回调。
# Parameters
Name | Type |
---|---|
data | IARTrackerData |
preData | IARTrackerData |
# Returns
void
# Inherited from
# Properties
# priority
• Readonly
priority: number
自定义组件的更新优先级。
# Inherited from
# schema
• Readonly
schema: IComponentSchema
# Overrides
# EVENTS
▪ Static
EVENTS: string
[]
# Overrides
# Accessors
# arActive
• get
arActive(): boolean
是否已经检测到了目标。
# Returns
boolean
# el
• get
el(): Element
挂载的元素。
# Returns
# errorMessage
• get
errorMessage(): string
如果为错误状态,错误信息。
version
v2.29.1
# Returns
string
# gesture
• get
gesture(): number
在Hand
模式下,手势分类,正常0~18
,无效为-1
。
# Returns
number
# mode
• get
mode(): TTrackMode
跟踪模式。
# Returns
# scene
• get
scene(): Scene
当前场景。
# Returns
# score
• get
score(): number
Body
/Hand
模式下,获取当前的置信度。
一般为0~1
。
# Returns
number
# state
• get
state(): EARTrackerState
当前识别状态。
version
v2.29.1
# Returns
# version
• get
version(): number
当前版本,每次有数据更新都会增加,可以用作和其他组件合作的依据。
# Returns
number
# Methods
# getData
▸ getData<T
>(key
): IARTrackerData
[T
]
获取一个当前值。
# Type parameters
Name | Type |
---|---|
T | extends keyof IARTrackerData |
# Parameters
Name | Type |
---|---|
key | T |
# Returns
# Inherited from
# getPosition
▸ getPosition(point
, output?
, relativeToTracker?
): Vector3
在Face
/Body
/Hand
模式下,获取某个特征点的位置。
# Parameters
Name | Type | Default value | Description |
---|---|---|---|
point | number | undefined | 特征点索引,需要在0~105 ,否则返回undefined 。 |
output? | Vector3 | undefined | - |
relativeToTracker | boolean | true | 仅在ar-system 的pose3d 属性为false 时生效。是否相对于ARTracker 本身,默认为true ,否则返回世界空间坐标。 |
# Returns
只有在arActive
时才有值,否则返回undefined
。
# setData
▸ setData(data
): void
不通过xml
而是直接设置data
,注意值的类型需要和schema
中一致。
# Parameters
Name | Type |
---|---|
data | Partial <IARTrackerData > |
# Returns
void
# Inherited from
# setDataOne
▸ setDataOne<T
>(key
, value
): void
设置一个数据。
# Type parameters
Name | Type |
---|---|
T | extends keyof IARTrackerData |
# Parameters
Name | Type |
---|---|
key | T |
value | IARTrackerData [T ] |
# Returns
void