usdrt::PhysxSchemaPhysxVehicleWheelAttachmentAPI

Defined in usdrt/scenegraph/usd/physxSchema/physxVehicleWheelAttachmentAPI.h

Functions

Variables

class PhysxSchemaPhysxVehicleWheelAttachmentAPI : public usdrt::UsdAPISchemaBase

For every wheel of a vehicle, this class defines the attachment properties. Has to be applied to a prim that is a descendant of a prim with PhysxVehicleAPI applied. If the wheel attachment prim (the prim with PhysxVehicleWheelAttachmentAPI applied) is a UsdGeomXformable, then the position and orientation of the prim will be set by the vehicle simulation. If the wheel attachment prim has PhysicsCollisionAPI applied, then none of its descendants are allowed to have PhysicsCollisionAPI applied. If the wheel attachment prim is a UsdGeomXformable but does not have PhysicsCollisionAPI applied, then exactly one direct child prim among all descendants is allowed to have PhysicsCollisionAPI applied. That prim will be interpreted as the collision geometry of the wheel and its position and orientation will be set by the vehicle simulation too. Note that the relative transform between the collision geometry prim and the wheel attachment prim at the start of the simulation will be maintained (the relative transform with respect to the center of mass frame of the vehicle rigid body that is). If there is no desire to have the vehicle simulation control the transform of the wheel attachment prim, then a prim type that is not a UsdGeomXformable should be chosen.

Public Functions

inline explicit PhysxSchemaPhysxVehicleWheelAttachmentAPI(const UsdPrim &prim = UsdPrim())

Construct a PhysxSchemaPhysxVehicleWheelAttachmentAPI on UsdPrim prim. Equivalent to PhysxSchemaPhysxVehicleWheelAttachmentAPI::Get(prim.GetStage(), prim.GetPath()) for a valid prim , but will not immediately throw an error for an invalid prim.

inline explicit PhysxSchemaPhysxVehicleWheelAttachmentAPI(const UsdSchemaBase &schemaObj)

Construct a PhysxSchemaPhysxVehicleWheelAttachmentAPI on the prim held by schemaObj . Should be preferred over PhysxSchemaPhysxVehicleWheelAttachmentAPI(schemaObj.GetPrim()), as it preserves SchemaBase state.

inline virtual ~PhysxSchemaPhysxVehicleWheelAttachmentAPI()

Destructor.

inline operator bool() const

Boolean operator.

Returns

Return true if the contained prim is has this api schema applied using HasAPI, and false otherwise.

inline UsdAttribute GetIndexAttr() const

The index of the wheel attachment. Some other components will reference the wheel attachments based on this index. Either all indices of a vehicle’s wheel attachments need to be -1 or they need to cover all entries in the group {0, .., (numberOfWheels-1)}. All indices being -1 covers the case where wheels are controlled directly through PhysxVehicleWheelControllerAPI, for example, or when deprecated APIs are used still.

Declaration

int physxVehicleWheelAttachment:index = -1

C++ Type

int

Usd Type

SdfValueTypeNames->Int

inline UsdAttribute CreateIndexAttr() const

See GetIndexAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetSuspensionTravelDirectionAttr() const

The direction of the suspension travel (towards the wheel). The custom metadata physxVehicle:referenceFrameIsCenterOfMass (on the vehicle prim) defines in what frame the direction is specified. If set to true, the direction is assumed to be relative to the vehicle center of mass frame, else relative to the frame of the vehicle prim. Note that using the center of mass frame as reference is deprecated and will not be supported for much longer.

Note: this attribute has to be specified (there is no default).

Declaration

vector3f physxVehicleWheelAttachment:suspensionTravelDirection

C++ Type

GfVec3f

Usd Type

SdfValueTypeNames->Vector3f

inline UsdAttribute CreateSuspensionTravelDirectionAttr() const

See GetSuspensionTravelDirectionAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetSuspensionFramePositionAttr() const

The point of the suspension at max compression. The custom metadata physxVehicle:referenceFrameIsCenterOfMass (on the vehicle prim) defines in what frame the position is specified. If set to true, the position is assumed to be relative to the vehicle center of mass frame, else relative to the frame of the vehicle prim. Note that using the center of mass frame as reference is deprecated and will not be supported for much longer. Camber, steer and toe angles are all applied in the suspension frame. The vehicle frame transform of the wheel will be defined by: centerOfMassFrame * suspensionFrame * wheelFrame (if physxVehicle:referenceFrameIsCenterOfMass is true, else centerOfMassFrame has to be omitted).

Note: either this attribute or the deprecated wheelCenterOfMassOffset have to to be specified (with the former taking precedence).

Declaration

point3f physxVehicleWheelAttachment:suspensionFramePosition

C++ Type

GfVec3f

Usd Type

SdfValueTypeNames->Point3f

inline UsdAttribute CreateSuspensionFramePositionAttr() const

See GetSuspensionFramePositionAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetSuspensionFrameOrientationAttr() const

The orientation of the suspension frame. The custom metadata physxVehicle:referenceFrameIsCenterOfMass (on the vehicle prim) defines in what frame the orientation is specified. If set to true, the orientation is assumed to be relative to the vehicle center of mass frame, else relative to the frame of the vehicle prim. Note that using the center of mass frame as reference is deprecated and will not be supported for much longer. Camber, steer and toe angles are all applied in the suspension frame. The vehicle frame transform of the wheel will be defined by: centerOfMassFrame * suspensionFrame * wheelFrame (if physxVehicle:referenceFrameIsCenterOfMass is true, else centerOfMassFrame has to be omitted).

Declaration

quatf physxVehicleWheelAttachment:suspensionFrameOrientation = (1, 0, 0, 0)

C++ Type

GfQuatf

Usd Type

SdfValueTypeNames->Quatf

inline UsdAttribute CreateSuspensionFrameOrientationAttr() const

See GetSuspensionFrameOrientationAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetSuspensionForceAppPointOffsetAttr() const

Deprecated. Please use PhysxVehicleSuspensionComplianceAPI instead.

The location where the suspension force gets applied. The custom metadata physxVehicle:referenceFrameIsCenterOfMass (on the vehicle prim) defines in what frame the offset is specified. If set to true, the offset is assumed to be relative to the vehicle center of mass frame, else relative to the frame of the vehicle prim. Note that using the center of mass frame as reference is deprecated and will not be supported for much longer.

Note: will be ignored if PhysxVehicleSuspensionComplianceAPI is used.

Declaration

float3 physxVehicleWheelAttachment:suspensionForceAppPointOffset

C++ Type

GfVec3f

Usd Type

SdfValueTypeNames->Float3

inline UsdAttribute CreateSuspensionForceAppPointOffsetAttr() const

See GetSuspensionForceAppPointOffsetAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetWheelCenterOfMassOffsetAttr() const

Deprecated. Please use suspensionFramePosition instead.

The location of the wheel centre when at rest. The custom metadata physxVehicle:referenceFrameIsCenterOfMass (on the vehicle prim) defines in what frame the offset is specified. If set to true, the offset is assumed to be relative to the vehicle center of mass frame, else relative to the frame of the vehicle prim. Note that using the center of mass frame as reference is deprecated and will not be supported for much longer.

Note: will be ignored if suspensionFramePosition is authored.

Declaration

float3 physxVehicleWheelAttachment:wheelCenterOfMassOffset

C++ Type

GfVec3f

Usd Type

SdfValueTypeNames->Float3

inline UsdAttribute CreateWheelCenterOfMassOffsetAttr() const

See GetWheelCenterOfMassOffsetAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetTireForceAppPointOffsetAttr() const

Deprecated. Please use PhysxVehicleSuspensionComplianceAPI instead.

The location where the tire force gets applied. The custom metadata physxVehicle:referenceFrameIsCenterOfMass (on the vehicle prim) defines in what frame the offset is specified. If set to true, the offset is assumed to be relative to the vehicle center of mass frame, else relative to the frame of the vehicle prim. Note that using the center of mass frame as reference is deprecated and will not be supported for much longer.

Note: will be ignored if PhysxVehicleSuspensionComplianceAPI is used.

Declaration

float3 physxVehicleWheelAttachment:tireForceAppPointOffset

C++ Type

GfVec3f

Usd Type

SdfValueTypeNames->Float3

inline UsdAttribute CreateTireForceAppPointOffsetAttr() const

See GetTireForceAppPointOffsetAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetWheelFramePositionAttr() const

A position offset of the wheel center relative to the suspension frame. Non-zero values might be used, for example, if the steer axis should not go through the wheel center.

Declaration

point3f physxVehicleWheelAttachment:wheelFramePosition = (0, 0, 0)

C++ Type

GfVec3f

Usd Type

SdfValueTypeNames->Point3f

inline UsdAttribute CreateWheelFramePositionAttr() const

See GetWheelFramePositionAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetWheelFrameOrientationAttr() const

An orientation adjustment of the wheel relative to the suspension frame. The rotation angle around the wheel’s lateral axis is applied in this frame.

Declaration

quatf physxVehicleWheelAttachment:wheelFrameOrientation = (1, 0, 0, 0)

C++ Type

GfQuatf

Usd Type

SdfValueTypeNames->Quatf

inline UsdAttribute CreateWheelFrameOrientationAttr() const

See GetWheelFrameOrientationAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetDrivenAttr() const

Deprecated. Please use PhysxVehicleMultiWheelDifferentialAPI instead.

True if the tire is driven by the engine through the transmission. Will be ignored if the vehicle has no drive specified (see PhysxVehicleAPI:drive) or if PhysxVehicleMultiWheelDifferentialAPI is used instead.

Declaration

bool physxVehicleWheelAttachment:driven

C++ Type

bool

Usd Type

SdfValueTypeNames->Bool

inline UsdAttribute CreateDrivenAttr() const

See GetDrivenAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdRelationship GetWheelRel() const

A relationship to a PhysxVehicleWheelAPI prim.

Note: either this relationship has to be specified or the prim must have PhysxVehicleWheelAPI applied (none or both of the two is invalid).

inline UsdRelationship CreateWheelRel() const

See GetWheelRel(), and also Create vs Get Property Methods for when to use Get vs Create.

inline UsdRelationship GetTireRel() const

A relationship to a PhysxVehicleTireAPI prim.

Note: either this relationship has to be specified or the prim must have PhysxVehicleTireAPI applied (none or both of the two is invalid).

inline UsdRelationship CreateTireRel() const

See GetTireRel(), and also Create vs Get Property Methods for when to use Get vs Create.

inline UsdRelationship GetSuspensionRel() const

A relationship to a PhysxVehicleSuspensionAPI prim.

Note: either this relationship has to be specified or the prim must have PhysxVehicleSuspensionAPI applied (none or both of the two is invalid).

inline UsdRelationship CreateSuspensionRel() const

See GetSuspensionRel(), and also Create vs Get Property Methods for when to use Get vs Create.

inline UsdRelationship GetCollisionGroupRel() const

A relationship to a PhysicsCollisionGroup instance that defines what the wheel/suspension scene queries should treat as a ground surface to collide against. If not specified, no specific filtering will be applied.

inline UsdRelationship CreateCollisionGroupRel() const

See GetCollisionGroupRel(), and also Create vs Get Property Methods for when to use Get vs Create.

UsdPrim GetPrim() const

Return this schema object’s held prim.

SdfPath GetPath() const

Return the SdfPath to this schema object’s held prim.

Public Static Functions

static inline PhysxSchemaPhysxVehicleWheelAttachmentAPI Apply(const UsdPrim &prim)

Applies this single-apply API schema to the given prim. This information is stored by adding “PhysxVehicleWheelAttachmentAPI” to the token-valued, listOp metadata apiSchemas on the prim.

See also

UsdPrim::GetAppliedSchemas()

See also

UsdPrim::HasAPI()

See also

UsdPrim::ApplyAPI()

See also

UsdPrim::RemoveAPI()

Returns

A valid PhysxSchemaPhysxVehicleWheelAttachmentAPI object is returned upon success. An invalid (or empty) PhysxSchemaPhysxVehicleWheelAttachmentAPI object is returned upon failure. See UsdPrim::ApplyAPI() for conditions resulting in failure.

Public Static Attributes

static const UsdSchemaType schemaType = UsdSchemaType::SingleApplyAPI

Compile time constant representing what kind of schema this class is.

See also

UsdSchemaType

Protected Functions

inline const TfToken &_GetInstanceName() const

Returns the instance name of the API schema object belonging to a multiple-apply API schema.

The returned instance name will be empty for non-applied and single-apply API schemas.