BodyComponent<T extends Forge2DGame<Forge2DWorld> > class
Since a pure BodyComponent doesn't have anything drawn on top of it,
it is a good idea to turn on debugMode
for it so that the bodies can be
seen
You can use the optional bodyDef and fixtureDefs arguments to create the BodyComponent's body without having to create the definitions within the component.
Constructors
-
BodyComponent({Paint? paint, Iterable<
Component> ? children, int? priority, bool renderBody = true, BodyDef? bodyDef, List<FixtureDef> ? fixtureDefs, ComponentKey? key})
Properties
- angle → double
-
no setter
- body ↔ Body
-
getter/setter pair
- bodyDef ↔ BodyDef?
-
The default implementation of createBody will use this value to create
the Body, if it is provided.
getter/setter pair
- camera → CameraComponent
-
no setter
- center → Vector2
-
no setter
- children → ComponentSet
-
The children components of this component.
no setterinherited
- debugColor ↔ Color
-
The color that the debug output should be rendered with.
getter/setter pairinherited
- debugCoordinatesPrecision ↔ int?
-
How many decimal digits to print when displaying coordinates in the
debug mode. Setting this to null will suppress all coordinates from
the output.
getter/setter pairinherited
- debugMode ↔ bool
-
Returns whether this
Component
is in debug mode or not. When a child is added to theComponent
it gets the samedebugMode
as its parent has when it is prepared.getter/setter pairinherited - debugPaint → Paint
-
The
debugColor
represented as a Paint object.no setterinherited - debugTextPaint → TextPaint
-
Returns a
TextPaint
object with thedebugColor
set as color for the text.no setterinherited -
fixtureDefs
↔ List<
FixtureDef> ? -
The default implementation of createBody will add these fixtures to the
Body that it creates from bodyDef.
getter/setter pair
- game ↔ T
-
Reference to the top-level Game instance that owns this component.
getter/setter pairinherited
- hasChildren → bool
-
no setterinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
- hasPaintLayers → bool
-
Whether there are any paint layers defined for the component.
no setterinherited
- isLoaded → bool
-
Whether this component has completed its
onLoad
step.no setterinherited - isLoading → bool
-
Whether the component is currently executing its
onLoad
step.no setterinherited - isMounted → bool
-
Whether this component is currently added to a component tree.
no setterinherited
- isMounting → bool
-
no setterinherited
- isRemoved → bool
-
Whether the component has been removed. Originally this flag is
false
, but it becomestrue
after the component was mounted and then removed from its parent. The flag becomesfalse
again when the component is mounted to a new parent.no setterinherited - isRemoving → bool
-
Whether the component is scheduled to be removed.
no setterinherited
- key → ComponentKey?
-
A key that can be used to identify this component in the tree.
finalinherited
-
loaded
→ Future<
void> -
A future that completes when this component finishes loading.
no setterinherited
-
mounted
→ Future<
void> -
A future that will complete once the component is mounted on its parent.
no setterinherited
- opacity ↔ double
-
getter/setter pairinherited
- paint ↔ Paint
-
getter/setter pairinherited
-
paintLayers
↔ List<
Paint> -
List of paints to use (in order) during render.
getter/setter pairinherited
-
paintLayersInternal
↔ List<
Paint> ? -
getter/setter pairinherited
- parent ↔ Component?
-
Who owns this component in the component tree.
getter/setter pairinherited
- position → Vector2
-
no setter
- priority ↔ int
-
Render priority of this component. This allows you to control the order in
which your components are rendered.
getter/setter pairinherited
-
removed
→ Future<
void> -
A future that completes when this component is removed from its parent.
no setterinherited
- renderBody ↔ bool
-
Specifies if the body's fixtures should be rendered.
getter/setter pair
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- world → Forge2DWorld
-
no setter
Methods
-
add(
Component component) → FutureOr< void> -
Schedules
component
to be added as a child to this component.inherited -
addAll(
Iterable< Component> components) → Future<void> -
A convenience method to
add
multiple children at once.inherited -
addToParent(
Component parent) → FutureOr< void> -
Adds this component as a child of
parent
(seeadd
for details).inherited -
ancestors(
{bool includeSelf = false}) → Iterable< Component> -
An iterator producing this component's parent, then its parent's parent,
then the great-grand-parent, and so on, until it reaches a component
without a parent.
inherited
-
componentsAtLocation<
T> (T locationContext, List< T> ? nestedContexts, T? transformContext(CoordinateTransform, T), bool checkContains(Component, T)) → Iterable<Component> -
This is a generic implementation of
componentsAtPoint
; refer to those docs for context.inherited -
componentsAtPoint(
Vector2 point, [List< Vector2> ? nestedPoints]) → Iterable<Component> -
An iterable of descendant components intersecting the given point. The
point
is in the local coordinate space.inherited -
contains(
Component c) → bool -
Whether the children list contains the given component.
inherited
-
containsLocalPoint(
Vector2 point) → bool -
Checks whether the
point
is within this component's bounds. -
containsPoint(
Vector2 point) → bool -
Same as containsLocalPoint, but for a "global"
point
. -
createBody(
) → Body - You should create the Forge2D Body in this method when you extend the BodyComponent.
-
createComponentSet(
) → ComponentSet -
This method creates the children container for the current component.
Override this method if you need to have a custom
ComponentSet
within a particular class.inherited -
deletePaint(
Object paintId) → void -
Removes a paint from the collection.
inherited
-
descendants(
{bool includeSelf = false, bool reversed = false}) → Iterable< Component> -
Recursively enumerates all nested
children
.inherited -
findGame(
) → FlameGame< World> ? -
Fetches the nearest
FlameGame
ancestor to the component.inherited -
findParent<
T extends Component> ({bool includeSelf = false}) → T? -
Returns the closest parent further up the hierarchy that satisfies type=T,
or null if no such parent can be found.
inherited
-
findRootGame(
) → FlameGame< World> ? -
Fetches the root
FlameGame
ancestor to the component.inherited -
firstChild<
T extends Component> () → T? -
Returns the first child that matches the given type
T
, or null if there are no such children.inherited -
getAlpha(
{Object? paintId}) → int -
Returns the current opacity.
inherited
-
getOpacity(
{Object? paintId}) → double -
Returns the current opacity.
inherited
-
getPaint(
[Object? paintId]) → Paint -
Gets a paint from the collection.
inherited
-
handleLifecycleEventAdd(
Component parent) → LifecycleEventStatus -
inherited
-
handleLifecycleEventMove(
Component newParent) → LifecycleEventStatus -
inherited
-
handleLifecycleEventRemove(
Component parent) → LifecycleEventStatus -
inherited
-
handleResize(
Vector2 size) → void -
inherited
-
lastChild<
T extends Component> () → T? -
Returns the last child that matches the given type
T
, or null if there are no such children.inherited -
localToParent(
Vector2 point) → Vector2 -
makeOpaque(
{Object? paintId}) → void -
Manipulate the paint to make it fully opaque.
inherited
-
makeTransparent(
{Object? paintId}) → void -
Manipulate the paint to make it fully transparent.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
onChildrenChanged(
Component child, ChildrenChangeType type) → void -
This method will be invoked from lifecycle if
child
has been added to or removed from its parent children list.inherited -
onGameResize(
Vector2 size) → void -
Called whenever the size of the top-level Canvas changes.
inherited
-
onLoad(
) → Future< void> -
Late initialization method for
Component
. -
onMount(
) → void -
Called when the component is added to its parent.
inherited
-
onParentResize(
Vector2 maxSize) → void -
Called whenever the parent of this component changes size; and also once
before
onMount
.inherited -
onRemove(
) → void - Called right before the component is removed from the game.
-
opacityProviderOf(
Object paintId) → OpacityProvider -
Creates an
OpacityProvider
for givenpaintId
and can be used astarget
forOpacityEffect
.inherited -
opacityProviderOfList(
{List< Object?> ? paintIds, bool includeLayers = true}) → OpacityProvider -
Creates an
OpacityProvider
for given list ofpaintIds
and can be used astarget
forOpacityEffect
.inherited -
parentToLocal(
Vector2 point) → Vector2 -
propagateToChildren<
T extends Component> (bool handler(T), {bool includeSelf = false}) → bool -
This method first calls the passed handler on the leaves in the tree,
the children without any children of their own.
Then it continues through all other children. The propagation continues
until the handler returns false, which means "do not continue", or when
the handler has been called with all children.
inherited
-
remove(
Component component) → void -
Removes a component from the component tree.
inherited
-
removeAll(
Iterable< Component> components) → void -
Removes all the children in the list and calls
onRemove
for all of them and their children.inherited -
removeFromParent(
) → void -
Remove the component from its parent in the next tick.
inherited
-
removeWhere(
bool test(Component component)) → void -
Removes all the children for which the
test
function returns true.inherited -
render(
Canvas canvas) → void -
renderChain(
Canvas canvas, List< Offset> points) → void -
renderCircle(
Canvas canvas, Offset center, double radius) → void -
renderDebugMode(
Canvas canvas) → void -
renderEdge(
Canvas canvas, Offset p1, Offset p2) → void -
renderFixture(
Canvas canvas, Fixture fixture) → void - Renders a Fixture in a Canvas.
-
renderPolygon(
Canvas canvas, List< Offset> points) → void -
renderTree(
Canvas canvas) → void -
setAlpha(
int alpha, {Object? paintId}) → void -
Changes the opacity of the paint.
inherited
-
setColor(
Color color, {Object? paintId}) → void -
Shortcut for changing the color of the paint.
inherited
-
setLoaded(
) → void -
Used by the
FlameGame
to set the loaded state of the component, since the game isn't going through the whole normal component life cycle.inherited -
setMounted(
) → void -
Used by the
FlameGame
to set the mounted state of the component, since the game isn't going through the whole normal component life cycle.inherited -
setOpacity(
double opacity, {Object? paintId}) → void -
Changes the opacity of the paint.
inherited
-
setPaint(
Object paintId, Paint paint) → void -
Sets a paint on the collection.
inherited
-
setRemoved(
) → void -
Used by the
FlameGame
to set the removed state of the component, since the game isn't going through the whole normal component life cycle.inherited -
tint(
Color color, {Object? paintId}) → void -
Applies a color filter to the paint which will make
things rendered with the paint looking like it was
tinted with the given color.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
-
update(
double dt) → void -
This method is called periodically by the game engine to request that your
component updates itself.
inherited
-
updateTree(
double dt) → void -
This method traverses the component tree and calls
update
on all its children according to theirpriority
order, relative to the priority of the direct siblings, not the children or the ancestors.inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Constants
- defaultColor → const Color