All Classes Files Functions Variables Pages
PhysxSchemaPhysxPBDMaterialAPI Class Reference

WARNING: This is a draft API; the design is not fixed and may change in the future. More...

Inherits UsdAPISchemaBase.

Public Member Functions

 PhysxSchemaPhysxPBDMaterialAPI (const UsdPrim &prim=UsdPrim())
 Construct a PhysxSchemaPhysxPBDMaterialAPI on UsdPrim prim . More...
 
 PhysxSchemaPhysxPBDMaterialAPI (const UsdSchemaBase &schemaObj)
 Construct a PhysxSchemaPhysxPBDMaterialAPI on the prim held by schemaObj . More...
 
virtual PHYSXSCHEMA_API ~PhysxSchemaPhysxPBDMaterialAPI ()
 Destructor. More...
 
PHYSXSCHEMA_API UsdAttribute GetFrictionAttr () const
 Friction coefficient. More...
 
PHYSXSCHEMA_API UsdAttribute CreateFrictionAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetFrictionAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetParticleFrictionScaleAttr () const
 Coefficient that scales friction for solid particle-particle interations. More...
 
PHYSXSCHEMA_API UsdAttribute CreateParticleFrictionScaleAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetParticleFrictionScaleAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetDampingAttr () const
 Global velocity damping coefficient. More...
 
PHYSXSCHEMA_API UsdAttribute CreateDampingAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetDampingAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetViscosityAttr () const
 Viscosity for fluid particles. More...
 
PHYSXSCHEMA_API UsdAttribute CreateViscosityAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetViscosityAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetVorticityConfinementAttr () const
 Vorticity confinement for fluid particles. More...
 
PHYSXSCHEMA_API UsdAttribute CreateVorticityConfinementAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetVorticityConfinementAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetSurfaceTensionAttr () const
 Surface tension for fluid particles. More...
 
PHYSXSCHEMA_API UsdAttribute CreateSurfaceTensionAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetSurfaceTensionAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetCohesionAttr () const
 Cohesion for interaction between fluid particles. More...
 
PHYSXSCHEMA_API UsdAttribute CreateCohesionAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetCohesionAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetAdhesionAttr () const
 Adhesion for interactions between particles (solid or fluid), and rigids or deformables. More...
 
PHYSXSCHEMA_API UsdAttribute CreateAdhesionAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetAdhesionAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetParticleAdhesionScaleAttr () const
 Coefficient that scales adhesion for solid particle-particle interations. More...
 
PHYSXSCHEMA_API UsdAttribute CreateParticleAdhesionScaleAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetParticleAdhesionScaleAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetAdhesionOffsetScaleAttr () const
 Offset scale defining the offset at which adhesion ceases to take effect. More...
 
PHYSXSCHEMA_API UsdAttribute CreateAdhesionOffsetScaleAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetAdhesionOffsetScaleAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetGravityScaleAttr () const
 Gravitational acceleration scaling factor, for example (-1.0 would invert gravity). More...
 
PHYSXSCHEMA_API UsdAttribute CreateGravityScaleAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetGravityScaleAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetLiftAttr () const
 Deprecated. More...
 
PHYSXSCHEMA_API UsdAttribute CreateLiftAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetLiftAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetDragAttr () const
 Deprecated. More...
 
PHYSXSCHEMA_API UsdAttribute CreateDragAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetDragAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetDensityAttr () const
 Density used to compute particle object mass. More...
 
PHYSXSCHEMA_API UsdAttribute CreateDensityAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetDensityAttr(), and also Usd_Create_Or_Get_Property for when to use Get vs Create. More...
 
PHYSXSCHEMA_API UsdAttribute GetCflCoefficientAttr () const
 This coefficient scales the CFL term used to limit relative motion between approaching fluid particles. More...
 
PHYSXSCHEMA_API UsdAttribute CreateCflCoefficientAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetCflCoefficientAttr(), 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
PhysxSchemaPhysxPBDMaterialAPI 
Get (const UsdStagePtr &stage, const SdfPath &path)
 Return a PhysxSchemaPhysxPBDMaterialAPI 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
PhysxSchemaPhysxPBDMaterialAPI 
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

WARNING: This is a draft API; the design is not fixed and may change in the future.

Applied to a USD Material. PhysX position-based-dynamics (PBD) material for particles used to simulate fluids, cloth and inflatables. Currently, only a single material per particle system is supported which applies to all objects that are associated with the system.

Definition at line 59 of file physxPBDMaterialAPI.h.

Constructor & Destructor Documentation

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

Construct a PhysxSchemaPhysxPBDMaterialAPI on UsdPrim prim .

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

Definition at line 71 of file physxPBDMaterialAPI.h.

PhysxSchemaPhysxPBDMaterialAPI ( const UsdSchemaBase &  schemaObj)
inlineexplicit

Construct a PhysxSchemaPhysxPBDMaterialAPI on the prim held by schemaObj .

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

Definition at line 79 of file physxPBDMaterialAPI.h.

virtual PHYSXSCHEMA_API ~PhysxSchemaPhysxPBDMaterialAPI ( )
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 PhysxSchemaPhysxPBDMaterialAPI Apply ( const UsdPrim &  prim)
static

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

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

Returns
A valid PhysxSchemaPhysxPBDMaterialAPI object is returned upon success. An invalid (or empty) PhysxSchemaPhysxPBDMaterialAPI 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 CreateAdhesionAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetAdhesionAttr(), 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 CreateAdhesionOffsetScaleAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetAdhesionOffsetScaleAttr(), 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 CreateCflCoefficientAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetCflCoefficientAttr(), 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 CreateCohesionAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetCohesionAttr(), 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 CreateDampingAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetDampingAttr(), 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 CreateDensityAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetDensityAttr(), 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 CreateDragAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetDragAttr(), 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 CreateFrictionAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetFrictionAttr(), 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 CreateGravityScaleAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetGravityScaleAttr(), 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 CreateLiftAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetLiftAttr(), 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 CreateParticleAdhesionScaleAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetParticleAdhesionScaleAttr(), 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 CreateParticleFrictionScaleAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetParticleFrictionScaleAttr(), 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 CreateSurfaceTensionAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetSurfaceTensionAttr(), 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 CreateViscosityAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetViscosityAttr(), 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 CreateVorticityConfinementAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetVorticityConfinementAttr(), 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 PhysxSchemaPhysxPBDMaterialAPI Get ( const UsdStagePtr &  stage,
const SdfPath &  path 
)
static

Return a PhysxSchemaPhysxPBDMaterialAPI 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:

* PhysxSchemaPhysxPBDMaterialAPI(stage->GetPrimAtPath(path));
*
PHYSXSCHEMA_API UsdAttribute GetAdhesionAttr ( ) const

Adhesion for interactions between particles (solid or fluid), and rigids or deformables.

Adhesion also applies to solid-solid particle interactions, but is multiplied with the particle adhesion scale. Range: [0, inf) Units: dimensionless

Declaration float physxPBDMaterial:adhesion = 0
C++ Type float
Usd Type SdfValueTypeNames->Float
PHYSXSCHEMA_API UsdAttribute GetAdhesionOffsetScaleAttr ( ) const

Offset scale defining the offset at which adhesion ceases to take effect.

For interactions between particles (fluid or solid), and rigids or deformables, the adhesion offset is defined relative to the rest offset. For solid particle-particle interactions, the adhesion offset is defined relative to the solid rest offset. Range: [0, inf) Units: dimensionless

Declaration float physxPBDMaterial:adhesionOffsetScale = 0
C++ Type float
Usd Type SdfValueTypeNames->Float
PHYSXSCHEMA_API UsdAttribute GetCflCoefficientAttr ( ) const

This coefficient scales the CFL term used to limit relative motion between approaching fluid particles.

A very large value disables the limit. Range: [0, inf) Units: dimensionless

Declaration float physxPBDMaterial:cflCoefficient = 1
C++ Type float
Usd Type SdfValueTypeNames->Float
PHYSXSCHEMA_API UsdAttribute GetCohesionAttr ( ) const

Cohesion for interaction between fluid particles.

Range: [0, inf) Units: dimensionless

Declaration float physxPBDMaterial:cohesion = 0
C++ Type float
Usd Type SdfValueTypeNames->Float
PHYSXSCHEMA_API UsdAttribute GetDampingAttr ( ) const

Global velocity damping coefficient.

Range: [0, inf) Units: dimensionless

Declaration float physxPBDMaterial:damping = 0
C++ Type float
Usd Type SdfValueTypeNames->Float
PHYSXSCHEMA_API UsdAttribute GetDensityAttr ( ) const

Density used to compute particle object mass.

If set to 0.0, the simulation determines a default density. A density or mass set with a PhysicsMassAPI on a particle object overrides the material density. Range: [0, inf) Units: mass / distance / distance / distance

Declaration float physxPBDMaterial:density = 0
C++ Type float
Usd Type SdfValueTypeNames->Float
PHYSXSCHEMA_API UsdAttribute GetDragAttr ( ) const

Deprecated.

PhysxParticleClothAPI is deprecated and will be replaced by a new deformable schema in a future release. Drag coefficient for cloth and inflatable particle objects. Basic aerodynamic drag model coefficient. Range: [0, inf) Units: dimensionless

Declaration float physxPBDMaterial:drag = 0
C++ Type float
Usd Type SdfValueTypeNames->Float
PHYSXSCHEMA_API UsdAttribute GetFrictionAttr ( ) const

Friction coefficient.

The maximal friction force tangential to the surface is equal to the normal force times the friction. The friction takes effect in all interactions between particles and rigids or deformables. For solid particle-particle interactions it is multiplied by the particle friction scale. Range: [0, inf) Units: dimensionless

Declaration float physxPBDMaterial:friction = 0.2
C++ Type float
Usd Type SdfValueTypeNames->Float
PHYSXSCHEMA_API UsdAttribute GetGravityScaleAttr ( ) const

Gravitational acceleration scaling factor, for example (-1.0 would invert gravity).

Range: (-inf, inf) Units: dimensionless

Declaration float physxPBDMaterial:gravityScale = 1
C++ Type float
Usd Type SdfValueTypeNames->Float
PHYSXSCHEMA_API UsdAttribute GetLiftAttr ( ) const

Deprecated.

PhysxParticleClothAPI is deprecated and will be replaced by a new deformable schema in a future release. Particle cloth Lift coefficient for cloth and inflatable particle objects. Basic aerodynamic lift model coefficient. Range: [0, inf) Units: dimensionless

Declaration float physxPBDMaterial:lift = 0
C++ Type float
Usd Type SdfValueTypeNames->Float
PHYSXSCHEMA_API UsdAttribute GetParticleAdhesionScaleAttr ( ) const

Coefficient that scales adhesion for solid particle-particle interations.

Range: [0, inf) Units: dimensionless

Declaration float physxPBDMaterial:particleAdhesionScale = 1
C++ Type float
Usd Type SdfValueTypeNames->Float
PHYSXSCHEMA_API UsdAttribute GetParticleFrictionScaleAttr ( ) const

Coefficient that scales friction for solid particle-particle interations.

Range: [0, inf) Units: dimensionless

Declaration float physxPBDMaterial:particleFrictionScale = 1
C++ Type float
Usd Type SdfValueTypeNames->Float
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 GetSurfaceTensionAttr ( ) const

Surface tension for fluid particles.

Range: [0, inf) Units: 1 / (distance * distance * distance)

Declaration float physxPBDMaterial:surfaceTension = 0
C++ Type float
Usd Type SdfValueTypeNames->Float
PHYSXSCHEMA_API UsdAttribute GetViscosityAttr ( ) const

Viscosity for fluid particles.

Range: [0, inf) Units: dimensionless

Declaration float physxPBDMaterial:viscosity = 0
C++ Type float
Usd Type SdfValueTypeNames->Float
PHYSXSCHEMA_API UsdAttribute GetVorticityConfinementAttr ( ) const

Vorticity confinement for fluid particles.

Helps prevent energy loss due to numerical solver by adding vortex-like accelerations to the particles. Range: [0, inf) Units: dimensionless

Declaration float physxPBDMaterial:vorticityConfinement = 0
C++ Type float
Usd Type SdfValueTypeNames->Float

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 65 of file physxPBDMaterialAPI.h.


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