ICuttingService

class wvc.ICuttingService()

Service interface for managing cutting operations in 3D models.

Extends the base IService and IResettableConfigurationService interfaces to provide comprehensive cutting plane and section management capabilities.

This interface defines methods for:

  • Managing cutting sections (groups of cutting planes)
  • Creating, modifying, and removing individual cutting planes
  • Controlling visual properties (colors, opacity, visibility)
  • Configuring capping geometry for cut surfaces
  • Handling face selections for plane creation

ICuttingService

Properties

wvc.ICuttingService.serviceName

inherited

serviceName: ServiceName

Methods

wvc.ICuttingService.addCuttingPlane()
addCuttingPlane(sectionIndex: number, cuttingPlane: CuttingPlane): Promise

Adds a cutting plane to a cutting section.

Parameters

sectionIndex: number

The index of the cutting section to add the plane to

cuttingPlane: CuttingPlane

The cutting plane to add

Returns: Promise

wvc.ICuttingService.clearCuttingSection()
clearCuttingSection(sectionIndex: number): Promise

Clears all cutting planes from a cutting section.

Parameters

sectionIndex: number

The index of the cutting section to clear

Returns: Promise

wvc.ICuttingService.getCappingFaceColor()
getCappingFaceColor(): (undefined | string)

Gets the current capping face color.

Returns: (undefined | string)

The capping face color as a hex string, or undefined if no color is set
wvc.ICuttingService.getCappingGeometryVisibility()
getCappingGeometryVisibility(): boolean

Gets the current capping geometry visibility state.

Returns: boolean

True if capping geometry is visible, false otherwise
wvc.ICuttingService.getCappingLineColor()
getCappingLineColor(): (undefined | string)

Gets the current capping line color.

Returns: (undefined | string)

The capping line color as a hex string, or undefined if no color is set
wvc.ICuttingService.getCuttingPlane()
getCuttingPlane(sectionIndex: number, planeIndex: number): (undefined | CuttingPlane)

Gets a specific cutting plane from a cutting section.

Parameters

sectionIndex: number

The index of the cutting section

planeIndex: number

The index of the cutting plane within the section

Returns: (undefined | CuttingPlane)

The cutting plane at the specified indices, or undefined if not found
wvc.ICuttingService.getCuttingPlaneCount()
getCuttingPlaneCount(sectionIndex: number): number

Gets the number of cutting planes in a cutting section.

Parameters

sectionIndex: number

The index of the cutting section

Returns: number

The number of cutting planes in the section
wvc.ICuttingService.getCuttingPlanes()
getCuttingPlanes(sectionIndex: number): CuttingPlane[]

Gets all cutting planes from a cutting section.

Parameters

sectionIndex: number

The index of the cutting section

Returns: CuttingPlane[]

Array of cutting planes in the section
wvc.ICuttingService.getCuttingSection()
getCuttingSection(index: number): (undefined | Section)

Gets a specific cutting section by index.

Parameters

index: number

The index of the cutting section to retrieve

Returns: (undefined | Section)

The cutting section at the specified index, or undefined if not found
wvc.ICuttingService.getCuttingSectionCount()
getCuttingSectionCount(): number

Gets the total number of cutting sections.

Returns: number

The number of cutting sections
wvc.ICuttingService.getCuttingSections()
getCuttingSections(): Section[]

Gets all cutting sections.

Returns: Section[]

Array of all cutting sections
wvc.ICuttingService.getModelBounding()
getModelBounding(): Box

Gets the current model bounding box.

Returns: Box

The model’s bounding box for reference geometry sizing
wvc.ICuttingService.getSelectedFace()
getSelectedFace(): (undefined | SelectedFace)

Gets the currently selected face for cutting plane creation.

Returns: (undefined | SelectedFace)

The selected face data, or undefined if no face is selected
wvc.ICuttingService.removeCuttingPlane()
removeCuttingPlane(sectionIndex: number, planeIndex: number): Promise

Removes a cutting plane from a cutting section.

Parameters

sectionIndex: number

The index of the cutting section containing the plane

planeIndex: number

The index of the cutting plane to remove

Returns: Promise

wvc.ICuttingService.resetConfiguration()
resetConfiguration(obj: object): Promise

Resets the cutting service configuration to default values or provided configuration.

Parameters

obj: object

Optional configuration object to apply, or undefined to use default configuration

Returns: Promise

Promise that resolves when the configuration is applied
wvc.ICuttingService.setCappingFaceColor()
setCappingFaceColor(color: string): Promise

Sets the capping face color.

Parameters

color: string

Optional hex color string (e.g., “#ff0000”), or undefined to clear

Returns: Promise

Promise that resolves when the operation completes
wvc.ICuttingService.setCappingGeometryVisibility()
setCappingGeometryVisibility(cappingGeometryVisibility: boolean): Promise

Sets the capping geometry visibility state.

Parameters

cappingGeometryVisibility: boolean

True to show capping geometry, false to hide

Returns: Promise

Promise that resolves when the operation completes
wvc.ICuttingService.setCappingLineColor()
setCappingLineColor(color: string): Promise

Sets the capping line color.

Parameters

color: string

Optional hex color string (e.g., “#000000”), or undefined to clear

Returns: Promise

Promise that resolves when the operation completes
wvc.ICuttingService.setCuttingPlaneColor()
setCuttingPlaneColor(sectionIndex: number, planeIndex: number, color: IColor): void

Sets the face color of a specific cutting plane.

Parameters

sectionIndex: number

The index of the cutting section containing the plane

planeIndex: number

The index of the cutting plane to modify

color: IColor

The new face color (RGB values between 0 and 1)

Returns: void

wvc.ICuttingService.setCuttingPlaneLineColor()
setCuttingPlaneLineColor(sectionIndex: number, planeIndex: number, lineColor: IColor): void

Sets the line color of a specific cutting plane.

Parameters

sectionIndex: number

The index of the cutting section containing the plane

planeIndex: number

The index of the cutting plane to modify

lineColor: IColor

The new line color (RGB values between 0 and 1)

Returns: void

wvc.ICuttingService.setCuttingPlaneOpacity()
setCuttingPlaneOpacity(sectionIndex: number, planeIndex: number, opacity: number): void

Sets the opacity of a specific cutting plane.

Parameters

sectionIndex: number

The index of the cutting section containing the plane

planeIndex: number

The index of the cutting plane to modify

opacity: number

The new opacity value (between 0.0 and 1.0)

Returns: void

wvc.ICuttingService.setCuttingPlaneVisibility()
setCuttingPlaneVisibility(sectionIndex: number, planeIndex: number, visible: boolean): Promise

Sets the visibility of reference geometry for a specific cutting plane.

Parameters

sectionIndex: number

The index of the cutting section containing the plane

planeIndex: number

The index of the cutting plane to modify

visible: boolean

True to show reference geometry, false to hide

Returns: Promise

wvc.ICuttingService.setCuttingSectionGeometryVisibility()
setCuttingSectionGeometryVisibility(sectionIndex: number, visible: boolean): Promise

Sets the reference geometry visibility for a cutting section.

Parameters

sectionIndex: number

The index of the cutting section to modify

visible: boolean

True to show reference geometry, false to hide

Returns: Promise

wvc.ICuttingService.setCuttingSectionState()
setCuttingSectionState(sectionIndex: number, active: boolean): Promise

Sets the active state of a cutting section.

Parameters

sectionIndex: number

The index of the cutting section to modify

active: boolean

True to activate the section, false to deactivate

Returns: Promise

wvc.ICuttingService.setModelBounding()
setModelBounding(modelBounding: Box): void

Sets the model bounding box.

Parameters

modelBounding: Box

The new model bounding box

Returns: void

wvc.ICuttingService.updateCuttingPlane()
updateCuttingPlane(sectionIndex: number, planeIndex: number, cuttingPlane: Partial): Promise

Updates properties of an existing cutting plane.

Parameters

sectionIndex: number

The index of the cutting section containing the plane

planeIndex: number

The index of the cutting plane to update

cuttingPlane: Partial

Partial cutting plane object with properties to update

Returns: Promise