Constructor
new DrawingsLayer()
Extends
Members
(static) layerOptions
_active :boolean
- Inherited From:
Track whether the canvas layer is currently active for interaction
Type:
- boolean
_controlled :Object
- Inherited From:
Track the set of PlaceableObjects on this layer which are currently controlled by their id
Type:
- Object
_copy :Array.<PlaceableObject>
- Inherited From:
Keep track of an object copied with CTRL+C which can be pasted later
Type:
_hover :PlaceableObject
- Inherited From:
Track the PlaceableObject on this layer which is currently being hovered upon
Type:
controlled
- Inherited From:
An Array of placeable objects in this layer which have the _controlled attribute
CREATION_STATES :number
- Inherited From:
Creation states affected to placeables during their construction.
Type:
- number
DEFAULT_CONFIG_SETTING :string
The named game setting which persists default drawing configuration for the User
Type:
- string
documentCollection :Collection|null
- Inherited From:
Obtain a reference to the Collection of embedded Document instances within the currently viewed Scene
Type:
- Collection | null
documentName :string
- Overrides:
A reference to the named Document type which is contained within this Canvas Layer.
Type:
- string
gridPrecision :number
- Overrides:
Use an adaptive precision depending on the size of the grid
Type:
- number
history :Array.<CanvasHistory>
- Inherited From:
Keep track of history so that CTRL+Z can undo changes
Type:
hud :BasePlaceableHUD|null
- Overrides:
If objects on this PlaceableLayer have a HUD UI, provide a reference to its instance
Type:
- BasePlaceableHUD | null
name :string
- Inherited From:
The canonical name of the CanvasLayer
Type:
- string
objects :PIXI.Container|null
- Inherited From:
Placeable Layer Objects
Type:
- PIXI.Container | null
options :CanvasLayerOptions
- Inherited From:
Options for this layer instance.
Type:
placeables :Array.<PlaceableObject>
- Inherited From:
A convenience method for accessing the placeable object instances contained in this layer
Type:
preview
- Inherited From:
Preview Object Placement
quadtree :Quadtree|null
- Inherited From:
A Quadtree which partitions and organizes Walls into quadrants for efficient target identification.
Type:
- Quadtree | null
Methods
(protected) _canvasCoordinatesFromDrop(event, optionsopt, centeropt) → {Array.<number>|boolean}
- Inherited From:
Get the world-transformed drop position.
Parameters:
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
event |
DragEvent | |||
options |
object |
<optional> |
||
center |
boolean |
<optional> |
true
|
Return the co-ordinates of the center of the nearest grid element. |
Returns:
Returns the transformed x, y co-ordinates, or false if the drag event was outside the canvas.
- Type
- Array.<number> | boolean
(async, protected) _createPreview(createData, position)
- Inherited From:
Create a preview of this layer's object type from a world document and show its sheet so it can be finalized.
Parameters:
Name | Type | Description |
---|---|---|
createData |
object | The data to create the object with. |
position |
Object | The position to render the sheet at. |
_getNewDrawingData(origin) → {Object}
Get initial data for a new drawing. Start with some global defaults, apply user default config, then apply mandatory overrides per tool.
Parameters:
Name | Type | Description |
---|---|---|
origin |
Object | The initial coordinate |
Returns:
The new drawing data
- Type
- Object
_onClickLeft()
- Overrides:
- See:
-
- {Canvas#_onClickLeft}
Handle left mouse-click events which originate from the Canvas stage and are dispatched to this Layer.
_onClickLeft2()
- Overrides:
- See:
Handle double left-click events which originate from the Canvas stage and are dispatched to this Layer.
_onClickRight()
- Overrides:
- See:
-
- {Canvas#_onClickRight}
Handle right mouse-click events which originate from the Canvas stage and are dispatched to this Layer.
_onDragLeftCancel()
- Overrides:
- See:
-
- {Canvas#_onDragLeftDrop}
Cancel a left-click drag workflow originating from the Canvas stage.
_onDragLeftMove()
- Overrides:
- See:
-
- {Canvas#_onDragLeftMove}
Continue a left-click drag workflow originating from the Canvas stage.
(async) _onDragLeftStart() → {Promise.<void>}
- Overrides:
- See:
-
- {Canvas#_onDragLeftStart}
Start a left-click drag workflow originating from the Canvas stage.
Returns:
- Type
- Promise.<void>
_onMouseWheel(event)
- Inherited From:
Handle mouse-wheel events at the PlaceableObjects layer level to rotate multiple objects at once. This handler will rotate all controlled objects by some incremental angle.
Parameters:
Name | Type | Description |
---|---|---|
event |
MouseWheelEvent | The mousewheel event which originated the request |
clearPreviewContainer()
- Inherited From:
Clear the contents of the preview container, restoring visibility of original (non-preview) objects.
configureDefault()
Render a configuration sheet to configure the default Drawing settings
controlAll(options) → {Array.<PlaceableObject>}
- Inherited From:
Acquire control over all PlaceableObject instances which are visible and controllable within the layer.
Parameters:
Name | Type | Description |
---|---|---|
options |
object | Options passed to the control method of each object |
Returns:
An array of objects that were controlled
- Type
- Array.<PlaceableObject>
copyObjects() → {Array.<PlaceableObject>}
- Inherited From:
Copy currently controlled PlaceableObjects to a temporary Array, ready to paste back into the scene later
Returns:
The Array of copied PlaceableObject instances
- Type
- Array.<PlaceableObject>
createObject() → {PlaceableObject|null}
- Inherited From:
Draw a single placeable object
Returns:
- Type
- PlaceableObject | null
deactivate()
- Overrides:
Override the deactivation behavior of this layer. Placeables on this layer remain visible even when the layer is inactive.
(async) deleteAll() → {Promise.<Array.<Document>>}
- Inherited From:
A helper method to prompt for deletion of all PlaceableObject instances within the Scene Renders a confirmation dialogue to confirm with the requester that all objects will be deleted
Returns:
An array of Document objects which were deleted by the operation
- Type
- Promise.<Array.<Document>>
get(objectId) → {PlaceableObject}
- Inherited From:
Get a PlaceableObject contained in this layer by it's ID
Parameters:
Name | Type | Description |
---|---|---|
objectId |
string | The ID of the contained object to retrieve |
Returns:
The object instance, or undefined
- Type
- PlaceableObject
getDocuments() → {Array.<Document>}
- Inherited From:
Obtain an iterable of objects which should be added to this PlaceableLayer
Returns:
- Type
- Array.<Document>
getZIndex() → {number}
- Inherited From:
Get the zIndex that should be used for ordering this layer vertically relative to others in the same Container.
Returns:
- Type
- number
(async) moveMany(options) → {Promise.<Array.<PlaceableObject>>}
- Inherited From:
Simultaneously move multiple PlaceableObjects via keyboard movement offsets. This executes a single database operation using Scene.update. If moving only a single object, this will delegate to PlaceableObject.update for performance reasons.
Parameters:
Name | Type | Description | |||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
object | Options which configure how multiple objects are moved Properties
|
Returns:
An array of objects which were moved during the operation
- Type
- Promise.<Array.<PlaceableObject>>
(async) pasteObjects(position, hiddenopt, snapopt) → {Promise.<Array.<Document>>}
- Inherited From:
Paste currently copied PlaceableObjects back to the layer by creating new copies
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
position |
Point | The destination position for the copied data. |
|
hidden |
boolean |
<optional> |
Paste data in a hidden state, if applicable. Default is false. |
snap |
boolean |
<optional> |
Snap the resulting objects to the grid. Default is true. |
Returns:
An Array of created Document instances
- Type
- Promise.<Array.<Document>>
releaseAll(options) → {number}
- Inherited From:
Release all controlled PlaceableObject instance from this layer.
Parameters:
Name | Type | Description |
---|---|---|
options |
object | Options passed to the release method of each object |
Returns:
The number of PlaceableObject instances which were released
- Type
- number
(async) rotateMany(options) → {Promise.<Array.<PlaceableObject>>}
- Inherited From:
Simultaneously rotate multiple PlaceableObjects using a provided angle or incremental. This executes a single database operation using Scene.update. If rotating only a single object, it is better to use the PlaceableObject.rotate instance method.
Parameters:
Name | Type | Description | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
object | Options which configure how multiple objects are rotated Properties
|
Returns:
An array of objects which were rotated
- Type
- Promise.<Array.<PlaceableObject>>
selectObjects(x, y, width, height, releaseOptions, controlOptions) → {boolean}
- Inherited From:
Select all PlaceableObject instances which fall within a coordinate rectangle.
Parameters:
Name | Type | Description |
---|---|---|
x |
number | The top-left x-coordinate of the selection rectangle |
y |
number | The top-left y-coordinate of the selection rectangle |
width |
number | The width of the selection rectangle |
height |
number | The height of the selection rectangle |
releaseOptions |
Object | Optional arguments provided to any called release() method |
controlOptions |
Object | Optional arguments provided to any called control() method |
Returns:
A boolean for whether the controlled set was changed in the operation
- Type
- boolean
storeHistory(type, data)
- Inherited From:
Record a new CRUD event in the history log so that it can be undone later
Parameters:
Name | Type | Description |
---|---|---|
type |
string | The event type (create, update, delete) |
data |
Array.<Object> | The object data |
(async) undoHistory() → {Promise.<Array.<Document>>}
- Inherited From:
Undo a change to the objects in this layer This method is typically activated using CTRL+Z while the layer is active
Returns:
An array of documents which were modified by the undo operation
- Type
- Promise.<Array.<Document>>
(async) updateAll(transformation, condition, optionsopt) → {Promise.<Array.<Document>>}
- Inherited From:
Update all objects in this layer with a provided transformation. Conditionally filter to only apply to objects which match a certain condition.
Parameters:
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
transformation |
function | object | An object of data or function to apply to all matched objects |
||
condition |
function | null |
null
|
A function which tests whether to target each object |
|
options |
object |
<optional> |
Additional options passed to Document.update |
Returns:
An array of updated data once the operation is complete
- Type
- Promise.<Array.<Document>>