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
@@ -332,7 +332,6 @@ typedef struct mjModel_ {
|
||||
mjtSize nnames_map; // number of slots in the names hash map
|
||||
mjtSize nJmom; // number of non-zeros in sparse actuator_moment matrix
|
||||
mjtSize ngravcomp; // number of bodies with nonzero gravcomp
|
||||
mjtSize nsurfacevel; // number of geoms with nonzero surfacevel
|
||||
mjtSize nemax; // number of potential equality-constraint rows
|
||||
mjtSize njmax; // number of available rows in constraint Jacobian (legacy)
|
||||
mjtSize nconmax; // number of potential contacts in contact list (legacy)
|
||||
@@ -347,6 +346,11 @@ typedef struct mjModel_ {
|
||||
mjtSize narena; // number of bytes in the mjData arena (inclusive of stack)
|
||||
mjtSize nbuffer; // number of bytes in buffer
|
||||
|
||||
// ------------------------------- flags
|
||||
|
||||
mjtBool flg_gravcomp; // whether any body has nonzero gravcomp
|
||||
mjtBool flg_surfacevel; // whether any geom has nonzero surfacevel
|
||||
|
||||
// ------------------------------- options and statistics
|
||||
|
||||
mjOption opt; // physics options
|
||||
|
||||
@@ -247,7 +247,6 @@
|
||||
X( nnames_map ) \
|
||||
X( nJmom ) \
|
||||
X( ngravcomp ) \
|
||||
X( nsurfacevel ) \
|
||||
X( nemax ) \
|
||||
X( njmax ) \
|
||||
X( nconmax ) \
|
||||
|
||||
Reference in New Issue
Block a user