Appearance
Interface: CameraManager
Defined in: packages/viewer-core/src/public/managers/CameraManager.ts:14
相机与导航控制 manager。
职责域:取景适配(fitView)、标准视图切换(setStandardView)、 相机位姿读写(getState / setState)、交互开关与左键导航模式。 相机位姿变化统一经 camera-changed 事件对外广播。
Remarks
经 Viewer 实例上的 viewer.camera 访问,不要直接构造。
Methods
fitView()
fitView(
target?,opts?):void
Defined in: packages/viewer-core/src/public/managers/CameraManager.ts:29
取景适配(zoom-to-fit):保持当前视线方向,使目标范围充满视口。
取景目标的解析优先级:显式 target.box、target.nodeIds 指定的节点、 当前选中集(支持面 / 边子实体粒度)、整个模型,依次回落。无模型或解析 不出范围时静默返回。默认平滑动画过渡(经 opts.animate / durationMs 控制)。
Parameters
target?
box?
nodeIds?
readonly NodeId[]
opts?
Returns
void
getState()
getState():
object
Defined in: packages/viewer-core/src/public/managers/CameraManager.ts:50
取当前相机位姿快照(位置 / 注视点 / up 向量 / 视场角)。
Returns
object
fov
fov:
number
position
position:
Vec3
target
target:
Vec3
up
up:
Vec3
setInteractionEnabled()
setInteractionEnabled(
enabled):void
Defined in: packages/viewer-core/src/public/managers/CameraManager.ts:62
开关鼠标 / 触控相机交互(旋转 / 平移 / 缩放);关闭后仍可经 API 控制相机。
Parameters
enabled
boolean
Returns
void
setNavMode()
setNavMode(
mode):void
Defined in: packages/viewer-core/src/public/managers/CameraManager.ts:68
设置左键拖拽的导航模式:"orbit" 旋转(默认),"pan" 屏幕空间平移。
Parameters
mode
"orbit" | "pan"
Returns
void
setStandardView()
setStandardView(
view):void
Defined in: packages/viewer-core/src/public/managers/CameraManager.ts:44
切换到标准视图(Z-up / CATIA 约定:Front=+X, Right=+Y, Top=+Z)。
以最近一次取景范围为中心定距取景;模型尚未取过景时为 no-op。
Parameters
view
"top" | "bottom" | "front" | "back" | "left" | "right" | "iso"
Returns
void
setState()
setState(
state):void
Defined in: packages/viewer-core/src/public/managers/CameraManager.ts:56
部分更新相机位姿(只写传入的字段),立即生效并触发 camera-changed;会取消进行中的相机动画(如 fitView 取景过渡);空对象为 no-op。
Parameters
state
fov?
number
position?
target?
up?
Returns
void