跳到主要内容
版本:v10.0

M3D / M3D / Render / RenderTrees

Class: RenderTrees

M3D.Render.RenderTrees

Memberof

M3D.Render

Implements

Utility.Subscriber

Description

渲染树管理类

Author

ss

Implements

Table of contents

Constructors

Methods

Constructors

constructor

new RenderTrees(render): RenderTrees

Parameters

NameType
renderRender

Returns

RenderTrees

Description

构造函数

Methods

addTreeNode

addTreeNode(shape, struct): any

Parameters

NameType
shapeShape
structNodesStruct

Returns

any

Description

添加树节点

addTreeNode(shape, nodes): any

Parameters

NameType
shapeShape
nodesRenderTreeNode[]

Returns

any


clear

clear(): void

Returns

void

Description

数据清空


getBoundingBoxNode

getBoundingBoxNode(viewport): PrimitiveNode

Parameters

NameType
viewportViewport

Returns

PrimitiveNode

Description

获取包围盒节点


getRender

getRender(): Render

Returns

Render

Description

获取Render对象


getRenderTree

getRenderTree(viewport): RenderTree

Parameters

NameType
viewportViewport

Returns

RenderTree

Description

获取渲染树


getRenderableShapeNodes

getRenderableShapeNodes(shape): RenderTreeNode

Parameters

NameType
shapeRenderableShape

Returns

RenderTreeNode

Description

获取渲染对象对应节点


getSectionsStruct

getSectionsStruct(): SectionsTreeNodeStruct

Returns

SectionsTreeNodeStruct

Description

获取剖切对应Struct


getTreeNode

getTreeNode(model): NodesStruct

Parameters

NameType
modelModel

Returns

NodesStruct

Description

获取节点

getTreeNode(shape): RenderTreeNode[]

Parameters

NameType
shapeShape

Returns

RenderTreeNode[]

Description

获取节点


getUpdateTreeNode

getUpdateTreeNode(): Map<any, any>

Returns

Map<any, any>

Description

获取需要更新的节点


processChangedData

processChangedData(mapUpdateShapes): void

Parameters

NameType
mapUpdateShapesMap<Shape, number>

Returns

void

Description

更新需要更新的数据


removeTreeNode

removeTreeNode(shape): boolean

Parameters

NameType
shapeShape[]

Returns

boolean

Description

删除渲染树节点

removeTreeNode(shape): boolean

Parameters

NameType
shapeShape

Returns

boolean

Description

删除渲染树节点

removeTreeNode(shape): boolean

Parameters

NameType
shapeRenderTreeNode

Returns

boolean

Description

删除渲染树节点


setRender

setRender(render): void

Parameters

NameType
renderRender

Returns

void

Description

设置Render对象


setRenderableShapeNode

setRenderableShapeNode(shape, renderTreeNode): void

Parameters

NameType
shapeRenderableShape
renderTreeNodeRenderTreeNode

Returns

void

Description

设置渲染对象对应节点


setUpdateNode

setUpdateNode(shape, renderTreeNodes, context): void

Parameters

NameType
shapeany
renderTreeNodesRenderTreeNode[]
contextRenderContext[]

Returns

void

Description

根据Shape对象获取Node集合


update

update(msg): void

Parameters

NameType
msgM3DMessage

Returns

void

Description

监听消息

Implementation of

Subscriber.update


updateTreeInfo

updateTreeInfo(viewport): void

Parameters

NameType
viewportViewport

Returns

void

Description

更新渲染树信息


cancelRenderTree

cancelRenderTree(treeClass, viewport?): void

Parameters

NameType
treeClassany
viewport?Viewport

Returns

void

Description

注销渲染树


createRenderTree

createRenderTree(viewport): RenderTree

Parameters

NameType
viewportViewport

Returns

RenderTree

Description

外部初始化渲染树,外部可重写改方法


registerRenderTree

registerRenderTree(viewport, treeClass): void

Parameters

NameType
viewportViewport
treeClassany

Returns

void

Description

注册渲染树,所有RenderTree的基类都需要创建