Implement mjz encoder.

PiperOrigin-RevId: 918493808
Change-Id: I150d182ff27801d829537a8001a0b3a04c1a0499
This commit is contained in:
Sam Haves
2026-05-20 09:32:00 -07:00
committed by Copybara-Service
parent 57d2c49316
commit fa8ac7a516
21 changed files with 1729 additions and 1 deletions
+4
View File
@@ -17,3 +17,7 @@ mujoco_test(mjz_api_test)
mujoco_test(
mjz_decoder_test
)
mujoco_test(
mjz_encoder_test
)
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,10 @@
<mujoco model="child_a">
<asset>
<mesh name="m" file="mesh.obj"/>
</asset>
<worldbody>
<body name="body">
<geom type="mesh" mesh="m"/>
</body>
</worldbody>
</mujoco>
@@ -0,0 +1,20 @@
v 0 0 0
v 1 0 0
v 1 1 0
v 0 1 0
v 0 0 1
v 1 0 1
v 1 1 1
v 0 1 1
f 1 2 3
f 1 3 4
f 5 6 7
f 5 7 8
f 1 2 6
f 1 6 5
f 2 3 7
f 2 7 6
f 3 4 8
f 3 8 7
f 4 1 5
f 4 5 8
@@ -0,0 +1,10 @@
<mujoco model="child_b">
<asset>
<mesh name="m" file="mesh.obj"/>
</asset>
<worldbody>
<body name="body">
<geom type="mesh" mesh="m"/>
</body>
</worldbody>
</mujoco>
@@ -0,0 +1,8 @@
v 0 0 0
v 1 0 0
v 0.5 0.866 0
v 0.5 0.289 0.816
f 1 2 3
f 1 2 4
f 2 3 4
f 1 3 4
+20
View File
@@ -0,0 +1,20 @@
v 0 0 0
v 1 0 0
v 1 1 0
v 0 1 0
v 0 0 1
v 1 0 1
v 1 1 1
v 0 1 1
f 1 2 3
f 1 3 4
f 5 6 7
f 5 7 8
f 1 2 6
f 1 6 5
f 2 3 7
f 2 7 6
f 3 4 8
f 3 8 7
f 4 1 5
f 4 5 8
+10
View File
@@ -0,0 +1,10 @@
<mujoco model="disk_mesh">
<asset>
<mesh name="box" file="box.obj"/>
</asset>
<worldbody>
<body name="b1">
<geom type="mesh" mesh="box"/>
</body>
</worldbody>
</mujoco>
+7
View File
@@ -0,0 +1,7 @@
<mujoco>
<worldbody>
<body name="child_body" pos="1 0 0">
<geom type="sphere" size="0.05"/>
</body>
</worldbody>
</mujoco>
+8
View File
@@ -0,0 +1,8 @@
<mujoco model="include_test">
<include file="child.xml"/>
<worldbody>
<body name="parent_body" pos="0 0 1">
<geom type="sphere" size="0.1"/>
</body>
</worldbody>
</mujoco>
+20
View File
@@ -0,0 +1,20 @@
v 0 0 0
v 1 0 0
v 1 1 0
v 0 1 0
v 0 0 1
v 1 0 1
v 1 1 1
v 0 1 1
f 1 2 3
f 1 3 4
f 5 6 7
f 5 7 8
f 1 2 6
f 1 6 5
f 2 3 7
f 2 7 6
f 3 4 8
f 3 8 7
f 4 1 5
f 4 5 8
+11
View File
@@ -0,0 +1,11 @@
<mujoco model="meshdir_test">
<compiler meshdir="assets"/>
<asset>
<mesh name="box" file="box.obj"/>
</asset>
<worldbody>
<body name="b1">
<geom type="mesh" mesh="box"/>
</body>
</worldbody>
</mujoco>
+20
View File
@@ -0,0 +1,20 @@
v 0 0 0
v 1 0 0
v 1 1 0
v 0 1 0
v 0 0 1
v 1 0 1
v 1 1 1
v 0 1 1
f 1 2 3
f 1 3 4
f 5 6 7
f 5 7 8
f 1 2 6
f 1 6 5
f 2 3 7
f 2 7 6
f 3 4 8
f 3 8 7
f 4 1 5
f 4 5 8
+20
View File
@@ -0,0 +1,20 @@
v 0 0 0
v 1 0 0
v 1 1 0
v 0 1 0
v 0 0 1
v 1 0 1
v 1 1 1
v 0 1 1
f 1 2 3
f 1 3 4
f 5 6 7
f 5 7 8
f 1 2 6
f 1 6 5
f 2 3 7
f 2 7 6
f 3 4 8
f 3 8 7
f 4 1 5
f 4 5 8
+10
View File
@@ -0,0 +1,10 @@
<mujoco model="subdir_mesh">
<asset>
<mesh name="box" file="meshes/box.obj"/>
</asset>
<worldbody>
<body name="b1">
<geom type="mesh" mesh="box"/>
</body>
</worldbody>
</mujoco>
+8
View File
@@ -0,0 +1,8 @@
<mujoco>
<include file="grandchild.xml"/>
<worldbody>
<body name="child_body" pos="1 0 0">
<geom type="sphere" size="0.05"/>
</body>
</worldbody>
</mujoco>
+7
View File
@@ -0,0 +1,7 @@
<mujoco>
<worldbody>
<body name="gc_body" pos="2 0 0">
<geom type="sphere" size="0.02"/>
</body>
</worldbody>
</mujoco>
+8
View File
@@ -0,0 +1,8 @@
<mujoco model="transitive_test">
<include file="child.xml"/>
<worldbody>
<body name="parent_body" pos="0 0 1">
<geom type="sphere" size="0.1"/>
</body>
</worldbody>
</mujoco>