![]() |
|
Defines a collision group for coarse filtering. More...
#include <collisionGroup.h>
Classes | |
struct | CollisionGroupTable |
Utility structure generated by ComputeCollisionGroupTable(); contains a table describing which pairs of collision groups have collisions enabled/disabled by the filtering rules. More... | |
Public Member Functions | |
UsdPhysicsCollisionGroup (const UsdPrim &prim=UsdPrim()) | |
Construct a UsdPhysicsCollisionGroup on UsdPrim prim . | |
UsdPhysicsCollisionGroup (const UsdSchemaBase &schemaObj) | |
Construct a UsdPhysicsCollisionGroup on the prim held by schemaObj . | |
virtual USDPHYSICS_API | ~UsdPhysicsCollisionGroup () |
Destructor. | |
USDPHYSICS_API UsdAttribute | GetMergeGroupNameAttr () const |
If non-empty, any collision groups in a stage with a matching mergeGroup should be considered to refer to the same collection. | |
USDPHYSICS_API UsdAttribute | CreateMergeGroupNameAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const |
See GetMergeGroupNameAttr(), and also Create vs Get Property Methods for when to use Get vs Create. | |
USDPHYSICS_API UsdAttribute | GetInvertFilteredGroupsAttr () const |
Normally, the filter will disable collisions against the selected filter groups. | |
USDPHYSICS_API UsdAttribute | CreateInvertFilteredGroupsAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const |
See GetInvertFilteredGroupsAttr(), and also Create vs Get Property Methods for when to use Get vs Create. | |
USDPHYSICS_API UsdRelationship | GetFilteredGroupsRel () const |
References a list of PhysicsCollisionGroups with which collisions should be ignored. | |
USDPHYSICS_API UsdRelationship | CreateFilteredGroupsRel () const |
See GetFilteredGroupsRel(), and also Create vs Get Property Methods for when to use Get vs Create. | |
USDPHYSICS_API UsdCollectionAPI | GetCollidersCollectionAPI () const |
Return the UsdCollectionAPI interface used for defining what colliders belong to the CollisionGroup. | |
![]() | |
UsdTyped (const UsdPrim &prim=UsdPrim()) | |
Construct a UsdTyped on UsdPrim prim . | |
UsdTyped (const UsdSchemaBase &schemaObj) | |
Construct a UsdTyped on the prim held by schemaObj . | |
virtual USD_API | ~UsdTyped () |
Destructor. | |
![]() | |
bool | IsConcrete () const |
Returns whether or not this class corresponds to a concrete instantiable prim type in scene description. | |
bool | IsTyped () const |
Returns whether or not this class inherits from UsdTyped. | |
bool | IsAPISchema () const |
Returns whether this is an API schema or not. | |
bool | IsAppliedAPISchema () const |
Returns whether this is an applied API schema or not. | |
bool | IsMultipleApplyAPISchema () const |
Returns whether this is an applied API schema or not. | |
UsdSchemaKind | GetSchemaKind () const |
Returns the kind of schema this class is. | |
USD_API | UsdSchemaBase (const UsdPrim &prim=UsdPrim()) |
Construct and store prim as the held prim. | |
USD_API | UsdSchemaBase (const UsdSchemaBase &otherSchema) |
Construct and store for the same prim held by otherSchema . | |
virtual USD_API | ~UsdSchemaBase () |
Destructor. | |
UsdPrim | GetPrim () const |
Return this schema object's held prim. | |
SdfPath | GetPath () const |
Shorthand for GetPrim()->GetPath(). | |
USD_API const UsdPrimDefinition * | GetSchemaClassPrimDefinition () const |
Return the prim definition associated with this schema instance if one exists, otherwise return null. | |
USD_API | operator bool () const |
Return true if this schema object is compatible with its held prim, false otherwise. | |
Static Public Member Functions | |
static USDPHYSICS_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. | |
static USDPHYSICS_API UsdPhysicsCollisionGroup | Get (const UsdStagePtr &stage, const SdfPath &path) |
Return a UsdPhysicsCollisionGroup holding the prim adhering to this schema at path on stage . | |
static USDPHYSICS_API UsdPhysicsCollisionGroup | Define (const UsdStagePtr &stage, const SdfPath &path) |
Attempt to ensure a UsdPrim adhering to this schema at path is defined (according to UsdPrim::IsDefined()) on this stage. | |
static USDPHYSICS_API CollisionGroupTable | ComputeCollisionGroupTable (const UsdStage &stage) |
Compute a table encoding all the collision groups filter rules for a stage. | |
![]() | |
static USD_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. | |
static USD_API UsdTyped | Get (const UsdStagePtr &stage, const SdfPath &path) |
Return a UsdTyped holding the prim adhering to this schema at path on stage . | |
![]() | |
static const TfTokenVector & | GetSchemaAttributeNames (bool includeInherited=true) |
Static Public Attributes | |
static const UsdSchemaKind | schemaKind = UsdSchemaKind::ConcreteTyped |
Compile time constant representing what kind of schema this class is. | |
![]() | |
static const UsdSchemaKind | schemaKind = UsdSchemaKind::AbstractBase |
Compile time constant representing what kind of schema this class is. | |
![]() | |
static const UsdSchemaKind | schemaKind = UsdSchemaKind::AbstractBase |
Compile time constant representing what kind of schema this class is. | |
Protected Member Functions | |
USDPHYSICS_API UsdSchemaKind | _GetSchemaKind () const override |
Returns the kind of schema this class belongs to. | |
![]() | |
USD_API UsdSchemaKind | _GetSchemaKind () const override |
Returns the kind of schema this class belongs to. | |
USD_API bool | _IsCompatible () const override |
Subclasses may override _IsCompatible to do specific compatibility checking with the given prim, such as type compatibility or value compatibility. | |
![]() | |
virtual UsdSchemaKind | _GetSchemaType () const |
const TfType & | _GetType () const |
USD_API UsdAttribute | _CreateAttr (TfToken const &attrName, SdfValueTypeName const &typeName, bool custom, SdfVariability variability, VtValue const &defaultValue, bool writeSparsely) const |
Friends | |
class | UsdSchemaRegistry |
Defines a collision group for coarse filtering.
When a collision occurs between two objects that have a PhysicsCollisionGroup assigned, they will collide with each other unless this PhysicsCollisionGroup pair is filtered. See filteredGroups attribute.
A CollectionAPI:colliders maintains a list of PhysicsCollisionAPI rel-s that defines the members of this Collisiongroup.
Definition at line 49 of file collisionGroup.h.
|
inlineexplicit |
Construct a UsdPhysicsCollisionGroup on UsdPrim prim
.
Equivalent to UsdPhysicsCollisionGroup::Get(prim.GetStage(), prim.GetPath()) for a valid prim
, but will not immediately throw an error for an invalid prim
Definition at line 61 of file collisionGroup.h.
|
inlineexplicit |
Construct a UsdPhysicsCollisionGroup on the prim held by schemaObj
.
Should be preferred over UsdPhysicsCollisionGroup(schemaObj.GetPrim()), as it preserves SchemaBase state.
Definition at line 69 of file collisionGroup.h.
|
virtual |
Destructor.
|
overrideprotectedvirtual |
Returns the kind of schema this class belongs to.
Reimplemented from UsdTyped.
|
static |
Compute a table encoding all the collision groups filter rules for a stage.
This can be used as a reference to validate an implementation of the collision groups filters. The returned table is diagonally symmetric.
USDPHYSICS_API UsdRelationship CreateFilteredGroupsRel | ( | ) | const |
See GetFilteredGroupsRel(), and also Create vs Get Property Methods for when to use Get vs Create.
USDPHYSICS_API UsdAttribute CreateInvertFilteredGroupsAttr | ( | VtValue const & | defaultValue = VtValue() , |
bool | writeSparsely = false |
||
) | const |
See GetInvertFilteredGroupsAttr(), 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
.
USDPHYSICS_API UsdAttribute CreateMergeGroupNameAttr | ( | VtValue const & | defaultValue = VtValue() , |
bool | writeSparsely = false |
||
) | const |
See GetMergeGroupNameAttr(), 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
.
|
static |
Attempt to ensure a UsdPrim adhering to this schema at path
is defined (according to UsdPrim::IsDefined()) on this stage.
If a prim adhering to this schema at path
is already defined on this stage, return that prim. Otherwise author an SdfPrimSpec with specifier == SdfSpecifierDef and this schema's prim type name for the prim at path
at the current EditTarget. Author SdfPrimSpec s with specifier
== SdfSpecifierDef and empty typeName at the current EditTarget for any nonexistent, or existing but not Defined ancestors.
The given path must be an absolute prim path that does not contain any variant selections.
If it is impossible to author any of the necessary PrimSpecs, (for example, in case path cannot map to the current UsdEditTarget's namespace) issue an error and return an invalid UsdPrim.
Note that this method may return a defined prim whose typeName does not specify this schema class, in case a stronger typeName opinion overrides the opinion at the current EditTarget.
|
static |
Return a UsdPhysicsCollisionGroup 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:
USDPHYSICS_API UsdCollectionAPI GetCollidersCollectionAPI | ( | ) | const |
Return the UsdCollectionAPI interface used for defining what colliders belong to the CollisionGroup.
USDPHYSICS_API UsdRelationship GetFilteredGroupsRel | ( | ) | const |
References a list of PhysicsCollisionGroups with which collisions should be ignored.
USDPHYSICS_API UsdAttribute GetInvertFilteredGroupsAttr | ( | ) | const |
Normally, the filter will disable collisions against the selected filter groups.
However, if this option is set, the filter will disable collisions against all colliders except for those in the selected filter groups.
Declaration | bool physics:invertFilteredGroups |
C++ Type | bool |
Usd Type | SdfValueTypeNames->Bool |
USDPHYSICS_API UsdAttribute GetMergeGroupNameAttr | ( | ) | const |
If non-empty, any collision groups in a stage with a matching mergeGroup should be considered to refer to the same collection.
Matching collision groups should behave as if there were a single group containing referenced colliders and filter groups from both collections.
Declaration | string physics:mergeGroup |
C++ Type | std::string |
Usd Type | SdfValueTypeNames->String |
|
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.
|
friend |
Definition at line 133 of file collisionGroup.h.
|
static |
Compile time constant representing what kind of schema this class is.
Definition at line 55 of file collisionGroup.h.