Files
Mujoco_WASM/include/mujoco/experimental/usd/mjcPhysics/sceneAPI.h
T
Copybara-Service 15cbc8fb55 Merge pull request #3156 from andrewkaufman:newton-schemas
PiperOrigin-RevId: 925328794
Change-Id: If45b8659ea9b88785660331bca5ee837ac172f67
2026-06-02 07:06:59 -07:00

1790 lines
76 KiB
C++

// Copyright 2025 DeepMind Technologies Limited
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// DO NOT EDIT. THIS FILE IS AUTOMATICALLY GENERATED.
#ifndef MJCPHYSICS_GENERATED_SCENEAPI_H
#define MJCPHYSICS_GENERATED_SCENEAPI_H
/// \file mjcPhysics/sceneAPI.h
#include <mujoco/experimental/usd/mjcPhysics/api.h>
#include <mujoco/experimental/usd/mjcPhysics/tokens.h>
#include <pxr/base/gf/matrix4d.h>
#include <pxr/base/gf/vec3d.h>
#include <pxr/base/gf/vec3f.h>
#include <pxr/base/tf/token.h>
#include <pxr/base/tf/type.h>
#include <pxr/base/vt/value.h>
#include <pxr/pxr.h>
#include <pxr/usd/usd/apiSchemaBase.h>
#include <pxr/usd/usd/prim.h>
#include <pxr/usd/usd/stage.h>
PXR_NAMESPACE_OPEN_SCOPE
class SdfAssetPath;
// -------------------------------------------------------------------------- //
// MJCSCENEAPI //
// -------------------------------------------------------------------------- //
/// \class MjcPhysicsSceneAPI
///
/// API providing global simulation options for MuJoCo.
///
/// For any described attribute \em Fallback \em Value or \em Allowed \em Values
/// below that are text/tokens, the actual token is published and defined in
/// \ref MjcPhysicsTokens. So to set an attribute to the value "rightHanded",
/// use MjcPhysicsTokens->rightHanded as the value.
///
class MjcPhysicsSceneAPI : public UsdAPISchemaBase {
public:
/// Compile time constant representing what kind of schema this class is.
///
/// \sa UsdSchemaKind
static const UsdSchemaKind schemaKind = UsdSchemaKind::SingleApplyAPI;
/// Construct a MjcPhysicsSceneAPI on UsdPrim \p prim .
/// Equivalent to MjcPhysicsSceneAPI::Get(prim.GetStage(), prim.GetPath())
/// for a \em valid \p prim, but will not immediately throw an error for
/// an invalid \p prim
explicit MjcPhysicsSceneAPI(const UsdPrim& prim = UsdPrim())
: UsdAPISchemaBase(prim) {}
/// Construct a MjcPhysicsSceneAPI on the prim held by \p schemaObj .
/// Should be preferred over MjcPhysicsSceneAPI(schemaObj.GetPrim()),
/// as it preserves SchemaBase state.
explicit MjcPhysicsSceneAPI(const UsdSchemaBase& schemaObj)
: UsdAPISchemaBase(schemaObj) {}
/// Destructor.
MJCPHYSICS_API
virtual ~MjcPhysicsSceneAPI();
/// 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.
MJCPHYSICS_API
static const TfTokenVector& GetSchemaAttributeNames(
bool includeInherited = true);
/// Return a MjcPhysicsSceneAPI holding the prim adhering to this
/// schema at \p path on \p stage. If no prim exists at \p path on
/// \p 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:
///
/// \code
/// MjcPhysicsSceneAPI(stage->GetPrimAtPath(path));
/// \endcode
///
MJCPHYSICS_API
static MjcPhysicsSceneAPI Get(const UsdStagePtr& stage, const SdfPath& path);
/// Returns true if this <b>single-apply</b> API schema can be applied to
/// the given \p prim. If this schema can not be a applied to the prim,
/// this returns false and, if provided, populates \p 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.
///
/// \sa UsdPrim::GetAppliedSchemas()
/// \sa UsdPrim::HasAPI()
/// \sa UsdPrim::CanApplyAPI()
/// \sa UsdPrim::ApplyAPI()
/// \sa UsdPrim::RemoveAPI()
///
MJCPHYSICS_API
static bool CanApply(const UsdPrim& prim, std::string* whyNot = nullptr);
/// Applies this <b>single-apply</b> API schema to the given \p prim.
/// This information is stored by adding "MjcSceneAPI" to the
/// token-valued, listOp metadata \em apiSchemas on the prim.
///
/// \return A valid MjcPhysicsSceneAPI object is returned upon success.
/// An invalid (or empty) MjcPhysicsSceneAPI object is returned upon
/// failure. See \ref UsdPrim::ApplyAPI() for conditions
/// resulting in failure.
///
/// \sa UsdPrim::GetAppliedSchemas()
/// \sa UsdPrim::HasAPI()
/// \sa UsdPrim::CanApplyAPI()
/// \sa UsdPrim::ApplyAPI()
/// \sa UsdPrim::RemoveAPI()
///
MJCPHYSICS_API
static MjcPhysicsSceneAPI Apply(const UsdPrim& prim);
protected:
/// Returns the kind of schema this class belongs to.
///
/// \sa UsdSchemaKind
MJCPHYSICS_API
UsdSchemaKind _GetSchemaKind() const override;
private:
// needs to invoke _GetStaticTfType.
friend class UsdSchemaRegistry;
MJCPHYSICS_API
static const TfType& _GetStaticTfType();
static bool _IsTypedSchema();
// override SchemaBase virtuals.
MJCPHYSICS_API
const TfType& _GetTfType() const override;
public:
// --------------------------------------------------------------------- //
// TIMESTEP
// --------------------------------------------------------------------- //
/// DEPRECATED: Use newton:timeStepsPerSecond instead.
///
/// Controls the timestep in seconds used by MuJoCo.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform double mjc:option:timestep = 0.002` |
/// | C++ Type | double |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Double |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetTimestepAttr() const;
/// See GetTimestepAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateTimestepAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// IMPRATIO
// --------------------------------------------------------------------- //
/// Ratio of frictional-to-normal constraint impedance for elliptic
/// friction cones.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform double mjc:option:impratio = 1` |
/// | C++ Type | double |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Double |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetImpRatioAttr() const;
/// See GetImpRatioAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateImpRatioAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// WIND
// --------------------------------------------------------------------- //
/// Velocity vector of medium (i.e. wind).
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform double3 mjc:option:wind = (0, 0, 0)` |
/// | C++ Type | GfVec3d |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Double3 |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetWindAttr() const;
/// See GetWindAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateWindAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// MAGNETIC
// --------------------------------------------------------------------- //
/// Global magnetic flux.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform double3 mjc:option:magnetic = (0, -0.5, 0)` |
/// | C++ Type | GfVec3d |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Double3 |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetMagneticAttr() const;
/// See GetMagneticAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateMagneticAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// DENSITY
// --------------------------------------------------------------------- //
/// Density of medium.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform double mjc:option:density = 0` |
/// | C++ Type | double |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Double |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetDensityAttr() const;
/// See GetDensityAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateDensityAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// VISCOSITY
// --------------------------------------------------------------------- //
/// Viscosity of medium.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform double mjc:option:viscosity = 0` |
/// | C++ Type | double |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Double |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetViscosityAttr() const;
/// See GetViscosityAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateViscosityAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// OMARGIN
// --------------------------------------------------------------------- //
/// Replaces the margin parameter of all active contact pairs when
/// Contact override is enabled.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform double mjc:option:o_margin = 0` |
/// | C++ Type | double |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Double |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetOMarginAttr() const;
/// See GetOMarginAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateOMarginAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// OSOLREF
// --------------------------------------------------------------------- //
/// Replaces the solref parameter of all active contact pairs when
/// Contact override is enabled.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform double[] mjc:option:o_solref = [0.02, 1]` |
/// | C++ Type | VtArray<double> |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->DoubleArray |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetOSolRefAttr() const;
/// See GetOSolRefAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateOSolRefAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// OSOLIMP
// --------------------------------------------------------------------- //
/// Replaces the solimp parameter of all active contact pairs when
/// Contact override is enabled.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform double[] mjc:option:o_solimp = [0.9, 0.95, 0.001,
/// 0.5, 2]` | | C++ Type | VtArray<double> | | \ref Usd_Datatypes "Usd Type"
/// | SdfValueTypeNames->DoubleArray | | \ref SdfVariability "Variability" |
/// SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetOSolImpAttr() const;
/// See GetOSolImpAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateOSolImpAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// OFRICTION
// --------------------------------------------------------------------- //
/// Replaces the friction parameter of all active contact pairs when
/// Contact override is enabled.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform double[] mjc:option:o_friction = [1, 1, 0.005,
/// 0.0001, 0.0001]` | | C++ Type | VtArray<double> | | \ref Usd_Datatypes
/// "Usd Type" | SdfValueTypeNames->DoubleArray | | \ref SdfVariability
/// "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetOFrictionAttr() const;
/// See GetOFrictionAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateOFrictionAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// INTEGRATOR
// --------------------------------------------------------------------- //
/// Numerical integrator to be used.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform token mjc:option:integrator = "euler"` |
/// | C++ Type | TfToken |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Token |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
/// | \ref MjcPhysicsTokens "Allowed Values" | euler, rk4, implicit,
/// implicitfast |
MJCPHYSICS_API
UsdAttribute GetIntegratorAttr() const;
/// See GetIntegratorAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateIntegratorAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// CONE
// --------------------------------------------------------------------- //
/// The type of contact friction cone.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform token mjc:option:cone = "pyramidal"` |
/// | C++ Type | TfToken |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Token |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
/// | \ref MjcPhysicsTokens "Allowed Values" | pyramidal, elliptic |
MJCPHYSICS_API
UsdAttribute GetConeAttr() const;
/// See GetConeAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateConeAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// JACOBIAN
// --------------------------------------------------------------------- //
/// The type of constraint Jacobian and matrices computed from it.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform token mjc:option:jacobian = "auto"` |
/// | C++ Type | TfToken |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Token |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
/// | \ref MjcPhysicsTokens "Allowed Values" | auto, dense, sparse |
MJCPHYSICS_API
UsdAttribute GetJacobianAttr() const;
/// See GetJacobianAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateJacobianAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// SOLVER
// --------------------------------------------------------------------- //
/// Constraint solver algorithm to be used.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform token mjc:option:solver = "newton"` |
/// | C++ Type | TfToken |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Token |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
/// | \ref MjcPhysicsTokens "Allowed Values" | pgs, cg, newton |
MJCPHYSICS_API
UsdAttribute GetSolverAttr() const;
/// See GetSolverAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateSolverAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// ITERATIONS
// --------------------------------------------------------------------- //
/// DEPRECATED: Use newton:maxSolverIterations instead.
///
/// Maximum number of iterations of the constraint solver.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform int mjc:option:iterations = 100` |
/// | C++ Type | int |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Int |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetIterationsAttr() const;
/// See GetIterationsAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateIterationsAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// TOLERANCE
// --------------------------------------------------------------------- //
/// Tolerance threshold used for early termination of the iterative
/// solver.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform double mjc:option:tolerance = 1e-8` |
/// | C++ Type | double |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Double |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetToleranceAttr() const;
/// See GetToleranceAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateToleranceAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// LSITERATIONS
// --------------------------------------------------------------------- //
/// Maximum number of linesearch iterations performed by CG/Newton
/// constraint solvers.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform int mjc:option:ls_iterations = 50` |
/// | C++ Type | int |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Int |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetLSIterationsAttr() const;
/// See GetLSIterationsAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateLSIterationsAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// LSTOLERANCE
// --------------------------------------------------------------------- //
/// Tolerance threshold used for early termination of the linesearch
/// algorithm.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform double mjc:option:ls_tolerance = 0.01` |
/// | C++ Type | double |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Double |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetLSToleranceAttr() const;
/// See GetLSToleranceAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateLSToleranceAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// NOSLIPITERATIONS
// --------------------------------------------------------------------- //
/// Maximum number of iterations of the Noslip solver.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform int mjc:option:noslip_iterations = 0` |
/// | C++ Type | int |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Int |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetNoslipIterationsAttr() const;
/// See GetNoslipIterationsAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateNoslipIterationsAttr(
VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// NOSLIPTOLERANCE
// --------------------------------------------------------------------- //
/// Tolerance threshold used for early termination of the Noslip solver.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform double mjc:option:noslip_tolerance = 0.000001` |
/// | C++ Type | double |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Double |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetNoslipToleranceAttr() const;
/// See GetNoslipToleranceAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateNoslipToleranceAttr(
VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// CCDITERATIONS
// --------------------------------------------------------------------- //
/// Maximum number of iterations of the algorithm used for convex collisions.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform int mjc:option:ccd_iterations = 35` |
/// | C++ Type | int |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Int |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetCCDIterationsAttr() const;
/// See GetCCDIterationsAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateCCDIterationsAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// CCDTOLERANCE
// --------------------------------------------------------------------- //
/// Tolerance threshold used for early termination of the convex
/// collision algorithm.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform double mjc:option:ccd_tolerance = 0.000001` |
/// | C++ Type | double |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Double |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetCCDToleranceAttr() const;
/// See GetCCDToleranceAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateCCDToleranceAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// SDFITERATIONS
// --------------------------------------------------------------------- //
/// Number of iterations used for Signed Distance Field collisions
/// (per initial point).
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform int mjc:option:sdf_iterations = 10` |
/// | C++ Type | int |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Int |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetSDFIterationsAttr() const;
/// See GetSDFIterationsAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateSDFIterationsAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// SDFINITPOINTS
// --------------------------------------------------------------------- //
/// Number of starting points used for finding contacts with Signed
/// Distance Field collisions.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform int mjc:option:sdf_initpoints = 40` |
/// | C++ Type | int |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Int |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetSDFInitPointsAttr() const;
/// See GetSDFInitPointsAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateSDFInitPointsAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// ACTUATORGROUPDISABLE
// --------------------------------------------------------------------- //
/// List of actuator groups to disable.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform int[] mjc:option:actuatorgroupdisable = []` |
/// | C++ Type | VtArray<int> |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->IntArray |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetActuatorGroupDisableAttr() const;
/// See GetActuatorGroupDisableAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateActuatorGroupDisableAttr(
VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// CONSTRAINTFLAG
// --------------------------------------------------------------------- //
/// Enables constraint solver.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:flag:constraint = 1` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetConstraintFlagAttr() const;
/// See GetConstraintFlagAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateConstraintFlagAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// EQUALITYFLAG
// --------------------------------------------------------------------- //
/// Enables all standard computations related to equality constraints.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:flag:equality = 1` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetEqualityFlagAttr() const;
/// See GetEqualityFlagAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateEqualityFlagAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// FRICTIONLOSSFLAG
// --------------------------------------------------------------------- //
/// Enables all standard computations related to friction loss constraints.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:flag:frictionloss = 1` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetFrictionLossFlagAttr() const;
/// See GetFrictionLossFlagAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateFrictionLossFlagAttr(
VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// LIMITFLAG
// --------------------------------------------------------------------- //
/// Enables all standard computations related to joint and tendon limit
/// constraints.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:flag:limit = 1` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetLimitFlagAttr() const;
/// See GetLimitFlagAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateLimitFlagAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// CONTACTFLAG
// --------------------------------------------------------------------- //
/// Enables collision detection and all standard computations related to
/// contact constraints.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:flag:contact = 1` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetContactFlagAttr() const;
/// See GetContactFlagAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateContactFlagAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// SPRINGFLAG
// --------------------------------------------------------------------- //
/// Enables the simulation of joint and tendon springs.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:flag:spring = 1` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetSpringFlagAttr() const;
/// See GetSpringFlagAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateSpringFlagAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// DAMPERFLAG
// --------------------------------------------------------------------- //
/// Enables the simulation of joint and tendon dampers.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:flag:damper = 1` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetDamperFlagAttr() const;
/// See GetDamperFlagAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateDamperFlagAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// GRAVITYFLAG
// --------------------------------------------------------------------- //
/// DEPRECATED: Use newton:gravityEnabled instead.
///
/// Enables the application of gravitational acceleration as defined in
/// mjOption.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:flag:gravity = 1` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetGravityFlagAttr() const;
/// See GetGravityFlagAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateGravityFlagAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// CLAMPCTRLFLAG
// --------------------------------------------------------------------- //
/// Enables the clamping of control inputs to all actuators, according to
/// actuator-specific attributes.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:flag:clampctrl = 1` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetClampCtrlFlagAttr() const;
/// See GetClampCtrlFlagAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateClampCtrlFlagAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// WARMSTARTFLAG
// --------------------------------------------------------------------- //
/// Enables warm-starting of the constraint solver, using the solution from
/// the previous time step to initialize the iterative optimization.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:flag:warmstart = 1` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetWarmStartFlagAttr() const;
/// See GetWarmStartFlagAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateWarmStartFlagAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// FILTERPARENTFLAG
// --------------------------------------------------------------------- //
/// Enables the filtering of contact pairs where the two geoms belong to a
/// parent and child body.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:flag:filterparent = 1` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetFilterParentFlagAttr() const;
/// See GetFilterParentFlagAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateFilterParentFlagAttr(
VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// ACTUATIONFLAG
// --------------------------------------------------------------------- //
/// Enables all standard computations related to actuator forces, including
/// actuator dynamics.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:flag:actuation = 1` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetActuationFlagAttr() const;
/// See GetActuationFlagAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateActuationFlagAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// REFSAFEFLAG
// --------------------------------------------------------------------- //
/// Enables a safety mechanism that prevents instabilities due to solref[0]
/// being too small compared to the simulation timestep.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:flag:refsafe = 1` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetRefSafeFlagAttr() const;
/// See GetRefSafeFlagAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateRefSafeFlagAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// SENSORFLAG
// --------------------------------------------------------------------- //
/// Enables all computations related to sensors.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:flag:sensor = 1` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetSensorFlagAttr() const;
/// See GetSensorFlagAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateSensorFlagAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// MIDPHASEFLAG
// --------------------------------------------------------------------- //
/// Enables mid-phase collision filtering using a static AABB bounding volume
/// hierarchy (BVH).
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:flag:midphase = 1` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetMidPhaseFlagAttr() const;
/// See GetMidPhaseFlagAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateMidPhaseFlagAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// NATIVECCDFLAG
// --------------------------------------------------------------------- //
/// Enables the native convex collision detection pipeline instead of using
/// the libccd library.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:flag:nativeccd = 1` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetNativeCCDFlagAttr() const;
/// See GetNativeCCDFlagAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateNativeCCDFlagAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// EULERDAMPFLAG
// --------------------------------------------------------------------- //
/// Enables implicit integration with respect to joint damping in the Euler
/// integrator.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:flag:eulerdamp = 1` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetEulerDampFlagAttr() const;
/// See GetEulerDampFlagAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateEulerDampFlagAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// AUTORESETFLAG
// --------------------------------------------------------------------- //
/// Enables the automatic resetting of the simulation state when numerical
/// issues are detected.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:flag:autoreset = 1` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetAutoResetFlagAttr() const;
/// See GetAutoResetFlagAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateAutoResetFlagAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// OVERRIDEFLAG
// --------------------------------------------------------------------- //
/// Enables the contact override mechanism.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:flag:override = 0` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetOverrideFlagAttr() const;
/// See GetOverrideFlagAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateOverrideFlagAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// ENERGYFLAG
// --------------------------------------------------------------------- //
/// Enables the computation of potential and kinetic energy
/// (mjData.energy[0,1]).
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:flag:energy = 0` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetEnergyFlagAttr() const;
/// See GetEnergyFlagAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateEnergyFlagAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// FWDINVFLAG
// --------------------------------------------------------------------- //
/// Enables the automatic comparison of forward and inverse dynamics.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:flag:fwdinv = 0` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetFwdinvFlagAttr() const;
/// See GetFwdinvFlagAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateFwdinvFlagAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// INVDISCRETEFLAG
// --------------------------------------------------------------------- //
/// Enables discrete-time inverse dynamics with mj_inverse for integrators
/// other than RK4.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:flag:invdiscrete = 0` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetInvDiscreteFlagAttr() const;
/// See GetInvDiscreteFlagAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateInvDiscreteFlagAttr(
VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// MULTICCDFLAG
// --------------------------------------------------------------------- //
/// Enables multiple-contact collision detection for geom pairs using a
/// general-purpose convex-convex collider.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:flag:multiccd = 1` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetMultiCCDFlagAttr() const;
/// See GetMultiCCDFlagAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateMultiCCDFlagAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// ISLANDFLAG
// --------------------------------------------------------------------- //
/// Enables the discovery of constraint islands.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:flag:island = 1` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetIslandFlagAttr() const;
/// See GetIslandFlagAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateIslandFlagAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// AUTOLIMITS
// --------------------------------------------------------------------- //
/// This attribute affects the behavior of attributes such as "limited" (on
/// MjcJointAPI), "forcelimited" "ctrllimited", and "actlimited" (on
/// MjcActuator). If True, these attributes are unnecessary and their value
/// will be inferred from the presence of their corresponding "range"
/// attribute. If False, no such inference will happen: For a joint to be
/// limited, both limited=True and range:min/max must be specified. In this
/// mode, it is an error to specify a range without a limit.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:compiler:autoLimits = 1` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetAutoLimitsAttr() const;
/// See GetAutoLimitsAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateAutoLimitsAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// BOUNDMASS
// --------------------------------------------------------------------- //
/// This attribute imposes a lower bound on the mass of each body except for
/// the world body.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform double mjc:compiler:boundMass = 0` |
/// | C++ Type | double |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Double |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetBoundMassAttr() const;
/// See GetBoundMassAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateBoundMassAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// BOUNDINERTIA
// --------------------------------------------------------------------- //
/// This attribute imposes a lower bound on the diagonal inertia components of
/// each body except for the world body.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform double mjc:compiler:boundInertia = 0` |
/// | C++ Type | double |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Double |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetBoundInertiaAttr() const;
/// See GetBoundInertiaAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateBoundInertiaAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// SETTOTALMASS
// --------------------------------------------------------------------- //
/// If this value is positive, the compiler will scale the masses and inertias
/// of all bodies in the model, so that the total mass equals the value
/// specified here. The world body has mass 0 and does not participate in any
/// mass-related computations. This scaling is performed last, after all other
/// operations affecting the body mass and inertia. The same scaling operation
/// can be applied at runtime to the compiled mjModel with the function
/// mj_setTotalmass.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform double mjc:compiler:setTotalMass = -1` |
/// | C++ Type | double |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Double |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetSetTotalMassAttr() const;
/// See GetSetTotalMassAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateSetTotalMassAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// USETHREAD
// --------------------------------------------------------------------- //
/// If this is True, the model compiler will run in multi-threaded mode.
/// Currently multi-threading is used for computing the length ranges of
/// actuators and for parallel loading of meshes.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:compiler:useThread = 1` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetUseThreadAttr() const;
/// See GetUseThreadAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateUseThreadAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// BALANCEINERTIA
// --------------------------------------------------------------------- //
/// A valid diagonal inertia matrix must satisfy A+B>=C for all permutations
/// of the three diagonal elements. Some poorly designed models violate this
/// constraint, which will normally result in a compile error. If this
/// attribute is set to "true", the compiler will silently set all three
/// diagonal elements to their average value whenever the above condition is
/// violated.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:compiler:balanceInertia = 0` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetBalanceInertiaAttr() const;
/// See GetBalanceInertiaAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateBalanceInertiaAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// ANGLE
// --------------------------------------------------------------------- //
/// This attribute specifies whether the angles in mjcPhysics attributes have
/// units of degrees or radians if not otherwise noted.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform token mjc:compiler:angle = "degree"` |
/// | C++ Type | TfToken |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Token |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
/// | \ref MjcPhysicsTokens "Allowed Values" | degree, radian |
MJCPHYSICS_API
UsdAttribute GetAngleAttr() const;
/// See GetAngleAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateAngleAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// FITAABB
// --------------------------------------------------------------------- //
/// The compiler is able to replace a mesh with a geometric primitive fitted
/// to that mesh. If this attribute is True, the fitting procedure uses the
/// axis-aligned bounding box (AABB) of the mesh. Otherwise it uses the
/// equivalent-inertia box of the mesh.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:compiler:fitAABB = 0` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetFitAABBAttr() const;
/// See GetFitAABBAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateFitAABBAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// FUSESTATIC
// --------------------------------------------------------------------- //
/// This attribute controls a compiler optimization feature where static
/// bodies are fused with their parent, and any elements defined in those
/// bodies are reassigned to the parent. Static bodies are fused with their
/// parent unless
///
/// * They are referenced by another element in the model.
///
/// * They contain a site which is referenced by a force or torque sensor.
///
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:compiler:fuseStatic = 0` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetFuseStaticAttr() const;
/// See GetFuseStaticAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateFuseStaticAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// INERTIAFROMGEOM
// --------------------------------------------------------------------- //
/// This attribute controls the automatic inference of body masses and
/// inertias from geoms attached to the body. If this setting is "false", no
/// automatic inference is performed. In that case each body must have
/// explicitly defined mass and inertia with the inertial element, or else a
/// compile error will be generated. If this setting is "true", the mass and
/// inertia of each body will be inferred from the geoms attached to it,
/// overriding any values specified with the inertial element. The default
/// setting "auto" means that masses and inertias are inferred automatically
/// only when the inertial element is missing in the body definition. One
/// reason to set this attribute to "true" instead of "auto" is to override
/// inertial data imported from a poorly designed model.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform token mjc:compiler:inertiaFromGeom = "auto"` |
/// | C++ Type | TfToken |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Token |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
/// | \ref MjcPhysicsTokens "Allowed Values" | false, true, auto |
MJCPHYSICS_API
UsdAttribute GetInertiaFromGeomAttr() const;
/// See GetInertiaFromGeomAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateInertiaFromGeomAttr(
VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// ALIGNFREE
// --------------------------------------------------------------------- //
/// This attribute toggles the default behaviour of an optimization that
/// applies to bodies with a free joint and no child bodies. When True, the
/// body frame and free joint will automatically be aligned with inertial
/// frame, which leads to both faster and more stable simulation.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:compiler:alignFree = 0` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetAlignFreeAttr() const;
/// See GetAlignFreeAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateAlignFreeAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// INERTIAGROUPRANGEMIN
// --------------------------------------------------------------------- //
/// This attribute specifies the maximum of the geom group range that is used
/// to infer body masses and inertias (when such inference is enabled). The
/// group attribute of geom is an integer. If this integer falls in the range
/// specified here, the collider will be used in the inertial computation,
/// otherwise it will be ignored. Note that the world body does not
/// participate in the inertial computations, so any geoms attached to it are
/// automatically ignored. Therefore it is not necessary to adjust this
/// attribute and the geom-specific groups so as to exclude world geoms from
/// the inertial computation.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform int mjc:compiler:inertiaGroupRange:min = 0` |
/// | C++ Type | int |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Int |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetInertiaGroupRangeMinAttr() const;
/// See GetInertiaGroupRangeMinAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateInertiaGroupRangeMinAttr(
VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// INERTIAGROUPRANGEMAX
// --------------------------------------------------------------------- //
/// This attribute specifies the maximum of the geom group range that is used
/// to infer body masses and inertias (when such inference is enabled). The
/// group attribute of geom is an integer. If this integer falls in the range
/// specified here, the geom will be used in the inertial computation,
/// otherwise it will be ignored. This feature is useful in models that have
/// redundant sets of geoms for collision and visualization. Note that the
/// world body does not participate in the inertial computations, so any geoms
/// attached to it are automatically ignored. Therefore it is not necessary to
/// adjust this attribute and the geom-specific groups so as to exclude world
/// geoms from the inertial computation.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform int mjc:compiler:inertiaGroupRange:max = 5` |
/// | C++ Type | int |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Int |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetInertiaGroupRangeMaxAttr() const;
/// See GetInertiaGroupRangeMaxAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateInertiaGroupRangeMaxAttr(
VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// --------------------------------------------------------------------- //
// SAVEINERTIAL
// --------------------------------------------------------------------- //
/// If True, the compiler will save explicit inertial clauses for all bodies.
///
/// | ||
/// | -- | -- |
/// | Declaration | `uniform bool mjc:compiler:saveInertial = 0` |
/// | C++ Type | bool |
/// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Bool |
/// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
MJCPHYSICS_API
UsdAttribute GetSaveInertialAttr() const;
/// See GetSaveInertialAttr(), and also
/// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
/// If specified, author \p defaultValue as the attribute's default,
/// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
/// the default for \p writeSparsely is \c false.
MJCPHYSICS_API
UsdAttribute CreateSaveInertialAttr(VtValue const& defaultValue = VtValue(),
bool writeSparsely = false) const;
public:
// ===================================================================== //
// Feel free to add custom code below this line, it will be preserved by
// the code generator.
//
// Just remember to:
// - Close the class declaration with };
// - Close the namespace with PXR_NAMESPACE_CLOSE_SCOPE
// - Close the include guard with #endif
// ===================================================================== //
// --(BEGIN CUSTOM CODE)--
};
PXR_NAMESPACE_CLOSE_SCOPE
#endif