All Classes Files Functions Variables Pages
PhysxSchemaPhysxSurfaceVelocityAPI Class Reference

PhysxSurfaceVelocityAPI enables surface velocity simulation that injects velocity to the solver through internal contact modify callback. More...

Inherits UsdAPISchemaBase.

Public Member Functions

 PhysxSchemaPhysxSurfaceVelocityAPI (const UsdPrim &prim=UsdPrim())
 Construct a PhysxSchemaPhysxSurfaceVelocityAPI on UsdPrim prim . More...
 
 PhysxSchemaPhysxSurfaceVelocityAPI (const UsdSchemaBase &schemaObj)
 Construct a PhysxSchemaPhysxSurfaceVelocityAPI on the prim held by schemaObj . More...
 
virtual PHYSXSCHEMA_API ~PhysxSchemaPhysxSurfaceVelocityAPI ()
 Destructor. More...
 
PHYSXSCHEMA_API UsdAttribute GetSurfaceVelocityEnabledAttr () const
 Whether surface velocity is enabled or not. More...
 
PHYSXSCHEMA_API UsdAttribute CreateSurfaceVelocityEnabledAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetSurfaceVelocityEnabledAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetSurfaceVelocityLocalSpaceAttr () const
 Whether surface velocity is defined in body local space or in world space. More...
 
PHYSXSCHEMA_API UsdAttribute CreateSurfaceVelocityLocalSpaceAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetSurfaceVelocityLocalSpaceAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetSurfaceVelocityAttr () const
 Surface linear velocity applied through contact modify callback. More...
 
PHYSXSCHEMA_API UsdAttribute CreateSurfaceVelocityAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetSurfaceVelocityAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetSurfaceAngularVelocityAttr () const
 Surface angular velocity applied through contact modify callback. More...
 
PHYSXSCHEMA_API UsdAttribute CreateSurfaceAngularVelocityAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetSurfaceAngularVelocityAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 

Static Public Member Functions

static PHYSXSCHEMA_API const
TfTokenVector & 
GetSchemaAttributeNames (bool includeInherited=true)
 Return a vector of names of all pre-declared attributes for this schema class and all its ancestor classes. More...
 
static PHYSXSCHEMA_API
PhysxSchemaPhysxSurfaceVelocityAPI 
Get (const UsdStagePtr &stage, const SdfPath &path)
 Return a PhysxSchemaPhysxSurfaceVelocityAPI holding the prim adhering to this schema at path on stage. More...
 
static PHYSXSCHEMA_API bool CanApply (const UsdPrim &prim, std::string *whyNot=nullptr)
 Returns true if this single-apply API schema can be applied to the given prim. More...
 
static PHYSXSCHEMA_API
PhysxSchemaPhysxSurfaceVelocityAPI 
Apply (const UsdPrim &prim)
 Applies this single-apply API schema to the given prim. More...
 

Static Public Attributes

static const UsdSchemaKind schemaKind = UsdSchemaKind::SingleApplyAPI
 Compile time constant representing what kind of schema this class is. More...
 

Protected Member Functions

PHYSXSCHEMA_API UsdSchemaKind _GetSchemaKind () const override
 Returns the kind of schema this class belongs to. More...
 

Friends

class UsdSchemaRegistry
 

Detailed Description

PhysxSurfaceVelocityAPI enables surface velocity simulation that injects velocity to the solver through internal contact modify callback.

Surface velocity can be used typically for conveyer belt simulation. It must be applied to a prim with UsdPhysicsRigidBodyAPI.

Definition at line 61 of file physxSurfaceVelocityAPI.h.

Constructor & Destructor Documentation

PhysxSchemaPhysxSurfaceVelocityAPI ( const UsdPrim &  prim = UsdPrim())
inlineexplicit

Construct a PhysxSchemaPhysxSurfaceVelocityAPI on UsdPrim prim .

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

Definition at line 73 of file physxSurfaceVelocityAPI.h.

PhysxSchemaPhysxSurfaceVelocityAPI ( const UsdSchemaBase &  schemaObj)
inlineexplicit

Construct a PhysxSchemaPhysxSurfaceVelocityAPI on the prim held by schemaObj .

Should be preferred over PhysxSchemaPhysxSurfaceVelocityAPI(schemaObj.GetPrim()), as it preserves SchemaBase state.

Definition at line 81 of file physxSurfaceVelocityAPI.h.

virtual PHYSXSCHEMA_API ~PhysxSchemaPhysxSurfaceVelocityAPI ( )
virtual

Destructor.

Member Function Documentation

PHYSXSCHEMA_API UsdSchemaKind _GetSchemaKind ( ) const
overrideprotected

Returns the kind of schema this class belongs to.

See Also
UsdSchemaKind
static PHYSXSCHEMA_API PhysxSchemaPhysxSurfaceVelocityAPI Apply ( const UsdPrim &  prim)
static

Applies this single-apply API schema to the given prim.

This information is stored by adding "PhysxSurfaceVelocityAPI" to the token-valued, listOp metadata apiSchemas on the prim.

Returns
A valid PhysxSchemaPhysxSurfaceVelocityAPI object is returned upon success. An invalid (or empty) PhysxSchemaPhysxSurfaceVelocityAPI object is returned upon failure. See UsdPrim::ApplyAPI() for conditions resulting in failure.
See Also
UsdPrim::GetAppliedSchemas()
UsdPrim::HasAPI()
UsdPrim::CanApplyAPI()
UsdPrim::ApplyAPI()
UsdPrim::RemoveAPI()
static PHYSXSCHEMA_API bool CanApply ( const UsdPrim &  prim,
std::string *  whyNot = nullptr 
)
static

Returns true if this single-apply API schema can be applied to the given prim.

If this schema can not be a applied to the prim, this returns false and, if provided, populates whyNot with the reason it can not be applied.

Note that if CanApply returns false, that does not necessarily imply that calling Apply will fail. Callers are expected to call CanApply before calling Apply if they want to ensure that it is valid to apply a schema.

See Also
UsdPrim::GetAppliedSchemas()
UsdPrim::HasAPI()
UsdPrim::CanApplyAPI()
UsdPrim::ApplyAPI()
UsdPrim::RemoveAPI()
PHYSXSCHEMA_API UsdAttribute CreateSurfaceAngularVelocityAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetSurfaceAngularVelocityAttr(), and also Usd_Create_Or_Get_Property 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.

PHYSXSCHEMA_API UsdAttribute CreateSurfaceVelocityAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetSurfaceVelocityAttr(), and also Usd_Create_Or_Get_Property 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.

PHYSXSCHEMA_API UsdAttribute CreateSurfaceVelocityEnabledAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetSurfaceVelocityEnabledAttr(), and also Usd_Create_Or_Get_Property 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.

PHYSXSCHEMA_API UsdAttribute CreateSurfaceVelocityLocalSpaceAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetSurfaceVelocityLocalSpaceAttr(), and also Usd_Create_Or_Get_Property 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.

static PHYSXSCHEMA_API PhysxSchemaPhysxSurfaceVelocityAPI Get ( const UsdStagePtr &  stage,
const SdfPath &  path 
)
static

Return a PhysxSchemaPhysxSurfaceVelocityAPI holding the prim adhering to this schema at path on stage.

If no prim exists at path on stage, or if the prim at that path does not adhere to this schema, return an invalid schema object. This is shorthand for the following:

* PhysxSchemaPhysxSurfaceVelocityAPI(stage->GetPrimAtPath(path));
*
static PHYSXSCHEMA_API const TfTokenVector& GetSchemaAttributeNames ( bool  includeInherited = true)
static

Return a vector of names of all pre-declared attributes for this schema class and all its ancestor classes.

Does not include attributes that may be authored by custom/extended methods of the schemas involved.

PHYSXSCHEMA_API UsdAttribute GetSurfaceAngularVelocityAttr ( ) const

Surface angular velocity applied through contact modify callback.

Units: degrees/second.

Declaration vector3f physxSurfaceVelocity:surfaceAngularVelocity = (0, 0, 0)
C++ Type GfVec3f
Usd Type SdfValueTypeNames->Vector3f
PHYSXSCHEMA_API UsdAttribute GetSurfaceVelocityAttr ( ) const

Surface linear velocity applied through contact modify callback.

Units: distance/second.

Declaration vector3f physxSurfaceVelocity:surfaceVelocity = (0, 0, 0)
C++ Type GfVec3f
Usd Type SdfValueTypeNames->Vector3f
PHYSXSCHEMA_API UsdAttribute GetSurfaceVelocityEnabledAttr ( ) const

Whether surface velocity is enabled or not.

Declaration bool physxSurfaceVelocity:surfaceVelocityEnabled = 1
C++ Type bool
Usd Type SdfValueTypeNames->Bool
PHYSXSCHEMA_API UsdAttribute GetSurfaceVelocityLocalSpaceAttr ( ) const

Whether surface velocity is defined in body local space or in world space.

Declaration bool physxSurfaceVelocity:surfaceVelocityLocalSpace = 1
C++ Type bool
Usd Type SdfValueTypeNames->Bool

Member Data Documentation

const UsdSchemaKind schemaKind = UsdSchemaKind::SingleApplyAPI
static

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

See Also
UsdSchemaKind

Definition at line 67 of file physxSurfaceVelocityAPI.h.


The documentation for this class was generated from the following file: