Add boolean flags for gravity compensation and surface velocity in mjModel.
These fields (`flg_gravcomp` and `flg_surfacevel`) replace the fast-path checks originally guarded by `ngravcomp` and (recently) `nsurfacevel`. Since the engine uses these integers only as flags (zero vs non-zero), migrating them to actual booleans makes them writeable from the Python bindings at runtime without violating size/dimension constraints. The legacy integer field `ngravcomp` is marked as deprecated and will be removed in a future release. PiperOrigin-RevId: 949779204 Change-Id: Ifab1f026063a4239302e6ad689663b611b59dda8
This commit is contained in:
committed by
Copybara-Service
parent
ebd4abae03
commit
a04b0c5b97
@@ -715,8 +715,9 @@ Exceptions to the general rule that **real-valued** types **are safe to change**
|
||||
- Unsafe for static bodies, invalidates the midphase collision structures (BVH).
|
||||
* - ``body_gravcomp``
|
||||
- Safe.
|
||||
- If the number of bodies with gravity compensation is changed from zero to non-zero,
|
||||
:ref:`mj_setConst` must be called.
|
||||
- If passing from a state where all bodies have zero gravity compensation to a state where some bodies have
|
||||
non-zero gravity compensation (or vice-versa), the ``flg_gravcomp`` flag in :ref:`mjModel` must be updated.
|
||||
This can be done directly or by calling :ref:`mj_setConst`.
|
||||
* - ``dof_armature``
|
||||
- Safe with :ref:`mj_setConst`.
|
||||
-
|
||||
@@ -725,8 +726,9 @@ Exceptions to the general rule that **real-valued** types **are safe to change**
|
||||
-
|
||||
* - ``geom_surfacevel``
|
||||
- Safe.
|
||||
- If the number of geoms with nonzero surface velocity is changed from zero to non-zero (or vice versa),
|
||||
:ref:`mj_setConst` must be called.
|
||||
- If passing from a state where all geoms have zero surface velocity to a state where some geoms have
|
||||
non-zero surface velocity (or vice-versa), the ``flg_surfacevel`` flag in :ref:`mjModel` must be updated.
|
||||
This can be done directly or by calling :ref:`mj_setConst`.
|
||||
* - ``{site,cam,light}_`` |br| ``{pos,quat}``
|
||||
- Mostly safe.
|
||||
- For cameras and lights with tracking or targeting, :ref:`mj_setConst` is required.
|
||||
|
||||
Reference in New Issue
Block a user