Sets the spring damping of a 6dof joint per angular axis, used on axes with a non-zero angular-stiffness.
The angular spring damping.
Sets the rest angle of a 6dof joint's angular springs in degrees per axis, used on axes with a non-zero angular-stiffness.
The angular spring rest angles.
Sets the lower and upper rotation limit of a 6dof joint about its X axis in degrees, used when angular-motion-x is limited.
The X axis rotation limits.
Sets the lower and upper rotation limit of a 6dof joint about its Y axis in degrees, used when angular-motion-y is limited.
The Y axis rotation limits.
Sets the lower and upper rotation limit of a 6dof joint about its Z axis in degrees, used when angular-motion-z is limited.
The Z axis rotation limits.
Gets how the joint constrains rotation about its X axis.
The X axis rotational degree of freedom.
Sets how a 6dof joint constrains rotation about its X axis. Can be locked, limited or
free. Defaults to locked.
The X axis rotational degree of freedom.
Gets how the joint constrains rotation about its Y axis.
The Y axis rotational degree of freedom.
Sets how a 6dof joint constrains rotation about its Y axis. Can be locked, limited or
free. Defaults to locked.
The Y axis rotational degree of freedom.
Gets how the joint constrains rotation about its Z axis.
The Z axis rotational degree of freedom.
Sets how a 6dof joint constrains rotation about its Z axis. Can be locked, limited or
free. Defaults to locked.
The Z axis rotational degree of freedom.
Sets the spring stiffness of a 6dof joint per angular axis, where 0 disables the spring on that axis.
The angular spring stiffness.
Gets the impulse above which the joint breaks.
The break impulse.
Sets the impulse in newton seconds above which the joint breaks. Defaults to Infinity,
which makes the joint unbreakable.
The break impulse.
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.
The closest app element, or 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.
The closest entity-fronting element, or null.
Gets whether collision is enabled between the two constrained bodies.
Whether collision is enabled.
Sets whether collision is enabled between the two constrained bodies.
Whether collision is enabled.
Gets the enabled state of the component.
The enabled state of the component.
Sets the enabled state of the component.
The enabled state of the component.
Gets whether the limits of the joint are enforced.
Whether the limits are enforced.
Sets whether the limits of a hinge, slider or ball joint are enforced.
Whether the limits are enforced.
Gets the reference to the <pc-entity> providing the first constrained body.
The first body's entity reference.
Sets the reference (CSS selector, element id or entity name) to the <pc-entity> providing
the first constrained body. The reference resolves when it is set, so an entity created
later is picked up by setting the attribute again.
The first body's entity reference.
Gets the reference to the <pc-entity> providing the second constrained body.
The second body's entity reference.
Sets the reference (CSS selector, element id or entity name) to the <pc-entity> providing
the second constrained body, or empty to constrain the first body to a fixed point in world
space. The reference resolves when it is set, so an entity created later is picked up by
setting the attribute again.
The second body's entity reference.
Sets the lower and upper limit of a hinge joint's rotation in degrees, or a slider joint's travel in meters, applied when enable-limits is set.
The rotation or travel limits.
Sets the spring damping of a 6dof joint per linear axis, used on axes with a non-zero linear-stiffness.
The linear spring damping.
Sets the rest point of a 6dof joint's linear springs in meters per axis, used on axes with a non-zero linear-stiffness.
The linear spring rest points.
Gets how the joint constrains translation along its X axis.
The X axis linear degree of freedom.
Sets how a 6dof joint constrains translation along its X axis. Can be locked, limited or
free. Defaults to locked.
The X axis linear degree of freedom.
Gets how the joint constrains translation along its Y axis.
The Y axis linear degree of freedom.
Sets how a 6dof joint constrains translation along its Y axis. Can be locked, limited or
free. Defaults to locked.
The Y axis linear degree of freedom.
Gets how the joint constrains translation along its Z axis.
The Z axis linear degree of freedom.
Sets how a 6dof joint constrains translation along its Z axis. Can be locked, limited or
free. Defaults to locked.
The Z axis linear degree of freedom.
Sets the spring stiffness of a 6dof joint per linear axis, where 0 disables the spring on that axis.
The linear spring stiffness.
Gets the maximum torque or force of the joint's motor.
The maximum motor torque or force.
Sets the maximum torque in newton meters of a hinge joint's motor, or the maximum force in newtons of a slider joint's motor, where 0 disables the motor.
The maximum motor torque or force.
Gets the target speed of the joint's motor.
The motor's target speed.
Sets the target speed of a hinge joint's motor in degrees per second, or a slider joint's motor in meters per second, active while max-motor-force is greater than 0.
The motor's target speed.
Gets the maximum swing of the joint around the joint frame's Y axis.
The Y axis swing limit.
Sets the maximum swing of a ball joint around the joint frame's Y axis in degrees, applied when enable-limits is set.
The Y axis swing limit.
Gets the maximum swing of the joint around the joint frame's Z axis.
The Z axis swing limit.
Sets the maximum swing of a ball joint around the joint frame's Z axis in degrees, applied when enable-limits is set.
The Z axis swing limit.
Gets the maximum twist of the joint about its primary axis.
The twist limit.
Sets the maximum twist of a ball joint about its primary axis in degrees, applied when enable-limits is set.
The twist limit.
Gets the type of the joint.
The joint type.
Sets the type of the joint. Can be fixed, ball, hinge, slider or 6dof. Defaults to
fixed.
The joint type.
Protected_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.
Protected_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.
ProtectedgetReturns the data the component is created with. Overridden by subclasses to supply the initial values of their cached properties.
The initial component data.
ProtectedinitConfigures the newly added component. Overridden by subclasses whose setup goes beyond the initial data — child-element handling, asset resolution and the like.
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.
A promise that resolves with this element when it's ready.
The JointComponentElement interface provides properties and methods for manipulating
<pc-joint>elements. The JointComponentElement interface also inherits the properties and methods of the HTMLElement interface.The entity holding the joint is not itself constrained. Its world transform defines the joint frame — the anchor point and axes the constraint operates about — with the local X axis as the primary axis: a hinge rotates about it, a slider translates along it and a ball joint twists about it. The constrained bodies are referenced by
entity-aandentity-b, both of which need a rigid body component; leavingentity-bempty constrainsentity-ato a fixed point in world space. The underlying engine component is in alpha, so its API may change.Fires
break - Fired when the impulse on the joint exceeds
break-impulseand the constraint breaks. A broken joint no longer constrains its bodies; callingrefreshFrames()on the underlying component re-attaches it. Bubbles and is composed.Engine component: JointComponent (
joint).