editor › Globals › AddPlateTool
Class: AddPlateTool
Hierarchy
↳ AddPlateTool
Index
Constructors
Properties
- accessUiComponent
- animationFunction
- assembly
- chosenUiManifestation
- clickedMesh
- clickedSurface
- closestEdge
- compositeModel
- continueInteractionOnAnimate
- currentRotateButton
- defaultLength
- editor
- hintManager
- maxOptions
- newSSD
- nextIndex
- parameters
- pauseFidelityControl
- pausePhysicsSimulation
- plateOptions
- plateSide
- plateThickness
- plateType
- renderContext
- threeNode
- undoEngine
- userMessageEventEmitter
- userProgressCancelEventEmitter
- userProgressEventEmitter
- userProgressFinishEventEmitter
- visualizationManager
- wakeUpCallback
- debouncedFlush
- finishPromise
Methods
- _addPlate
- _addSinglePlate
- _applyDependentModelElements
- _calculateCoplanarPlateOptions
- _calculateCrossTJoinedPlateOptions
- _calculateGridIntersectionPoints
- _calculateOrthogonalPlateOptions
- _calculateTrianglePlateOptions
- _findClosestEdge
- _generateMeshFromEdge
- _generateOptions
- _generateSingleSurfaceDescriptorInEmptySpace
- _getClosestIntersections
- _getHeightOptions
- _getStartEndOptions
- _inferGridOnLine
- _mergePlates
- _pushStartEndOption
- _showRotateButton
- _sortOptions
- _uniquifyPlateOptions
- cancel
- cancelUserProgress
- clickInteraction
- consecutiveClick
- continueInteraction
- displayUserMessage
- displayUserProgress
- equals
- finishInteraction
- finishUserProgress
- getAnimationFunction
- getCanHandleMultipleInteractions
- getCanWorkWithHints
- getChosenUiManifestation
- getCompositeModel
- getEditor
- getHintManager
- getInteractionCancelled
- getInteractionStarted
- getInternalName
- getManifestationParameters
- getParameters
- getPauseFidelityControl
- getPausePhysicsSimulation
- getRenderContext
- getReproduceInfo
- getRequiresContinuousModelIntersection
- getThreeNode
- getUiComponentAccessMethod
- getUndoEngine
- getUserMessageEventEmitter
- getUserProgressCancelEventEmitter
- getUserProgressEventEmitter
- getUserProgressFinishEventEmitter
- getVisualizationManager
- getWakeUpCallback
- getWorksInEmptySpace
- getWorksWithConsecutiveClicks
- needsReset
- startInteraction
- canHandleInteraction
- getInternalName
- keepLastBoxelUnMerged
- onSelected
- onUserDeselected
- requiresHintReset
Constructors
constructor
+ new AddPlateTool(chosenUiManifestation: IToolManifestation, options: IToolOptions): AddPlateTool
Inherited from BoxelTool.constructor
Defined in src/tools/Tool.ts:162
Parameters:
| Name | Type | Description |
|---|---|---|
chosenUiManifestation |
IToolManifestation | the manifestation object as chosen by the user |
options |
IToolOptions | - |
Returns: AddPlateTool
Properties
Protected Readonly accessUiComponent
• accessUiComponent: any = null
Inherited from BoxelTool.accessUiComponent
Defined in src/tools/Tool.ts:151
Protected Readonly animationFunction
• animationFunction: function = null
Inherited from BoxelTool.animationFunction
Defined in src/tools/Tool.ts:147
Type declaration:
▸ (animation: any): void
Parameters:
| Name | Type |
|---|---|
animation |
any |
Private assembly
• assembly: Assembly
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:81
Protected Readonly chosenUiManifestation
• chosenUiManifestation: IToolManifestation
Inherited from BoxelTool.chosenUiManifestation
Defined in src/tools/Tool.ts:162
Private clickedMesh
• clickedMesh: Mesh
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:83
Private clickedSurface
• clickedSurface: MeshSurface
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:84
Private closestEdge
• closestEdge: MeshHalfEdge
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:74
Protected Readonly compositeModel
• compositeModel: CompositeModel | null = null
Inherited from BoxelTool.compositeModel
Defined in src/tools/Tool.ts:141
Protected Readonly continueInteractionOnAnimate
• continueInteractionOnAnimate: boolean = false
Inherited from BoxelTool.continueInteractionOnAnimate
Defined in src/tools/Tool.ts:133
Private currentRotateButton
• currentRotateButton: FloatieHint | null = null
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:90
Private Readonly defaultLength
• defaultLength: number = Config.get("plates.size", 25)
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:89
Protected Readonly editor
• editor: Editor | null = null
Inherited from BoxelTool.editor
Defined in src/tools/Tool.ts:145
Protected Readonly hintManager
• hintManager: HintManager = null
Inherited from BoxelTool.hintManager
Defined in src/tools/Tool.ts:153
Private Readonly maxOptions
• maxOptions: number = Config.get("addPlate.maximumNumberOfPlateOptions", 12)
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:87
Private newSSD
• newSSD: SingleSurfaceDescriptor
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:82
Private nextIndex
• nextIndex: number = 0
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:88
Protected Readonly parameters
• parameters: any = null
Inherited from BoxelTool.parameters
Defined in src/tools/Tool.ts:160
Protected Readonly pauseFidelityControl
• pauseFidelityControl: boolean = true
Inherited from BoxelTool.pauseFidelityControl
Defined in src/tools/Tool.ts:137
Protected Readonly pausePhysicsSimulation
• pausePhysicsSimulation: boolean = false
Inherited from AssemblePlateTool.pausePhysicsSimulation
Defined in src/tools/Tool.ts:135
Private plateOptions
• plateOptions: PlateOption[] = []
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:86
Private plateSide
• plateSide: PlateSide = null
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:77
Private plateThickness
• plateThickness: number = Config.get("plates.defaultMaterialThickness", 4)
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:80
Private plateType
• plateType: "coplanar" | "orthogonal" | "crossJoined" | "tJoined" | "polygonal" | "stacked" | "triangle"
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:79
Protected Readonly renderContext
• renderContext: RenderContext | null = null
Inherited from BoxelTool.renderContext
Defined in src/tools/Tool.ts:143
Protected Readonly threeNode
• threeNode: Object3D = null
Inherited from BoxelTool.threeNode
Defined in src/tools/Tool.ts:139
Protected Readonly undoEngine
• undoEngine: UndoEngine | null = null
Inherited from BoxelTool.undoEngine
Defined in src/tools/Tool.ts:155
Protected Readonly userMessageEventEmitter
• userMessageEventEmitter: EventEmitter‹string› = new EventEmitter
Inherited from BoxelTool.userMessageEventEmitter
Defined in src/tools/Tool.ts:126
Protected Readonly userProgressCancelEventEmitter
• userProgressCancelEventEmitter: EventEmitter‹number› = new EventEmitter
Inherited from BoxelTool.userProgressCancelEventEmitter
Defined in src/tools/Tool.ts:129
Protected Readonly userProgressEventEmitter
• userProgressEventEmitter: EventEmitter‹IToolUserProgressEvent› = new EventEmitter()
Inherited from BoxelTool.userProgressEventEmitter
Defined in src/tools/Tool.ts:127
Protected Readonly userProgressFinishEventEmitter
• userProgressFinishEventEmitter: EventEmitter‹number› = new EventEmitter
Inherited from BoxelTool.userProgressFinishEventEmitter
Defined in src/tools/Tool.ts:128
Protected Readonly visualizationManager
• visualizationManager: VisualizationManager | null = null
Inherited from BoxelTool.visualizationManager
Defined in src/tools/Tool.ts:157
Protected Readonly wakeUpCallback
• wakeUpCallback: function = null
Inherited from BoxelTool.wakeUpCallback
Defined in src/tools/Tool.ts:149
Type declaration:
▸ (): void
Static debouncedFlush
▪ debouncedFlush: DebouncedFunc‹function› = null
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:52
Static finishPromise
▪ finishPromise: Promise‹boolean› = null
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:53
Methods
Private _addPlate
▸ _addPlate(interactionData: IInteractionData, foundElement: any): void
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:211
Generates a new ssd and adds it to an existing assembly.
Parameters:
| Name | Type | Description |
|---|---|---|
interactionData |
IInteractionData | - |
foundElement |
any | The element of an assembly to which the plate gets added to. |
Returns: void
Private _addSinglePlate
▸ _addSinglePlate(intersectionPoint: ReadonlyVector3): void
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:192
Generates a new ssd which won't be added to an existing assembly.
Parameters:
| Name | Type |
|---|---|
intersectionPoint |
ReadonlyVector3 |
Returns: void
Private _applyDependentModelElements
▸ _applyDependentModelElements(): void
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:277
Returns: void
Private _calculateCoplanarPlateOptions
▸ _calculateCoplanarPlateOptions(intersectionPoint: ReadonlyVector3): void
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:628
Parameters:
| Name | Type |
|---|---|
intersectionPoint |
ReadonlyVector3 |
Returns: void
Private _calculateCrossTJoinedPlateOptions
▸ _calculateCrossTJoinedPlateOptions(intersectionPoint: ReadonlyVector3): void
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:770
Creates the plate options for cross- and t-Plates. This is done by first determining the possible vertical extrude directions though the edges of the clickedSurface and then getting all possible grid positions in this direction via _calculateGridIntersectionPoints.
Parameters:
| Name | Type | Description |
|---|---|---|
intersectionPoint |
ReadonlyVector3 | in world coordinates |
Returns: void
Private _calculateGridIntersectionPoints
▸ _calculateGridIntersectionPoints(intersectionPoint: ReadonlyVector3, direction: MeshHalfEdge): Vector3[]
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:724
Determines all grid positions in relation to the intersection point by bisecting the edge along its direction x times according to its length. (below 100: once; above 100: twice) Also every calculated intersection point which is not in the clicked surface is dropped. e.g. for edge length 80: o = offset, X = original intersection point, Y = calculated grid position intersection point, y = dropped calculated grid position intersection point
this edge is given ┌────────────┐ | o o ┌──┘ | Y X Y |y | | | | └─────────┘
Parameters:
| Name | Type | Description |
|---|---|---|
intersectionPoint |
ReadonlyVector3 | in world coordinates |
direction |
MeshHalfEdge | edge in mesh coordinates |
Returns: Vector3[]
the new intersection points on the grid
Private _calculateOrthogonalPlateOptions
▸ _calculateOrthogonalPlateOptions(intersectionPoint: ReadonlyVector3): void
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:673
Parameters:
| Name | Type |
|---|---|
intersectionPoint |
ReadonlyVector3 |
Returns: void
Private _calculateTrianglePlateOptions
▸ _calculateTrianglePlateOptions(intersectionPoint: ReadonlyVector3): void
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:530
Creates the plate options for coplanar triangle plates by calculating corner points from the mesh and interaction data
Parameters:
| Name | Type |
|---|---|
intersectionPoint |
ReadonlyVector3 |
Returns: void
Private _findClosestEdge
▸ _findClosestEdge(surface: MeshSurface, meshIntersectionPoint: Vector3): MeshHalfEdge
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:237
Search for the closest edge of the clicked surface and return it.
Parameters:
| Name | Type |
|---|---|
surface |
MeshSurface |
meshIntersectionPoint |
Vector3 |
Returns: MeshHalfEdge
Private _generateMeshFromEdge
▸ _generateMeshFromEdge(intersectionPoint: ReadonlyVector3): SingleSurfaceDescriptor
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:363
Parameters:
| Name | Type |
|---|---|
intersectionPoint |
ReadonlyVector3 |
Returns: SingleSurfaceDescriptor
Private _generateOptions
▸ _generateOptions(plane: Plane, intersectionPoint: ReadonlyVector3, plateIntersectionDirection: Vector3): void
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:803
Inflates the 1D start end options (see _getStartEndOptions) into 2d plate options. It also adds plate options for different heights if possible (see _getHeightOptions). Everything is in assembly coordinates
Parameters:
| Name | Type | Description |
|---|---|---|
plane |
Plane | the plane where the new plate will be in |
intersectionPoint |
ReadonlyVector3 | - |
plateIntersectionDirection |
Vector3 | the line where the new plates plane intersects the clicked plate |
Returns: void
generates different options for the new plate outline based on different combinations of start/end points and height
Private _generateSingleSurfaceDescriptorInEmptySpace
▸ _generateSingleSurfaceDescriptorInEmptySpace(): SingleSurfaceDescriptor
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:459
Returns: SingleSurfaceDescriptor
Private _getClosestIntersections
▸ _getClosestIntersections(intersections: ReadonlyVector3[], referencePoint: ReadonlyVector3, direction: Vector3): object
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:960
given intersection points and a reference point that are on line, find the closest points to both sides of the reference point since in 3d there is no left or right we need a direction to differentiate both sides e.g giving 6 intersection points and the reference point r, the function returns the third and fourth point
1 2 3 r 4 5 6 x x x o x x x
If all intersection points lie on one side the two closest will be returned.
Parameters:
| Name | Type |
|---|---|
intersections |
ReadonlyVector3[] |
referencePoint |
ReadonlyVector3 |
direction |
Vector3 |
Returns: object
-
end: ReadonlyVector3
-
start: ReadonlyVector3
Private _getHeightOptions
▸ _getHeightOptions(plane: Plane): number[]
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:994
Parameters:
| Name | Type | Description |
|---|---|---|
plane |
Plane | the plane in assembly coordinates where the new plate will be in |
Returns: number[]
the possible heights that the new plate could have based on the heights of plates connected to the clicked plate and plate intersections with the new plates plane
Private _getStartEndOptions
▸ _getStartEndOptions(intersectionPoint: ReadonlyVector3, plateIntersectionDirection: Vector3): StartEndOption[]
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:892
everything in assembly coordinates
Parameters:
| Name | Type | Description |
|---|---|---|
intersectionPoint |
ReadonlyVector3 | - |
plateIntersectionDirection |
Vector3 | the direction of the line where the new plates plane intersects the clicked plate |
Returns: StartEndOption[]
returns options for the start and end points of the new plate along the surface of the clicked plate
Private _inferGridOnLine
▸ _inferGridOnLine(line: Line3, intersectionPoint: ReadonlyVector3, clampToLine: boolean): StartEndOption[]
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:1040
Parameters:
| Name | Type | Default |
|---|---|---|
line |
Line3 | - |
intersectionPoint |
ReadonlyVector3 | - |
clampToLine |
boolean | true |
Returns: StartEndOption[]
Private _mergePlates
▸ _mergePlates(): Promise‹boolean›
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:453
Returns: Promise‹boolean›
Private _pushStartEndOption
▸ _pushStartEndOption(startEndOptions: StartEndOption[], line: Line3, lineDirection: Vector3, offset: number, fromStart: boolean): StartEndOption[]
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:1084
Calculates the start and end option of a plate for a given line and offset and pushes them in an input array. Little helper method for _inferGridOnLine in order to have less code repetition.
Parameters:
| Name | Type | Description |
|---|---|---|
startEndOptions |
StartEndOption[] | array where the calculated start and end get pushed into |
line |
Line3 | line on which the start and end option lie |
lineDirection |
Vector3 | direction in which the end option gets extruded from the start option |
offset |
number | where the start option should be located on the line |
fromStart |
boolean | whether the calculation should occure going out from the line start or end |
Returns: StartEndOption[]
startEndOptions with the new option pushed
Private _showRotateButton
▸ _showRotateButton(intersectionPoint: ReadonlyVector3): void
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:471
Parameters:
| Name | Type |
|---|---|
intersectionPoint |
ReadonlyVector3 |
Returns: void
Private _sortOptions
▸ _sortOptions(intersectionPoint: ReadonlyVector3): void
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:1108
Sorts all plate options accordingly to their distance to the interesection point. For that the score of each plate option is calculated. (lower is better) ToDo: Better scoring. e.g.: - options that bisect a longer edge should get a higher score than those which bisect a shorter edge - options that bisect an edge should get a higher score than those which quarter it - options that aign with other e.g. edges should get a higher score
Parameters:
| Name | Type | Description |
|---|---|---|
intersectionPoint |
ReadonlyVector3 | in world coordinates |
Returns: void
Private _uniquifyPlateOptions
▸ _uniquifyPlateOptions(): void
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:1126
Filters all plate options with equal positioning out regardless of point order. For this only the first three points get matched because plates are usually either tri- or rectangular.
Returns: void
cancel
▸ cancel(): void
Overrides MirrorTool.cancel
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:180
Returns: void
cancelUserProgress
▸ cancelUserProgress(id: number): void
Inherited from BoxelTool.cancelUserProgress
Defined in src/tools/Tool.ts:234
Parameters:
| Name | Type |
|---|---|
id |
number |
Returns: void
clickInteraction
▸ clickInteraction(mappingResult: IMapping, interactionData: IInteractionData): Promise‹boolean› | void
Inherited from BoxelTool.clickInteraction
Defined in src/tools/Tool.ts:371
Called when tool interaction is finished and the user performed a first click interaction, not a drag interaction. This method is called after startInteraction was called. It is also called by consecutiveClick if no custom implementation has been created. Implementing this method is optional, but the default is to forward the call to Tool.finishInteraction.
Parameters:
| Name | Type | Description |
|---|---|---|
mappingResult |
IMapping | object returned from the InteractionMapping specified in startInteraction() or null |
interactionData |
IInteractionData | - |
Returns: Promise‹boolean› | void
Same as Tool.finishInteraction
consecutiveClick
▸ consecutiveClick(mappingResult: IMapping, interactionData: IInteractionData, n: number): Promise‹boolean› | void
Inherited from BoxelTool.consecutiveClick
Defined in src/tools/Tool.ts:386
Called after start, continue when there has been a consecutive click, signaling that there has been a double or triple etc. click. It never signals the first click! No new tool instance will be created, consecutiveClick will be called on the same instance that already received the click. It will only be called if the tool specifies worksWithConsecutiveClick as true in the toolManifestations Defaults to forwarding the interaction to Tool.clickInteraction
Parameters:
| Name | Type | Default | Description |
|---|---|---|---|
mappingResult |
IMapping | - | object returned from the InteractionMapping specified in startInteraction() or null |
interactionData |
IInteractionData | - | - |
n |
number | 2 | the in in this is the nTh click. The first click (consumed by clickInteraction) would have n=1, so the lowest value in consecutiveClick is 2. |
Returns: Promise‹boolean› | void
Same as Tool.finishInteraction
continueInteraction
▸ continueInteraction(): void
Overrides Tool.continueInteraction
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:161
Returns: void
displayUserMessage
▸ displayUserMessage(message: string): void
Inherited from BoxelTool.displayUserMessage
Defined in src/tools/Tool.ts:216
Parameters:
| Name | Type |
|---|---|
message |
string |
Returns: void
displayUserProgress
▸ displayUserProgress(id: number, progress: number, message: string, type: string, cancelFunction: function): void
Inherited from BoxelTool.displayUserProgress
Defined in src/tools/Tool.ts:220
Parameters:
▪ id: number
▪ progress: number
▪ message: string
▪ type: string
▪ cancelFunction: function
▸ (): void
Returns: void
equals
▸ equals(otherTool: Tool): boolean
Inherited from BoxelTool.equals
Defined in src/tools/Tool.ts:410
Parameters:
| Name | Type |
|---|---|
otherTool |
Tool |
Returns: boolean
whether otherTool is the same kind of tool as this one
finishInteraction
▸ finishInteraction(_mappingResult: any, interactionData: IInteractionData): Promise‹boolean› | null
Overrides Tool.finishInteraction
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:165
Parameters:
| Name | Type |
|---|---|
_mappingResult |
any |
interactionData |
IInteractionData |
Returns: Promise‹boolean› | null
finishUserProgress
▸ finishUserProgress(id: number): void
Inherited from BoxelTool.finishUserProgress
Defined in src/tools/Tool.ts:230
Parameters:
| Name | Type |
|---|---|
id |
number |
Returns: void
getAnimationFunction
▸ getAnimationFunction(): function
Inherited from BoxelTool.getAnimationFunction
Defined in src/tools/Tool.ts:284
Returns: function
the addAnimation function of the render context
▸ (animation: any): void
Parameters:
| Name | Type |
|---|---|
animation |
any |
getCanHandleMultipleInteractions
▸ getCanHandleMultipleInteractions(): boolean
Inherited from BoxelTool.getCanHandleMultipleInteractions
Defined in src/tools/Tool.ts:242
Returns: boolean
getCanWorkWithHints
▸ getCanWorkWithHints(): boolean
Inherited from BoxelTool.getCanWorkWithHints
Defined in src/tools/Tool.ts:238
Returns: boolean
getChosenUiManifestation
▸ getChosenUiManifestation(): IToolManifestation
Inherited from BoxelTool.getChosenUiManifestation
Defined in src/tools/Tool.ts:258
Returns: IToolManifestation
getCompositeModel
▸ getCompositeModel(): CompositeModel | null
Inherited from BoxelTool.getCompositeModel
Defined in src/tools/Tool.ts:307
Returns: CompositeModel | null
getEditor
▸ getEditor(): Editor | null
Inherited from BoxelTool.getEditor
Defined in src/tools/Tool.ts:288
Returns: Editor | null
getHintManager
▸ getHintManager(): HintManager
Inherited from BoxelTool.getHintManager
Defined in src/tools/Tool.ts:311
Returns: HintManager
getInteractionCancelled
▸ getInteractionCancelled(): object
Inherited from BoxelTool.getInteractionCancelled
Defined in src/tools/Tool.ts:188
Returns: object
- interaction: InteractionCancelled
getInteractionStarted
▸ getInteractionStarted‹T›(mappings: T): object
Inherited from BoxelTool.getInteractionStarted
Defined in src/tools/Tool.ts:176
Type parameters:
▪ T: AbstractInteractionMapping[]
Parameters:
| Name | Type | Default |
|---|---|---|
mappings |
T | [] as T |
Returns: object
-
interaction: InteractionStartedReturnValues
-
mappings: T
getInternalName
▸ getInternalName(): string
Inherited from BoxelTool.getInternalName
Defined in src/tools/Tool.ts:433
Get tool name from the instance
Returns: string
getManifestationParameters
▸ getManifestationParameters(): any
Inherited from BoxelTool.getManifestationParameters
Defined in src/tools/Tool.ts:269
Returns: any
the parameters that were specified in the tool manifestation
getParameters
▸ getParameters(): any
Inherited from BoxelTool.getParameters
Defined in src/tools/Tool.ts:262
Returns: any
getPauseFidelityControl
▸ getPauseFidelityControl(): boolean
Inherited from BoxelTool.getPauseFidelityControl
Defined in src/tools/Tool.ts:254
Returns: boolean
getPausePhysicsSimulation
▸ getPausePhysicsSimulation(): boolean
Inherited from BoxelTool.getPausePhysicsSimulation
Defined in src/tools/Tool.ts:250
Returns: boolean
getRenderContext
▸ getRenderContext(): RenderContext
Inherited from BoxelTool.getRenderContext
Defined in src/tools/Tool.ts:273
Returns: RenderContext
getReproduceInfo
▸ getReproduceInfo(): ISerializableObject
Inherited from BoxelTool.getReproduceInfo
Defined in src/tools/Tool.ts:426
returns information to reproduce the current state of the tool on error. Can essentially be any object, should be human-readable and enable you to understand the error when looking at a log.
Returns: ISerializableObject
getRequiresContinuousModelIntersection
▸ getRequiresContinuousModelIntersection(): boolean
Inherited from BoxelTool.getRequiresContinuousModelIntersection
Defined in src/tools/Tool.ts:246
Returns: boolean
getThreeNode
▸ getThreeNode(): Object3D
Inherited from BoxelTool.getThreeNode
Defined in src/tools/Tool.ts:303
Returns the reference to the THREE node
Returns: Object3D
getUiComponentAccessMethod
▸ getUiComponentAccessMethod(): any
Inherited from BoxelTool.getUiComponentAccessMethod
Defined in src/tools/Tool.ts:296
Returns: any
getUndoEngine
▸ getUndoEngine(): UndoEngine
Inherited from BoxelTool.getUndoEngine
Defined in src/tools/Tool.ts:277
Returns: UndoEngine
getUserMessageEventEmitter
▸ getUserMessageEventEmitter(): IPublicEventEmitterInterface‹string›
Inherited from BoxelTool.getUserMessageEventEmitter
Defined in src/tools/Tool.ts:200
Returns: IPublicEventEmitterInterface‹string›
getUserProgressCancelEventEmitter
▸ getUserProgressCancelEventEmitter(): IPublicEventEmitterInterface‹number›
Inherited from BoxelTool.getUserProgressCancelEventEmitter
Defined in src/tools/Tool.ts:212
Returns: IPublicEventEmitterInterface‹number›
getUserProgressEventEmitter
▸ getUserProgressEventEmitter(): IPublicEventEmitterInterface‹IToolUserProgressEvent›
Inherited from BoxelTool.getUserProgressEventEmitter
Defined in src/tools/Tool.ts:204
Returns: IPublicEventEmitterInterface‹IToolUserProgressEvent›
getUserProgressFinishEventEmitter
▸ getUserProgressFinishEventEmitter(): IPublicEventEmitterInterface‹number›
Inherited from BoxelTool.getUserProgressFinishEventEmitter
Defined in src/tools/Tool.ts:208
Returns: IPublicEventEmitterInterface‹number›
getVisualizationManager
▸ getVisualizationManager(): VisualizationManager
Inherited from BoxelTool.getVisualizationManager
Defined in src/tools/Tool.ts:315
Returns: VisualizationManager
getWakeUpCallback
▸ getWakeUpCallback(): function
Inherited from BoxelTool.getWakeUpCallback
Defined in src/tools/Tool.ts:292
Returns: function
▸ (): void
getWorksInEmptySpace
▸ getWorksInEmptySpace(): boolean
Inherited from BoxelTool.getWorksInEmptySpace
Defined in src/tools/Tool.ts:192
Returns: boolean
getWorksWithConsecutiveClicks
▸ getWorksWithConsecutiveClicks(): boolean
Inherited from BoxelTool.getWorksWithConsecutiveClicks
Defined in src/tools/Tool.ts:196
Returns: boolean
needsReset
▸ needsReset(): boolean
Inherited from BoxelTool.needsReset
Defined in src/tools/Tool.ts:394
If the model should be reset when another tool takes over. Only used to declare no need for resets on non-sticky multiclicks with the moveTool as the default tool.
Returns: boolean
startInteraction
▸ startInteraction(interactionData: IInteractionData): object | object
Overrides Tool.startInteraction
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:92
Parameters:
| Name | Type |
|---|---|
interactionData |
IInteractionData |
Returns: object | object
Static canHandleInteraction
▸ canHandleInteraction(interactionData: IInteractionData): CanHandleInteractionResult
Overrides BoxelTool.canHandleInteraction
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:59
Parameters:
| Name | Type |
|---|---|
interactionData |
IInteractionData |
Returns: CanHandleInteractionResult
Static getInternalName
▸ getInternalName(): string
Overrides BoxelTool.getInternalName
Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:55
Returns: string
Static keepLastBoxelUnMerged
▸ keepLastBoxelUnMerged(): boolean
Inherited from AssemblePlateTool.keepLastBoxelUnMerged
Defined in src/tools/Tool.ts:122
When the tool is selected and this returns true, the last boxel in the boxelqueue will stay unconnected to the base mesh so we can apply rotations to it.
Returns: boolean
Static onSelected
▸ onSelected(editorInstance: Editor, toolManifestation?: IToolManifestation, parameters?: any): boolean
Inherited from BoxelTool.onSelected
Defined in src/tools/Tool.ts:87
Parameters:
| Name | Type |
|---|---|
editorInstance |
Editor |
toolManifestation? |
IToolManifestation |
parameters? |
any |
Returns: boolean
whether the tool requires rendering the scene after it was selected.
Static onUserDeselected
▸ onUserDeselected(editorInstance: Editor): void
Inherited from BoxelTool.onUserDeselected
Defined in src/tools/Tool.ts:92
Parameters:
| Name | Type |
|---|---|
editorInstance |
Editor |
Returns: void
Static requiresHintReset
▸ requiresHintReset(): boolean
Inherited from BoxelTool.requiresHintReset
Defined in src/tools/Tool.ts:100
Defines whether any hints added by previous tools used should be cleared.
Returns: boolean