[gs-longan](../README.md) / CuttingBox

# Class: CuttingBox

## Hierarchy

- [`ViewerOperator`](ViewerOperator.md)

  ↳ **`CuttingBox`**

## Table of contents

### Constructors

- [constructor](CuttingBox.md#constructor)

### Properties

- [\_backShell](CuttingBox.md#_backshell)
- [\_bb](CuttingBox.md#_bb)
- [\_bottomShell](CuttingBox.md#_bottomshell)
- [\_box](CuttingBox.md#_box)
- [\_boxVisible](CuttingBox.md#_boxvisible)
- [\_cuttingBoxSegment](CuttingBox.md#_cuttingboxsegment)
- [\_cuttingPlanes](CuttingBox.md#_cuttingplanes)
- [\_downPos](CuttingBox.md#_downpos)
- [\_frontShell](CuttingBox.md#_frontshell)
- [\_leftShell](CuttingBox.md#_leftshell)
- [\_planes](CuttingBox.md#_planes)
- [\_prePos](CuttingBox.md#_prepos)
- [\_rightShell](CuttingBox.md#_rightshell)
- [\_selectedShell](CuttingBox.md#_selectedshell)
- [\_selectionKey](CuttingBox.md#_selectionkey)
- [\_topShell](CuttingBox.md#_topshell)
- [keyDown](CuttingBox.md#keydown)
- [keyPress](CuttingBox.md#keypress)
- [keyUp](CuttingBox.md#keyup)
- [lButtonDown](CuttingBox.md#lbuttondown)
- [lButtonDownAndMove](CuttingBox.md#lbuttondownandmove)
- [lButtonUp](CuttingBox.md#lbuttonup)
- [mButtonDown](CuttingBox.md#mbuttondown)
- [mButtonDownAndMove](CuttingBox.md#mbuttondownandmove)
- [mButtonUp](CuttingBox.md#mbuttonup)
- [mouseMove](CuttingBox.md#mousemove)
- [mouseWheel](CuttingBox.md#mousewheel)
- [rButtonDown](CuttingBox.md#rbuttondown)
- [rButtonDownAndMove](CuttingBox.md#rbuttondownandmove)
- [rButtonUp](CuttingBox.md#rbuttonup)
- [touchCancel](CuttingBox.md#touchcancel)
- [touchEnd](CuttingBox.md#touchend)
- [touchMove](CuttingBox.md#touchmove)
- [touchStart](CuttingBox.md#touchstart)
- [typeName](CuttingBox.md#typename)
- [windowKeyDown](CuttingBox.md#windowkeydown)
- [windowKeyPress](CuttingBox.md#windowkeypress)
- [windowKeyUp](CuttingBox.md#windowkeyup)

### Accessors

- [box](CuttingBox.md#box)
- [boxVisible](CuttingBox.md#boxvisible)
- [enable](CuttingBox.md#enable)
- [persistent](CuttingBox.md#persistent)
- [viewer](CuttingBox.md#viewer)

### Methods

- [computePlaneNormal](CuttingBox.md#computeplanenormal)
- [fina](CuttingBox.md#fina)
- [init](CuttingBox.md#init)
- [onKeyDown](CuttingBox.md#onkeydown)
- [onKeyPress](CuttingBox.md#onkeypress)
- [onKeyUp](CuttingBox.md#onkeyup)
- [onLButtonDown](CuttingBox.md#onlbuttondown)
- [onLButtonDownAndMove](CuttingBox.md#onlbuttondownandmove)
- [onLButtonUp](CuttingBox.md#onlbuttonup)
- [onMButtonDown](CuttingBox.md#onmbuttondown)
- [onMButtonDownAndMove](CuttingBox.md#onmbuttondownandmove)
- [onMButtonUp](CuttingBox.md#onmbuttonup)
- [onMouseMove](CuttingBox.md#onmousemove)
- [onMouseWheel](CuttingBox.md#onmousewheel)
- [onRButtonDown](CuttingBox.md#onrbuttondown)
- [onRButtonDownAndMove](CuttingBox.md#onrbuttondownandmove)
- [onRButtonUp](CuttingBox.md#onrbuttonup)
- [onTouchCancel](CuttingBox.md#ontouchcancel)
- [onTouchEnd](CuttingBox.md#ontouchend)
- [onTouchMove](CuttingBox.md#ontouchmove)
- [onTouchStart](CuttingBox.md#ontouchstart)
- [onWindowKeyDown](CuttingBox.md#onwindowkeydown)
- [onWindowKeyPress](CuttingBox.md#onwindowkeypress)
- [onWindowKeyUp](CuttingBox.md#onwindowkeyup)
- [setXValue](CuttingBox.md#setxvalue)
- [setYValue](CuttingBox.md#setyvalue)
- [setZValue](CuttingBox.md#setzvalue)
- [updateBox](CuttingBox.md#updatebox)

## Constructors

### constructor

• **new CuttingBox**(): [`CuttingBox`](CuttingBox.md)

#### Returns

[`CuttingBox`](CuttingBox.md)

#### Overrides

[ViewerOperator](ViewerOperator.md).[constructor](ViewerOperator.md#constructor)

## Properties

### \_backShell

• **\_backShell**: [`Shell`](Shell.md) = `null`

___

### \_bb

• **\_bb**: `Float32Array`

___

### \_bottomShell

• **\_bottomShell**: [`Shell`](Shell.md) = `null`

___

### \_box

• **\_box**: `Float32Array`

___

### \_boxVisible

• **\_boxVisible**: `boolean` = `true`

___

### \_cuttingBoxSegment

• **\_cuttingBoxSegment**: [`Segment`](Segment.md)

___

### \_cuttingPlanes

• **\_cuttingPlanes**: [`CuttingPlanes`](CuttingPlanes.md)

___

### \_downPos

• **\_downPos**: `Float32Array`

___

### \_frontShell

• **\_frontShell**: [`Shell`](Shell.md) = `null`

___

### \_leftShell

• **\_leftShell**: [`Shell`](Shell.md) = `null`

___

### \_planes

• **\_planes**: `Float32Array`

___

### \_prePos

• **\_prePos**: `Float32Array`

___

### \_rightShell

• **\_rightShell**: [`Shell`](Shell.md) = `null`

___

### \_selectedShell

• **\_selectedShell**: [`Shell`](Shell.md)

___

### \_selectionKey

• **\_selectionKey**: [`SelectionKey`](SelectionKey.md)

___

### \_topShell

• **\_topShell**: [`Shell`](Shell.md) = `null`

___

### keyDown

• **keyDown**: [`List`](List.md)\<(`sender`: [`ViewerOperator`](ViewerOperator.md), `event`: [`ViewerEvent`](ViewerEvent.md)) => `void`\>

#### Inherited from

[ViewerOperator](ViewerOperator.md).[keyDown](ViewerOperator.md#keydown)

___

### keyPress

• **keyPress**: [`List`](List.md)\<(`sender`: [`ViewerOperator`](ViewerOperator.md), `event`: [`ViewerEvent`](ViewerEvent.md)) => `void`\>

#### Inherited from

[ViewerOperator](ViewerOperator.md).[keyPress](ViewerOperator.md#keypress)

___

### keyUp

• **keyUp**: [`List`](List.md)\<(`sender`: [`ViewerOperator`](ViewerOperator.md), `event`: [`ViewerEvent`](ViewerEvent.md)) => `void`\>

#### Inherited from

[ViewerOperator](ViewerOperator.md).[keyUp](ViewerOperator.md#keyup)

___

### lButtonDown

• **lButtonDown**: [`List`](List.md)\<(`sender`: [`ViewerOperator`](ViewerOperator.md), `event`: [`ViewerEvent`](ViewerEvent.md)) => `void`\>

#### Inherited from

[ViewerOperator](ViewerOperator.md).[lButtonDown](ViewerOperator.md#lbuttondown)

___

### lButtonDownAndMove

• **lButtonDownAndMove**: [`List`](List.md)\<(`sender`: [`ViewerOperator`](ViewerOperator.md), `event`: [`ViewerEvent`](ViewerEvent.md)) => `void`\>

#### Inherited from

[ViewerOperator](ViewerOperator.md).[lButtonDownAndMove](ViewerOperator.md#lbuttondownandmove)

___

### lButtonUp

• **lButtonUp**: [`List`](List.md)\<(`sender`: [`ViewerOperator`](ViewerOperator.md), `event`: [`ViewerEvent`](ViewerEvent.md)) => `void`\>

#### Inherited from

[ViewerOperator](ViewerOperator.md).[lButtonUp](ViewerOperator.md#lbuttonup)

___

### mButtonDown

• **mButtonDown**: [`List`](List.md)\<(`sender`: [`ViewerOperator`](ViewerOperator.md), `event`: [`ViewerEvent`](ViewerEvent.md)) => `void`\>

#### Inherited from

[ViewerOperator](ViewerOperator.md).[mButtonDown](ViewerOperator.md#mbuttondown)

___

### mButtonDownAndMove

• **mButtonDownAndMove**: [`List`](List.md)\<(`sender`: [`ViewerOperator`](ViewerOperator.md), `event`: [`ViewerEvent`](ViewerEvent.md)) => `void`\>

#### Inherited from

[ViewerOperator](ViewerOperator.md).[mButtonDownAndMove](ViewerOperator.md#mbuttondownandmove)

___

### mButtonUp

• **mButtonUp**: [`List`](List.md)\<(`sender`: [`ViewerOperator`](ViewerOperator.md), `event`: [`ViewerEvent`](ViewerEvent.md)) => `void`\>

#### Inherited from

[ViewerOperator](ViewerOperator.md).[mButtonUp](ViewerOperator.md#mbuttonup)

___

### mouseMove

• **mouseMove**: [`List`](List.md)\<(`sender`: [`ViewerOperator`](ViewerOperator.md), `event`: [`ViewerEvent`](ViewerEvent.md)) => `void`\>

#### Inherited from

[ViewerOperator](ViewerOperator.md).[mouseMove](ViewerOperator.md#mousemove)

___

### mouseWheel

• **mouseWheel**: [`List`](List.md)\<(`sender`: [`ViewerOperator`](ViewerOperator.md), `event`: [`ViewerEvent`](ViewerEvent.md)) => `void`\>

#### Inherited from

[ViewerOperator](ViewerOperator.md).[mouseWheel](ViewerOperator.md#mousewheel)

___

### rButtonDown

• **rButtonDown**: [`List`](List.md)\<(`sender`: [`ViewerOperator`](ViewerOperator.md), `event`: [`ViewerEvent`](ViewerEvent.md)) => `void`\>

#### Inherited from

[ViewerOperator](ViewerOperator.md).[rButtonDown](ViewerOperator.md#rbuttondown)

___

### rButtonDownAndMove

• **rButtonDownAndMove**: [`List`](List.md)\<(`sender`: [`ViewerOperator`](ViewerOperator.md), `event`: [`ViewerEvent`](ViewerEvent.md)) => `void`\>

#### Inherited from

[ViewerOperator](ViewerOperator.md).[rButtonDownAndMove](ViewerOperator.md#rbuttondownandmove)

___

### rButtonUp

• **rButtonUp**: [`List`](List.md)\<(`sender`: [`ViewerOperator`](ViewerOperator.md), `event`: [`ViewerEvent`](ViewerEvent.md)) => `void`\>

#### Inherited from

[ViewerOperator](ViewerOperator.md).[rButtonUp](ViewerOperator.md#rbuttonup)

___

### touchCancel

• **touchCancel**: [`List`](List.md)\<(`sender`: [`ViewerOperator`](ViewerOperator.md), `event`: [`ViewerEvent`](ViewerEvent.md)) => `void`\>

#### Inherited from

[ViewerOperator](ViewerOperator.md).[touchCancel](ViewerOperator.md#touchcancel)

___

### touchEnd

• **touchEnd**: [`List`](List.md)\<(`sender`: [`ViewerOperator`](ViewerOperator.md), `event`: [`ViewerEvent`](ViewerEvent.md)) => `void`\>

#### Inherited from

[ViewerOperator](ViewerOperator.md).[touchEnd](ViewerOperator.md#touchend)

___

### touchMove

• **touchMove**: [`List`](List.md)\<(`sender`: [`ViewerOperator`](ViewerOperator.md), `event`: [`ViewerEvent`](ViewerEvent.md)) => `void`\>

#### Inherited from

[ViewerOperator](ViewerOperator.md).[touchMove](ViewerOperator.md#touchmove)

___

### touchStart

• **touchStart**: [`List`](List.md)\<(`sender`: [`ViewerOperator`](ViewerOperator.md), `event`: [`ViewerEvent`](ViewerEvent.md)) => `void`\>

#### Inherited from

[ViewerOperator](ViewerOperator.md).[touchStart](ViewerOperator.md#touchstart)

___

### typeName

• **typeName**: `string` = `"CuttingBox"`

#### Overrides

[ViewerOperator](ViewerOperator.md).[typeName](ViewerOperator.md#typename)

___

### windowKeyDown

• **windowKeyDown**: [`List`](List.md)\<(`sender`: [`ViewerOperator`](ViewerOperator.md), `event`: [`ViewerEvent`](ViewerEvent.md)) => `void`\>

#### Inherited from

[ViewerOperator](ViewerOperator.md).[windowKeyDown](ViewerOperator.md#windowkeydown)

___

### windowKeyPress

• **windowKeyPress**: [`List`](List.md)\<(`sender`: [`ViewerOperator`](ViewerOperator.md), `event`: [`ViewerEvent`](ViewerEvent.md)) => `void`\>

#### Inherited from

[ViewerOperator](ViewerOperator.md).[windowKeyPress](ViewerOperator.md#windowkeypress)

___

### windowKeyUp

• **windowKeyUp**: [`List`](List.md)\<(`sender`: [`ViewerOperator`](ViewerOperator.md), `event`: [`ViewerEvent`](ViewerEvent.md)) => `void`\>

#### Inherited from

[ViewerOperator](ViewerOperator.md).[windowKeyUp](ViewerOperator.md#windowkeyup)

## Accessors

### box

• `get` **box**(): `Float32Array`

#### Returns

`Float32Array`

• `set` **box**(`box`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `box` | `Float32Array` |

#### Returns

`void`

___

### boxVisible

• `get` **boxVisible**(): `boolean`

#### Returns

`boolean`

• `set` **boxVisible**(`value`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `value` | `boolean` |

#### Returns

`void`

___

### enable

• `get` **enable**(): `boolean`

#### Returns

`boolean`

#### Inherited from

ViewerOperator.enable

• `set` **enable**(`enable`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `enable` | `boolean` |

#### Returns

`void`

#### Inherited from

ViewerOperator.enable

___

### persistent

• `get` **persistent**(): `boolean`

#### Returns

`boolean`

#### Inherited from

ViewerOperator.persistent

• `set` **persistent**(`persistent`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `persistent` | `boolean` |

#### Returns

`void`

#### Inherited from

ViewerOperator.persistent

___

### viewer

• `get` **viewer**(): [`Viewer`](Viewer.md)

#### Returns

[`Viewer`](Viewer.md)

#### Inherited from

ViewerOperator.viewer

• `set` **viewer**(`viewer`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `viewer` | [`Viewer`](Viewer.md) |

#### Returns

`void`

#### Inherited from

ViewerOperator.viewer

## Methods

### computePlaneNormal

▸ **computePlaneNormal**(`plane`): `Float32Array`

#### Parameters

| Name | Type |
| :------ | :------ |
| `plane` | `Float32Array` |

#### Returns

`Float32Array`

___

### fina

▸ **fina**(): `void`

#### Returns

`void`

#### Overrides

[ViewerOperator](ViewerOperator.md).[fina](ViewerOperator.md#fina)

___

### init

▸ **init**(): `void`

#### Returns

`void`

#### Overrides

[ViewerOperator](ViewerOperator.md).[init](ViewerOperator.md#init)

___

### onKeyDown

▸ **onKeyDown**(`e`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `e` | [`ViewerEvent`](ViewerEvent.md) |

#### Returns

`void`

#### Inherited from

[ViewerOperator](ViewerOperator.md).[onKeyDown](ViewerOperator.md#onkeydown)

___

### onKeyPress

▸ **onKeyPress**(`e`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `e` | [`ViewerEvent`](ViewerEvent.md) |

#### Returns

`void`

#### Inherited from

[ViewerOperator](ViewerOperator.md).[onKeyPress](ViewerOperator.md#onkeypress)

___

### onKeyUp

▸ **onKeyUp**(`e`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `e` | [`ViewerEvent`](ViewerEvent.md) |

#### Returns

`void`

#### Inherited from

[ViewerOperator](ViewerOperator.md).[onKeyUp](ViewerOperator.md#onkeyup)

___

### onLButtonDown

▸ **onLButtonDown**(`e`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `e` | [`ViewerEvent`](ViewerEvent.md) |

#### Returns

`void`

#### Overrides

[ViewerOperator](ViewerOperator.md).[onLButtonDown](ViewerOperator.md#onlbuttondown)

___

### onLButtonDownAndMove

▸ **onLButtonDownAndMove**(`e`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `e` | [`ViewerEvent`](ViewerEvent.md) |

#### Returns

`void`

#### Overrides

[ViewerOperator](ViewerOperator.md).[onLButtonDownAndMove](ViewerOperator.md#onlbuttondownandmove)

___

### onLButtonUp

▸ **onLButtonUp**(`e`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `e` | [`ViewerEvent`](ViewerEvent.md) |

#### Returns

`void`

#### Overrides

[ViewerOperator](ViewerOperator.md).[onLButtonUp](ViewerOperator.md#onlbuttonup)

___

### onMButtonDown

▸ **onMButtonDown**(`e`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `e` | [`ViewerEvent`](ViewerEvent.md) |

#### Returns

`void`

#### Overrides

[ViewerOperator](ViewerOperator.md).[onMButtonDown](ViewerOperator.md#onmbuttondown)

___

### onMButtonDownAndMove

▸ **onMButtonDownAndMove**(`e`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `e` | [`ViewerEvent`](ViewerEvent.md) |

#### Returns

`void`

#### Inherited from

[ViewerOperator](ViewerOperator.md).[onMButtonDownAndMove](ViewerOperator.md#onmbuttondownandmove)

___

### onMButtonUp

▸ **onMButtonUp**(`e`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `e` | [`ViewerEvent`](ViewerEvent.md) |

#### Returns

`void`

#### Inherited from

[ViewerOperator](ViewerOperator.md).[onMButtonUp](ViewerOperator.md#onmbuttonup)

___

### onMouseMove

▸ **onMouseMove**(`e`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `e` | [`ViewerEvent`](ViewerEvent.md) |

#### Returns

`void`

#### Overrides

[ViewerOperator](ViewerOperator.md).[onMouseMove](ViewerOperator.md#onmousemove)

___

### onMouseWheel

▸ **onMouseWheel**(`e`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `e` | [`ViewerEvent`](ViewerEvent.md) |

#### Returns

`void`

#### Inherited from

[ViewerOperator](ViewerOperator.md).[onMouseWheel](ViewerOperator.md#onmousewheel)

___

### onRButtonDown

▸ **onRButtonDown**(`e`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `e` | [`ViewerEvent`](ViewerEvent.md) |

#### Returns

`void`

#### Overrides

[ViewerOperator](ViewerOperator.md).[onRButtonDown](ViewerOperator.md#onrbuttondown)

___

### onRButtonDownAndMove

▸ **onRButtonDownAndMove**(`e`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `e` | [`ViewerEvent`](ViewerEvent.md) |

#### Returns

`void`

#### Inherited from

[ViewerOperator](ViewerOperator.md).[onRButtonDownAndMove](ViewerOperator.md#onrbuttondownandmove)

___

### onRButtonUp

▸ **onRButtonUp**(`e`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `e` | [`ViewerEvent`](ViewerEvent.md) |

#### Returns

`void`

#### Inherited from

[ViewerOperator](ViewerOperator.md).[onRButtonUp](ViewerOperator.md#onrbuttonup)

___

### onTouchCancel

▸ **onTouchCancel**(`e`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `e` | [`ViewerEvent`](ViewerEvent.md) |

#### Returns

`void`

#### Inherited from

[ViewerOperator](ViewerOperator.md).[onTouchCancel](ViewerOperator.md#ontouchcancel)

___

### onTouchEnd

▸ **onTouchEnd**(`e`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `e` | [`ViewerEvent`](ViewerEvent.md) |

#### Returns

`void`

#### Inherited from

[ViewerOperator](ViewerOperator.md).[onTouchEnd](ViewerOperator.md#ontouchend)

___

### onTouchMove

▸ **onTouchMove**(`e`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `e` | [`ViewerEvent`](ViewerEvent.md) |

#### Returns

`void`

#### Inherited from

[ViewerOperator](ViewerOperator.md).[onTouchMove](ViewerOperator.md#ontouchmove)

___

### onTouchStart

▸ **onTouchStart**(`e`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `e` | [`ViewerEvent`](ViewerEvent.md) |

#### Returns

`void`

#### Inherited from

[ViewerOperator](ViewerOperator.md).[onTouchStart](ViewerOperator.md#ontouchstart)

___

### onWindowKeyDown

▸ **onWindowKeyDown**(`e`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `e` | [`ViewerEvent`](ViewerEvent.md) |

#### Returns

`void`

#### Inherited from

[ViewerOperator](ViewerOperator.md).[onWindowKeyDown](ViewerOperator.md#onwindowkeydown)

___

### onWindowKeyPress

▸ **onWindowKeyPress**(`e`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `e` | [`ViewerEvent`](ViewerEvent.md) |

#### Returns

`void`

#### Inherited from

[ViewerOperator](ViewerOperator.md).[onWindowKeyPress](ViewerOperator.md#onwindowkeypress)

___

### onWindowKeyUp

▸ **onWindowKeyUp**(`e`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `e` | [`ViewerEvent`](ViewerEvent.md) |

#### Returns

`void`

#### Inherited from

[ViewerOperator](ViewerOperator.md).[onWindowKeyUp](ViewerOperator.md#onwindowkeyup)

___

### setXValue

▸ **setXValue**(`start`, `end`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `start` | `number` |
| `end` | `number` |

#### Returns

`void`

___

### setYValue

▸ **setYValue**(`start`, `end`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `start` | `number` |
| `end` | `number` |

#### Returns

`void`

___

### setZValue

▸ **setZValue**(`start`, `end`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `start` | `number` |
| `end` | `number` |

#### Returns

`void`

___

### updateBox

▸ **updateBox**(): `void`

#### Returns

`void`
