HomeWeb Components API Reference - v0.23.0
    Preparing search index...

    Class RigidBodyComponentElement

    The RigidBodyComponentElement interface provides properties and methods for manipulating <pc-rigid-body> elements. The RigidBodyComponentElement interface also inherits the properties and methods of the HTMLElement interface.

    Engine component: RigidBodyComponent (rigidbody).

    Hierarchy (View Summary)

    Index
    • get angularDamping(): number

      Gets the rate at which the body loses angular velocity over time, from 0 (none) to 1.

      Returns number

      The angular damping.

    • set angularDamping(value: number): void

      Sets the rate at which the body loses angular velocity over time, from 0 (none) to 1. Defaults to 0.

      Parameters

      • value: number

        The angular damping.

      Returns void

    • get angularFactor(): Vec3

      Gets the scaling applied to the body's rotation about each axis: 0 locks an axis and 1 leaves it free.

      Returns Vec3

      The angular factor.

    • set angularFactor(value: Vec3): void

      Sets the scaling applied to the body's rotation about each axis: 0 locks an axis and 1 leaves it free. Applies to dynamic bodies only. Defaults to 1 in each axis.

      Parameters

      • value: Vec3

        The angular factor.

      Returns void

    • get closestApp(): AppElement | null

      The nearest ancestor <pc-app> element, or null if this element has no <pc-app> ancestor. The search starts at the parent, so an element never resolves to itself.

      Returns AppElement | null

      The closest app element, or null.

    • get closestEntity(): EntityBaseElement | null

      The nearest ancestor element that fronts an entity — <pc-entity>, <pc-model> or <pc-node> — or null if this element has no such ancestor. The search starts at the parent, so an element never resolves to itself.

      Returns EntityBaseElement | null

      The closest entity-fronting element, or null.

    • get enabled(): boolean

      Gets the enabled state of the component.

      Returns boolean

      The enabled state of the component.

    • set enabled(value: boolean): void

      Sets the enabled state of the component.

      Parameters

      • value: boolean

        The enabled state of the component.

      Returns void

    • get friction(): number

      Gets the friction applied where the body contacts another, from 0 (slides freely) to 1 (grips).

      Returns number

      The friction.

    • set friction(value: number): void

      Sets the friction applied where the body contacts another, from 0 (slides freely) to 1 (grips). Defaults to 0.5.

      Parameters

      • value: number

        The friction.

      Returns void

    • get linearDamping(): number

      Gets the rate at which the body loses linear velocity over time, from 0 (none) to 1.

      Returns number

      The linear damping.

    • set linearDamping(value: number): void

      Sets the rate at which the body loses linear velocity over time, from 0 (none) to 1. Defaults to 0.

      Parameters

      • value: number

        The linear damping.

      Returns void

    • get linearFactor(): Vec3

      Gets the scaling applied to the body's movement along each axis: 0 locks an axis and 1 leaves it free.

      Returns Vec3

      The linear factor.

    • set linearFactor(value: Vec3): void

      Sets the scaling applied to the body's movement along each axis: 0 locks an axis and 1 leaves it free. Applies to dynamic bodies only. Defaults to 1 in each axis.

      Parameters

      • value: Vec3

        The linear factor.

      Returns void

    • get mass(): number

      Gets the mass of the body, which applies to dynamic bodies only.

      Returns number

      The mass.

    • set mass(value: number): void

      Sets the mass of the body. Applies to dynamic bodies only; static and kinematic bodies behave as if infinitely massive. Defaults to 1.

      Parameters

      • value: number

        The mass.

      Returns void

    • get restitution(): number

      Gets the bounciness of the body, from 0 (all energy lost in a collision) to 1 (none lost).

      Returns number

      The restitution.

    • set restitution(value: number): void

      Sets the bounciness of the body, from 0 (all energy lost in a collision) to 1 (none lost). The restitution of both colliding bodies is multiplied together, so two bodies at 1 bounce fully and one at 0 stops any bounce. Defaults to 0.

      Parameters

      • value: number

        The restitution.

      Returns void

    • get rollingFriction(): number

      Gets the friction that resists the body rolling across a contact, where friction resists it sliding.

      Returns number

      The rolling friction.

    • set rollingFriction(value: number): void

      Sets the friction that resists the body rolling across a contact, where friction resists it sliding. Defaults to 0.

      Parameters

      • value: number

        The rolling friction.

      Returns void

    • get type(): "static" | "dynamic" | "kinematic"

      Gets how the body takes part in the simulation: static, dynamic or kinematic.

      Returns "static" | "dynamic" | "kinematic"

      The type.

    • set type(value: "static" | "dynamic" | "kinematic"): void

      Sets how the body takes part in the simulation. Can be static (never moves, and other bodies collide with it), dynamic (moved by forces, gravity and collisions) or kinematic (moved only by setting its transform, and pushes dynamic bodies aside). Defaults to static.

      Parameters

      • value: "static" | "dynamic" | "kinematic"

        The type.

      Returns void

    • Called when the element is fully initialized and ready. Subclasses should call this when they're ready. Resolves the ready promise and dispatches a bubbling, composed ready event. Signals at most once per readiness cycle: a repeat call before _resetReady has re-armed the promise does nothing.

      Returns void

    • Returns the ready promise to its pending state. Subclasses should call this when the resource their readiness announced is torn down (typically from disconnectedCallback), so that a later re-initialization can signal readiness again. Does nothing while the promise is still pending — an in-flight waiter carries over to the next readiness cycle rather than being stranded on a promise nothing will ever resolve.

      Returns void

    • Returns the data the component is created with. Overridden by subclasses to supply the initial values of their cached properties.

      Returns {
          angularDamping: number;
          angularFactor: Vec3;
          friction: number;
          linearDamping: number;
          linearFactor: Vec3;
          mass: number;
          restitution: number;
          rollingFriction: number;
          type: "static" | "dynamic" | "kinematic";
      }

      The initial component data.

    • Returns a promise that resolves with this element when it's ready. This is the low-level primitive underlying whenReady, which is the recommended way to wait for elements.

      Readiness tracks the element's current lifecycle: once a ready element is torn down (for example by removing it from the document), this returns a fresh promise that resolves when the element is next ready. A promise obtained earlier stays resolved — call this again after re-inserting an element rather than reusing a promise from before its removal.

      Returns Promise<RigidBodyComponentElement>

      A promise that resolves with this element when it's ready.