The border frame and resizing handles for the drawing.
A text label that may be displayed as part of the interface layer for the Drawing.
The drawing shape which is rendered as a PIXI.Graphics subclass in the PrimaryCanvasGroup.
Retain a reference to the Scene within which this Placeable Object resides
A reference to the Scene embedded Document instance which this object represents
Track the field of vision for the placeable object. This is necessary to determine whether a player has line-of-sight towards a placeable object or vice-versa
A control icon for interacting with the object
A mouse interaction manager instance which handles mouse workflows related to this object.
Know if a placeable is in the hover-in state.
Passthrough certain drag operations on locked objects.
An internal timestamp for the previous freehand draw time, to limit sampling.
An internal flag for the permanent points of the polygon.
Identify the official Document name for this PlaceableObject class
The rate at which points are sampled (in milliseconds) during a freehand drawing workflow
A convenience reference to the possible shape types.
A Boolean flag for whether the Drawing utilizes a tiled texture background?
A Boolean flag for whether the Drawing is a Polygon type (either linear or freehand)?
Does the Drawing have text that is displayed?
The shape type that this Drawing represents. A value in Drawing.SHAPE_TYPES.
The mouse interaction state of this placeable.
The id of the corresponding Document which this PlaceableObject represents.
A unique identifier which is used to uniquely identify elements on the canvas related to this object.
The named identified for the source object associated with this PlaceableObject. This differs from the objectId because the sourceId is the same for preview objects as for the original.
Is this placeable object a temporary preview?
The field-of-vision polygon for the object, if it has been computed
Provide a reference to the CanvasLayer which contains this PlaceableObject.
The line-of-sight polygon for the object, if it has been computed
A Form Application which is used to configure the properties of this Placeable Object or the Document it represents.
An indicator for whether the object is currently controlled
An indicator for whether the object is currently a hover target
An indicator for whether the object is currently a hover target
Clear the display of the existing object.
The cleared object
The inner _destroy method which may optionally be defined by each PlaceableObject subclass.
Add a new polygon point to the drawing, ensuring it differs from the last one
The drawing point to add
Options which configure how the point is added
Begin a drag operation from the perspective of the preview clone. Modify the appearance of both the clone (this) and the original (_original) object.
Conclude a drag operation from the perspective of the preview clone. Modify the appearance of both the clone (this) and the original (_original) object.
Test whether a user can perform a certain interaction regarding a Placeable Object
The User performing the action
The named action being attempted
Does the User have rights to perform the action?
Clone the placeable object, returning a new object with identical attributes. The returned object is non-interactive, and has no assigned ID. If you plan to use it permanently you should call the create method.
A new object with identical data
Draw the placeable object into its parent container
The drawn object
Refresh the current display state of the Placeable Object
The refreshed object
Assume control over a PlaceableObject, flagging it as controlled and enabling downstream behaviors
Additional options which modify the control request
Release any other controlled objects first
A flag denoting whether control was successful
Release control over a PlaceableObject, removing it from the controlled set
Options which modify the releasing workflow
A Boolean flag confirming the object was released.
Rotate the PlaceableObject to a certain angle of facing
The desired angle of rotation
Snap the angle of rotation to a certain target degree increment
The rotated object
Determine a new angle of rotation for a PlaceableObject either from an explicit angle or from a delta offset.
An object which defines the rotation update parameters
The new rotation angle for the object
Obtain a shifted position for the Placeable Object
The number of grid units to shift along the X-axis
The number of grid units to shift along the Y-axis
The shifted target coordinates
Actions that should be taken for this Placeable Object when a mouseover event occurs
The triggering canvas interaction event
Options which customize event handling
Actions that should be taken for this Placeable Object when a mouseout event occurs
The triggering canvas interaction event
Callback actions which occur on a single left-click event to assume control of the object
The triggering canvas interaction event
Callback actions which occur on a double left-click event to activate
The triggering canvas interaction event
Callback actions which occur on a single right-click event to configure properties of the object
The triggering canvas interaction event
Callback actions which occur on a double right-click event to configure properties of the object
The triggering canvas interaction event
Prepare the text style used to instantiate a PIXI.Text or PreciseText instance for this Drawing document.
Can the User access the HUD for this Placeable Object?
The User performing the action.
The event object.
The returned status.
Does the User have permission to view details of the Placeable Object?
The User performing the action.
The event object.
The returned status.
Does the User have permission to create the underlying Document?
The User performing the action.
The event object.
The returned status.
Does the User have permission to drag this Placeable Object?
The User performing the action.
The event object.
The returned status.
Does the User have permission to hover on this Placeable Object?
The User performing the action.
The event object.
The returned status.
Does the User have permission to update the underlying Document?
The User performing the action.
The event object.
The returned status.
Does the User have permission to delete the underlying Document?
The User performing the action.
The event object.
The returned status.
Register pending canvas operations which should occur after a new PlaceableObject of this type is created
Create a standard MouseInteractionManager for the PlaceableObject
Callback action which occurs on a long press.
The triggering canvas interaction event
The local canvas coordinates of the mousepress.
Create elements for the Drawing border and handles
Create a PreciseText element to be displayed as part of this drawing.
Refresh the boundary frame which outlines the Drawing shape
The rectangular bounds of the drawing
Refresh the appearance of text displayed above the drawing.
Remove the last fixed point from the polygon
Handle text entry in an active text tool
Handle mouse movement which modifies the dimensions of the drawn shape
Handle mouse-over event on a control handle
The mouseover event
Handle mouse-out event on a control handle
The mouseout event
When we start a drag event - create a preview copy of the Tile for re-positioning
The mousedown event
Handle the beginning of a drag event on a resize handle
The mouse interaction event
Handle mousemove while dragging a tile scale handler
The mouse interaction event
Handle mouseup after dragging a tile scale handler
The mouseup event
Handle cancellation of a drag event for one of the resizing handles
The drag cancellation event
Apply a vectorized rescaling transformation for the drawing data
The original drawing data
The pixel distance dragged in the horizontal direction
The pixel distance dragged in the vertical direction
Adjust the location, dimensions, and points of the Drawing before committing the change
The DrawingData pending update
The adjusted data
The Drawing object is an implementation of the PlaceableObject container. Each Drawing is a placeable object in the DrawingsLayer.
DrawingDocument
DrawingsLayer