All Classes Files Functions Variables Pages
physxPBDMaterialAPI.h
Go to the documentation of this file.
1 //
2 // Copyright 2016 Pixar
3 //
4 // Licensed under the Apache License, Version 2.0 (the "Apache License")
5 // with the following modification; you may not use this file except in
6 // compliance with the Apache License and the following modification to it:
7 // Section 6. Trademarks. is deleted and replaced with:
8 //
9 // 6. Trademarks. This License does not grant permission to use the trade
10 // names, trademarks, service marks, or product names of the Licensor
11 // and its affiliates, except as required to comply with Section 4(c) of
12 // the License and to reproduce the content of the NOTICE file.
13 //
14 // You may obtain a copy of the Apache License at
15 //
16 // http://www.apache.org/licenses/LICENSE-2.0
17 //
18 // Unless required by applicable law or agreed to in writing, software
19 // distributed under the Apache License with the above modification is
20 // distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
21 // KIND, either express or implied. See the Apache License for the specific
22 // language governing permissions and limitations under the Apache License.
23 //
24 #ifndef PHYSXSCHEMA_GENERATED_PHYSXPBDMATERIALAPI_H
25 #define PHYSXSCHEMA_GENERATED_PHYSXPBDMATERIALAPI_H
26 
28 
29 #include "pxr/pxr.h"
30 #include ".//api.h"
31 #include "pxr/usd/usd/apiSchemaBase.h"
32 #include "pxr/usd/usd/prim.h"
33 #include "pxr/usd/usd/stage.h"
34 #include ".//tokens.h"
35 
36 #include "pxr/base/vt/value.h"
37 
38 #include "pxr/base/gf/vec3d.h"
39 #include "pxr/base/gf/vec3f.h"
40 #include "pxr/base/gf/matrix4d.h"
41 
42 #include "pxr/base/tf/token.h"
43 #include "pxr/base/tf/type.h"
44 
45 PXR_NAMESPACE_OPEN_SCOPE
46 
47 class SdfAssetPath;
48 
49 // -------------------------------------------------------------------------- //
50 // PHYSXPBDMATERIALAPI //
51 // -------------------------------------------------------------------------- //
52 
59 class PhysxSchemaPhysxPBDMaterialAPI : public UsdAPISchemaBase
60 {
61 public:
65  static const UsdSchemaType schemaType = UsdSchemaType::SingleApplyAPI;
66 
71  explicit PhysxSchemaPhysxPBDMaterialAPI(const UsdPrim& prim=UsdPrim())
72  : UsdAPISchemaBase(prim)
73  {
74  }
75 
79  explicit PhysxSchemaPhysxPBDMaterialAPI(const UsdSchemaBase& schemaObj)
80  : UsdAPISchemaBase(schemaObj)
81  {
82  }
83 
85  PHYSXSCHEMA_API
87 
91  PHYSXSCHEMA_API
92  static const TfTokenVector &
93  GetSchemaAttributeNames(bool includeInherited=true);
94 
104  PHYSXSCHEMA_API
106  Get(const UsdStagePtr &stage, const SdfPath &path);
107 
108 
123  PHYSXSCHEMA_API
125  Apply(const UsdPrim &prim);
126 
127 protected:
131  PHYSXSCHEMA_API
132  UsdSchemaType _GetSchemaType() const override;
133 
134 private:
135  // needs to invoke _GetStaticTfType.
136  friend class UsdSchemaRegistry;
137  PHYSXSCHEMA_API
138  static const TfType &_GetStaticTfType();
139 
140  static bool _IsTypedSchema();
141 
142  // override SchemaBase virtuals.
143  PHYSXSCHEMA_API
144  const TfType &_GetTfType() const override;
145 
146 public:
147  // --------------------------------------------------------------------- //
148  // FRICTION
149  // --------------------------------------------------------------------- //
161  PHYSXSCHEMA_API
162  UsdAttribute GetFrictionAttr() const;
163 
169  PHYSXSCHEMA_API
170  UsdAttribute CreateFrictionAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
171 
172 public:
173  // --------------------------------------------------------------------- //
174  // PARTICLEFRICTIONSCALE
175  // --------------------------------------------------------------------- //
185  PHYSXSCHEMA_API
186  UsdAttribute GetParticleFrictionScaleAttr() const;
187 
193  PHYSXSCHEMA_API
194  UsdAttribute CreateParticleFrictionScaleAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
195 
196 public:
197  // --------------------------------------------------------------------- //
198  // DAMPING
199  // --------------------------------------------------------------------- //
209  PHYSXSCHEMA_API
210  UsdAttribute GetDampingAttr() const;
211 
217  PHYSXSCHEMA_API
218  UsdAttribute CreateDampingAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
219 
220 public:
221  // --------------------------------------------------------------------- //
222  // VISCOSITY
223  // --------------------------------------------------------------------- //
233  PHYSXSCHEMA_API
234  UsdAttribute GetViscosityAttr() const;
235 
241  PHYSXSCHEMA_API
242  UsdAttribute CreateViscosityAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
243 
244 public:
245  // --------------------------------------------------------------------- //
246  // VORTICITYCONFINEMENT
247  // --------------------------------------------------------------------- //
257  PHYSXSCHEMA_API
258  UsdAttribute GetVorticityConfinementAttr() const;
259 
265  PHYSXSCHEMA_API
266  UsdAttribute CreateVorticityConfinementAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
267 
268 public:
269  // --------------------------------------------------------------------- //
270  // SURFACETENSION
271  // --------------------------------------------------------------------- //
281  PHYSXSCHEMA_API
282  UsdAttribute GetSurfaceTensionAttr() const;
283 
289  PHYSXSCHEMA_API
290  UsdAttribute CreateSurfaceTensionAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
291 
292 public:
293  // --------------------------------------------------------------------- //
294  // COHESION
295  // --------------------------------------------------------------------- //
305  PHYSXSCHEMA_API
306  UsdAttribute GetCohesionAttr() const;
307 
313  PHYSXSCHEMA_API
314  UsdAttribute CreateCohesionAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
315 
316 public:
317  // --------------------------------------------------------------------- //
318  // ADHESION
319  // --------------------------------------------------------------------- //
330  PHYSXSCHEMA_API
331  UsdAttribute GetAdhesionAttr() const;
332 
338  PHYSXSCHEMA_API
339  UsdAttribute CreateAdhesionAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
340 
341 public:
342  // --------------------------------------------------------------------- //
343  // PARTICLEADHESIONSCALE
344  // --------------------------------------------------------------------- //
354  PHYSXSCHEMA_API
355  UsdAttribute GetParticleAdhesionScaleAttr() const;
356 
362  PHYSXSCHEMA_API
363  UsdAttribute CreateParticleAdhesionScaleAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
364 
365 public:
366  // --------------------------------------------------------------------- //
367  // ADHESIONOFFSETSCALE
368  // --------------------------------------------------------------------- //
380  PHYSXSCHEMA_API
381  UsdAttribute GetAdhesionOffsetScaleAttr() const;
382 
388  PHYSXSCHEMA_API
389  UsdAttribute CreateAdhesionOffsetScaleAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
390 
391 public:
392  // --------------------------------------------------------------------- //
393  // GRAVITYSCALE
394  // --------------------------------------------------------------------- //
404  PHYSXSCHEMA_API
405  UsdAttribute GetGravityScaleAttr() const;
406 
412  PHYSXSCHEMA_API
413  UsdAttribute CreateGravityScaleAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
414 
415 public:
416  // --------------------------------------------------------------------- //
417  // LIFT
418  // --------------------------------------------------------------------- //
428  PHYSXSCHEMA_API
429  UsdAttribute GetLiftAttr() const;
430 
436  PHYSXSCHEMA_API
437  UsdAttribute CreateLiftAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
438 
439 public:
440  // --------------------------------------------------------------------- //
441  // DRAG
442  // --------------------------------------------------------------------- //
452  PHYSXSCHEMA_API
453  UsdAttribute GetDragAttr() const;
454 
460  PHYSXSCHEMA_API
461  UsdAttribute CreateDragAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
462 
463 public:
464  // --------------------------------------------------------------------- //
465  // DENSITY
466  // --------------------------------------------------------------------- //
477  PHYSXSCHEMA_API
478  UsdAttribute GetDensityAttr() const;
479 
485  PHYSXSCHEMA_API
486  UsdAttribute CreateDensityAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
487 
488 public:
489  // --------------------------------------------------------------------- //
490  // CFLCOEFFICIENT
491  // --------------------------------------------------------------------- //
501  PHYSXSCHEMA_API
502  UsdAttribute GetCflCoefficientAttr() const;
503 
509  PHYSXSCHEMA_API
510  UsdAttribute CreateCflCoefficientAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
511 
512 public:
513  // ===================================================================== //
514  // Feel free to add custom code below this line, it will be preserved by
515  // the code generator.
516  //
517  // Just remember to:
518  // - Close the class declaration with };
519  // - Close the namespace with PXR_NAMESPACE_CLOSE_SCOPE
520  // - Close the include guard with #endif
521  // ===================================================================== //
522  // --(BEGIN CUSTOM CODE)--
523 };
524 
525 PXR_NAMESPACE_CLOSE_SCOPE
526 
527 #endif
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...
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...
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 cl...
PHYSXSCHEMA_API UsdAttribute GetCohesionAttr() const
Cohesion for interaction between fluid particles.
PHYSXSCHEMA_API UsdAttribute GetParticleFrictionScaleAttr() const
Coefficient that scales friction for solid particle-particle interations.
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.
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...
PHYSXSCHEMA_API UsdAttribute GetAdhesionAttr() const
Adhesion for interactions between particles (solid or fluid), and rigids or deformables.
PHYSXSCHEMA_API UsdAttribute GetDensityAttr() const
Density used to compute particle object mass.
PHYSXSCHEMA_API UsdAttribute GetFrictionAttr() const
Friction coefficient.
static PHYSXSCHEMA_API PhysxSchemaPhysxPBDMaterialAPI Apply(const UsdPrim &prim)
Applies this single-apply API schema to the given prim.
static const UsdSchemaType schemaType
Compile time constant representing what kind of schema this class is.
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...
PHYSXSCHEMA_API UsdAttribute GetDampingAttr() const
Global velocity damping coefficient.
PHYSXSCHEMA_API UsdAttribute GetDragAttr() const
Drag coefficient for cloth and inflatable particle objects.
PHYSXSCHEMA_API UsdAttribute GetAdhesionOffsetScaleAttr() const
Offset scale defining the offset at which adhesion ceases to take effect.
PhysxSchemaPhysxPBDMaterialAPI(const UsdSchemaBase &schemaObj)
Construct a PhysxSchemaPhysxPBDMaterialAPI on the prim held by schemaObj .
PHYSXSCHEMA_API UsdAttribute GetSurfaceTensionAttr() const
Surface tension for fluid particles.
PhysxSchemaPhysxPBDMaterialAPI(const UsdPrim &prim=UsdPrim())
Construct a PhysxSchemaPhysxPBDMaterialAPI on UsdPrim prim .
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...
virtual PHYSXSCHEMA_API ~PhysxSchemaPhysxPBDMaterialAPI()
Destructor.
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...
PHYSXSCHEMA_API UsdAttribute GetLiftAttr() const
Lift coefficient for cloth and inflatable particle objects.
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...
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...
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...
WARNING: This is a draft API; the design is not fixed and may change in the future.
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...
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...
PHYSXSCHEMA_API UsdAttribute GetParticleAdhesionScaleAttr() const
Coefficient that scales adhesion for solid particle-particle interations.
PHYSXSCHEMA_API UsdAttribute GetCflCoefficientAttr() const
This coefficient scales the CFL term used to limit relative motion between fluid particles.
PHYSXSCHEMA_API UsdAttribute GetVorticityConfinementAttr() const
Vorticity confinement for fluid particles.
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...
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.
PHYSXSCHEMA_API UsdSchemaType _GetSchemaType() const override
Returns the type of schema this class belongs to.
PHYSXSCHEMA_API UsdAttribute GetViscosityAttr() const
Viscosity for fluid particles.
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.
PHYSXSCHEMA_API UsdAttribute GetGravityScaleAttr() const
Gravitational acceleration scaling factor.
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.