# RoomleConfigurator.Internal.PlanInteractionHandler

[configurator-core/src/roomle-configurator](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/modules/configurator_core_src_roomle_configurator).[internal](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/modules/configurator_core_src_roomle_configurator._internal_).PlanInteractionHandler

## Table of contents

### Properties

* [customRaster](#customraster)
* [dockWhenSnap](#dockwhensnap)
* [enableDrawingSnap](#enabledrawingsnap)
* [enableRaster](#enableraster)
* [enableSnap](#enablesnap)
* [objectToObjectSnapMode](#objecttoobjectsnapmode)
* [objectToWallSnapMode](#objecttowallsnapmode)
* [showChildrenOfPlanObjects](#showchildrenofplanobjects)
* [unDockOnMove](#undockonmove)
* [unit](#unit)

### Methods

* [addAttic](#addattic)
* [addMeasure](#addmeasure)
* [addNode](#addnode)
* [addOrUpdateExternalPlanObjects](#addorupdateexternalplanobjects)
* [addPlanObjectFromItem](#addplanobjectfromitem)
* [addPlanObjects](#addplanobjects)
* [addWall](#addwall)
* [beginDrawing](#begindrawing)
* [cancelDrawing](#canceldrawing)
* [catalogItemLoaded](#catalogitemloaded)
* [consistsOfMergedComponents](#consistsofmergedcomponents)
* [createPlanWithObjectFromItem](#createplanwithobjectfromitem)
* [currentDrawingPosition](#currentdrawingposition)
* [deactivateAllSnappingActivity](#deactivateallsnappingactivity)
* [duplicatePlanObject](#duplicateplanobject)
* [duplicatePlanObjects](#duplicateplanobjects)
* [endDrawing](#enddrawing)
* [endInteraction](#endinteraction)
* [forceNode](#forcenode)
* [getConfiguratorKernel](#getconfiguratorkernel)
* [getContinuousDrawingManager](#getcontinuousdrawingmanager)
* [getDefaultExteriorWallMaterial](#getdefaultexteriorwallmaterial)
* [getDefaultFloorMaterial](#getdefaultfloormaterial)
* [getDefaultInteriorWallMaterial](#getdefaultinteriorwallmaterial)
* [getPlan](#getplan)
* [getShowChildrenOfPlanObject](#getshowchildrenofplanobject)
* [groupObjects](#groupobjects)
* [init](#init)
* [isRedoPossible](#isredopossible)
* [isUndoPossible](#isundopossible)
* [isVectorPreviewModeEnabled](#isvectorpreviewmodeenabled)
* [loadPlanXML](#loadplanxml)
* [moveElementBy](#moveelementby)
* [moveElementTo](#moveelementto)
* [moveObjectsBy](#moveobjectsby)
* [reactivateAllSnappingActivity](#reactivateallsnappingactivity)
* [redo](#redo)
* [removeElement](#removeelement)
* [removeObjectWithId](#removeobjectwithid)
* [resumeInteraction](#resumeinteraction)
* [rotateGroupBy](#rotategroupby)
* [rotateObjectTo](#rotateobjectto)
* [rotateObjectsBy](#rotateobjectsby)
* [setAtticKneeHeight](#setattickneeheight)
* [setAtticSide](#setatticside)
* [setAtticWidth](#setatticwidth)
* [setDefaultExteriorWallMaterial](#setdefaultexteriorwallmaterial)
* [setDefaultFloorMaterial](#setdefaultfloormaterial)
* [setDefaultInteriorWallMaterial](#setdefaultinteriorwallmaterial)
* [setDefaultParapetHeight](#setdefaultparapetheight)
* [setDefaultWallHeight](#setdefaultwallheight)
* [setDefaultWallThickness](#setdefaultwallthickness)
* [setDiscardExternalObjectsOnLoad](#setdiscardexternalobjectsonload)
* [setDrawingType](#setdrawingtype)
* [setElementVisibility](#setelementvisibility)
* [setFloorLabelObject](#setfloorlabelobject)
* [setFloorMaterial](#setfloormaterial)
* [setLengthOfWall](#setlengthofwall)
* [setMeasurePoint1](#setmeasurepoint1)
* [setMeasurePoint2](#setmeasurepoint2)
* [setObjectCustomColor](#setobjectcustomcolor)
* [setObjectFixedZ](#setobjectfixedz)
* [setObjectFlipX](#setobjectflipx)
* [setObjectFlipY](#setobjectflipy)
* [setObjectRotation](#setobjectrotation)
* [setObjectSize](#setobjectsize)
* [setRoomParapetHeight](#setroomparapetheight)
* [setRotationSnapAngle](#setrotationsnapangle)
* [setShowChildrenOfExternalObject](#setshowchildrenofexternalobject)
* [setShowChildrenOfPlanObject](#setshowchildrenofplanobject)
* [setSnapFeedbackWhileDrawing](#setsnapfeedbackwhiledrawing)
* [setViewSnapDist](#setviewsnapdist)
* [setWallHeight](#setwallheight)
* [setWallLeftMaterial](#setwallleftmaterial)
* [setWallRightMaterial](#setwallrightmaterial)
* [setWallThickness](#setwallthickness)
* [setZoomFactor](#setzoomfactor)
* [startInteraction](#startinteraction)
* [undo](#undo)

## Properties

### customRaster

• **customRaster**: `number`

***

### dockWhenSnap

• **dockWhenSnap**: `boolean`

***

### enableDrawingSnap

• **enableDrawingSnap**: `boolean`

***

### enableRaster

• **enableRaster**: `boolean`

***

### enableSnap

• **enableSnap**: `boolean`

***

### objectToObjectSnapMode

• **objectToObjectSnapMode**: [`SnapMode`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/enums/configurator_core_src_roomle_configurator._internal_.snapmode)

***

### objectToWallSnapMode

• **objectToWallSnapMode**: [`SnapMode`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/enums/configurator_core_src_roomle_configurator._internal_.snapmode)

***

### showChildrenOfPlanObjects

• **showChildrenOfPlanObjects**: [`ChildEntityMode`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.childentitymode)

***

### unDockOnMove

• **unDockOnMove**: `boolean`

***

### unit

• **unit**: `string`

## Methods

### addAttic

▸ **addAttic**(`wall`, `kneeHeight`, `width`, `side`): [`KernelAttic`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelattic)

#### Parameters

| Name         | Type                                                                                                                                                      |
| ------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `wall`       | [`KernelWall`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelwall) |
| `kneeHeight` | `number`                                                                                                                                                  |
| `width`      | `number`                                                                                                                                                  |
| `side`       | [`WallSide`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.wallside)     |

#### Returns

[`KernelAttic`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelattic)

***

### addMeasure

▸ **addMeasure**(`startPosition`, `endPosition`): [`PlanMeasure`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.planmeasure)

#### Parameters

| Name            | Type                                                                                                                        |
| --------------- | --------------------------------------------------------------------------------------------------------------------------- |
| `startPosition` | [`KernelVector3f`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/typings_kernel.kernelvector3f) |
| `endPosition`   | [`KernelVector3f`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/typings_kernel.kernelvector3f) |

#### Returns

[`PlanMeasure`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.planmeasure)

***

### addNode

▸ **addNode**(`point`): [`PlanNode`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.plannode)

#### Parameters

| Name      | Type     |
| --------- | -------- |
| `point`   | `Object` |
| `point.x` | `number` |
| `point.y` | `number` |
| `point.z` | `number` |

#### Returns

[`PlanNode`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.plannode)

***

### addOrUpdateExternalPlanObjects

▸ **addOrUpdateExternalPlanObjects**(`serialzedConfiguration`, `position`, `rotationInRad`, `updateConfiguration`, `mergedGroupIds`): [`PlanObject`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.planobject)\[]

#### Parameters

| Name                     | Type                                                                                                                                                                                                |
| ------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `serialzedConfiguration` | `string` \| `string`\[]                                                                                                                                                                             |
| `position`               | [`KernelVector3`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/typings_kernel.kernelvector3)                                                                           |
| `rotationInRad`          | `number`                                                                                                                                                                                            |
| `updateConfiguration`    | [`ExternalObjectLoadConfiguration`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.externalobjectloadconfiguration) |
| `mergedGroupIds`         | `string` \| `string`\[]                                                                                                                                                                             |

#### Returns

[`PlanObject`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.planobject)\[]

***

### addPlanObjectFromItem

▸ **addPlanObjectFromItem**(`object`, `position`, `type`, `findFreeSpaceInPlan`): [`PlanObject`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.planobject)

#### Parameters

| Name                  | Type                                                                                                                                                          |
| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `object`              | [`KernelObject`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelobject) |
| `position`            | [`KernelVector3`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/typings_kernel.kernelvector3)                                     |
| `type`                | `number`                                                                                                                                                      |
| `findFreeSpaceInPlan` | `boolean`                                                                                                                                                     |

#### Returns

[`PlanObject`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.planobject)

***

### addPlanObjects

▸ **addPlanObjects**(`list`, `findFreeSpaceInPlan`): [`PlanObject`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.planobject)\[]

#### Parameters

| Name                  | Type                                                                                                                                  |
| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| `list`                | [`KernelObjectPtrList`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/typings_kernel.kernelobjectptrlist) |
| `findFreeSpaceInPlan` | `boolean`                                                                                                                             |

#### Returns

[`PlanObject`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.planobject)\[]

***

### addWall

▸ **addWall**(`from`, `to`): [`KernelWall`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelwall)

#### Parameters

| Name   | Type                                                                                                                                                  |
| ------ | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
| `from` | [`PlanNode`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.plannode) |
| `to`   | [`PlanNode`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.plannode) |

#### Returns

[`KernelWall`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelwall)

***

### beginDrawing

▸ **beginDrawing**(`point`, `vectorPreviewMode`): `void`

#### Parameters

| Name                | Type      |
| ------------------- | --------- |
| `point`             | `Object`  |
| `point.x`           | `number`  |
| `point.y`           | `number`  |
| `point.z`           | `number`  |
| `vectorPreviewMode` | `boolean` |

#### Returns

`void`

***

### cancelDrawing

▸ **cancelDrawing**(): `void`

#### Returns

`void`

***

### catalogItemLoaded

▸ **catalogItemLoaded**(`catalogItem`): `void`

#### Parameters

| Name          | Type                                                                                                                              |
| ------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| `catalogItem` | [`KernelCatalogItem`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/typings_kernel.kernelcatalogitem) |

#### Returns

`void`

***

### consistsOfMergedComponents

▸ **consistsOfMergedComponents**(`object`): `boolean`

#### Parameters

| Name     | Type                                                                                                                                                          |
| -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `object` | [`KernelObject`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelobject) |

#### Returns

`boolean`

***

### createPlanWithObjectFromItem

▸ **createPlanWithObjectFromItem**(`object`, `position`, `rotationInRad`): [`Plan`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.plan)

#### Parameters

| Name            | Type                                                                                                                                                          |
| --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `object`        | [`KernelObject`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelobject) |
| `position`      | [`KernelVector3`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/typings_kernel.kernelvector3)                                     |
| `rotationInRad` | `number`                                                                                                                                                      |

#### Returns

[`Plan`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.plan)

***

### currentDrawingPosition

▸ **currentDrawingPosition**(`point`): `void`

#### Parameters

| Name      | Type     |
| --------- | -------- |
| `point`   | `Object` |
| `point.x` | `number` |
| `point.y` | `number` |
| `point.z` | `number` |

#### Returns

`void`

***

### deactivateAllSnappingActivity

▸ **deactivateAllSnappingActivity**(): `void`

#### Returns

`void`

***

### duplicatePlanObject

▸ **duplicatePlanObject**(`object`, `count`, `findFreeSpaceInPlan`): [`PlanObject`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.planobject)\[]

#### Parameters

| Name                  | Type                                                                                                                                                      |
| --------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `object`              | [`PlanObject`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.planobject) |
| `count`               | `number`                                                                                                                                                  |
| `findFreeSpaceInPlan` | `boolean`                                                                                                                                                 |

#### Returns

[`PlanObject`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.planobject)\[]

***

### duplicatePlanObjects

▸ **duplicatePlanObjects**(`objects`, `count`, `findFreeSpaceInPlan`): [`PlanObject`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.planobject)\[]

#### Parameters

| Name                  | Type                                                                                                                                                           |
| --------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `objects`             | [`PlanObjectList`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/classes/configurator_core_src_roomle_configurator._internal_.planobjectlist) |
| `count`               | `number`                                                                                                                                                       |
| `findFreeSpaceInPlan` | `boolean`                                                                                                                                                      |

#### Returns

[`PlanObject`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.planobject)\[]

***

### endDrawing

▸ **endDrawing**(`point`): `void`

#### Parameters

| Name      | Type     |
| --------- | -------- |
| `point`   | `Object` |
| `point.x` | `number` |
| `point.y` | `number` |
| `point.z` | `number` |

#### Returns

`void`

***

### endInteraction

▸ **endInteraction**(): `void`

#### Returns

`void`

***

### forceNode

▸ **forceNode**(`point`): `void`

#### Parameters

| Name      | Type     |
| --------- | -------- |
| `point`   | `Object` |
| `point.x` | `number` |
| `point.y` | `number` |
| `point.z` | `number` |

#### Returns

`void`

***

### getConfiguratorKernel

▸ **getConfiguratorKernel**(): [`ConfiguratorKernelClass`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/typings_kernel.configuratorkernelclass)

#### Returns

[`ConfiguratorKernelClass`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/typings_kernel.configuratorkernelclass)

***

### getContinuousDrawingManager

▸ **getContinuousDrawingManager**(): [`ContinuousDrawingManager`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.continuousdrawingmanager)

#### Returns

[`ContinuousDrawingManager`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.continuousdrawingmanager)

***

### getDefaultExteriorWallMaterial

▸ **getDefaultExteriorWallMaterial**(): [`KernelWallMaterial`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelwallmaterial)

#### Returns

[`KernelWallMaterial`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelwallmaterial)

***

### getDefaultFloorMaterial

▸ **getDefaultFloorMaterial**(): [`KernelFloorMaterial`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelfloormaterial)

#### Returns

[`KernelFloorMaterial`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelfloormaterial)

***

### getDefaultInteriorWallMaterial

▸ **getDefaultInteriorWallMaterial**(): [`KernelWallMaterial`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelwallmaterial)

#### Returns

[`KernelWallMaterial`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelwallmaterial)

***

### getPlan

▸ **getPlan**(): [`Plan`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.plan)

#### Returns

[`Plan`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.plan)

***

### getShowChildrenOfPlanObject

▸ **getShowChildrenOfPlanObject**(`object`): [`ChildEntityMode`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.childentitymode)

#### Parameters

| Name     | Type                                                                                                                                                          |
| -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `object` | [`KernelObject`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelobject) |

#### Returns

[`ChildEntityMode`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.childentitymode)

***

### groupObjects

▸ **groupObjects**(`planObjectPtrList`): [`ObjectGroupPtr`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/typings_kernel.objectgroupptr)

#### Parameters

| Name                | Type                                                                                                                                                           |
| ------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `planObjectPtrList` | [`PlanObjectList`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/classes/configurator_core_src_roomle_configurator._internal_.planobjectlist) |

#### Returns

[`ObjectGroupPtr`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/typings_kernel.objectgroupptr)

***

### init

▸ **init**(`reference`, `zoomFactor`, `viewSnapDist`, `wallSnapMode`, `objectSnapMode`, `shouldSnap`, `drawingType`): [`PlanInteractionHandler`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.planinteractionhandler)

#### Parameters

| Name             | Type                                                                                                                                                                              |
| ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `reference`      | [`PlanInteractionHandler`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.planinteractionhandler) |
| `zoomFactor`     | `number`                                                                                                                                                                          |
| `viewSnapDist`   | `number`                                                                                                                                                                          |
| `wallSnapMode`   | `any`                                                                                                                                                                             |
| `objectSnapMode` | `any`                                                                                                                                                                             |
| `shouldSnap`     | `boolean`                                                                                                                                                                         |
| `drawingType`    | `any`                                                                                                                                                                             |

#### Returns

[`PlanInteractionHandler`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.planinteractionhandler)

***

### isRedoPossible

▸ **isRedoPossible**(): `boolean`

#### Returns

`boolean`

***

### isUndoPossible

▸ **isUndoPossible**(): `boolean`

#### Returns

`boolean`

***

### isVectorPreviewModeEnabled

▸ **isVectorPreviewModeEnabled**(): `boolean`

#### Returns

`boolean`

***

### loadPlanXML

▸ **loadPlanXML**(`xml`): [`Plan`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.plan)

#### Parameters

| Name  | Type     |
| ----- | -------- |
| `xml` | `string` |

#### Returns

[`Plan`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.plan)

***

### moveElementBy

▸ **moveElementBy**(`planObject`, `distance`): `void`

#### Parameters

| Name         | Type                                                                                                                                                          |
| ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `planObject` | [`KernelObject`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelobject) |
| `distance`   | [`KernelVector3`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/typings_kernel.kernelvector3)                                     |

#### Returns

`void`

***

### moveElementTo

▸ **moveElementTo**(`planObject`, `point`): `void`

#### Parameters

| Name         | Type                                                                                                                                                          |
| ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `planObject` | [`KernelObject`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelobject) |
| `point`      | [`KernelVector3`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/typings_kernel.kernelvector3)                                     |

#### Returns

`void`

***

### moveObjectsBy

▸ **moveObjectsBy**(`planObjects`, `distance`): `void`

#### Parameters

| Name          | Type                                                                                                                                  |
| ------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| `planObjects` | [`KernelObjectPtrList`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/typings_kernel.kernelobjectptrlist) |
| `distance`    | [`KernelVector3`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/typings_kernel.kernelvector3)             |

#### Returns

`void`

***

### reactivateAllSnappingActivity

▸ **reactivateAllSnappingActivity**(): `void`

#### Returns

`void`

***

### redo

▸ **redo**(): `void`

#### Returns

`void`

***

### removeElement

▸ **removeElement**(`planObject`): `void`

#### Parameters

| Name         | Type                                                                                                                                                          |
| ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `planObject` | [`KernelObject`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelobject) |

#### Returns

`void`

***

### removeObjectWithId

▸ **removeObjectWithId**(`objectId`): `void`

#### Parameters

| Name       | Type     |
| ---------- | -------- |
| `objectId` | `string` |

#### Returns

`void`

***

### resumeInteraction

▸ **resumeInteraction**(): `void`

#### Returns

`void`

***

### rotateGroupBy

▸ **rotateGroupBy**(`group`, `anAngleInRad`, `aroundPoint`): `void`

#### Parameters

| Name           | Type                                                                                                                        |
| -------------- | --------------------------------------------------------------------------------------------------------------------------- |
| `group`        | [`ObjectGroupPtr`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/typings_kernel.objectgroupptr) |
| `anAngleInRad` | `number`                                                                                                                    |
| `aroundPoint`  | [`KernelVector3`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/typings_kernel.kernelvector3)   |

#### Returns

`void`

***

### rotateObjectTo

▸ **rotateObjectTo**(`planObject`, `angleInRad`): `void`

#### Parameters

| Name         | Type                                                                                                                                                          |
| ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `planObject` | [`KernelObject`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelobject) |
| `angleInRad` | `number`                                                                                                                                                      |

#### Returns

`void`

***

### rotateObjectsBy

▸ **rotateObjectsBy**(`planObjectPtrList`, `anAngleInRad`, `aroundPoint`): `void`

#### Parameters

| Name                | Type                                                                                                                                                           |
| ------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `planObjectPtrList` | [`PlanObjectList`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/classes/configurator_core_src_roomle_configurator._internal_.planobjectlist) |
| `anAngleInRad`      | `number`                                                                                                                                                       |
| `aroundPoint`       | [`KernelVector3`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/typings_kernel.kernelvector3)                                      |

#### Returns

`void`

***

### setAtticKneeHeight

▸ **setAtticKneeHeight**(`attic`, `kneeHeight`): `void`

#### Parameters

| Name         | Type                                                                                                                                                        |
| ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `attic`      | [`KernelAttic`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelattic) |
| `kneeHeight` | `number`                                                                                                                                                    |

#### Returns

`void`

***

### setAtticSide

▸ **setAtticSide**(`attic`, `side`): `void`

#### Parameters

| Name    | Type                                                                                                                                                        |
| ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `attic` | [`KernelAttic`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelattic) |
| `side`  | [`WallSide`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.wallside)       |

#### Returns

`void`

***

### setAtticWidth

▸ **setAtticWidth**(`attic`, `width`): `void`

#### Parameters

| Name    | Type                                                                                                                                                        |
| ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `attic` | [`KernelAttic`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelattic) |
| `width` | `number`                                                                                                                                                    |

#### Returns

`void`

***

### setDefaultExteriorWallMaterial

▸ **setDefaultExteriorWallMaterial**(`wallMaterial`): `void`

#### Parameters

| Name           | Type                                                                                                                                                                      |
| -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `wallMaterial` | [`KernelWallMaterial`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelwallmaterial) |

#### Returns

`void`

***

### setDefaultFloorMaterial

▸ **setDefaultFloorMaterial**(`floorMaterial`): `void`

#### Parameters

| Name            | Type                                                                                                                                                                        |
| --------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `floorMaterial` | [`KernelFloorMaterial`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelfloormaterial) |

#### Returns

`void`

***

### setDefaultInteriorWallMaterial

▸ **setDefaultInteriorWallMaterial**(`wallMaterial`): `void`

#### Parameters

| Name           | Type                                                                                                                                                                      |
| -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `wallMaterial` | [`KernelWallMaterial`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelwallmaterial) |

#### Returns

`void`

***

### setDefaultParapetHeight

▸ **setDefaultParapetHeight**(`parapetHeight`, `applyToAll`): `void`

#### Parameters

| Name            | Type      |
| --------------- | --------- |
| `parapetHeight` | `number`  |
| `applyToAll`    | `boolean` |

#### Returns

`void`

***

### setDefaultWallHeight

▸ **setDefaultWallHeight**(`wallHeight`, `applyToAll`): `void`

#### Parameters

| Name         | Type      |
| ------------ | --------- |
| `wallHeight` | `number`  |
| `applyToAll` | `boolean` |

#### Returns

`void`

***

### setDefaultWallThickness

▸ **setDefaultWallThickness**(`wallThickness`, `applyToAll`): `void`

#### Parameters

| Name            | Type      |
| --------------- | --------- |
| `wallThickness` | `number`  |
| `applyToAll`    | `boolean` |

#### Returns

`void`

***

### setDiscardExternalObjectsOnLoad

▸ **setDiscardExternalObjectsOnLoad**(`discard`): `void`

#### Parameters

| Name      | Type      |
| --------- | --------- |
| `discard` | `boolean` |

#### Returns

`void`

***

### setDrawingType

▸ **setDrawingType**(`aNewDrawingType`): `void`

#### Parameters

| Name              | Type                                                                                                                                                   |
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `aNewDrawingType` | [`DrawingType`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/enums/configurator_core_src_roomle_configurator._internal_.drawingtype) |

#### Returns

`void`

***

### setElementVisibility

▸ **setElementVisibility**(`element`, `isVisible`): `void`

#### Parameters

| Name        | Type                                                                                                                                                        |
| ----------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `element`   | [`PlanElement`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.planelement) |
| `isVisible` | `boolean`                                                                                                                                                   |

#### Returns

`void`

***

### setFloorLabelObject

▸ **setFloorLabelObject**(`floor`, `serializedLabelObject`): `void`

#### Parameters

| Name                    | Type                                                                                                                                                        |
| ----------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `floor`                 | [`KernelFloor`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelfloor) |
| `serializedLabelObject` | `string`                                                                                                                                                    |

#### Returns

`void`

***

### setFloorMaterial

▸ **setFloorMaterial**(`floor`, `material`): `void`

#### Parameters

| Name       | Type                                                                                                                                                                        |
| ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `floor`    | [`KernelFloor`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelfloor)                 |
| `material` | [`KernelFloorMaterial`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelfloormaterial) |

#### Returns

`void`

***

### setLengthOfWall

▸ **setLengthOfWall**(`wall`, `length`, `preferredSide`, `direction`, `moveOrthogonalWalls`): `void`

#### Parameters

| Name                  | Type                                                                                                                                                      |
| --------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `wall`                | [`KernelWall`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelwall) |
| `length`              | `number`                                                                                                                                                  |
| `preferredSide`       | [`WallSide`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.wallside)     |
| `direction`           | [`EMSConstant`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/classes/configurator_core_src_roomle_configurator._internal_.emsconstant)  |
| `moveOrthogonalWalls` | `boolean`                                                                                                                                                 |

#### Returns

`void`

***

### setMeasurePoint1

▸ **setMeasurePoint1**(`measure`, `point`, `snapToWalls`, `snapToObjects`): `void`

#### Parameters

| Name            | Type                                                                                                                                                        |
| --------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `measure`       | [`PlanMeasure`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.planmeasure) |
| `point`         | [`KernelVector3f`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/typings_kernel.kernelvector3f)                                 |
| `snapToWalls`   | `boolean`                                                                                                                                                   |
| `snapToObjects` | `boolean`                                                                                                                                                   |

#### Returns

`void`

***

### setMeasurePoint2

▸ **setMeasurePoint2**(`measure`, `point`, `snapToWalls`, `snapToObjects`): `void`

#### Parameters

| Name            | Type                                                                                                                                                        |
| --------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `measure`       | [`PlanMeasure`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.planmeasure) |
| `point`         | [`KernelVector3f`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/typings_kernel.kernelvector3f)                                 |
| `snapToWalls`   | `boolean`                                                                                                                                                   |
| `snapToObjects` | `boolean`                                                                                                                                                   |

#### Returns

`void`

***

### setObjectCustomColor

▸ **setObjectCustomColor**(`anObject`, `aCustomColor`): `void`

#### Parameters

| Name           | Type                                                                                                                                                          |
| -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `anObject`     | [`KernelObject`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelobject) |
| `aCustomColor` | `number`                                                                                                                                                      |

#### Returns

`void`

***

### setObjectFixedZ

▸ **setObjectFixedZ**(`anObject`, `shouldFlipZ`): `void`

#### Parameters

| Name          | Type                                                                                                                                                          |
| ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `anObject`    | [`KernelObject`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelobject) |
| `shouldFlipZ` | `boolean`                                                                                                                                                     |

#### Returns

`void`

***

### setObjectFlipX

▸ **setObjectFlipX**(`anObject`, `shouldFlipX`): `void`

#### Parameters

| Name          | Type                                                                                                                                                          |
| ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `anObject`    | [`KernelObject`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelobject) |
| `shouldFlipX` | `boolean`                                                                                                                                                     |

#### Returns

`void`

***

### setObjectFlipY

▸ **setObjectFlipY**(`anObject`, `shouldFlipY`): `void`

#### Parameters

| Name          | Type                                                                                                                                                          |
| ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `anObject`    | [`KernelObject`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelobject) |
| `shouldFlipY` | `boolean`                                                                                                                                                     |

#### Returns

`void`

***

### setObjectRotation

▸ **setObjectRotation**(`planObject`, `angleInRad`): `void`

#### Parameters

| Name         | Type                                                                                                                                                          |
| ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `planObject` | [`KernelObject`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelobject) |
| `angleInRad` | `number`                                                                                                                                                      |

#### Returns

`void`

***

### setObjectSize

▸ **setObjectSize**(`anObject`, `aNewSize`, `anAnchor`): `void`

#### Parameters

| Name       | Type                                                                                                                                                          |
| ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `anObject` | [`KernelObject`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelobject) |
| `aNewSize` | [`KernelVector3`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/typings_kernel.kernelvector3)                                     |
| `anAnchor` | [`Anchor`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.anchor)             |

#### Returns

`void`

***

### setRoomParapetHeight

▸ **setRoomParapetHeight**(`floor`, `parapetHeight`): `void`

#### Parameters

| Name            | Type                                                                                                                                                        |
| --------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `floor`         | [`KernelFloor`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelfloor) |
| `parapetHeight` | `number`                                                                                                                                                    |

#### Returns

`void`

***

### setRotationSnapAngle

▸ **setRotationSnapAngle**(`angleInRadians`): `void`

#### Parameters

| Name             | Type     |
| ---------------- | -------- |
| `angleInRadians` | `number` |

#### Returns

`void`

***

### setShowChildrenOfExternalObject

▸ **setShowChildrenOfExternalObject**(`objectId`, `mode`, `switchChildModeOffForAllOtherObjects`): `void`

#### Parameters

| Name                                   | Type                                                                                                                                                                |
| -------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `objectId`                             | `string`                                                                                                                                                            |
| `mode`                                 | [`ChildEntityMode`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.childentitymode) |
| `switchChildModeOffForAllOtherObjects` | `boolean`                                                                                                                                                           |

#### Returns

`void`

***

### setShowChildrenOfPlanObject

▸ **setShowChildrenOfPlanObject**(`object`, `mode`, `switchChildModeOffForAllOtherObjects`): `void`

#### Parameters

| Name                                   | Type                                                                                                                                                                |
| -------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `object`                               | [`KernelObject`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelobject)       |
| `mode`                                 | [`ChildEntityMode`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.childentitymode) |
| `switchChildModeOffForAllOtherObjects` | `boolean`                                                                                                                                                           |

#### Returns

`void`

***

### setSnapFeedbackWhileDrawing

▸ **setSnapFeedbackWhileDrawing**(`enabled`): `void`

#### Parameters

| Name      | Type      |
| --------- | --------- |
| `enabled` | `boolean` |

#### Returns

`void`

***

### setViewSnapDist

▸ **setViewSnapDist**(`aDist`): `void`

#### Parameters

| Name    | Type     |
| ------- | -------- |
| `aDist` | `number` |

#### Returns

`void`

***

### setWallHeight

▸ **setWallHeight**(`wall`, `height`): `void`

#### Parameters

| Name     | Type                                                                                                                                                      |
| -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `wall`   | [`KernelWall`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelwall) |
| `height` | `number`                                                                                                                                                  |

#### Returns

`void`

***

### setWallLeftMaterial

▸ **setWallLeftMaterial**(`wall`, `material`): `void`

#### Parameters

| Name       | Type                                                                                                                                                                      |
| ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `wall`     | [`KernelWall`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelwall)                 |
| `material` | [`KernelWallMaterial`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelwallmaterial) |

#### Returns

`void`

***

### setWallRightMaterial

▸ **setWallRightMaterial**(`wall`, `material`): `void`

#### Parameters

| Name       | Type                                                                                                                                                                      |
| ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `wall`     | [`KernelWall`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelwall)                 |
| `material` | [`KernelWallMaterial`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelwallmaterial) |

#### Returns

`void`

***

### setWallThickness

▸ **setWallThickness**(`wall`, `thickness`): `void`

#### Parameters

| Name        | Type                                                                                                                                                      |
| ----------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `wall`      | [`KernelWall`](https://docs.roomle.com/rubens/rubens-sdk/rubens-sdk-reference/interfaces/configurator_core_src_roomle_configurator._internal_.kernelwall) |
| `thickness` | `number`                                                                                                                                                  |

#### Returns

`void`

***

### setZoomFactor

▸ **setZoomFactor**(`pxPerMM`): `void`

#### Parameters

| Name      | Type     |
| --------- | -------- |
| `pxPerMM` | `number` |

#### Returns

`void`

***

### startInteraction

▸ **startInteraction**(): `void`

#### Returns

`void`

***

### undo

▸ **undo**(): `void`

#### Returns

`void`
