Optional_Optional_The bounds object, this is used to calculate and store the bounds of the displayObject.
Protected_Flags the cached bounds as dirty.
Protected_Cache of this display-object's bounds-rectangle.
Protected_If the object has been destroyed via destroy(). If true, it should not be used.
Protected_Currently enabled filters.
Protected_Protected_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.
Local bounds object, swapped with _bounds when using getLocalBounds().
Protected_Cache of this display-object's local-bounds rectangle.
Protected_The original, cached mask of the object.
Optional_Protected_Protected_The zIndex of the displayObject. A higher value will mean it will be rendered on top of other displayObjects within the same container.
OptionalaccessibleOptionalaccessibleOptionalaccessibleOptionalaccessibleOptionalaccessibleOptionalaccessibleThe opacity of the object.
ReadonlychildrenThe array of children of this container.
Should this object be rendered if the bounds of this object are out of frame?
Culling has no effect on whether updateTransform is called.
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.
The currently active transform data.
The cursor preferred when the mouse pointer is hovering over.
The mode of interaction for this object
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.
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'.
OptionalfixedThe hit-area specifies the area for which pointer events should be captured by this event target.
Whether this event target should fire UI events.
Whether this event target has any children that need UI events. This can be used optimize event propagation.
Returns true if the DisplayObject has interactive 'static' or 'dynamic'
Does any other displayObject use this object as a mask?
Used to fast check if a sprite is.. a sprite!
Transform data for landscape orientation.
OptionallongThe instance name of the container.
Handler for 'click' event
Handler for 'globalmousemove' event
Handler for 'globalpointermove' event
Handler for 'globaltouchmove' event
Handler for 'mousedown' event
Handler for 'mouseenter' event
Handler for 'mouseleave' event
Handler for 'mousemove' event
Handler for 'mouseout' event
Handler for 'mouseover' event
Handler for 'mouseup' event
Handler for 'mouseupoutside' event
Handler for 'pointercancel' event
Handler for 'pointerdown' event
Handler for 'pointerenter' event
Handler for 'pointerleave' event
Handler for 'pointermove' event
Handler for 'pointerout' event
Handler for 'pointerover' event
Handler for 'pointertap' event
Handler for 'pointerup' event
Handler for 'pointerupoutside' event
Handler for 'rightclick' event
Handler for 'rightdown' event
Handler for 'rightup' event
Handler for 'rightupoutside' event
Handler for 'tap' event
Handler for 'touchcancel' event
Handler for 'touchend' event
Handler for 'touchendoutside' event
Handler for 'touchmove' event
Handler for 'touchstart' event
Handler for 'wheel' event
OptionaloriginalOptionaloriginalOptionaloriginalThe display object container that contains this display object.
Transform data for portrait orientation.
OptionalpressCan 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.
OptionalrenderIf 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.
OptionaltabWorld 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.
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.
ReadonlyworldThe multiplied alpha of the displayObject.
StaticdefaultSets 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.
StaticprefixedThe 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.
Readonly flag for destroyed display objects.
Returns true if fit-to-screen mode is currently active.
When set to true, stretches this container to fill the entire screen
on the next applyTransform call.
true to enable fit-to-screen mode.
The height of the Container, setting this will actually modify the scale to achieve the value set.
Sets the display height and mirrors the derived scaleY back into
currentTransform.
Current transform of the object based on local factors: position, scale, other stuff.
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.
Sets the horizontal pivot and mirrors the value into currentTransform.
Sets the vertical pivot and mirrors the value into currentTransform.
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.
Sets the rotation (in radians) and mirrors the value into currentTransform.
Sets the horizontal scale and mirrors the value into currentTransform.
Sets the vertical scale and mirrors the value into currentTransform.
The width of the Container, setting this will actually modify the scale to achieve the value set.
Sets the display width and mirrors the derived scaleX back into
currentTransform.
Current transform of the object based on world (parent) factors.
Indicates if the object is globally visible.
The position of the displayObject on the x axis relative to the local coordinates of the parent. An alias to position.x
Sets the x position and mirrors the value into currentTransform so it
is preserved across orientation changes.
The position of the displayObject on the y axis relative to the local coordinates of the parent. An alias to position.y
Sets the y position and mirrors the value into currentTransform.
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.
Optionaloptions: boolean | IDestroyOptionsProtected_ProtectedRecalculates the content bounds of this object. This should be overriden to calculate the bounds of this specific object (not including children).
Protected_Recursively updates transform of all objects from the root to this one internal function for toLocal()
Protected_To be overridden by the subclasses.
The renderer
Protected_ProtectedRenders this object and its children with culling.
The renderer
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.
The child to add.
The absolute index where the child will be positioned at the end of the operation.
The child that was added.
The addEventListener() method of the EventTarget interface sets up a function that will be called whenever the specified event is delivered to the target.
The addEventListener() method of the EventTarget interface sets up a function that will be called whenever the specified event is delivered to the target.
Optionaloptions: AddListenerOptionsPositions the container at a screen-percentage anchor point when
currentTransform.isAnchored is true. Converts the percentage
coordinates to local space relative to the parent.
Reads currentTransform (or delegates to executeFitToScreen) and
writes position, scale, rotation, pivot, alpha, and visibility onto
this container. Skips the update while a parent ZTimeline is playing.
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.
Creates a shallow structural clone of this ZContainer, copying position,
pivot, scale, rotation, alpha, visibility, and name. Direct children are
cloned by type: PIXI.Text, PIXI.BitmapText, PIXI.Sprite,
PIXI.NineSlicePlane, and any object that exposes its own clone() method.
A new ZContainer with cloned children.
Removes all internal references and listeners as well as removes children from the display list.
Do not use a Container after calling destroy.
Optionaloptions: boolean | IDestroyOptionsOptions parameter. A boolean will act as if all options have been set to that value
if set to true, all the children will have their destroy method called as well. 'options' will be passed on to those calls.
Only used for child Sprites if options.children is set to true Should it destroy the texture of the child sprite
Only used for child Sprites if options.children is set to true Should it destroy the base texture of the child sprite
Disables the button: removes interactivity, switches to disabledState,
and dims label containers to 0.5 alpha.
Pair method for enableTempParent
Actual parent of element
The dispatchEvent() method of the EventTarget sends an Event to the object, (synchronously) invoking the affected event listeners in the appropriate order.
Re-enables the button: restores pointer-cursor, re-attaches hover/down
listeners, shows the upState, and re-registers the click callback.
Used in Renderer, cacheAsBitmap and other places where you call an updateTransform on root.
const cacheParent = elem.enableTempParent();
elem.updateTransform();
elem.disableTempParent(cacheParent);
Return an array listing the events for which the emitter has registered listeners.
Stretches this container (or its first ZNineSlice child) to cover the
full browser viewport. Assumes the asset pivot is at the top-left.
In landscape mode scales by width; in portrait mode scales by height.
Performs a breadth-first search and returns the first descendant ZContainer with the given name.
The name to search for.
The first matching ZContainer, or null if not found.
Performs a breadth-first search and returns all descendant ZContainer instances with the given name.
The name to search for.
An array of all matching ZContainer instances (may be empty).
Performs a breadth-first search and returns all descendants that report
the given type string via their getType() method.
The type string to match (e.g. "ZButton", "ZToggle").
An array of matching ZContainer descendants.
Returns the current alpha (opacity) value.
Opacity in the range [0, 1].
Calculates and returns the (world) bounds of the display object as a [Rectangle]PIXI.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]PIXI.DisplayObject#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.
OptionalskipUpdate: booleanSetting 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.
Optionalrect: RectangleOptional rectangle to store the result of the bounds calculation.
Returns the child at the specified index
The index to get the child at
Optionaldeep: booleanReturns the index position of a child DisplayObject instance
The DisplayObject instance to identify
Optionalpoint: PointOptionalskipUpdate: booleanReturns the primary label text field for this button.
In "single" mode, returns the field from topLabelContainer;
in "multi" mode, returns the field from the upState's labelContainer.
The text field, or null if none is present.
Returns the secondary label text field for this button.
In "single" mode, returns the field from topLabelContainer2;
in "multi" mode, returns the field from the upState's labelContainer2.
The text field, or null if none is present.
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.
Optionalrect: RectangleOptional rectangle to store the result of the bounds calculation.
OptionalskipChildrenUpdate: booleanSetting to true will stop re-calculation of children transforms,
it was default behaviour of pixi 4.0-5.2 and caused many problems to users.
Returns the raw instance-data props object that was set via setInstanceData.
The stored _props object, or undefined if not yet set.
Searches direct children for a Spine animation object and returns the first match. Supports both Spine 3.8 and Spine 4.0 runtime versions.
The first Spine instance found, or undefined if none exists.
Finds and returns the first text-field child. Prefers a child named
"label", then falls back to the first PIXI.Text or TextInput found
among direct children.
The text field, or null if none exists.
Returns the PIXI.TextStyle of this container's text field, or null
if no text field exists or it is a TextInput.
The text style, or null.
Returns the class type identifier.
"ZButton"
Returns whether this container is currently visible.
true if visible.
Returns true if this button has a primary label text field.
Returns true if this button has a secondary label text field.
Sets all visual state containers (upState, overState, downState,
disabledState) to invisible. Used internally before showing the active state.
Initialises the button by resolving label containers and visual states
from the scene-editor hierarchy, then calls enable().
Optional initial label string (reserved for future use).
Returns whether this container is currently configured to use anchor-based positioning.
true if the current transform has isAnchored set.
Return the number of listeners listening to a given event.
Initialises and starts a particle emitter on this container.
Injects texture into the textureSingle behavior of emitterConfig
before creating the Emitter instance.
A PixiJS particle-emitter behaviors-based config object.
The texture to use for individual particles.
An identifier for this particle effect (currently unused internally).
Hides labelContainer2 everywhere and repositions labelContainer to
the vertical centre of its parent, effectively making the button single-line.
ProtectedonOverridable method that can be used by Container subclasses whenever the children array is modified.
Optional_length: numberShows downState and dims label containers to 0.5 alpha.
Restores upState and sets label containers to full alpha.
Shows overState and sets label containers to full alpha.
Starts (or resumes) the particle emitter.
Must be called after loadParticle has initialised the emitter.
Remove all listeners, or those of the specified event.
Optionalevent: keyof DisplayObjectEventsClears the registered click callback so pressing the button does nothing.
Removes a child from the specified index position.
The index to get the child from
The child that was removed.
Removes all children from this container that are within the begin and end indexes.
OptionalbeginIndex: numberThe beginning position.
OptionalendIndex: numberThe ending position. Default value is size of the container.
The removeEventListener() method of the EventTarget interface removes an event listener previously registered with EventTarget.addEventListener() from the target.
The removeEventListener() method of the EventTarget interface removes an event listener previously registered with EventTarget.addEventListener() from the target.
Optionaloptions: RemoveListenerOptionsRemove the DisplayObject from its parent Container. If the DisplayObject has no parent, do nothing.
Clears the registered long-press callback.
Renders the object using the WebGL renderer.
The [_render]PIXI.Container#_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]PIXI.DisplayObject#cullable and [cullArea]PIXI.DisplayObject#cullArea. Other culling methods might be better suited for a large number static objects; see [@pixi-essentials/cull]https://www.npmjs.com/package/@pixi-essentials/cull and [pixi-cull]https://www.npmjs.com/package/pixi-cull.
The [renderAdvanced]PIXI.Container#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.
The renderer
ProtectedrenderRender the object using the WebGL renderer and advanced features.
The renderer
Switches the active orientation data and re-applies the transform. Called by the scene or parent when the viewport size changes.
The new viewport width (unused directly; stored by parent).
The new viewport height (unused directly; stored by parent).
The new orientation: "portrait" or "landscape".
Sets the alpha (opacity) and mirrors the value into currentTransform.
Opacity in the range [0, 1].
Registers a function to be called when the button is clicked.
The click handler.
Changes the position of an existing child in the display object container
The child DisplayObject instance for which you want to change the index number
The resulting index number for the child display object
Enables or disables fixed-box-size mode. When enabled, setText will
shrink the font size to keep the text within the original measured bounds.
true to enable fixed-box mode, false to disable.
Enables or disables fixed-box-size mode on every label container so that long strings are automatically shrunk to fit.
true to constrain text size, false to allow free sizing.
Applies scene-editor instance data to this container: stores portrait / landscape transforms, sets the active orientation, applies the resulting transform, and captures original text dimensions.
The InstanceData exported from the scene editor.
"portrait" or "landscape".
Sets the primary label text on all visible label containers.
In "single" label mode all labelContainer descendants are updated;
in "multi" mode each state's labelContainer is updated individually.
The string to display.
Sets the secondary label text on all visible labelContainer2 containers
in the same manner as setLabel.
The string to display.
Registers a function to be called when the button is long-pressed (≥500 ms).
The long-press handler.
Set the parent Container of this DisplayObject.
The Container to add this DisplayObject to.
Sets the text content of the first text-field child (named "label" or
the first PIXI.Text / TextInput found). If fixed-box-size mode is on,
the font size will be reduced until the text fits within the original bounds.
The string to display.
Merges additional style properties onto the text-field's existing style and re-runs the resize logic to keep the text within bounds.
Partial PIXI.TextStyle properties to merge.
Convenience function to set the position, scale, skew and pivot at once.
Optionalx: numberThe X position
Optionaly: numberThe Y position
OptionalscaleX: numberThe X scale value
OptionalscaleY: numberThe Y scale value
Optionalrotation: numberThe rotation
OptionalskewX: numberThe X skew value
OptionalskewY: numberThe Y skew value
OptionalpivotX: numberThe X pivot value
OptionalpivotY: numberThe Y pivot value
Sets the visibility of this container and mirrors the value into currentTransform.
true to show, false to hide.
Sorts children by zIndex. Previous order is maintained for 2 children with the same zIndex.
Pauses particle emission by setting emitter.emit = false.
The existing particles continue to age and disappear naturally.
Swaps the position of 2 Display Objects within this container.
First display object to swap
Second display object to swap
Calculates the global position of the display object.
The world origin to calculate from.
Optionalpoint: PA Point object in which to store the value, optional (otherwise will create a new Point).
OptionalskipUpdate: booleanShould we skip the update transform.
Calculates the local position of the display object relative to another point.
The world origin to calculate from.
Optionalfrom: DisplayObjectThe DisplayObject to calculate the global position from.
Optionalpoint: PA Point object in which to store the value, optional (otherwise will create a new Point).
OptionalskipUpdate: booleanShould we skip the update transform
Updates the transform on all children of this container for rendering.
StaticmixinMixes all enumerable properties and methods from a source object to DisplayObject.
The source of properties and methods to mix in.
A custom container class extending
PIXI.Containerthat supports orientation-based transforms, anchoring, and instance data management for responsive layouts.Remarks
OrientationDataobject.Method
setState Sets the state of the container by name. (Implementation placeholder)
Param: stateName
The name of the state to set.
Method
init Called once all children of the container are loaded. (Implementation placeholder)
Method
setInstanceData Sets the instance data and orientation for the container, applying the corresponding transform.
Param: data
The instance data containing orientation transforms and name.
Param: orientation
The orientation to use ("portrait" or "landscape").
Method
resize Updates the container's transform based on new width, height, and orientation.
Param: width
The new width of the container.
Param: height
The new height of the container.
Param: orientation
The new orientation ("portrait" or "landscape").
Method
applyAnchor Applies anchoring based on the current transform's anchor settings, positioning the container relative to the screen size.
Method
isAnchored Checks if the current transform is anchored.
Returns
trueif anchored, otherwisefalse.Method
set x Sets the x position and updates the current transform.
Param: value
The new x position.
Method
set y Sets the y position and updates the current transform.
Param: value
The new y position.
Method
set rotation Sets the rotation and updates the current transform.
Param: value
The new rotation value.
Method
set scaleX Sets the x scale and updates the current transform.
Param: value
The new x scale.
Method
set scaleY Sets the y scale and updates the current transform.
Param: value
The new y scale.
Method
set pivotX Sets the x pivot and updates the current transform.
Param: value
The new x pivot.
Method
set pivotY Sets the y pivot and updates the current transform.
Param: value
The new y pivot.