Add sensordata MJX binding.

PiperOrigin-RevId: 716241711
Change-Id: I11a82f58c41dca93e9a5337f0c573158026fa971
This commit is contained in:
Alessio Quaglino
2025-01-16 08:14:01 -08:00
committed by Copybara-Service
parent 4903d5321c
commit c16f95f62c
2 changed files with 28 additions and 0 deletions
+15
View File
@@ -180,6 +180,12 @@ class SupportTest(parameterized.TestCase):
<motor name="actuator2" joint="joint2"/>
<motor name="actuator3" joint="joint3"/>
</actuator>
<sensor>
<framepos name="sensor1" objtype="body" objname="body1"/>
<framepos name="sensor2" objtype="body" objname="body2"/>
<framepos name="sensor3" objtype="body" objname="body3"/>
</sensor>
</mujoco>
"""
@@ -224,6 +230,15 @@ class SupportTest(parameterized.TestCase):
dx.bind(mx, s.actuators[i]).ctrl, d.ctrl[i]
)
np.testing.assert_array_equal(
dx.bind(mx, s.sensors).sensordata, d.sensordata
)
for i in range(m.nsensor):
np.testing.assert_array_equal(
dx.bind(mx, s.sensors[i]).sensordata,
d.sensordata[m.sensor_adr[i] : m.sensor_adr[i] + m.sensor_dim[i]],
)
# test setting
np.testing.assert_array_equal(d.ctrl, [0, 0, 0])
np.testing.assert_array_equal(dx.bind(mx, s.actuators).ctrl, d.ctrl)