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:65

反激活并移除全部 section。

Returns

void


create()

create(opts?): Section

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

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

Parameters

opts?
boolean?

CuttingBoolean

Returns

Section


get()

get(id): Section | null

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

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

Parameters

id

string

Returns

Section | null


getActiveSectionCount()

getActiveSectionCount(): number

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

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

Returns

number


getAll()

getAll(): readonly Section[]

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

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

Returns

readonly Section[]


getCappingStyle()

getCappingStyle(): Readonly<CappingStyle>

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

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

Returns

Readonly<CappingStyle>


isInteractive()

isInteractive(): boolean

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

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

Returns

boolean


planeFromAxis()

planeFromAxis(axis, offset?): PlaneSpec

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

便捷构造轴对齐剖切平面:过模型包围盒中心、法向沿指定世界轴 (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:56

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

Parameters

target

string | Section

Returns

void


setCappingStyle()

setCappingStyle(style): void

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

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

Parameters

style

Partial<CappingStyle>

Returns

void


setInteractive()

setInteractive(enabled): void

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

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

Parameters

enabled

boolean

Returns

void