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

M3D / M3D / Reader / SvlxReader

Class: SvlxReader

M3D.Reader.SvlxReader

Description

svlx读取类,读取各个文件包含内容,返回对应M3D对象 *@memberof SView.Reader

Author

YW

Date

2022-1-17

Version

1.0

Copyright

All Rights Reserved. Copyright (C) 2022 HOTEAMSOFT, Ltd

Hierarchy

Table of contents

Constructors

Properties

Methods

Constructors

constructor

new SvlxReader(options?): SvlxReader

Parameters

NameTypeDescription
options?any可选参数

Returns

SvlxReader

Description

构造函数

Overrides

Reader.constructor

Properties

center

center: M3DMessageCenter

Inherited from

Reader.center


id

id: number

Inherited from

Reader.id


parseMap

parseMap: Map<any, any>

Inherited from

Reader.parseMap


count

Static count: number

Inherited from

Reader.count

Methods

addFile

addFile(file): void

Parameters

NameTypeDescription
fileany文件

Returns

void

Description

添加文件

Inherited from

Reader.addFile


cancel

cancel(): void

Returns

void

Description

取消接口


cancle

cancle(): void

Returns

void

Description

设置取消

Inherited from

Reader.cancle


getAnimation

getAnimation(): Promise<Map<string, string>>

Returns

Promise<Map<string, string>>

动画数据字符串

Description

获取动画数据,数据格式为xml字符串

Overrides

Reader.getAnimation


getAnimationRes

getAnimationRes(): Promise<Map<string, ArrayBuffer>>

Returns

Promise<Map<string, ArrayBuffer>>

动画关联资源数据ArrayBuffer

Description

获取动画关联资源数据

Overrides

Reader.getAnimationRes


getAnnotation

getAnnotation(annotationId): Promise<Annotation>

Parameters

NameTypeDescription
annotationIdnumber批注Id

Returns

Promise<Annotation>

Annotation 批注对象

Description

根据id获取单个批注对象


getAnnotations

getAnnotations(): Promise<Map<number, Annotation>>

Returns

Promise<Map<number, Annotation>>

批注对象 Map

Description

获取所有批注对象的Map

Overrides

Reader.getAnnotations


getAttribute

getAttribute(model): Promise<Map<string, Object>>

Parameters

NameTypeDescription
modelModel模型

Returns

Promise<Map<string, Object>>

属性集(异步)

Description

获取指定model对应的属性

Overrides

Reader.getAttribute


getCenter

getCenter(): M3DMessageCenter

Returns

M3DMessageCenter

Description

获得消息中心

Inherited from

Reader.getCenter


getDecals

getDecals(): Promise<Map<number, Decal>>

Returns

Promise<Map<number, Decal>>

贴图map

Description

获取所有贴图

Overrides

Reader.getDecals


getEdges

getEdges(proto, shapeType, geoType, meshArray?): Promise<Map<number, []>>

Parameters

NameTypeDescription
protoModel模型
shapeTypeShapeType-
geoTypeGeoFeatureEnum模型 未使用
meshArray?ArrayBuffermesh数据 可选参数

Returns

Promise<Map<number, []>>

Description

获取原型下当前等级LOD所有边对象

Overrides

Reader.getEdges


getEntities

getEntities(propertyType): Promise<Map<number, M3DObject>>

Parameters

NameTypeDescription
propertyTypeEntityType数据类型

Returns

Promise<Map<number, M3DObject>>

Description

获取所有指定类型的数据对象, 如:info、material、modelview


getEntitiesFile

getEntitiesFile(propertyType): string

Parameters

NameTypeDescription
propertyTypeEntityType实体类型

Returns

string

数据文件字符串

Description

获取所有指定类型的数据文件


getEvents

getEvents(): M3DEvent[]

Returns

M3DEvent[]

Description

获得事件列表

Inherited from

Reader.getEvents


getFaces

getFaces(proto, meshArray?): Promise<any>

Parameters

NameTypeDescription
protoModel模型
meshArray?ArrayBuffer可选参数

Returns

Promise<any>

Description

获取原型下当前等级LOD所有面对象


getFile

getFile(): File

Returns

File

Description

获取模型文件

Inherited from

Reader.getFile


getFileId

getFileId(): string

Returns

string

Description

获取模型对应的唯一标识

Inherited from

Reader.getFileId


getGeometries

getGeometries(): Promise<Map<number, Shape>>

Returns

Promise<Map<number, Shape>>

Description

获取所有的几何数据

Overrides

Reader.getGeometries


getGeometryFeature

getGeometryFeature(shape): GeometryFeature | Map<number, GeometryFeature>[]

Parameters

NameTypeDescription
shapeShape可见对象

Returns

GeometryFeature | Map<number, GeometryFeature>[]

几何特征对象或几何特征Map数组

Description

获取几何特征

Overrides

Reader.getGeometryFeature


getGeometryFeatures

getGeometryFeatures(): Promise<Map<number, Map<number, GeometryFeature>[]>>

Returns

Promise<Map<number, Map<number, GeometryFeature>[]>>

Description

获取所有几何属性

Overrides

Reader.getGeometryFeatures


getGroups

getGroups(): Promise<Map<number, Group>>

Returns

Promise<Map<number, Group>>

Description

获取所有组的数组

Overrides

Reader.getGroups


getHotSpot

getHotSpot(hotSpotId): Promise<HotSpot>

Parameters

NameTypeDescription
hotSpotIdnumber热点Id

Returns

Promise<HotSpot>

热点对象

Description

通过热点Id获取热点对象


getHotSpots

getHotSpots(): Promise<Map<number, HotSpot>>

Returns

Promise<Map<number, HotSpot>>

热点Map

Description

获取所有热点对象的Map

Overrides

Reader.getHotSpots


getHotspotRes

getHotspotRes(): Promise<Map<string, ArrayBuffer>>

Returns

Promise<Map<string, ArrayBuffer>>

热点关联资源数据ArrayBuffer

Description

获取热点关联资源数据

Overrides

Reader.getHotspotRes


getId

getId(): number

Returns

number

Description

获取id

Inherited from

Reader.getId


getImages

getImages(): Promise<Map<number, Image>>

Returns

Promise<Map<number, Image>>

视图对象图章Map

Description

获取所有图章对象的Map

Overrides

Reader.getImages


getLocalModelViewContent

getLocalModelViewContent(modelViewId): Promise<ModelView>

Parameters

NameTypeDescription
modelViewIdnumber视图id

Returns

Promise<ModelView>

视图对象 包含视图播放所需所有数据

Description

根据视图id获取本地视图详细数据


getMaterialById

getMaterialById(materialId): BaseMaterial

Parameters

NameTypeDescription
materialIdnumber材质id

Returns

BaseMaterial

基本材质类

Description

通过材质id获取材质对象


getMaterials

getMaterials(): Promise<Map<number, BaseMaterial>>

Returns

Promise<Map<number, BaseMaterial>>

材质对象Map

Description

获取所有材质对象的Map

Overrides

Reader.getMaterials


getMaxObjectId

getMaxObjectId(): number

Returns

number

Description

获取最大的id


getMeasure

getMeasure(measureId): Promise<Measure>

Parameters

NameTypeDescription
measureIdnumber测量Id

Returns

Promise<Measure>

Measure 测量对象

Description

根据id获取单个测量对象


getMeasures

getMeasures(): Promise<Map<number, Measure>>

Returns

Promise<Map<number, Measure>>

测量对象Map

Description

获取所有测量对象的Map

Overrides

Reader.getMeasures


getMesh

getMesh(lodData): Promise<boolean>

Parameters

NameType
lodDataany

Returns

Promise<boolean>

异步返回是否加载成功

Description

获取mesh数据

Overrides

Reader.getMesh


getMesh_1

getMesh_1(model?, offset?): Promise<boolean>

Parameters

NameTypeDefault valueDescription
model?Modelundefined
offsetnumber0未使用 可选参数,默认值为0

Returns

Promise<boolean>

异步返回是否加载成功

Description

获取mesh数据


getModelBoard

getModelBoard(modelBoardId): Promise<ModelBoard>

Parameters

NameType
modelBoardIdnumber

Returns

Promise<ModelBoard>

Description

根据id获取单个看板对象


getModelBoards

getModelBoards(): Promise<Map<number, ModelBoard>>

Returns

Promise<Map<number, ModelBoard>>

看板对象的Map

Description

获取所有看板对象的Map

Overrides

Reader.getModelBoards


getModelProperties

getModelProperties(): Promise<Map<string, Object>>

Returns

Promise<Map<string, Object>>

字符串Map

Description

获取.model文件中的instances属性

Overrides

Reader.getModelProperties

getModelProperties(insID): Promise<Map<string, Object>>

Parameters

NameType
insIDnumber

Returns

Promise<Map<string, Object>>

Description

获取模型属性

Overrides

Reader.getModelProperties


getModelViewContent

getModelViewContent(modelView): Promise<ModelView>

Parameters

NameType
modelViewModelView

Returns

Promise<ModelView>

Description

获取指定视图的详细内容

Overrides

Reader.getModelViewContent


getModelViewList

getModelViewList(): Promise<Map<number, ModelView>>

Returns

Promise<Map<number, ModelView>>

视图对象仅包含列表显示数据

Description

获取所有视图列表数组

Overrides

Reader.getModelViewList


getModels

getModels(): Promise<Map<number, Model>>

Returns

Promise<Map<number, Model>>

模型Map

Description

获取模型接口

Overrides

Reader.getModels


getPMIs

getPMIs(): Promise<Map<number, PMI>>

Returns

Promise<Map<number, PMI>>

Description

获取PMI

Overrides

Reader.getPMIs


getParentModel

getParentModel(): Model

Returns

Model

Description

获取父级模型

Inherited from

Reader.getParentModel


getProtoProperties

getProtoProperties(): Promise<Map<string, Object>>

Returns

Promise<Map<string, Object>>

字符串Map

Description

读取.model文件中的models属性

Overrides

Reader.getProtoProperties

getProtoProperties(protoID): Promise<Map<string, Object>>

Parameters

NameType
protoIDnumber

Returns

Promise<Map<string, Object>>

Description

获取原始属性

Overrides

Reader.getProtoProperties


getProtos

getProtos(): Promise<Map<number, Model>>

Returns

Promise<Map<number, Model>>

模型Map

Description

获取所有原型对象,M3D.Proto的Map,key:protoId

Overrides

Reader.getProtos


getScene

getScene(): Scene

Returns

Scene

Description

获取场景

Inherited from

Reader.getScene


getSection

getSection(sectionId): Promise<Section>

Parameters

NameTypeDescription
sectionIdnumber剖切面id

Returns

Promise<Section>

剖切面对象

Description

通过剖切面id剖切面对象


getSections

getSections(): Promise<Map<number, Section>>

Returns

Promise<Map<number, Section>>

key:剖切面的Id;value:剖切面对象

Description

获取所有剖切面的Map

Overrides

Reader.getSections


getServerModelViewContent

getServerModelViewContent(modelView): Promise<ModelView>

Parameters

NameTypeDescription
modelViewModelView视图对象

Returns

Promise<ModelView>

视图对象

Description

获取在线视图内容


getServerModelViewList

getServerModelViewList(): Promise<Map<number, ModelView>>

Returns

Promise<Map<number, ModelView>>

Description

获取在线视图列表


getShapes

getShapes(shapeType): Promise<Map<number, Shape>>

Parameters

NameTypeDescription
shapeTypeShapeTypeShape对象类型

Returns

Promise<Map<number, Shape>>

Description

获取指定类型的Shape对象的集合


getShapesFile

getShapesFile(shapeType): string

Parameters

NameTypeDescription
shapeTypeShapeTypeShape对象类型

Returns

string

数据字符串

Description

获取所有指定类型的Shape对象的数据,如pmi/measure/modelboard/annotation等


getSignRes

getSignRes(): Promise<Map<string, ArrayBuffer>>

Returns

Promise<Map<string, ArrayBuffer>>

图章关联数据ArrayBuffer

Description

获取图章关联资源数据

Overrides

Reader.getSignRes


getThreeDGesture

getThreeDGesture(threeDGesturesId): Promise<ThreeDGesturesNote>

Parameters

NameTypeDescription
threeDGesturesIdnumber手绘批注Id

Returns

Promise<ThreeDGesturesNote>

手绘批注对象

Description

根据id获取单个手绘批注对象(手绘批注来源:.measure文件)


getThreeDGestures

getThreeDGestures(): Promise<Map<number, ThreeDGesturesNote>>

Returns

Promise<Map<number, ThreeDGesturesNote>>

手绘批注对象Map

Description

获取所有手绘批注对象的Map

Overrides

Reader.getThreeDGestures


getTopModel

getTopModel(): Promise<Model>

Returns

Promise<Model>

模型

Description

获取顶级装配

Overrides

Reader.getTopModel

getTopModel(needParseData): Model

Parameters

NameTypeDescription
needParseDataboolean是否解析数据,不需要解析时直接返回当前topModel对象;

Returns

Model

模型

Description

获取顶级装配

Overrides

Reader.getTopModel


getUrl

getUrl(): string

Returns

string

Description

获取模型路径

Inherited from

Reader.getUrl


isCancle

isCancle(): boolean

Returns

boolean

Description

获取是否取消

Inherited from

Reader.isCancle


isJson

isJson(name, content): string | [boolean, any]

Parameters

NameTypeDescription
namestring文件名
contentany文件内容

Returns

string | [boolean, any]

是否是JSON 1.是JSON数据,返回对应数组[true , JSON对象];2.出错则返回出错信息 ;3.返回null

Description

判断数据是否为json


load

load(): Promise<Reader>

Returns

Promise<Reader>

读取类

Description

加载接口

Overrides

Reader.load

load(filePath): Promise<Reader>

Parameters

NameTypeDescription
filePathstring文件路径

Returns

Promise<Reader>

读取类

Description

加载接口,

Overrides

Reader.load

load(fileBuffer): Promise<Reader>

Parameters

NameTypeDescription
fileBufferArrayBuffer模型二进制文件

Returns

Promise<Reader>

读取类

Description

加载接口

Overrides

Reader.load


onBegin

onBegin(sign, fun): void

Parameters

NameTypeDescription
signstring标识,svlx路径或fileid
funstring开始的过程或方法

Returns

void

Description

读取开始事件

Inherited from

Reader.onBegin


onCancel

onCancel(sign): void

Parameters

NameTypeDescription
signstring标识,svlx路径或fileid

Returns

void

Description

读取取消事件

Inherited from

Reader.onCancel


onEnd

onEnd(sign, fun): void

Parameters

NameTypeDescription
signstring标识,svlx路径或fileid
funstring结束过程或方法

Returns

void

Description

读取结束事件

Inherited from

Reader.onEnd


onException

onException(sign, fun, error): void

Parameters

NameTypeDescription
signstring标识,svlx路径或fileid
funstring发生异常的过程或方法
errorException异常信息

Returns

void

Description

读取发生异常事件

Inherited from

Reader.onException


onProgress

onProgress(sign, fun, progress): void

Parameters

NameTypeDescription
signstring标识,svlx路径或fileid
funstring进度发生变化的过程或方法
progressnumber进度

Returns

void

Description

读取进度变化事件

Inherited from

Reader.onProgress


onUpdata

onUpdata(sign, fun, dataType): void

Parameters

NameType
signstring
funstring
dataTypestring

Returns

void

Description

读取更新事件

Inherited from

Reader.onUpdata


post

post(msg): void

Parameters

NameTypeDescription
msgM3DMessage消息内容

Returns

void

Description

消息发送者必须实现方法

Inherited from

Reader.post


registerEvent

registerEvent(event): void

Parameters

NameTypeDescription
eventM3DEventM3D事件

Returns

void

Description

注册事件

Inherited from

Reader.registerEvent


registerReaderEvent

registerReaderEvent(): ReaderEvent

Returns

ReaderEvent

读取事件

Description

注册监听

Overrides

Reader.registerReaderEvent


removeEvent

removeEvent(): void

Returns

void

Description

删除事件

Inherited from

Reader.removeEvent


send

send(msg): void

Parameters

NameTypeDescription
msgM3DMessage消息内容

Returns

void

Description

消息发送者必须实现方法

Inherited from

Reader.send


setFile

setFile(file): Promise<SvlxReader>

Parameters

NameTypeDescription
fileSvlxFileSvlxFile对象

Returns

Promise<SvlxReader>

Svlx读取类

Description

设置svlx文件

Overrides

Reader.setFile

setFile(file, sign?): Promise<SvlxReader>

Parameters

NameTypeDescription
fileArrayBuffersvlx文件的二进制数据
sign?string可选参数

Returns

Promise<SvlxReader>

Svlx读取类

Description

设置svlx文件

Overrides

M3D.IO.Reader.setFile


setFileId

setFileId(fileId): void

Parameters

NameTypeDescription
fileIdstring唯一标识

Returns

void

Description

设置模型对应的唯一标识

Inherited from

Reader.setFileId


setId

setId(v): void

Parameters

NameTypeDescription
vnumberShapeId

Returns

void

Description

设置id

Inherited from

Reader.setId


setIsParseInfo

setIsParseInfo(value): void

Parameters

NameType
valueboolean

Returns

void

Description

设置当前Reader是否需要解析Info数据

Inherited from

Reader.setIsParseInfo


setIsReferenceReader

setIsReferenceReader(value): void

Parameters

NameType
valueboolean

Returns

void

Description

设置是否为分散文件


setParentModel

setParentModel(parentModel): void

Parameters

NameTypeDescription
parentModelModel父级模型

Returns

void

Description

设置父级模型,即Reaader读取出的顶级模型在哪个模型下

Inherited from

Reader.setParentModel


setScene

setScene(scene): void

Parameters

NameType
sceneScene

Returns

void

Description

设置场景

Inherited from

Reader.setScene


setSvlxFile

setSvlxFile(svlxFile): void

Parameters

NameTypeDescription
svlxFileSvlxFile对象

Returns

void

Description

设置SvlxReader中的File


setTopModel

setTopModel(topModel): void

Parameters

NameType
topModelModel

Returns

void

Description

设置顶级模型

Inherited from

Reader.setTopModel


setUrl

setUrl(url): void

Parameters

NameTypeDescription
urlstring模型路径URL

Returns

void

Description

设置模型路径

Inherited from

Reader.setUrl


updata

updata(fun, dataType): void

Parameters

NameType
funstring
dataTypestring

Returns

void

Description

更新


getMaxSvlxVersion

getMaxSvlxVersion(): string

Returns

string

Static

Description

获取svlx文件的最高版本


getMinSvlxVersion

getMinSvlxVersion(): string

Returns

string

Static

Description

获取svlx文件的最低版本