Appearance
Class: Viewer
Defined in: packages/viewer-core/src/public/Viewer.ts:52
.fmbv 渲染引擎的唯一公开入口。
持有 WebGL 渲染管线与场景,把能力按域拆给 14 个只读 manager 属性 (model / camera / selection / section / explode 等);事件经 on() / once() 订阅。典型流程:Viewer.create(canvas) → viewer.model.load(url) → 经各 manager 操作 → 不再使用时 dispose()。
Properties
background
readonlybackground:BackgroundManager
Defined in: packages/viewer-core/src/public/Viewer.ts:72
画布背景(纯色 / 渐变 / 图片 / 透明)。
camera
readonlycamera:CameraManager
Defined in: packages/viewer-core/src/public/Viewer.ts:56
相机位姿、标准视图、zoom-to-fit 与交互控制。
diagnostics
readonlydiagnostics:DiagnosticsManager
Defined in: packages/viewer-core/src/public/Viewer.ts:68
LOD 等调试诊断查询。
edges
readonlyedges:EdgesManager
Defined in: packages/viewer-core/src/public/Viewer.ts:60
全局边线显示开关、颜色与不透明度。
explode
readonlyexplode:ExplodeManager
Defined in: packages/viewer-core/src/public/Viewer.ts:76
零件爆炸(散开 / 锁定 / 动画)。
export
readonlyexport:ExportManager
Defined in: packages/viewer-core/src/public/Viewer.ts:74
矢量 SVG 工程图导出(消隐线条)。
lights
readonlylights:LightsManager
Defined in: packages/viewer-core/src/public/Viewer.ts:64
场景光源的增删与强度调整。
model
readonlymodel:ModelManager
Defined in: packages/viewer-core/src/public/Viewer.ts:54
模型加载 / 卸载、结构树查询与节点级外观控制。
navcube
readonlynavcube:NavCubeManager
Defined in: packages/viewer-core/src/public/Viewer.ts:70
画布角落导航立方体的开关 / 停靠 / 尺寸。
quality
readonlyquality:RenderQualityManager
Defined in: packages/viewer-core/src/public/Viewer.ts:80
渲染质量(抗锯齿 / AO / 色调映射 / 质量档)。
renderMode
readonlyrenderMode:RenderModeManager
Defined in: packages/viewer-core/src/public/Viewer.ts:62
全局与按节点的渲染模式(实色线框 / 线框 / 实色 / 消隐)。
section
readonlysection:SectionManager
Defined in: packages/viewer-core/src/public/Viewer.ts:78
剖切 section 与盖面 / gizmo 交互。
selection
readonlyselection:SelectionManager
Defined in: packages/viewer-core/src/public/Viewer.ts:58
点击 / 框选 / 程序化选中与 hover 高亮。
stats
readonlystats:StatsView
Defined in: packages/viewer-core/src/public/Viewer.ts:66
加载与渲染统计快照(fps / 帧时 / chunk 进度等)。
Methods
dispose()
dispose():
void
Defined in: packages/viewer-core/src/public/Viewer.ts:501
销毁 viewer:停止渲染循环、释放全部 GPU 资源与事件订阅。幂等(重复 调用静默返回);销毁后再调各 manager 的方法会抛 ViewerError(Disposed)。
Returns
void
off()
off<
K>(event,handler):void
Defined in: packages/viewer-core/src/public/Viewer.ts:475
取消订阅(需传入与 on 时相同的 handler 引用);已销毁时静默返回。
Type Parameters
K
K extends keyof ViewerEvents
Parameters
event
K
handler
(e) => void
Returns
void
on()
on<
K>(event,handler): () =>void
Defined in: packages/viewer-core/src/public/Viewer.ts:469
订阅一个 viewer 事件(事件清单与 payload 见 ViewerEvents), 返回取消订阅函数;已销毁时抛 ViewerError(Disposed)。
Type Parameters
K
K extends keyof ViewerEvents
Parameters
event
K
handler
(e) => void
Returns
() => void
once()
once<
K>(event,handler): () =>void
Defined in: packages/viewer-core/src/public/Viewer.ts:481
订阅一个事件且只触发一次,返回取消订阅函数;已销毁时抛 ViewerError(Disposed)。
Type Parameters
K
K extends keyof ViewerEvents
Parameters
event
K
handler
(e) => void
Returns
() => void
resize()
resize():
void
Defined in: packages/viewer-core/src/public/Viewer.ts:492
将渲染器与相机宽高比重新同步到 canvas 当前的 CSS 尺寸。引擎已通过 ResizeObserver 自动处理尺寸变化,宿主通常无需调用——这是一个显式的 逃生口,供宿主在浏览器完成布局前就已知晓布局变化时使用。已销毁时 静默返回。
Returns
void
create()
staticcreate(canvas,options?):Promise<Viewer>
Defined in: packages/viewer-core/src/public/Viewer.ts:458
创建并启动一个 Viewer 实例(唯一构造入口;构造函数私有)。 在给定 canvas 上建立 WebGL 渲染管线并开启渲染循环;options 见 ViewerOptions。若指定了 options.environment,会等 HDRI 环境 加载完成后才 resolve。
Parameters
canvas
HTMLCanvasElement
options?
ViewerOptions = {}
Returns
Promise<Viewer>