Example
import { BlurFilter, Container, Graphics, Sprite } from 'pixi.js';
const container = new Container();
const sprite = Sprite.from('https://s3-us-west-2.amazonaws.com/s.cdpn.io/693612/IaUrttj.png');
sprite.width = 512;
sprite.height = 512;
// Adds a sprite as a child to this container. As a result, the sprite will be rendered whenever the container
// is rendered.
container.addChild(sprite);
// Blurs whatever is rendered by the container
container.filters = [new BlurFilter()];
// Only the contents within a circle at the center should be rendered onto the screen.
container.mask = new Graphics()
.beginFill(0xffffff)
.drawCircle(sprite.width / 2, sprite.height / 2, Math.min(sprite.width, sprite.height) / 2)
.endFill();
Extends
Members
Sets the default value for the container property sortableChildren
.
If set to true, the container will sort its children by zIndex value
when updateTransform()
is called, or manually if sortChildren()
is called.
This actually changes the order of elements in the array, so should be treated as a basic solution that is not performant compared to other solutions, such as PixiJS Layers.
Also be aware of that this may not work nicely with the addChildAt()
function,
as the zIndex
sorting may cause the child to automatically sorted to another position.
- Default Value:
- false
The array of children of this container.
The height of the Container, setting this will actually modify the scale to achieve the value set.
Determines if the children to the displayObject can be clicked/touched
Setting this to false allows PixiJS to bypass a recursive hitTest
function
- Default Value:
- true
If set to true, the container will sort its children by zIndex
value
when updateTransform()
is called, or manually if sortChildren()
is called.
This actually changes the order of elements in the array, so should be treated as a basic solution that is not performant compared to other solutions, such as PixiJS Layers
Also be aware of that this may not work nicely with the addChildAt()
function,
as the zIndex
sorting may cause the child to automatically sorted to another position.
Should children be sorted by zIndex at the next updateTransform call.
Will get automatically set to true if a new child is added, or if a child's zIndex changes.
The width of the Container, setting this will actually modify the scale to achieve the value set.
Methods
addChild (…children) PIXI.DisplayObject
Adds one or more children to the container.
Multiple items can be added like so: myContainer.addChild(thingOne, thingTwo, thingThree)
Name | Type | Description |
---|---|---|
children |
PIXI.DisplayObject |
The DisplayObject(s) to add to the container |
Returns:
Type | Description |
---|---|
PIXI.DisplayObject |
|
addChildAt (child, index) PIXI.DisplayObject
Adds a child to the container at a specified index. If the index is out of bounds an error will be thrown. If the child is already in this container, it will be moved to the specified index.
Name | Type | Description |
---|---|---|
child |
PIXI.DisplayObject |
The child to add. |
index |
number |
The absolute index where the child will be positioned at the end of the operation. |
Returns:
Type | Description |
---|---|
PIXI.DisplayObject | The child that was added. |
calculateBounds () void overrides
Recalculates the bounds of the container.
This implementation will automatically fit the children's bounds into the calculation. Each child's bounds is limited to its mask's bounds or filterArea, if any is applied.
Container default updateTransform, does update children of container. Will crash if there's no parent element.
destroy (options) void overrides
Removes all internal references and listeners as well as removes children from the display list.
Do not use a Container after calling destroy
.
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
options |
IDestroyOptions | boolean |
<optional> |
Options parameter. A boolean will act as if all options have been set to that value |
|
options.children |
boolean |
<optional> |
false |
if set to true, all the children will have their destroy method called as well. 'options' will be passed on to those calls. |
options.texture |
boolean |
<optional> |
false |
Only used for child Sprites if options.children is set to true Should it destroy the texture of the child sprite |
options.baseTexture |
boolean |
<optional> |
false |
Only used for child Sprites if options.children is set to true Should it destroy the base texture of the child sprite |
Returns the child at the specified index
Name | Type | Description |
---|---|---|
index |
number |
The index to get the child at |
Returns:
Type | Description |
---|---|
T |
|
getChildByName (name, deep) PIXI.DisplayObject
Returns the display object in the container.
Recursive searches are done in a preorder traversal.
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
name |
string |
Instance name. |
||
deep |
boolean |
<optional> |
false |
Whether to search recursively |
Returns:
Type | Description |
---|---|
PIXI.DisplayObject | The child with the specified name. |
Returns the index position of a child DisplayObject instance
Name | Type | Description |
---|---|---|
child |
T |
The DisplayObject instance to identify |
Returns:
Type | Description |
---|---|
number |
|
getLocalBounds (rect, skipChildrenUpdate) PIXI.Rectangle overrides
Retrieves the local bounds of the displayObject as a rectangle object.
Calling getLocalBounds
may invalidate the _bounds
of the whole subtree below. If using it inside a render()
call, it is advised to call getBounds()
immediately after to recalculate the world bounds of the subtree.
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
rect |
PIXI.Rectangle |
<optional> |
Optional rectangle to store the result of the bounds calculation. |
|
skipChildrenUpdate |
boolean | false |
Setting to |
Returns:
Type | Description |
---|---|
PIXI.Rectangle |
|
removeChild (…children) PIXI.DisplayObject
Removes one or more children from the container.
Name | Type | Description |
---|---|---|
children |
PIXI.DisplayObject |
The DisplayObject(s) to remove |
Returns:
Type | Description |
---|---|
PIXI.DisplayObject | The first child that was removed. |
Removes a child from the specified index position.
Name | Type | Description |
---|---|---|
index |
number |
The index to get the child from |
Returns:
Type | Description |
---|---|
T | The child that was removed. |
Removes all children from this container that are within the begin and end indexes.
Name | Type | Default | Description |
---|---|---|---|
beginIndex |
number | 0 |
The beginning position. |
endIndex |
The ending position. Default value is size of the container. |
Returns:
Type | Description |
---|---|
T[] |
|
render (renderer) void overrides
Renders the object using the WebGL renderer.
The _render method is be overriden for rendering the contents of the
container itself. This render
method will invoke it, and also invoke the render
methods of all
children afterward.
If renderable
or visible
is false or if worldAlpha
is not positive or if cullable
is true and
the bounds of this object are out of frame, this implementation will entirely skip rendering.
See PIXI.DisplayObject for choosing between renderable
or visible
. Generally,
setting alpha to zero is not recommended for purely skipping rendering.
When your scene becomes large (especially when it is larger than can be viewed in a single screen), it is advised to employ culling to automatically skip rendering objects outside of the current screen. See cullable and cullArea. Other culling methods might be better suited for a large number static objects; see @pixi-essentials/cull and pixi-cull.
The renderAdvanced method is internally used when when masking or filtering is applied on a container. This does, however, break batching and can affect performance when masking and filtering is applied extensively throughout the scene graph.
Name | Type | Description |
---|---|---|
renderer |
PIXI.Renderer |
The renderer |
Renders the object using the Canvas renderer
Name | Type | Description |
---|---|---|
renderer |
PIXI.CanvasRenderer |
The renderer |
Renders the object using the Canvas renderer
Name | Type | Description |
---|---|---|
_renderer |
PIXI.CanvasRenderer |
The renderer |
Changes the position of an existing child in the display object container
Name | Type | Description |
---|---|---|
child |
T |
The child DisplayObject instance for which you want to change the index number |
index |
number |
The resulting index number for the child display object |
Sorts children by zIndex. Previous order is maintained for 2 children with the same zIndex.
Swaps the position of 2 Display Objects within this container.
Name | Type | Description |
---|---|---|
child |
T |
First display object to swap |
child2 |
T |
Second display object to swap |
updateTransform () void overrides
Updates the transform on all children of this container for rendering.
Recalculates the content bounds of this object. This should be overriden to calculate the bounds of this specific object (not including children).
To be overridden by the subclasses.
Name | Type | Description |
---|---|---|
_renderer |
PIXI.Renderer |
The renderer |
To be overridden by the subclass
Name | Type | Description |
---|---|---|
_renderer |
PIXI.CanvasRenderer |
The renderer |
Renders this object and its children with culling.
Name | Type | Description |
---|---|---|
renderer |
PIXI.Renderer |
The renderer |
Overridable method that can be used by Container subclasses whenever the children array is modified.
Name | Type | Attributes | Description |
---|---|---|---|
_length |
number |
<optional> |
Render the object using the WebGL renderer and advanced features.
Name | Type | Description |
---|---|---|
renderer |
PIXI.Renderer |
The renderer |
Events
Fired when a DisplayObject is added to this Container.
Name | Type | Description |
---|---|---|
child |
PIXI.DisplayObject |
The child added to the Container. |
container |
PIXI.Container |
The container that added the child. |
index |
number |
The children's index of the added child. |
Fired when a DisplayObject is removed from this Container.
Name | Type | Description |
---|---|---|
child |
PIXI.DisplayObject |
The child removed from the Container. |
container |
PIXI.Container |
The container that removed the child. |
index |
number |
The former children's index of the removed child. |
Inherited Properties
From class PIXI.DisplayObject
_accessibleActive boolean inherited
- Default Value:
- false
- TODO
-
- Needs docs.
_accessibleDiv boolean inherited
- Default Value:
- undefined
- TODO
-
- Needs docs.
_bounds PIXI.Bounds inherited
The bounds object, this is used to calculate and store the bounds of the displayObject.
_localBounds PIXI.Bounds inherited
Local bounds object, swapped with _bounds
when using getLocalBounds()
.
accessible boolean inherited
Flag for if the object is accessible. If true AccessibilityManager will overlay a shadow div with attributes set
- Default Value:
- false
accessibleChildren boolean inherited
Setting to false will prevent any children inside this container to be accessible. Defaults to true.
- Default Value:
- true
accessibleHint string inherited
Sets the aria-label attribute of the shadow div
- Default Value:
- undefined
accessiblePointerEvents string inherited
Specify the pointer-events the accessible div will use Defaults to auto.
- Default Value:
- 'auto'
accessibleTitle ?string inherited
Sets the title attribute of the shadow div If accessibleTitle AND accessibleHint has not been this will default to 'displayObject [tabIndex]'
- Default Value:
- undefined
accessibleType string inherited
Specify the type of div the accessible layer is. Screen readers treat the element differently depending on this type. Defaults to button.
- Default Value:
- 'button'
alpha number inherited
The opacity of the object.
angle number inherited
The angle of the object in degrees. 'rotation' and 'angle' have the same effect on a display object; rotation is in radians, angle is in degrees.
cacheAsBitmap boolean inherited
Set this to true if you want this display object to be cached as a bitmap.
This basically takes a snapshot of the display object as it is at that moment. It can
provide a performance benefit for complex static displayObjects.
To remove simply set this property to false
IMPORTANT GOTCHA - Make sure that all your textures are preloaded BEFORE setting this property to true as it will take a snapshot of what is currently there. If the textures have not loaded then they will not appear.
cacheAsBitmapMultisample number | unknown inherited
The number of samples to use for cacheAsBitmap. If set to null
, the renderer's
sample count is used.
If cacheAsBitmap
is set to true
, this will re-render with the new number of samples.
- Default Value:
- null
cacheAsBitmapResolution number | unknown inherited
The resolution to use for cacheAsBitmap. By default this will use the renderer's resolution
but can be overriden for performance. Lower values will reduce memory usage at the expense
of render quality. A falsey value of null
or 0
will default to the renderer's resolution.
If cacheAsBitmap
is set to true
, this will re-render with the new resolution.
- Default Value:
- null
cullable boolean inherited
Should this object be rendered if the bounds of this object are out of frame?
Culling has no effect on whether updateTransform is called.
cullArea PIXI.Rectangle inherited
If set, this shape is used for culling instead of the bounds of this object. It can improve the culling performance of objects with many children. The culling area is defined in local space.
destroyed boolean inherited
Readonly flag for destroyed display objects.
filterArea PIXI.Rectangle inherited
The area the filter is applied to. This is used as more of an optimization rather than figuring out the dimensions of the displayObject each frame you can set this rectangle.
Also works as an interaction mask.
filters PIXI.Filter[] | null inherited
Sets the filters for the displayObject.
IMPORTANT: This is a WebGL only feature and will be ignored by the canvas renderer.
To remove filters simply set this property to 'null'
.
hitArea PIXI.IHitArea inherited
Interaction shape. Children will be hit first, then this shape will be checked. Setting this will cause this shape to be checked in hit tests rather than the displayObject's bounds.
- Default Value:
- undefined
Example
import { Rectangle, Sprite } from 'pixi.js';
const sprite = new Sprite(texture);
sprite.interactive = true;
sprite.hitArea = new Rectangle(0, 0, 100, 100);
isMask boolean inherited
Does any other displayObject use this object as a mask?
isSprite boolean inherited
Used to fast check if a sprite is.. a sprite!
localTransform PIXI.Matrix readonly inherited
Current transform of the object based on local factors: position, scale, other stuff.
mask PIXI.Container | PIXI.MaskData | null inherited
Sets a mask for the displayObject. A mask is an object that limits the visibility of an
object to the shape of the mask applied to it. In PixiJS a regular mask must be a
PIXI.Graphics or a PIXI.Sprite object. This allows for much faster masking in canvas as it
utilities shape clipping. Furthermore, a mask of an object must be in the subtree of its parent.
Otherwise, getLocalBounds
may calculate incorrect bounds, which makes the container's width and height wrong.
To remove a mask, set this property to null
.
For sprite mask both alpha and red channel are used. Black mask is the same as transparent mask.
- TODO
-
- At the moment, CanvasRenderer doesn't support Sprite as mask.
Example
import { Graphics, Sprite } from 'pixi.js';
const graphics = new Graphics();
graphics.beginFill(0xFF3300);
graphics.drawRect(50, 250, 100, 100);
graphics.endFill();
const sprite = new Sprite(texture);
sprite.mask = graphics;
name string inherited
The instance name of the object.
- Default Value:
- undefined
onclick inherited
Property-based event handler for the click
event.
- Default Value:
- null
Example
this.onclick = (event) => {
//some function here that happens on click
}
onglobalmousemove inherited
Property-based event handler for the globalmousemove
event.
- Default Value:
- null
Example
this.onglobalmousemove = (event) => {
//some function here that happens on globalmousemove
}
onglobalpointermove inherited
Property-based event handler for the globalpointermove
event.
- Default Value:
- null
Example
this.onglobalpointermove = (event) => {
//some function here that happens on globalpointermove
}
onglobaltouchmove inherited
Property-based event handler for the globaltouchmove
event.
- Default Value:
- null
Example
this.onglobaltouchmove = (event) => {
//some function here that happens on globaltouchmove
}
onmousedown inherited
Property-based event handler for the mousedown
event.
- Default Value:
- null
Example
this.onmousedown = (event) => {
//some function here that happens on mousedown
}
onmouseenter inherited
Property-based event handler for the mouseenter
event.
- Default Value:
- null
Example
this.onmouseenter = (event) => {
//some function here that happens on mouseenter
}
onmouseleave inherited
Property-based event handler for the mouseleave
event.
- Default Value:
- null
Example
this.onmouseleave = (event) => {
//some function here that happens on mouseleave
}
onmousemove inherited
Property-based event handler for the mousemove
event.
- Default Value:
- null
Example
this.onmousemove = (event) => {
//some function here that happens on mousemove
}
onmouseout inherited
Property-based event handler for the mouseout
event.
- Default Value:
- null
Example
this.onmouseout = (event) => {
//some function here that happens on mouseout
}
onmouseover inherited
Property-based event handler for the mouseover
event.
- Default Value:
- null
Example
this.onmouseover = (event) => {
//some function here that happens on mouseover
}
onmouseup inherited
Property-based event handler for the mouseup
event.
- Default Value:
- null
Example
this.onmouseup = (event) => {
//some function here that happens on mouseup
}
onmouseupoutside inherited
Property-based event handler for the mouseupoutside
event.
- Default Value:
- null
Example
this.onmouseupoutside = (event) => {
//some function here that happens on mouseupoutside
}
onpointercancel inherited
Property-based event handler for the pointercancel
event.
- Default Value:
- null
Example
this.onpointercancel = (event) => {
//some function here that happens on pointercancel
}
onpointerdown inherited
Property-based event handler for the pointerdown
event.
- Default Value:
- null
Example
this.onpointerdown = (event) => {
//some function here that happens on pointerdown
}
onpointerenter inherited
Property-based event handler for the pointerenter
event.
- Default Value:
- null
Example
this.onpointerenter = (event) => {
//some function here that happens on pointerenter
}
onpointerleave inherited
Property-based event handler for the pointerleave
event.
- Default Value:
- null
Example
this.onpointerleave = (event) => {
//some function here that happens on pointerleave
}
onpointermove inherited
Property-based event handler for the pointermove
event.
- Default Value:
- null
Example
this.onpointermove = (event) => {
//some function here that happens on pointermove
}
onpointerout inherited
Property-based event handler for the pointerout
event.
- Default Value:
- null
Example
this.onpointerout = (event) => {
//some function here that happens on pointerout
}
onpointerover inherited
Property-based event handler for the pointerover
event.
- Default Value:
- null
Example
this.onpointerover = (event) => {
//some function here that happens on pointerover
}
onpointertap inherited
Property-based event handler for the pointertap
event.
- Default Value:
- null
Example
this.onpointertap = (event) => {
//some function here that happens on pointertap
}
onpointerup inherited
Property-based event handler for the pointerup
event.
- Default Value:
- null
Example
this.onpointerup = (event) => {
//some function here that happens on pointerup
}
onpointerupoutside inherited
Property-based event handler for the pointerupoutside
event.
- Default Value:
- null
Example
this.onpointerupoutside = (event) => {
//some function here that happens on pointerupoutside
}
onrightclick inherited
Property-based event handler for the rightclick
event.
- Default Value:
- null
Example
this.onrightclick = (event) => {
//some function here that happens on rightclick
}
onrightdown inherited
Property-based event handler for the rightdown
event.
- Default Value:
- null
Example
this.onrightdown = (event) => {
//some function here that happens on rightdown
}
onrightup inherited
Property-based event handler for the rightup
event.
- Default Value:
- null
Example
this.onrightup = (event) => {
//some function here that happens on rightup
}
onrightupoutside inherited
Property-based event handler for the rightupoutside
event.
- Default Value:
- null
Example
this.onrightupoutside = (event) => {
//some function here that happens on rightupoutside
}
ontap inherited
Property-based event handler for the tap
event.
- Default Value:
- null
Example
this.ontap = (event) => {
//some function here that happens on tap
}
ontouchcancel inherited
Property-based event handler for the touchcancel
event.
- Default Value:
- null
Example
this.ontouchcancel = (event) => {
//some function here that happens on touchcancel
}
ontouchend inherited
Property-based event handler for the touchend
event.
- Default Value:
- null
Example
this.ontouchend = (event) => {
//some function here that happens on touchend
}
ontouchendoutside inherited
Property-based event handler for the touchendoutside
event.
- Default Value:
- null
Example
this.ontouchendoutside = (event) => {
//some function here that happens on touchendoutside
}
ontouchmove inherited
Property-based event handler for the touchmove
event.
- Default Value:
- null
Example
this.ontouchmove = (event) => {
//some function here that happens on touchmove
}
ontouchstart inherited
Property-based event handler for the touchstart
event.
- Default Value:
- null
Example
this.ontouchstart = (event) => {
//some function here that happens on touchstart
}
onwheel inherited
Property-based event handler for the wheel
event.
- Default Value:
- null
Example
this.onwheel = (event) => {
//some function here that happens on wheel
}
parent PIXI.Container inherited
The display object container that contains this display object.
The center of rotation, scaling, and skewing for this display object in its local space. The position
is the projection of pivot
in the parent's local space.
By default, the pivot is the origin (0, 0).
- Since:
- 4.0.0
position PIXI.ObservablePoint inherited
The coordinate of the object relative to the local coordinates of the parent.
- Since:
- 4.0.0
renderable boolean inherited
Can this object be rendered, if false the object will not be drawn but the updateTransform methods will still be called.
Only affects recursive calls from parent. You can ask for bounds manually.
rotation number inherited
The rotation of the object in radians. 'rotation' and 'angle' have the same effect on a display object; rotation is in radians, angle is in degrees.
The scale factors of this object along the local coordinate axes.
The default scale is (1, 1).
- Since:
- 4.0.0
The skew factor for the object in radians.
- Since:
- 4.0.0
transform PIXI.Transform inherited
World transform and local transform of this object. This will become read-only later, please do not assign anything there unless you know what are you doing.
visible boolean inherited
The visibility of the object. If false the object will not be drawn, and the updateTransform function will not be called.
Only affects recursive calls from parent. You can ask for bounds or call updateTransform manually.
worldAlpha number readonly inherited
The multiplied alpha of the displayObject.
worldTransform PIXI.Matrix readonly inherited
Current transform of the object based on world (parent) factors.
worldVisible boolean readonly inherited
Indicates if the object is globally visible.
x number inherited
The position of the displayObject on the x axis relative to the local coordinates of the parent. An alias to position.x
y number inherited
The position of the displayObject on the y axis relative to the local coordinates of the parent. An alias to position.y
zIndex number inherited
The zIndex of the displayObject.
If a container has the sortableChildren property set to true, children will be automatically sorted by zIndex value; a higher value will mean it will be moved towards the end of the array, and thus rendered on top of other display objects within the same container.
_boundsID number protected inherited
Flags the cached bounds as dirty.
_boundsRect PIXI.Rectangle protected inherited
Cache of this display-object's bounds-rectangle.
_destroyed boolean protected inherited
If the object has been destroyed via destroy(). If true, it should not be used.
_enabledFilters PIXI.Filter[] protected inherited
Currently enabled filters.
_lastSortedIndex number protected inherited
Which index in the children array the display component was before the previous zIndex sort. Used by containers to help sort objects with the same zIndex, by using previous array index as the decider.
_localBoundsRect PIXI.Rectangle protected inherited
Cache of this display-object's local-bounds rectangle.
_mask PIXI.Container | PIXI.MaskData protected inherited
The original, cached mask of the object.
_tempDisplayObjectParent PIXI.Container protected inherited
_zIndex number protected inherited
The zIndex of the displayObject. A higher value will mean it will be rendered on top of other displayObjects within the same container.
Inherited Methods
From class PIXI.DisplayObject
addEventListener (type, listener, options) inherited
Unlike on
or addListener
which are methods from EventEmitter, addEventListener
seeks to be compatible with the DOM's addEventListener
with support for options.
IMPORTANT: Only available if using the @pixi/events
package.
Name | Type | Attributes | Description |
---|---|---|---|
type |
string |
The type of event to listen to. |
|
listener |
EventListenerOrEventListenerObject |
The listener callback or object. |
|
options |
AddListenerOptions |
<optional> |
Listener options, used for capture phase. |
Example
// Tell the user whether they did a single, double, triple, or nth click.
button.addEventListener('click', {
handleEvent(e): {
let prefix;
switch (e.detail) {
case 1: prefix = 'single'; break;
case 2: prefix = 'double'; break;
case 3: prefix = 'triple'; break;
default: prefix = e.detail + 'th'; break;
}
console.log('That was a ' + prefix + 'click');
}
});
// But skip the first click!
button.parent.addEventListener('click', function blockClickOnce(e) {
e.stopImmediatePropagation();
button.parent.removeEventListener('click', blockClickOnce, true);
}, {
capture: true,
});
disableTempParent (cacheParent) void inherited
Pair method for enableTempParent
Name | Type | Description |
---|---|---|
cacheParent |
PIXI.Container |
Actual parent of element |
dispatchEvent (e) boolean inherited
Dispatch the event on this PIXI.DisplayObject using the event's PIXI.EventBoundary.
The target of the event is set to this
and the defaultPrevented
flag is cleared before dispatch.
IMPORTANT: Only available if using the @pixi/events
package.
Name | Type | Description |
---|---|---|
e |
Event |
The event to dispatch. |
Returns:
Type | Description |
---|---|
boolean | Whether the preventDefault() method was not invoked. |
Example
// Reuse a click event!
button.dispatchEvent(clickEvent);
displayObjectUpdateTransform () inherited
DisplayObject default updateTransform, does not update children of container. Will crash if there's no parent element.
enableTempParent () PIXI.Container inherited
Used in Renderer, cacheAsBitmap and other places where you call an updateTransform
on root.
const cacheParent = elem.enableTempParent();
elem.updateTransform();
elem.disableTempParent(cacheParent);
Returns:
Type | Description |
---|---|
PIXI.Container |
|
eventMode (value) inherited
Enable interaction events for the DisplayObject. Touch, pointer and mouse.
This now replaces the interactive
property.
There are 5 types of interaction settings:
'none'
: Ignores all interaction events, even on its children.'passive'
: Does not emit events and ignores all hit testing on itself and non-interactive children. Interactive children will still emit events.'auto'
: Does not emit events but is hit tested if parent is interactive. Same asinteractive = false
in v7'static'
: Emit events and is hit tested. Same asinteraction = true
in v7'dynamic'
: Emits events and is hit tested but will also receive mock interaction events fired from a ticker to allow for interaction when the mouse isn't moving
Name | Type | Description |
---|---|---|
value |
- Since:
- 7.2.0
Example
import { Sprite } from 'pixi.js';
const sprite = new Sprite(texture);
sprite.eventMode = 'static';
sprite.on('tap', (event) => {
// Handle event
});
getBounds (skipUpdate, rect) PIXI.Rectangle inherited
Calculates and returns the (world) bounds of the display object as a Rectangle.
This method is expensive on containers with a large subtree (like the stage). This is because the bounds
of a container depend on its children's bounds, which recursively causes all bounds in the subtree to
be recalculated. The upside, however, is that calling getBounds
once on a container will indeed update
the bounds of all children (the whole subtree, in fact). This side effect should be exploited by using
displayObject._bounds.getRectangle()
when traversing through all the bounds in a scene graph. Otherwise,
calling getBounds
on each object in a subtree will cause the total cost to increase quadratically as
its height increases.
The transforms of all objects in a container's subtree and of all ancestors are updated. The world bounds of all display objects in a container's subtree will also be recalculated.
The _bounds
object stores the last calculation of the bounds. You can use to entirely skip bounds
calculation if needed.
const lastCalculatedBounds = displayObject._bounds.getRectangle(optionalRect);
Do know that usage of getLocalBounds
can corrupt the _bounds
of children (the whole subtree, actually). This
is a known issue that has not been solved. See getLocalBounds for more
details.
getBounds
should be called with skipUpdate
equal to true
in a render() call. This is because the transforms
are guaranteed to be update-to-date. In fact, recalculating inside a render() call may cause corruption in certain
cases.
Name | Type | Attributes | Description |
---|---|---|---|
skipUpdate |
boolean |
<optional> |
Setting to |
rect |
PIXI.Rectangle |
<optional> |
Optional rectangle to store the result of the bounds calculation. |
Returns:
Type | Description |
---|---|
PIXI.Rectangle |
|
getGlobalPosition (point, skipUpdate) PIXI.Point inherited
Returns the global position of the displayObject. Does not depend on object scale, rotation and pivot.
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
point |
PIXI.Point |
<optional> |
new PIXI.Point() |
The point to write the global value to. |
skipUpdate |
boolean |
<optional> |
false |
Setting to true will stop the transforms of the scene graph from being updated. This means the calculation returned MAY be out of date BUT will give you a nice performance boost. |
Returns:
Type | Description |
---|---|
PIXI.Point | The updated point. |
interactive (value) inherited
Enable interaction events for the DisplayObject. Touch, pointer and mouse
Name | Type | Description |
---|---|---|
value |
boolean |
isInteractive () boolean inherited
Determines if the displayObject is interactive or not
- Since:
- 7.2.0
Returns:
Type | Description |
---|---|
boolean | Whether the displayObject is interactive or not |
Example
import { Sprite } from 'pixi.js';
const sprite = new Sprite(texture);
sprite.eventMode = 'static';
sprite.isInteractive(); // true
sprite.eventMode = 'dynamic';
sprite.isInteractive(); // true
sprite.eventMode = 'none';
sprite.isInteractive(); // false
sprite.eventMode = 'passive';
sprite.isInteractive(); // false
sprite.eventMode = 'auto';
sprite.isInteractive(); // false
removeEventListener (type, listener, options) inherited
Unlike off
or removeListener
which are methods from EventEmitter, removeEventListener
seeks to be compatible with the DOM's removeEventListener
with support for options.
IMPORTANT: Only available if using the @pixi/events
package.
Name | Type | Attributes | Description |
---|---|---|---|
type |
string |
The type of event the listener is bound to. |
|
listener |
EventListenerOrEventListenerObject |
The listener callback or object. |
|
options |
RemoveListenerOptions |
<optional> |
The original listener options. This is required to deregister a capture phase listener. |
removeFromParent () inherited
Remove the DisplayObject from its parent Container. If the DisplayObject has no parent, do nothing.
setParent (container) PIXI.Container inherited
Set the parent Container of this DisplayObject.
Name | Type | Description |
---|---|---|
container |
PIXI.Container |
The Container to add this DisplayObject to. |
Returns:
Type | Description |
---|---|
PIXI.Container |
|
setTransform (x, y, scaleX, scaleY, rotation, skewX, skewY, pivotX, pivotY) this inherited
Convenience function to set the position, scale, skew and pivot at once.
Name | Type | Default | Description |
---|---|---|---|
x |
number | 0 |
The X position |
y |
number | 0 |
The Y position |
scaleX |
number | 1 |
The X scale value |
scaleY |
number | 1 |
The Y scale value |
rotation |
number | 0 |
The rotation |
skewX |
number | 0 |
The X skew value |
skewY |
number | 0 |
The Y skew value |
pivotX |
number | 0 |
The X pivot value |
pivotY |
number | 0 |
The Y pivot value |
Returns:
Type | Description |
---|---|
this |
|
toGlobal (position, point, skipUpdate) P inherited
Calculates the global position of the display object.
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
position |
IPointData |
The world origin to calculate from. |
||
point |
P |
<optional> |
A Point object in which to store the value, optional (otherwise will create a new Point). |
|
skipUpdate |
boolean | false |
Should we skip the update transform. |
Returns:
Type | Description |
---|---|
P |
|
toLocal (position, from, point, skipUpdate) P inherited
Calculates the local position of the display object relative to another point.
Name | Type | Attributes | Description |
---|---|---|---|
position |
IPointData |
The world origin to calculate from. |
|
from |
PIXI.DisplayObject |
<optional> |
The DisplayObject to calculate the global position from. |
point |
P |
<optional> |
A Point object in which to store the value, optional (otherwise will create a new Point). |
skipUpdate |
boolean |
<optional> |
Should we skip the update transform |
Returns:
Type | Description |
---|---|
P |
|
_recursivePostUpdateTransform () void protected inherited
Recursively updates transform of all objects from the root to this one internal function for toLocal()
Inherited Events
From class PIXI.DisplayObject
Fired when this DisplayObject is added to a Container.
Name | Type | Description |
---|---|---|
container |
PIXI.Container |
The container added to. |
Fired when a pointer device button (usually a mouse left-button) is pressed and released on
the display object. DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
A click
event fires after the pointerdown
and pointerup
events, in that
order. If the mouse is moved over another DisplayObject after the pointerdown
event, the
click
event is fired on the most specific common ancestor of the two target DisplayObjects.
The detail
property of the event is the number of clicks that occurred within a 200ms
window of each other upto the current click. For example, it will be 2
for a double click.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
clickcapture inherited
Capture phase equivalent of click
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
destroyed inherited
Fired when this DisplayObject is destroyed. This event is emitted once destroy is finished.
globalmousemove inherited
Fired when a pointer device (usually a mouse) is moved globally over the scene.
DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
globalpointermove inherited
Fired when a pointer device is moved globally over the scene.
DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
globaltouchmove inherited
Fired when a touch point is moved globally over the scene.
DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
mousedown inherited
Fired when a mouse button (usually a mouse left-button) is pressed on the display.
object. DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
The mousedown event. |
mousedowncapture inherited
Capture phase equivalent of mousedown
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
The capture phase mousedown. |
mouseenter inherited
Fired when the mouse pointer is moved over a DisplayObject and its descendant's hit testing boundaries.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
mouseentercapture inherited
Capture phase equivalent of mouseenter
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
mouseleave inherited
Fired when the mouse pointer exits a DisplayObject and its descendants.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
mouseleavecapture inherited
Capture phase equivalent of mouseleave
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
mousemove inherited
Fired when a pointer device (usually a mouse) is moved while over the display object.
DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
mousemovecapture inherited
Capture phase equivalent of mousemove
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
mouseout inherited
Fired when a pointer device (usually a mouse) is moved off the display object.
DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
This may be fired on a DisplayObject that was removed from the scene graph immediately after
a mouseover
event.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
mouseoutcapture inherited
Capture phase equivalent of mouseout
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
mouseover inherited
Fired when a pointer device (usually a mouse) is moved onto the display object.
DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
mouseovercapture inherited
Capture phase equivalent of mouseover
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
mouseup inherited
Fired when a pointer device button (usually a mouse left-button) is released over the display
object. DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
mouseupcapture inherited
Capture phase equivalent of mouseup
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
mouseupoutside inherited
Fired when a pointer device button (usually a mouse left-button) is released outside the
display object that initially registered a
mousedown.
DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
This event is specific to the Federated Events API. It does not have a capture phase, unlike most of the
other events. It only bubbles to the most specific ancestor of the targets of the corresponding pointerdown
and pointerup
events, i.e. the target of the click
event.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
mouseupoutsidecapture inherited
Capture phase equivalent of mouseupoutside
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
pointercancel inherited
Fired when the operating system cancels a pointer event.
DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
pointercancelcapture inherited
Capture phase equivalent of pointercancel
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
pointerdown inherited
Fired when a pointer device button is pressed on the display object.
DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
pointerdowncapture inherited
Capture phase equivalent of pointerdown
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
pointerenter inherited
Fired when the pointer is moved over a DisplayObject and its descendant's hit testing boundaries.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
pointerentercapture inherited
Capture phase equivalent of pointerenter
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
pointerleave inherited
Fired when the pointer leaves the hit testing boundaries of a DisplayObject and its descendants.
This event notifies only the target and does not bubble.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
The |
pointerleavecapture inherited
Capture phase equivalent of pointerleave
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
pointermove inherited
Fired when a pointer device is moved while over the display object.
DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
pointermovecapture inherited
Capture phase equivalent of pointermove
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
pointerout inherited
Fired when a pointer device is moved off the display object.
DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
pointeroutcapture inherited
Capture phase equivalent of pointerout
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
pointerover inherited
Fired when a pointer device is moved onto the display object.
DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
pointerovercapture inherited
Capture phase equivalent of pointerover
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
pointertap inherited
Fired when a pointer device button is pressed and released on the display object.
DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
pointertapcapture inherited
Capture phase equivalent of pointertap
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
pointerup inherited
Fired when a pointer device button is released over the display object.
DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
pointerupcapture inherited
Capture phase equivalent of pointerup
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
pointerupoutside inherited
Fired when a pointer device button is released outside the display object that initially
registered a pointerdown.
DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
This event is specific to the Federated Events API. It does not have a capture phase, unlike most of the
other events. It only bubbles to the most specific ancestor of the targets of the corresponding pointerdown
and pointerup
events, i.e. the target of the click
event.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
pointerupoutsidecapture inherited
Capture phase equivalent of pointerupoutside
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
removed inherited
Fired when this DisplayObject is removed from a Container.
Name | Type | Description |
---|---|---|
container |
PIXI.Container |
The container removed from. |
rightclick inherited
Fired when a pointer device secondary button (usually a mouse right-button) is pressed
and released on the display object. DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
This event follows the semantics of click
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
rightclickcapture inherited
Capture phase equivalent of rightclick
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
rightdown inherited
Fired when a pointer device secondary button (usually a mouse right-button) is pressed
on the display object. DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
rightdowncapture inherited
Capture phase equivalent of rightdown
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
The rightdowncapture event. |
rightup inherited
Fired when a pointer device secondary button (usually a mouse right-button) is released
over the display object. DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
rightupcapture inherited
Capture phase equivalent of rightup
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
rightupoutside inherited
Fired when a pointer device secondary button (usually a mouse right-button) is released
outside the display object that initially registered a
rightdown.
DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
rightupoutsidecapture inherited
Capture phase equivalent of rightupoutside
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
Fired when a touch point is placed and removed from the display object.
DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
tapcapture inherited
Capture phase equivalent of tap
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
touchcancel inherited
Fired when the operating system cancels a touch.
DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
touchcancelcapture inherited
Capture phase equivalent of touchcancel
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
touchend inherited
Fired when a touch point is removed from the display object.
DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
touchendcapture inherited
Capture phase equivalent of touchend
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
touchendoutside inherited
Fired when a touch point is removed outside of the display object that initially
registered a touchstart.
DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
touchendoutsidecapture inherited
Capture phase equivalent of touchendoutside
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
touchmove inherited
Fired when a touch point is moved along the display object.
DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
touchmovecapture inherited
Capture phase equivalent of touchmove
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
touchstart inherited
Fired when a touch point is placed on the display object.
DisplayObject's eventMode
property must be set to static
or 'dynamic' to fire event.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
touchstartcapture inherited
Capture phase equivalent of touchstart
.
These events are propagating from the EventSystem in @pixi/events.
Name | Type | Description |
---|---|---|
event |
PIXI.FederatedPointerEvent |
Event |
Fired when a the user scrolls with the mouse cursor over a DisplayObject.
These events are propagating from the EventSystem in @pixi/events.
Type:
wheelcapture inherited
Capture phase equivalent of wheel
.
These events are propagating from the EventSystem in @pixi/events.