Skip to content

Interface: SectionManager ​

Defined in: packages/viewer-core/src/public/managers/SectionManager.ts:29

剖切(裁剪)manager。

职责域:剖切 section 的创建 / 激活 / 移除、盖面(capping)样式与 平面 gizmo 交互开关。一个 Section 含至多 6 个裁剪平面(intersection / union 布尔组合);最多同时激活 4 个 section,最终可见区域是各 active section 保留区的交集——即每多激活一个 section 只会切掉更多。典型入口: create() 建 section → section.addPlane(planeFromAxis("x")) → section.activate()。

Remarks ​

经 Viewer 实例上的 viewer.section 访问,不要直接构造。

Implements ​

  • SectionHost

Methods ​

clear() ​

clear(): void

Defined in: packages/viewer-core/src/public/managers/SectionManager.ts:70

反激活并移除全部 section。

Returns ​

void


create() ​

create(opts?): Section

Defined in: packages/viewer-core/src/public/managers/SectionManager.ts:50

新建一个剖切 section(初始无平面、未激活);boolean 默认 "intersection"。

Parameters ​

opts? ​
boolean? ​

CuttingBoolean

Returns ​

Section


get() ​

get(id): Section | null

Defined in: packages/viewer-core/src/public/managers/SectionManager.ts:59

按 id 查找 section;不存在返回 null。

Parameters ​

id ​

string

Returns ​

Section | null


getActiveSectionCount() ​

getActiveSectionCount(): number

Defined in: packages/viewer-core/src/public/managers/SectionManager.ts:76

取当前处于激活态的 section 数(上限 4)。

Returns ​

number


getAll() ​

getAll(): readonly Section[]

Defined in: packages/viewer-core/src/public/managers/SectionManager.ts:57

取全部已创建的 section(含未激活的;返回副本数组)。

Returns ​

readonly Section[]


getCappingStyle() ​

getCappingStyle(): Readonly<CappingStyle>

Defined in: packages/viewer-core/src/public/managers/SectionManager.ts:86

取当前盖面样式(完整解析后的副本)。

Returns ​

Readonly<CappingStyle>


isInteractive() ​

isInteractive(): boolean

Defined in: packages/viewer-core/src/public/managers/SectionManager.ts:103

查询 gizmo 交互当前是否开启。

Returns ​

boolean


planeFromAxis() ​

planeFromAxis(axis, offset?): PlaneSpec

Defined in: packages/viewer-core/src/public/managers/SectionManager.ts:110

便捷构造轴对齐剖切平面:过模型包围盒中心、法向沿指定世界轴 (Z-up/CATIA 约定),并沿该轴偏移 offset(世界单位,默认 0)生成 PlaneSpec;未加载模型时退化为 ±1 单位盒。

Parameters ​

axis ​

SectionAxis

offset? ​

number = 0

Returns ​

PlaneSpec


remove() ​

remove(target): void

Defined in: packages/viewer-core/src/public/managers/SectionManager.ts:61

移除一个 section(接受实例或 id);若处于激活态先反激活;不存在静默返回。

Parameters ​

target ​

string | Section

Returns ​

void


setCappingStyle() ​

setCappingStyle(style): void

Defined in: packages/viewer-core/src/public/managers/SectionManager.ts:79

设置盖面样式(部分字段合并更新):填充色 / 描边色 / 是否显示;立即重算盖面。

Parameters ​

style ​

Partial<CappingStyle>

Returns ​

void


setInteractive() ​

setInteractive(enabled): void

Defined in: packages/viewer-core/src/public/managers/SectionManager.ts:97

开关剖切平面的 gizmo 交互(拖拽平移 / 旋转控制杆);默认开。

Parameters ​

enabled ​

boolean

Returns ​

void