HopperComponent2D Class
Hopper 2D. Component which handles :
- actions performed in 2D relatively to the hopper. Such as :
- adding a hopper
- displaying the hopper context menu
- translating the hopper
- modifying the shape of the hopper ( moving / adding / removing points )
- the 2D rendering of the hopper
Constructor
HopperComponent2D
-
core
Parameters:
-
core
CoreWanaplan Core.
Item Index
Methods
- compute
- computeHopper
- destroy
- disable
- draw
- drawTarget
- enable
- getRoom
- getTargeted
- initialize
- isPointInHopper
- isPointInHopperSide
- onAddHopper
- onAddHopperClick
- onContextChanged
- onContextMenu
- onContextMenuPropertyChanged
- onContextMenuRemove
- onDblClick
- onDrag
- onDragEnd
- onDragStart
- onHover
- onHoverHopper
- onLeave
- onMouseMove
- startListening
- stopListening
- update
Methods
compute
()
Computes all the hoppers structures.
computeHopper
-
hopper
Checks the hopper consistency and deletes it if the hopper is no longer valid.
- merges vertices that are close enough.
- removes the hopper if it has less than 3 vertices ( invalid hopper ).
Parameters:
-
hopper
HopperStructureThe hopper structure to compute.
destroy
()
disable
()
draw
-
hopper
-
ctx
-
translation
-
zoom
-
selected
Draws the hopper.
Parameters:
-
hopper
HopperStructureThe hopper structure.
-
ctx
Context2DThe 2d context.
-
translation
BABYLON.Vector2The translation of the canvas.
-
zoom
NumberThe zoom level of the canvas.
-
selected
BooleanTrue if the hopper is currently selected, else false.
drawTarget
-
hopper
-
ctx
-
zoom
Draws the hopper guide. It displays visual information on the hopper, depending on the context. Basically, it draws a highlight when the mouse is hovering a hopper element ( the whole hopper, a side , a point ).
Parameters:
-
hopper
HopperStructureThe hopper structure.
-
ctx
Context2DThe 2d context.
-
zoom
NumberThe zoom level of the canvas.
enable
()
getRoom
-
hopper
-
force
Returns the roomStructure of the room containing the hopper. Will try to attach the hopper to a room if hopper.room is not defined.
If force flag is up, try to attach the hopper even if hopper.room is already set.
Parameters:
-
hopper
HopperStructureThe hopper structure.
-
force
BooleanIf set to true, ignore the internal attribute and try to attach to a room.
Returns:
The room where the hopper is.
getTargeted
-
vector
Parameters:
-
vector
VectorA position, usually the cursor's one.
Returns:
initialize
()
isPointInHopper
-
vector
-
hopper
Tests the collision of a point with the area defined by the hopper.
Parameters:
-
vector
BABYLON.Vector2The point.
-
hopper
HopperStructureThe hopper structure.
Returns:
True if the point collides, else false.
isPointInHopperSide
-
vector
-
hopper
Tests the collision of a point with the hopper's edges.
Parameters:
-
vector
BABYLON.Vector2The point.
-
hopper
HopperStructureThe hopper structure.
onAddHopper
()
Adds new events callbacks when the user is in Hopper mode.
Triggered on event wnp.engine2d.onAddHopper
onAddHopperClick
-
event
-
target
-
mstate
-
data
Adds a new hopper on click.
Triggered on event hopperComponent2D.add-hopper.click
Parameters:
-
event
EventThe event caught.
-
target
HopperStructureThe hopper structure added.
-
mstate
ObjectThe current state of the pointer.
-
data
ObjectImportant data used to draw.
onContextChanged
-
context
Parameters:
-
context
StringThe new context
onContextMenu
-
event
-
target
-
mstate
-
data
Opens the context menu of the hopper.
Triggered on event HopperComponent2D.hopper.click
Parameters:
-
event
EventThe event caught.
-
target
HopperStructureThe hopper structure.
-
mstate
ObjectThe current state of the pointer.
-
data
ObjectImportant data used to draw.
onContextMenuPropertyChanged
-
target
-
property
-
value
Called when a value is changed in the context menu of the hopper.
Parameters:
-
target
HopperStructureThe hopper structure.
-
property
StringThe property changed.
-
value
Number | StringThe new value.
onContextMenuRemove
-
target
Called when the user closes the context menu.
Parameters:
-
target
HopperStructureThe hopper structure.
onDblClick
-
event
-
target
-
mstate
-
data
Adds a point on the hover contour when the user double clicks on it.
Triggered on event HopperComponent2D.hopper.dblclick
Parameters:
-
event
EventThe event caught.
-
target
HopperStructureThe hopper structure clicked.
-
mstate
ObjectThe current state of the pointer.
-
data
ObjectImportant data used to draw.
onDrag
-
event
-
target
-
mstate
-
data
Moves the hopper when it is dragged.
Triggered on event hopperComponent2D.hopper.drag
Parameters:
-
event
EventThe event caught.
-
target
HopperStructureThe hopper structure dragged.
-
mstate
ObjectThe current state of the pointer.
-
data
ObjectImportant data used to draw.
onDragEnd
-
event
-
target
-
mstate
-
data
Calls computeHopper when the user stop dragging.
Triggered on event hopperComponent2D.stair-hover.drag-end
Parameters:
-
event
EventThe event caught.
-
target
HopperStructureThe hopper structure dragged.
-
mstate
ObjectThe current state of the pointer.
-
data
ObjectImportant data used to draw.
onDragStart
-
event
-
target
-
mstate
-
data
Adds new events callbacks when the dragging starts.
Triggered on event HopperComponent2D.hopper.drag-start
Parameters:
-
event
EventThe event caught.
-
target
HopperStructureThe hopper structure dragged.
-
mstate
ObjectThe current state of the pointer.
-
data
ObjectImportant data used to draw.
onHover
-
event
-
target
-
mstate
-
data
Enables all the possible actions when the mouse hovers the hopper.
Triggered on event HopperComponent2D.hopper.hover
Parameters:
-
event
EventThe event caught.
-
target
HopperStructureThe hopper structure hovered.
-
mstate
ObjectThe current state of the pointer.
-
data
ObjectImportant data used to draw.
onHoverHopper
-
ctx
-
translation
-
zoom
-
data
Highlights the hopper.
Triggered on event HopperComponent2D.hopper-hover.dynamic-draw
Parameters:
-
ctx
CanvasRenderingContext2D2D context of the canvas.
-
translation
BABYLON.Vector2The translation of the canvas.
-
zoom
NumberThe current zoom of the canvas.
-
data
ObjectImportant data used to draw (null).
onLeave
-
event
-
target
-
mstate
-
data
Disables all the possible actions when the mouse leaves the hopper.
Triggered on event HopperComponent2D.hopper.leave
Parameters:
-
event
EventThe event caught.
-
target
HopperStructureThe hopper structure leaved.
-
mstate
ObjectThe current state of the pointer.
-
data
ObjectImportant data used to draw.
onMouseMove
-
event
-
target
-
mstate
-
data
Moves the new hopper to add when the mouse moves.
Triggered on event hopperComponent2D.dynamic-stair.mouse-move
Parameters:
-
event
EventThe event caught.
-
target
HopperStructureThe hopper structure moved.
-
mstate
ObjectThe current state of the pointer.
-
data
ObjectImportant data used to draw.