Class: ShapeInteract

查看 llm.txt

最后一次编辑于 2026-10-22

拥有ShapeInterace组件的Shape才能与其他Shape发生交互。 将collide属性设置为true来与其他Shape进行物理碰撞,仅当两个Shape的collide属性都为true时它们才能发生碰撞。

Hierarchy

Table of contents

Constructors

Events

Properties

Accessors

Methods

Constructors

constructor

• new ShapeInteract()

Overrides

Component.constructor

Events

onAdd

▸ onAdd(parent, data): void

所挂载的element被挂载到场景时触发的回调。

Parameters

Name Type
parent Element
data IShapeInteractData

Returns

void

Inherited from

Component.onAdd


onRelease

▸ onRelease(data): void

从被挂载的element上被移除,或是element被销毁时,触发的回调。 一般用于释放持有的资源。

Parameters

Name Type
data IShapeInteractData

Returns

void

Inherited from

Component.onRelease


onRemove

▸ onRemove(parent, data): void

所挂载的element从父节点parent被移除时,或者自己从element上被移除时,触发的回调。 一般用于消除功能的运作。 如果一个组件的元素直接被销毁了,那这个组件就不会经历onRemove而是直接进入onRelease。

Parameters

Name Type
parent Element
data IShapeInteractData

Returns

void

Inherited from

Component.onRemove


onTick

▸ onTick(deltaTime, data): void

渲染每帧触发的回调。

Parameters

Name Type Description
deltaTime number 单位为毫秒(ms)。
data IShapeInteractData -

Returns

void

Inherited from

Component.onTick


onUpdate

▸ onUpdate(data, preData): void

数据更新时触发的回调。

Parameters

Name Type
data IShapeInteractData
preData IShapeInteractData

Returns

void

Inherited from

Component.onUpdate

Properties

priority

• Readonly priority: number

自定义组件的更新优先级。

Inherited from

Component.priority


schema

• Readonly schema: IComponentSchema

自定义组件的schema。

Overrides

Component.schema


EVENTS

▪ Static EVENTS: string[] = []

Inherited from

Component.EVENTS

Accessors

bounceCombine

• get bounceCombine(): CombineMode

如何结合发生碰撞的两个物体的弹性系数。

default {@link CombineMode.Average}

Returns

CombineMode

• set bounceCombine(v): void

如何结合发生碰撞的两个物体的弹性系数。

Parameters

Name Type
v CombineMode

Returns

void


bounciness

• get bounciness(): number

弹性系数,决定碰撞时的能量损失比例。

弹性系数 = 1时,碰撞无能量损失。

limit 0 <= bounciness <= 1

default 0

Returns

number

• set bounciness(): void

弹性系数,决定碰撞时的能量损失比例。

弹性系数 = 1时,碰撞无能量损失。

Returns

void


dynamicFriction

• get dynamicFriction(): number

动摩擦系数。

limit 0 <= dynamicFriction <= 1

default 0.6

Returns

number

• set dynamicFriction(): void

动摩擦系数。

Returns

void


el

• get el(): Element

挂载的元素。

Returns

Element


frictionCombine

• get frictionCombine(): CombineMode

如何结合发生碰撞的两个物体的摩擦系数。

default {@link CombineMode.Average}

Returns

CombineMode

• set frictionCombine(v): void

如何结合发生碰撞的两个物体的摩擦系数。

Parameters

Name Type
v CombineMode

Returns

void


scene

• get scene(): Scene

当前场景。

Returns

Scene


staticFriction

• get staticFriction(): number

静摩擦系数

limit 0 <= staticFriction <= 1

default 0.6

Returns

number

• set staticFriction(): void

静摩擦系数

Returns

void


version

• get version(): number

当前版本,每次有数据更新都会增加,可以用作和其他组件合作的依据。

Returns

number

Methods

getData

▸ getData<T>(key): IShapeInteractData[T]

获取一个当前值。

Type parameters

Name Type
T extends keyof IShapeInteractData

Parameters

Name Type
key T

Returns

IShapeInteractData[T]

Inherited from

Component.getData


getInteractType

▸ getInteractType(): EShapeInteractType

Returns

EShapeInteractType


setData

▸ setData(data): void

不通过xml而是直接设置data,注意值的类型需要和schema中一致。

Parameters

Name Type
data Partial<IShapeInteractData>

Returns

void

Inherited from

Component.setData


setDataOne

▸ setDataOne<T>(key, value): void

设置一个数据。

Type parameters

Name Type
T extends keyof IShapeInteractData

Parameters

Name Type
key T
value IShapeInteractData[T]

Returns

void

Inherited from

Component.setDataOne