Appearance
Interface: ViewerEvents
Defined in: packages/viewer-core/src/public/types.ts:141
viewer 事件清单(key → payload 类型),经 viewer.on() / once() 订阅。 覆盖模型加载生命周期、选中 / hover、LOD 与相机变化、渲染心跳和剖切交互。
Properties
camera-changed
camera-changed:
object
Defined in: packages/viewer-core/src/public/types.ts:167
相机位姿变化(交互期间约 30Hz 节流)。
position
position:
Vec3
target
target:
Vec3
up
up:
Vec3
camera-interaction-changed
camera-interaction-changed:
object
Defined in: packages/viewer-core/src/public/types.ts:169
相机交互开始/结束(拖拽/平移/缩放);Picker 据此在拖拽时抑制 hover 拾取。
interacting
interacting:
boolean
hover-changed
hover-changed:
HoverChangeDetail
Defined in: packages/viewer-core/src/public/types.ts:163
hover 对象变化;移出模型时 item 为 null。
lod-changed
lod-changed:
object
Defined in: packages/viewer-core/src/public/types.ts:165
某网格本帧实际显示的 LOD 级切换(由流式加载与屏幕误差驱动)。
fromLod
fromLod:
number
meshId
meshId:
MeshId
toLod
toLod:
number
model-bounds-changed
model-bounds-changed:
object
Defined in: packages/viewer-core/src/public/types.ts:157
场景有效包围球变化(如爆炸偏移外扩)——内部用于让相机 near / far 不裁剪到零件。
boundingSphere
boundingSphere:
BoundingSphere
model-disposed
model-disposed:
Record<string,never>
Defined in: packages/viewer-core/src/public/types.ts:155
当前模型被卸载(显式 unload() 或再次 load() 替换时)。
model-edges-ready
model-edges-ready:
Record<string,never>
Defined in: packages/viewer-core/src/public/types.ts:151
全部可见 mesh 的边线流式挂载完成(在 model-loaded 之后)。
model-error
model-error:
object
Defined in: packages/viewer-core/src/public/types.ts:153
模型加载失败。当前实现中加载错误经 model.load() 的 Promise reject 抛出,此事件为预留通道,尚无发射点。
error
error:
ViewerError
model-geom-progress
model-geom-progress:
object
Defined in: packages/viewer-core/src/public/types.ts:147
几何 chunk 流式加载进度:ready 已到达数 / total 总数。
ready
ready:
number
total
total:
number
model-loaded
model-loaded:
Record<string,never>
Defined in: packages/viewer-core/src/public/types.ts:149
全部几何 chunk 加载完成。
model-loading
model-loading:
object
Defined in: packages/viewer-core/src/public/types.ts:143
model.load() 开始,携带原始 source。
source
source:
ModelSource
model-skeleton-ready
model-skeleton-ready:
object
Defined in: packages/viewer-core/src/public/types.ts:145
模型骨架(结构树 + 索引)就绪,model.load() 的 Promise 在此 resolve;几何此后继续后台流式加载。
boundingBox
boundingBox:
Box3
meshCount
meshCount:
number
nodeCount
nodeCount:
number
render
render:
object
Defined in: packages/viewer-core/src/public/types.ts:171
渲染心跳(约每秒一次):区间平均 fps 与最近一帧渲染耗时。
fps
fps:
number
frameMs
frameMs:
number
section-activated
section-activated:
object
Defined in: packages/viewer-core/src/public/types.ts:175
某 section 被激活(开始参与裁剪)。
sectionId
sectionId:
string
section-changed
section-changed:
object
Defined in: packages/viewer-core/src/public/types.ts:173
剖切状态变化(平面增删改 / 激活集变化);多 section 激活时 activeSectionId 取最近激活者作代表。
activeSectionId
activeSectionId:
string|null
planeCount
planeCount:
number
section-deactivated
section-deactivated:
object
Defined in: packages/viewer-core/src/public/types.ts:177
某 section 被反激活(退出裁剪)。
sectionId
sectionId:
string
section-plane-drag
section-plane-drag:
object
Defined in: packages/viewer-core/src/public/types.ts:181
gizmo 拖拽中,平面每次更新都触发,payload 带当前平面。
plane
plane:
PlaneSpec
planeId
planeId:
string
sectionId
sectionId:
string
section-plane-drag-end
section-plane-drag-end:
object
Defined in: packages/viewer-core/src/public/types.ts:183
gizmo 拖拽结束。
plane
plane:
PlaneSpec
planeId
planeId:
string
sectionId
sectionId:
string
section-plane-drag-start
section-plane-drag-start:
object
Defined in: packages/viewer-core/src/public/types.ts:179
开始用 gizmo 拖拽某剖切平面。
plane
plane:
PlaneSpec
planeId
planeId:
string
sectionId
sectionId:
string
selection-changed
selection-changed:
SelectionChangeDetail
Defined in: packages/viewer-core/src/public/types.ts:161
选中集变化,payload 含本次新增 / 移除与当前完整选中集。
visibility-changed
visibility-changed:
object
Defined in: packages/viewer-core/src/public/types.ts:159
节点可见性变化(hide / show / isolate / reset);hiddenCount 为当前隐藏叶子总数。
hiddenCount
hiddenCount:
number