The Section Plane Creating Viewer demonstrates interactive section planes over loaded model geometry. Users can create planes for the whole model or selected nodes, adjust placement and direction, show caps, and remove planes when they are no longer needed.

Use this example when your application needs model clipping:
The shared SectionPlaneCreatingViewer owns a SectionPlaneManager, enables drag interaction, and clears section data when leaving model visualization.
| Source | Description |
|---|---|
SectionPlaneCreatingViewerreact/src/pages/section-plane-creating-viewer/SectionPlaneCreatingViewer.tsx | Main page component. It loads models, exposes section-plane creation controls, renders section-plane cards, and displays the viewport. |
SectionPlaneCardreact/src/features/section-plane-card/SectionPlaneCard.tsx | Renders controls for one section plane, including orientation, offset, direction, visibility, capping, manipulator, and removal actions. |
ModelStructureContainerreact/src/features/model-structure-container/ModelStructureContainer.tsx | Supplies selected model nodes used as section-plane targets. |
Canvasreact/src/features/canvas/Canvas.tsx | Hosts the viewport that supports pointer tracking and drag interaction for plane manipulators. |
useSelectionVisualizationContextreact/src/features/visualization-context/useSelectionVisualizationContext.ts | Keeps visualization and selection state in sync with React controls. |
| Source | Description |
|---|---|
SectionPlaneCreatingViewershared/src/viewers/section-plane-creating-viewer/SectionPlaneCreatingViewer.ts | Extends SelectionHandlingViewer, owns SectionPlaneManager, enables pointer and drag events, and supplies selected/root model nodes. |
SectionPlaneManagershared/src/features/section-plane/SectionPlaneManager.ts | Owns section plane lifecycle, clipping state, transform manipulators, capping, and manager events. |
SectionPlaneshared/src/features/section-plane/SectionPlane.ts | Represents a single section plane, including orientation, offset, visibility, target objects, and transform state. |
SectionPlaneCappingRaycastHelpershared/src/features/section-plane/SectionPlaneCappingRaycastHelper.ts | Helps raycasting work correctly against capped section geometry. |