Class: GUIMesh
大部分对象的基类,提供了一系列的属性和方法来对三维空间中的物体进行操作。
Hierarchy
↳
GUIMesh
Properties
Accessors
- uuid
- renderLayer
- visible
- numChildren
- isScene3D
- localPosition
- localRotation
- localScale
- localQuaternion
- parent
- parentObject
- x
- y
- z
- scaleX
- scaleY
- scaleZ
- rotationX
- rotationY
- rotationZ
- quadMaxCount
Methods
- getObjectByName
- addChild
- removeChild
- removeAllChild
- removeChildByIndex
- hasChild
- removeFromParent
- getChildByIndex
- getChildByName
- genBounds
- forChild
- addComponent
- getOrAddComponent
- removeComponent
- hasComponent
- getComponent
- getComponentFromParent
- getComponentsInChild
- getComponents
- getComponentsExt
- clone
- notifyChange
- getWorldPosition
- traverse
- destroy
- serialization
- unSerialize
- showDebugAxis
- dispatchEvent
- addEventListener
- removeEventListener
- removeEventListenerAt
- removeAllEventListener
- containEventListener
- hasEventListener
- setTextures
- sortIndex
- updateGUIData
Constructors
Properties
name
• name: string
= ''
对象的名称。默认值是一个空字符串。
Inherited from
Defined in
src/engine/core/entities/Entity.ts:24
transform
• transform: Transform
附加到此对象的Transform。
Inherited from
Defined in
src/engine/core/entities/Entity.ts:58
renderNode
• renderNode: RenderNode
渲染器组件
Inherited from
Defined in
src/engine/core/entities/Entity.ts:63
entityChildren
• entityChildren: Entity
[]
包含对象子对象的数组
Inherited from
Defined in
src/engine/core/entities/Entity.ts:68
components
• components: Map
<any
, ComponentBase
>
对象所附加的组件列表
Inherited from
Defined in
src/engine/core/entities/Entity.ts:73
bound
• bound: IBound
对象的的包围体
Inherited from
Defined in
src/engine/core/entities/Entity.ts:78
serializeTag
• Optional
serializeTag: SerializeTag
Inherited from
Defined in
src/engine/core/entities/Object3D.ts:19
prefabRef
• Optional
prefabRef: string
Inherited from
Defined in
src/engine/core/entities/Object3D.ts:20
uiRenderer
• uiRenderer: GUIMeshRenderer
Defined in
src/engine/gui/core/GUIMesh.ts:7
geometry
• geometry: GUIGeometry
Defined in
src/engine/gui/core/GUIMesh.ts:8
space
• space: GUISpace
Defined in
src/engine/gui/core/GUIMesh.ts:9
Accessors
uuid
• get
uuid(): string
该对象的唯一标识符。
Returns
string
Inherited from
Object3D.uuid
Defined in
src/engine/core/entities/Entity.ts:31
renderLayer
• get
renderLayer(): RenderLayer
Returns
RenderLayer
Inherited from
Object3D.renderLayer
Defined in
src/engine/core/entities/Entity.ts:42
• set
renderLayer(value
): void
Parameters
Name | Type |
---|---|
value | RenderLayer |
Returns
void
Inherited from
Object3D.renderLayer
Defined in
src/engine/core/entities/Entity.ts:46
visible
• get
visible(): boolean
对象是否可见
Returns
boolean
Inherited from
Object3D.visible
Defined in
src/engine/core/entities/Entity.ts:116
• set
visible(value
): void
设置对象是否可见
Parameters
Name | Type |
---|---|
value | boolean |
Returns
void
Inherited from
Object3D.visible
Defined in
src/engine/core/entities/Entity.ts:123
numChildren
• get
numChildren(): number
返回对象子对象的数量
Returns
number
Inherited from
Object3D.numChildren
Defined in
src/engine/core/entities/Entity.ts:154
isScene3D
• get
isScene3D(): boolean
Returns
boolean
Inherited from
Object3D.isScene3D
Defined in
src/engine/core/entities/Object3D.ts:29
localPosition
• get
localPosition(): Vector3
物体相对于父级的位置
Returns
Inherited from
Object3D.localPosition
Defined in
src/engine/core/entities/Object3D.ts:239
• set
localPosition(value
): void
设置物体相对于父级的位置
Parameters
Name | Type |
---|---|
value | Vector3 |
Returns
void
Inherited from
Object3D.localPosition
Defined in
src/engine/core/entities/Object3D.ts:246
localRotation
• get
localRotation(): Vector3
物体相对于父级的旋转属性
Returns
Inherited from
Object3D.localRotation
Defined in
src/engine/core/entities/Object3D.ts:253
• set
localRotation(value
): void
设置物体相对于父级的旋转属性
Parameters
Name | Type |
---|---|
value | Vector3 |
Returns
void
Inherited from
Object3D.localRotation
Defined in
src/engine/core/entities/Object3D.ts:260
localScale
• get
localScale(): Vector3
物体相对于父级的缩放属性
Returns
Inherited from
Object3D.localScale
Defined in
src/engine/core/entities/Object3D.ts:267
• set
localScale(value
): void
设置物体相对于父级的缩放属性
Parameters
Name | Type |
---|---|
value | Vector3 |
Returns
void
Inherited from
Object3D.localScale
Defined in
src/engine/core/entities/Object3D.ts:274
localQuaternion
• get
localQuaternion(): Quaternion
物体相对于父级变换属性,以四元数形式存储
Returns
Inherited from
Object3D.localQuaternion
Defined in
src/engine/core/entities/Object3D.ts:281
• set
localQuaternion(value
): void
设置物体相对于父级变换属性,以四元数形式存储
Parameters
Name | Type |
---|---|
value | Quaternion |
Returns
void
Inherited from
Object3D.localQuaternion
Defined in
src/engine/core/entities/Object3D.ts:288
parent
• get
parent(): Transform
对象父容器的Transform组件
Returns
Inherited from
Object3D.parent
Defined in
src/engine/core/entities/Object3D.ts:303
parentObject
• get
parentObject(): Object3D
该对象的父级对象
Returns
Inherited from
Object3D.parentObject
Defined in
src/engine/core/entities/Object3D.ts:311
x
• get
x(): number
相对于父容器的局部坐标的x坐标。
Returns
number
Inherited from
Object3D.x
Defined in
src/engine/core/entities/Object3D.ts:327
• set
x(value
): void
设置相对于父容器的局部坐标的x坐标。
Parameters
Name | Type |
---|---|
value | number |
Returns
void
Inherited from
Object3D.x
Defined in
src/engine/core/entities/Object3D.ts:319
y
• get
y(): number
相对于父容器的局部坐标的y坐标。
Returns
number
Inherited from
Object3D.y
Defined in
src/engine/core/entities/Object3D.ts:342
• set
y(value
): void
设置相对于父容器的局部坐标的y坐标。
Parameters
Name | Type |
---|---|
value | number |
Returns
void
Inherited from
Object3D.y
Defined in
src/engine/core/entities/Object3D.ts:334
z
• get
z(): number
相对于父容器的局部坐标的z坐标。
Returns
number
Inherited from
Object3D.z
Defined in
src/engine/core/entities/Object3D.ts:357
• set
z(value
): void
设置相对于父容器的局部坐标的z坐标。
Parameters
Name | Type |
---|---|
value | number |
Returns
void
Inherited from
Object3D.z
Defined in
src/engine/core/entities/Object3D.ts:349
scaleX
• get
scaleX(): number
沿x轴相对于局部坐标的比例。
Returns
number
Inherited from
Object3D.scaleX
Defined in
src/engine/core/entities/Object3D.ts:372
• set
scaleX(value
): void
设置沿x轴相对于局部坐标的比例。
Parameters
Name | Type |
---|---|
value | number |
Returns
void
Inherited from
Object3D.scaleX
Defined in
src/engine/core/entities/Object3D.ts:364
scaleY
• get
scaleY(): number
沿y轴相对于局部坐标的比例。
Returns
number
Inherited from
Object3D.scaleY
Defined in
src/engine/core/entities/Object3D.ts:388
• set
scaleY(value
): void
设置沿y轴相对于局部坐标的比例。
Parameters
Name | Type |
---|---|
value | number |
Returns
void
Inherited from
Object3D.scaleY
Defined in
src/engine/core/entities/Object3D.ts:380
scaleZ
• get
scaleZ(): number
沿z轴相对于局部坐标的比例。
Returns
number
Inherited from
Object3D.scaleZ
Defined in
src/engine/core/entities/Object3D.ts:404
• set
scaleZ(value
): void
设置沿z轴相对于局部坐标的比例。
Parameters
Name | Type |
---|---|
value | number |
Returns
void
Inherited from
Object3D.scaleZ
Defined in
src/engine/core/entities/Object3D.ts:396
rotationX
• get
rotationX(): number
绕X轴旋转的角度。
Returns
number
Inherited from
Object3D.rotationX
Defined in
src/engine/core/entities/Object3D.ts:420
• set
rotationX(value
): void
设置绕X轴旋转的角度。
Parameters
Name | Type |
---|---|
value | number |
Returns
void
Inherited from
Object3D.rotationX
Defined in
src/engine/core/entities/Object3D.ts:412
rotationY
• get
rotationY(): number
绕Y轴旋转的角度。
Returns
number
Inherited from
Object3D.rotationY
Defined in
src/engine/core/entities/Object3D.ts:436
• set
rotationY(value
): void
设置绕Y轴旋转的角度。
Parameters
Name | Type |
---|---|
value | number |
Returns
void
Inherited from
Object3D.rotationY
Defined in
src/engine/core/entities/Object3D.ts:428
rotationZ
• get
rotationZ(): number
绕Z轴旋转的角度。
Returns
number
Inherited from
Object3D.rotationZ
Defined in
src/engine/core/entities/Object3D.ts:452
• set
rotationZ(value
): void
设置绕Z轴旋转的角度。
Parameters
Name | Type |
---|---|
value | number |
Returns
void
Inherited from
Object3D.rotationZ
Defined in
src/engine/core/entities/Object3D.ts:444
quadMaxCount
• get
quadMaxCount(): number
Returns
number
Defined in
src/engine/gui/core/GUIMesh.ts:23
Methods
getObjectByName
▸ getObjectByName(name
): Entity
从对象本身开始搜索对象及其子对象,并返回第一个具有匹配名称的子对象。 对于大多数对象,默认情况下名称为空字符串。您必须手动设置才能使用此方法。
Parameters
Name | Type | Description |
---|---|---|
name | string | 对象名称 |
Returns
子对象
Inherited from
Defined in
src/engine/core/entities/Entity.ts:95
addChild
▸ addChild(child
): Entity
将对象添加为此对象的子对象。可以添加任意数量的对象。 传递到此处的对象上的任何当前父对象都将被删除,因为一个对象最多只能有一个父对象。
Parameters
Name | Type | Description |
---|---|---|
child | Entity | 待添加的对象 |
Returns
Inherited from
Defined in
src/engine/core/entities/Entity.ts:213
removeChild
▸ removeChild(child
): any
移除对象的子对象。可以移除任意数量的对象。
Parameters
Name | Type | Description |
---|---|---|
child | Entity | 移除的对象 |
Returns
any
Inherited from
Defined in
src/engine/core/entities/Entity.ts:234
removeAllChild
▸ removeAllChild(): void
移除当前对象的所有子对象
Returns
void
Inherited from
Defined in
src/engine/core/entities/Entity.ts:249
removeChildByIndex
▸ removeChildByIndex(index
): void
搜索对象子级,移除带有匹配索引的子对象。
Parameters
Name | Type | Description |
---|---|---|
index | number | 标识该对象实例的索引 |
Returns
void
Inherited from
Defined in
src/engine/core/entities/Entity.ts:261
hasChild
▸ hasChild(child
): boolean
当前对象的子对象中是否包含某一对象
Parameters
Name | Type | Description |
---|---|---|
child | Entity | 指定对象 |
Returns
boolean
是否包含该对象
Inherited from
Defined in
src/engine/core/entities/Entity.ts:275
removeFromParent
▸ removeFromParent(): GUIMesh
将此对象从其当前父对象中删除。
Returns
当前对象
Inherited from
Defined in
src/engine/core/entities/Entity.ts:285
getChildByIndex
▸ getChildByIndex(index
): Entity
搜索对象子级,返回第一个带有匹配索引的子对象。
Parameters
Name | Type | Description |
---|---|---|
index | number | 标识该对象实例的索引 |
Returns
子对象
Inherited from
Defined in
src/engine/core/entities/Entity.ts:299
getChildByName
▸ getChildByName(name
, loopChild?
): any
搜索对象子级,返回一个带有匹配名称的子对象。
Parameters
Name | Type | Default value | Description |
---|---|---|---|
name | string | undefined | 对象名称 |
loopChild | boolean | true | 是否遍历子对象的子级。默认值为true |
Returns
any
子对象
Inherited from
Defined in
src/engine/core/entities/Entity.ts:314
genBounds
▸ genBounds(): IBound
返回一个矩形,该矩形定义指定层的显示区域。
Returns
IBound
Inherited from
Defined in
src/engine/core/entities/Entity.ts:406
forChild
▸ forChild(call
): void
从对象本身开始遍历所有子对象。如果子对象中还有子对象,则递归遍历。
Parameters
Name | Type | Description |
---|---|---|
call | Function | 函数执行体。会将子对象作为参数执行 |
Returns
void
Inherited from
Defined in
src/engine/core/entities/Object3D.ts:39
addComponent
▸ addComponent<T
>(c
, param?
): T
创建新组件并将其添加到对象中,并返回组件的实例。 如果已经存在该类型的组件,则不会添加,并返回null。
Type parameters
Name | Type |
---|---|
T | extends ComponentBase <T > |
Parameters
Name | Type | Description |
---|---|---|
c | Ctor <T > | 组件的类型 |
param? | any | - |
Returns
T
添加的组件
Inherited from
Defined in
src/engine/core/entities/Object3D.ts:52
getOrAddComponent
▸ getOrAddComponent<T
>(c
): T
返回指定类型的组件对象实例,如果没有该类型的组件则创建新组件并将其添加到对象中。
Type parameters
Name | Type |
---|---|
T | extends ComponentBase <T > |
Parameters
Name | Type | Description |
---|---|---|
c | Ctor <T > | 组件类型 |
Returns
T
组件实例
Inherited from
Defined in
src/engine/core/entities/Object3D.ts:71
removeComponent
▸ removeComponent<T
>(c
): void
移除指定类型的组件
Type parameters
Name | Type |
---|---|
T | extends ComponentBase <T > |
Parameters
Name | Type | Description |
---|---|---|
c | Ctor <T > | 组件类型 |
Returns
void
Inherited from
Defined in
src/engine/core/entities/Object3D.ts:84
hasComponent
▸ hasComponent<T
>(c
): boolean
是否有指定类型的组件
Type parameters
Name | Type |
---|---|
T | extends ComponentBase <T > |
Parameters
Name | Type | Description |
---|---|---|
c | Ctor <T > | 组件类型 |
Returns
boolean
返回true存在该类型的组件,返回false不存在该类型的组件
Inherited from
Defined in
src/engine/core/entities/Object3D.ts:98
getComponent
▸ getComponent<T
>(c
): T
返回指定类型的组件对象。
Type parameters
Name | Type |
---|---|
T | extends ComponentBase <T > |
Parameters
Name | Type | Description |
---|---|---|
c | Ctor <T > | 组件类型 |
Returns
T
指定类型的组件对象
Inherited from
Defined in
src/engine/core/entities/Object3D.ts:108
getComponentFromParent
▸ getComponentFromParent<T
>(c
): T
从父节点返回指定类型的组件对象,如果没有该类型的组件则调用父对象的父对象查找
Type parameters
Name | Type |
---|---|
T | extends ComponentBase <T > |
Parameters
Name | Type | Description |
---|---|---|
c | Ctor <T > | 组件类型 |
Returns
T
指定类型的组件对象
Inherited from
Object3D.getComponentFromParent
Defined in
src/engine/core/entities/Object3D.ts:118
getComponentsInChild
▸ getComponentsInChild<T
>(c
): T
[]
返回指定类型的组件对象数组,如果没有该类型的组件则在自身子类对象列表中查找
Type parameters
Name | Type |
---|---|
T | extends ComponentBase <T > |
Parameters
Name | Type | Description |
---|---|---|
c | Ctor <T > | 组件类型 |
Returns
T
[]
指定类型的组件对象
Inherited from
Defined in
src/engine/core/entities/Object3D.ts:137
getComponents
▸ getComponents<T
>(c
, outList?
, includeInactive?
): T
[]
返回当前对象和子对象包含的所有的指定类型的组件,如果子对象还有子对象,则递归查找。
Type parameters
Name | Type |
---|---|
T | extends ComponentBase <T > |
Parameters
Name | Type | Description |
---|---|---|
c | Ctor <T > | 组件类型 |
outList? | T [] | 组件列表 |
includeInactive? | boolean | 是否包含不可见对象,默认为false |
Returns
T
[]
Inherited from
Defined in
src/engine/core/entities/Object3D.ts:159
getComponentsExt
▸ getComponentsExt<T
>(c
, ret?
, includeInactive?
): T
[]
快速获取组件,在某节点获取到了之后,不再访问子节点
Memberof
ELPObject3D
Type parameters
Name | Type |
---|---|
T | extends ComponentBase <T > |
Parameters
Name | Type | Description |
---|---|---|
c | Ctor <T > | |
ret? | T [] | 传入T的list |
includeInactive? | boolean | 是否包含不可见对象,默认为false |
Returns
T
[]
Inherited from
Defined in
src/engine/core/entities/Object3D.ts:185
clone
▸ clone(): Object3D
克隆自身
Returns
Inherited from
Defined in
src/engine/core/entities/Object3D.ts:207
notifyChange
▸ notifyChange(): void
通知变换属性更新
Returns
void
Inherited from
Defined in
src/engine/core/entities/Object3D.ts:295
getWorldPosition
▸ getWorldPosition(target?
): Vector3
Parameters
Name | Type |
---|---|
target? | Vector3 |
Returns
Inherited from
Defined in
src/engine/core/entities/Object3D.ts:468
traverse
▸ traverse(callback
): void
递归子节点
Parameters
Name | Type |
---|---|
callback | (child : any ) => void |
Returns
void
Inherited from
Defined in
src/engine/core/entities/Object3D.ts:480
destroy
▸ destroy(): void
Returns
void
Inherited from
Defined in
src/engine/core/entities/Object3D.ts:491
serialization
▸ serialization(assets
): SerializeObject3D
Parameters
Name | Type |
---|---|
assets | ISerializeAssetsCollect |
Returns
Inherited from
Defined in
src/engine/core/entities/Object3D.ts:495
unSerialize
▸ unSerialize(nodeData
, data
): void
Parameters
Name | Type |
---|---|
nodeData | SerializeObject3D |
data | UnSerializeData |
Returns
void
Inherited from
Defined in
src/engine/core/entities/Object3D.ts:516
showDebugAxis
▸ showDebugAxis(show
): void
Parameters
Name | Type |
---|---|
show | boolean |
Returns
void
Inherited from
Defined in
src/engine/core/entities/Object3D.ts:523
dispatchEvent
▸ dispatchEvent(event
): void
派发一个 Event3D 事件到所有注册了特定类型侦听器的对象中。
Parameters
Name | Type |
---|---|
event | CEvent |
Returns
void
Inherited from
Defined in
src/engine/event/CEventDispatcher.ts:22
addEventListener
▸ addEventListener(type
, callback
, thisObject
, param?
, priority?
): number
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。可以为特定类型的事件和优先级注册事件侦听器。成功注册一个事件侦听器后,无法通过额外调用 addCEventListener() 来更改其优先级。要更改侦听器的优先级,必须首先调用 removeCEventListener()。然后,可以使用新的优先级再次注册该侦听器。
Parameters
Name | Type | Default value | Description |
---|---|---|---|
type | string | number | undefined | {string} 事件的类型标识符。 |
callback | Function | undefined | {Function} 处理事件的侦听器函数。此函数必须接受 Event3D 对象作为其唯一的参数,并且不能返回任何结果, 如下面的示例所示: function(evt:Event3D):void 函数可以有任何名称。 |
thisObject | any | undefined | {any} 当前注册对象。 |
param | any | null | {any} 事件携带参数,默认为空。 |
priority | number | 0 | {number} 事件侦听器的优先级。优先级由一个带符号的 32 位整数指定。数字越大,优先级越高。优先级为 n 的所有侦听器会在 优先级为 n -1 的侦听器之前得到处理。如果两个或更多个侦听器共享相同的优先级,则按照它们的添加顺序进行处理。默认优先级为 0。 |
Returns
number
注册事件位置标识id
Inherited from
Defined in
src/engine/event/CEventDispatcher.ts:77
removeEventListener
▸ removeEventListener(type
, callback
, thisObject
): void
移除事件侦听器。
Parameters
Name | Type | Description |
---|---|---|
type | string | number | {string} 事件名。 |
callback | Function | {Function} 侦听函数。 |
thisObject | any | {any} 当前注册对象。 |
Returns
void
Inherited from
Defined in
src/engine/event/CEventDispatcher.ts:111
removeEventListenerAt
▸ removeEventListenerAt(id
): void
移除事件侦听器。
Parameters
Name | Type | Description |
---|---|---|
id | number | 事件id,调用addCEventListener的返回值即为事件id. |
Returns
void
Inherited from
Object3D.removeEventListenerAt
Defined in
src/engine/event/CEventDispatcher.ts:130
removeAllEventListener
▸ removeAllEventListener(eventType?
): void
移除指定类型的事件侦听器。 eventType 不指定类型 则移除所有的事件
Parameters
Name | Type | Default value |
---|---|---|
eventType | string | number | null |
Returns
void
Inherited from
Object3D.removeAllEventListener
Defined in
src/engine/event/CEventDispatcher.ts:149
containEventListener
▸ containEventListener(type
): boolean
检测是否存在监听器。
Parameters
Name | Type | Description |
---|---|---|
type | string | {string} 事件类型标识符 |
Returns
boolean
是否存在该类型监视器,true为存在,反之不存在。
Inherited from
Defined in
src/engine/event/CEventDispatcher.ts:181
hasEventListener
▸ hasEventListener(type
, callback?
, thisObject?
): boolean
检测是否存在监听器。
Parameters
Name | Type | Default value | Description |
---|---|---|---|
type | string | number | undefined | {string} 事件名 |
callback | Function | null | {Function} 处理事件的侦听器函数 |
thisObject | any | null | {any} 注册对象。 |
Returns
boolean
是否存在该事件,true为存在,反之不存在。
Inherited from
Defined in
src/engine/event/CEventDispatcher.ts:194
setTextures
▸ setTextures(textures
): void
Parameters
Name | Type |
---|---|
textures | Texture [] |
Returns
void
Defined in
src/engine/gui/core/GUIMesh.ts:42
sortIndex
▸ sortIndex(z
): void
Parameters
Name | Type |
---|---|
z | number |
Returns
void
Defined in
src/engine/gui/core/GUIMesh.ts:46
updateGUIData
▸ updateGUIData(screenWidth
, screenHeight
, camera
): void
Parameters
Name | Type |
---|---|
screenWidth | number |
screenHeight | number |
camera | Camera3D |
Returns
void
Defined in
src/engine/gui/core/GUIMesh.ts:50
Constructors
constructor
• new GUIMesh(space
)
Parameters
Name | Type |
---|---|
space | GUISpace |