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

M3D / M3D / Render / BatchRenderTree

Class: BatchRenderTree

M3D.Render.BatchRenderTree

Memberof

M3D.Render

Description

合批渲染树

Author

ss

Date

2022-9-13

Version

1.0

Hierarchy

Table of contents

Constructors

Properties

Methods

Constructors

constructor

new BatchRenderTree(camera?, lights?, jsonFile?): BatchRenderTree

Parameters

NameType
camera?Camera
lights?any
jsonFile?string

Returns

BatchRenderTree

Description

构造函数

Overrides

RenderTree.constructor

Properties

id

id: number

Inherited from

RenderTree.id


renderContext

renderContext: RenderContext


resources

resources: Resources


vertexSets

vertexSets: VertexSets


count

Static count: number

Inherited from

RenderTree.count

Methods

addNode

addNode(...paras): boolean

Parameters

NameType
...parasany[]

Returns

boolean

Description

添加节点

Overrides

RenderTree.addNode


clear

clear(): void

Returns

void

Description

数据清空


clone

clone(): RenderTree

Returns

RenderTree

Description

克隆树


destroy

destroy(): void

Returns

void

Description

清理树


findNode

findNode(nodeType): any

Parameters

NameType
nodeTypeNodeType

Returns

any

Descritption

查找节点

Overrides

RenderTree.findNode


getAllSameTypeNodes

getAllSameTypeNodes(node, type, retNodes): RenderTreeNode[]

Parameters

NameType
nodeRenderTreeNode
typeNodeType
retNodesRenderTreeNode[]

Returns

RenderTreeNode[]

Description

获取所有相同类型树节点

getAllSameTypeNodes(renderTree, type): RenderTreeNode[]

Parameters

NameType
renderTreeRenderTree
typeNodeType

Returns

RenderTreeNode[]

Description

获取所有相同类型树节点


getEvents

getEvents(): M3DEvent[]

Returns

M3DEvent[]

Description

获得事件列表

Inherited from

RenderTree.getEvents


getId

getId(): number

Returns

number

Description

获取id

Inherited from

RenderTree.getId


getNodeByType

getNodeByType(targetNode, type): RenderTreeNode

Parameters

NameType
targetNodeRenderTreeNode
typeNodeType

Returns

RenderTreeNode

Description

查询指定节点下某类型节点

getNodeByType(renderTree, type): RenderTreeNode

Parameters

NameType
renderTreeRenderTree
typeNodeType

Returns

RenderTreeNode

Description

查询指定树中某类型节点


getNoteNode

getNoteNode(): RenderTreeNode

Returns

RenderTreeNode

Description

获取note节点


getRenderInfo

getRenderInfo(): RenderInfo

Returns

RenderInfo

Description

获取渲染信息

Inherited from

RenderTree.getRenderInfo


getRootNode

getRootNode(): RenderTreeNode

Returns

RenderTreeNode

Description

获取根节点

Overrides

RenderTree.getRootNode


getSpecificNodeByType

getSpecificNodeByType(targetNode, type, num): RenderTreeNode

Parameters

NameType
targetNodeRenderTreeNode
typeNodeType
numnumber[]

Returns

RenderTreeNode

Description

查询指定节点下第n个某类型节点

getSpecificNodeByType(renderTree, type, num): RenderTreeNode

Parameters

NameType
renderTreeRenderTree
typeNodeType
numnumber[]

Returns

RenderTreeNode

Description

查询指定节点下第n个某类型节点


initTree

initTree(jsonFile, camera, lights): any

Parameters

NameType
jsonFilestring
cameraCamera
lightsany

Returns

any

Description

根据json文件格式初始化渲染树

initTree(camera, lights): any

Parameters

NameType
cameraCamera
lightsany

Returns

any

Description

初始化默认的渲染树 _ BackgroundNode |_ SolidNode cameraNode______|_ NonSolidNode |... | Helper root-|... |... |_...


insertNode

insertNode(...paras): boolean

Parameters

NameType
...parasany[]

Returns

boolean

Description

插入节点

Overrides

RenderTree.insertNode


insertShapes

insertShapes(viewport, renderTrees, shapeMap): boolean

Parameters

NameType
viewportViewport
renderTreesRenderTrees
shapeMapMap<ShapeType, Shape[]>

Returns

boolean

Description

构建渲染树逻辑

Overrides

RenderTree.insertShapes


isEnable

isEnable(): boolean

Returns

boolean

Description

获取树是否可用状态


isPrepared

isPrepared(): boolean

Returns

boolean

Description

获取树是否准备好

Overrides

RenderTree.isPrepared


print

print(): void

Returns

void

Description

打印树


registerEvent

registerEvent(event): void

Parameters

NameTypeDescription
eventM3DEventM3D事件

Returns

void

Description

注册事件

Inherited from

RenderTree.registerEvent


removeEvent

removeEvent(): void

Returns

void

Description

删除事件

Inherited from

RenderTree.removeEvent


removeNode

removeNode(...paras): boolean

Parameters

NameType
...parasany[]

Returns

boolean

Description

删除节点

Overrides

RenderTree.removeNode


setEnable

setEnable(state): void

Parameters

NameType
stateboolean

Returns

void

Description

设置树是否可用状态


setId

setId(v): void

Parameters

NameTypeDescription
vnumberShapeId

Returns

void

Description

设置id

Inherited from

RenderTree.setId


setPrepared

setPrepared(state): void

Parameters

NameType
stateboolean

Returns

void

Description

设置树准备状态

Overrides

RenderTree.setPrepared


setRenderInfo

setRenderInfo(renderInfo): void

Parameters

NameType
renderInfoRenderInfo

Returns

void

Description

设置渲染信息

Inherited from

RenderTree.setRenderInfo


setRootNode

setRootNode(rootNode): void

Parameters

NameType
rootNodeRenderTreeNode

Returns

void

Description

设置根节点


processChangedData

processChangedData(renderTrees, viewport, ...paras): void

Parameters

NameType
renderTreesRenderTrees
viewportMap<RenderContext, Viewport[]>
...parasany[]

Returns

void

Description

更新Shape对象对应的Node

Overrides

RenderTree.processChangedData


updateNoteNodeVBO

updateNoteNodeVBO(gpuObject, contexts, nodes): void

Parameters

NameType
gpuObjectGPUObjects
contextsRenderContext[]
nodesPrimitiveNode[]

Returns

void

Description

更新批注节点VBO