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

M3D / M3D / Render / ModelTreeNodeStruct

Class: ModelTreeNodeStruct

M3D.Render.ModelTreeNodeStruct

Memberof

M3D.Render

Implements

NodesStruct

Description

Model对应得渲染树节点,包含实例、透明、边界线、面

Author

ss

Hierarchy

Implements

Table of contents

Constructors

Properties

Methods

Constructors

constructor

new ModelTreeNodeStruct(): ModelTreeNodeStruct

Returns

ModelTreeNodeStruct

Description

构造函数

new ModelTreeNodeStruct(model, renderTrees): ModelTreeNodeStruct

Parameters

NameType
modelModel
renderTreesRenderTrees

Returns

ModelTreeNodeStruct

Description

构造函数

Properties

defaultMaterial

Static defaultMaterial: Material

Methods

getAllFaceTrenderTreeNodes

getAllFaceTrenderTreeNodes(lodlevel?): RenderTreeNode[]

Parameters

NameType
lodlevel?number

Returns

RenderTreeNode[]

Description

获取所有面的节点


getAllNodes

getAllNodes(lodlevel?): RenderTreeNode[]

Parameters

NameType
lodlevel?number

Returns

RenderTreeNode[]

Description

获取所有节点


getEdgeNode

getEdgeNode(lodlevel): RenderTreeNode[]

Parameters

NameType
lodlevelnumber

Returns

RenderTreeNode[]

Description

获取边界线对应节点

getEdgeNode(lodlevel, edge): RenderTreeNode

Parameters

NameType
lodlevelnumber
edgeEdge

Returns

RenderTreeNode

Description

获取边界线对应节点


getEdgeRenderTreeNodes

getEdgeRenderTreeNodes(): RenderTreeNode[]

Returns

RenderTreeNode[]

Description

获取边界线节点


getEffectNodeMap

getEffectNodeMap(): Map<Effect, RenderTreeNode[] | Map<boolean, RenderTreeNode[]>>

Returns

Map<Effect, RenderTreeNode[] | Map<boolean, RenderTreeNode[]>>

Description

获取效果节点Map


getEffectNodes

getEffectNodes(effectType?): RenderTreeNode[] | Map<number, RenderTreeNode[]>

Parameters

NameType
effectType?number

Returns

RenderTreeNode[] | Map<number, RenderTreeNode[]>

Deprecated

Description

获取效果Map


getEffectType

getEffectType(): number

Returns

number

Deprecated

Description

获取效果类型


getFaceNode

getFaceNode(face): RenderTreeNode

Parameters

NameType
faceFace

Returns

RenderTreeNode

Description

获取面对应节点


getIsDraggerModel

getIsDraggerModel(): boolean

Returns

boolean

Description

获取是否为拖拽器模型


getIsMergeModel

getIsMergeModel(): boolean

Returns

boolean

Description

获取是否为跨模型合批模型


getIsUpdateEdge

getIsUpdateEdge(): boolean

Returns

boolean

Description

获取是否需要更新边界线


getIsUpdateMaterial

getIsUpdateMaterial(): boolean

Returns

boolean

Description

获取是否需要更新模型材质


getIsUpdateVisible

getIsUpdateVisible(): boolean

Returns

boolean

Description

获取是否需要更新模型可见性


getJewelFaceRenderTreeNodes

getJewelFaceRenderTreeNodes(lodlevel?): RenderTreeNode[]

Parameters

NameType
lodlevel?number

Returns

RenderTreeNode[]

Description

获取珠宝材质节点


getModel

getModel(): Model

Returns

Model

Description

获取模型对象


getNonTransparentFaceRenderTreeNodes

getNonTransparentFaceRenderTreeNodes(lodlevel?): RenderTreeNode[]

Parameters

NameType
lodlevel?number

Returns

RenderTreeNode[]

Description

获取非透明节点


getTransparentFaceRenderTreeNodes

getTransparentFaceRenderTreeNodes(lodlevel?): RenderTreeNode[]

Parameters

NameType
lodlevel?number

Returns

RenderTreeNode[]

Description

获取透明节点


getTriangleEdgeNode

getTriangleEdgeNode(lodlevel?): RenderTreeNode[]

Parameters

NameType
lodlevel?number

Returns

RenderTreeNode[]

Description

获取三角网格对应节点


hasLODNode

hasLODNode(lodLevel): boolean

Parameters

NameType
lodLevelnumber

Returns

boolean

Description

判断当前lod等级节点数据是否生成


hasLODTriangleNode

hasLODTriangleNode(lodLevel): boolean

Parameters

NameType
lodLevelnumber

Returns

boolean

Description

获取当前等级是否有三角网格对应节点


setEffectNode

setEffectNode(mergetNodeStruct, node, currentEffect, oldEffect): void

Parameters

NameType
mergetNodeStructDrawStruct
nodeEffectNode
currentEffectMap<EffectType, Effect[]>
oldEffectMap<EffectType, Effect>

Returns

void

Description

更新设置节点效果(1.移除原有效果,数据合并,2.添加新效果,数据拆分)


setEffectType

setEffectType(effectType): void

Parameters

NameType
effectTypenumber

Returns

void

Deprecated

Description

设置效果类型


setIsDraggerModel

setIsDraggerModel(val): void

Parameters

NameType
valboolean

Returns

void

Description

设置是否为拖拽器模型


setIsMergeModel

setIsMergeModel(isMerge): void

Parameters

NameType
isMergeboolean

Returns

void

Description

设置是否为跨模型合批模型


setIsUpdateEdge

setIsUpdateEdge(val): void

Parameters

NameType
valboolean

Returns

void

Description

设置是否需要更新边界线


setIsUpdateMaterial

setIsUpdateMaterial(val): void

Parameters

NameType
valboolean

Returns

void

Description

设置是否需要更新模型材质


setIsUpdateVisible

setIsUpdateVisible(val): void

Parameters

NameType
valboolean

Returns

void

Description

设置是否需要更新模型可见性


setModel

setModel(model): void

Parameters

NameType
modelModel

Returns

void

Description

设置模型对象


updateEffect

updateEffect(shape): any

Parameters

NameType
shapeEdge

Returns

any

Description

边界线选中效果更新

Implementation of

NodesStruct.updateEffect

updateEffect(shape): any

Parameters

NameType
shapeFace

Returns

any

Description

面选中效果更新

Implementation of

NodesStruct.updateEffect

updateEffect(shape): any

Parameters

NameType
shapeBody

Returns

any

Implementation of

NodesStruct.updateEffect

updateEffect(shape): any

Parameters

NameType
shapeModel

Returns

any

Description

模型选中效果更新

Implementation of

NodesStruct.updateEffect


updateLODNode

updateLODNode(lodlevel, updateFace?, updateEdge?): boolean

Parameters

NameType
lodlevelnumber
updateFace?boolean
updateEdge?boolean

Returns

boolean

Description

更新LOD节点


updateLODTriangleNode

updateLODTriangleNode(lodlevel): boolean

Parameters

NameType
lodlevelnumber

Returns

boolean

Description

判断是否需要更新当前LOD对应三角网格节点


updateNodes

updateNodes(model, lodlevel): any

Parameters

NameType
modelModel
lodlevelnumber

Returns

any

Description

更新模型关联节点

Implementation of

NodesStruct.updateNodes


updateVisiable

updateVisiable(models): void

Parameters

NameType
modelsShape[]

Returns

void