new RelationshipComponent()
关系组件,用于管理对象间的关系。
Extends
Members
-
active :boolean
-
激活或停用组件。
- Overrides:
-
app :THING.App
-
获取应用程序。
- Overrides:
-
object :THING.BaseObject
-
获取对象。
- Overrides:
-
onActiveChange :OnActiveChangeComponentCallback
-
活动状态改变时的回调函数。
- Overrides:
-
onAfterAdd :OnAfterAddComponentCallback
-
添加之后。
- Overrides:
-
onAfterAddChild :OnAddChildComponentCallback
-
添加子对象之后的回调函数。
- Overrides:
-
onAfterRemove :OnAfterRemoveComponentCallback
-
移除之后。
- Overrides:
-
onAfterRemoveChild :OnRemoveChildComponentCallback
-
移除子对象之后的回调函数。
- Overrides:
-
onBeforeAdd :OnBeforeAddComponentCallback
-
添加之前。
- Overrides:
-
onBeforeAddChild :OnAddChildComponentCallback
-
添加子对象之前的回调函数。
- Overrides:
-
onBeforeRemove :OnBeforeRemoveComponentCallback
-
移除之前。
- Overrides:
-
onBeforeRemoveChild :OnRemoveChildComponentCallback
-
移除子对象之前的回调函数。
- Overrides:
-
onCopy :OnCopyComponentCallback
-
复制时的回调函数。
- Overrides:
-
onExport :OnExportComponentCallback
-
导出数据时。
- Overrides:
-
onImport :OnImportComponentCallback
-
导入数据时。
- Overrides:
-
onInit :OnInitComponentCallback
-
初始化时的回调函数。
- Overrides:
-
onLoadResource :OnLoadResourceComponentCallback
-
加载资源时的回调函数。
- Overrides:
-
onParentChange :OnParentChangeComponentCallback
-
改变父对象时的回调函数。
- Overrides:
-
onRefresh :OnRefreshComponentCallback
-
刷新时的回调函数。
- Overrides:
-
onResize :OnResizeComponentCallback
-
调整大小时的回调函数。
- Overrides:
-
onUnloadResource :OnUnloadResourceComponentCallback
-
卸载资源时的回调函数。
- Overrides:
-
onUpdate :OnUpdateComponentCallback
-
更新时的回调函数。
- Overrides:
-
onVisibleChange :OnVisibleChangeComponentCallback
-
可见性改变时的回调函数。
- Overrides:
Methods
-
onAdd(object)
-
当添加组件时。
Parameters:
Name Type Description objectTHING.BaseObject 对象。 - Overrides:
-
onRemove()
-
当移除组件时。
- Overrides:
-
query(options) → {THING.Selector}
-
通过关系查询相关对象。
Parameters:
Name Type Description optionsobject Properties
Name Type Description typestring 关系的类型。 namestring 关系的名称。 queryDirectionRelationshipDirection 查询方向。 Returns:
THING.SelectorExample
let source = new THING.Object3D(); let target = new THING.Object3D(); let rel = new THING.Relationship({ type: 'control', source, target }) let result = source.relationship.query({type: 'control'}); // @expect(result[0] == target) -
queryByName(name, queryDirection) → {THING.Selector}
-
通过关系名称查询相关对象。
Parameters:
Name Type Description namestring 关系的名称。 queryDirectionRelationshipDirection 查询方向。 Returns:
THING.SelectorExample
let source = new THING.Object3D(); let target = new THING.Object3D(); let rel = new THING.Relationship({ name: 'myControl', type: 'control', source, target }) let result = source.relationship.queryByName('myControl'); // @expect(result[0] == target) -
queryByType(type, queryDirection) → {THING.Selector}
-
通过关系类型查询相关对象。
Parameters:
Name Type Description typestring 关系的类型。 queryDirectionRelationshipDirection 查询方向。 Returns:
THING.SelectorExample
let source = new THING.Object3D(); let target = new THING.Object3D(); let rel = new THING.Relationship({ type: 'control', source, target }) let result = source.relationship.queryByType('control'); // @expect(result[0] == target)