One Logo Pool Ball
RealityFoundation · IOS API REFERENCE

PhysicsRevoluteJoint

struct · iOS 18.0+ · SDK 27.1

struct PhysicsRevoluteJoint

A joint that allows one degree of rotational freedom between two entity pins, similar to a door swinging on its hinges. `PhysicsRevoluteJoint` allows one rotational degree of freedom along the x-axis of two entity pins. > Tip: Pass an orientation when creating the ``GeometricPin`` instances to change the axis of rotation.

Members (10)

get · iOS 18.0+

angularLimit

TypeScript
get angularLimit(): (SDKHandle) | null
Swift declaration
var angularLimit: ClosedRange<Float>?

A limit of the rotational freedom between the pins around the x-axis. If defined, this limits the rotation of ``pin1`` around the x-axis of ``pin0``. There is no limit if this property is `nil`.

set · iOS 18.0+

angularLimit

TypeScript
set angularLimit(value: (SDKHandle) | null)
Swift declaration
var angularLimit: ClosedRange<Float>?

A limit of the rotational freedom between the pins around the x-axis. If defined, this limits the rotation of ``pin1`` around the x-axis of ``pin0``. There is no limit if this property is `nil`.

get · iOS 18.0+

checksForInternalCollisions

TypeScript
get checksForInternalCollisions(): boolean
Swift declaration
var checksForInternalCollisions: Bool

A Boolean that indicates whether the joint checks and reports collisions between the two entity instances. - Note: This does not affect how collisions of the two entities referenced in ``pin0`` and ``pin1`` interact with other entities.

set · iOS 18.0+

checksForInternalCollisions

TypeScript
set checksForInternalCollisions(value: boolean)
Swift declaration
var checksForInternalCollisions: Bool

A Boolean that indicates whether the joint checks and reports collisions between the two entity instances. - Note: This does not affect how collisions of the two entities referenced in ``pin0`` and ``pin1`` interact with other entities.

init · iOS 18.0+

init

TypeScript
static init(pin0: GeometricPin, pin1: GeometricPin, angularLimit?: (SDKHandle) | null, checksForInternalCollisions?: boolean): PhysicsRevoluteJoint
Swift declaration
init(pin0: GeometricPin, pin1: GeometricPin, angularLimit: ClosedRange<Float>? = nil, checksForInternalCollisions: Bool = false)

Creates a new revolute joint. - Parameters: - pin0: The local position and orientation on the first entity. - pin1: The local position and orientation on the second entity. - angularLimit: Limits of the rotation around the pin's x-axis if defined. - checksForInternalCollisions: A Boolean that indicates whether the joint checks for collisions between the two ``Entity`` instances.

get · iOS 18.0+

pin0

TypeScript
get pin0(): GeometricPin
Swift declaration
var pin0: GeometricPin

The pin that defines a local position and orientation on the first entity.

set · iOS 18.0+

pin0

TypeScript
set pin0(value: GeometricPin)
Swift declaration
var pin0: GeometricPin

The pin that defines a local position and orientation on the first entity.

get · iOS 18.0+

pin1

TypeScript
get pin1(): GeometricPin
Swift declaration
var pin1: GeometricPin

The pin that defines a local position and orientation on the second entity.

set · iOS 18.0+

pin1

TypeScript
set pin1(value: GeometricPin)
Swift declaration
var pin1: GeometricPin

The pin that defines a local position and orientation on the second entity.

get · iOS 18.0+

isActive

TypeScript
get isActive(): boolean
Swift declaration
var isActive: Bool { get }

A Boolean that indicates whether the joint is active. Inactive joints do not participate in the physics simulation. One example is a joint that does not reference any ``Entity`` with ``PhysicsBodyMode/dynamic``, or when one or both the referenced entities are not active.

Skipped declarations

No declarations were skipped in this snapshot.

All RealityFoundation types →