@@ -1001,9 +1001,9 @@ cdef class PyMjModel(object):
10011001 cdef np.ndarray _name_keyadr
10021002 cdef np.ndarray _names
10031003
1004- cdef readonly tuple body_names, joint_names, geom_names, site_names, light_names, camera_names, actuator_names, sensor_names, tendon_names
1005- cdef readonly dict _body_id2name, _joint_id2name, _geom_id2name, _site_id2name, _light_id2name, _camera_id2name, _actuator_id2name, _sensor_id2name, _tendon_id2name
1006- cdef readonly dict _body_name2id, _joint_name2id, _geom_name2id, _site_name2id, _light_name2id, _camera_name2id, _actuator_name2id, _sensor_name2id, _tendon_name2id
1004+ cdef readonly tuple body_names, joint_names, geom_names, site_names, light_names, camera_names, actuator_names, sensor_names, tendon_names, mesh_names
1005+ cdef readonly dict _body_id2name, _joint_id2name, _geom_id2name, _site_id2name, _light_id2name, _camera_id2name, _actuator_id2name, _sensor_id2name, _tendon_id2name, _mesh_id2name
1006+ cdef readonly dict _body_name2id, _joint_name2id, _geom_name2id, _site_name2id, _light_name2id, _camera_name2id, _actuator_name2id, _sensor_name2id, _tendon_name2id, _mesh_name2id
10071007
10081008 def body_id2name (self , id ):
10091009 if id not in self ._body_id2name:
@@ -1094,6 +1094,16 @@ cdef class PyMjModel(object):
10941094 if name not in self ._tendon_name2id:
10951095 raise ValueError (" No \" tendon\" with name %s exists. Available \" tendon\" names = %s ." % (name, self .tendon_names))
10961096 return self ._tendon_name2id[name]
1097+
1098+ def mesh_id2name (self , id ):
1099+ if id not in self ._mesh_id2name:
1100+ raise ValueError (" No mesh with id %d exists." % id )
1101+ return self ._mesh_id2name[id ]
1102+
1103+ def mesh_name2id (self , name ):
1104+ if name not in self ._mesh_name2id:
1105+ raise ValueError (" No \" mesh\" with name %s exists. Available \" mesh\" names = %s ." % (name, self .mesh_names))
1106+ return self ._mesh_name2id[name]
10971107 cdef public tuple userdata_names
10981108 cdef public dict _userdata_id2name
10991109 cdef public dict _userdata_name2id
@@ -1222,6 +1232,7 @@ cdef class PyMjModel(object):
12221232 self .actuator_names, self ._actuator_name2id, self ._actuator_id2name = self ._extract_mj_names(p, p.name_actuatoradr, p.nu, mjtObj.mjOBJ_ACTUATOR)
12231233 self .sensor_names, self ._sensor_name2id, self ._sensor_id2name = self ._extract_mj_names(p, p.name_sensoradr, p.nsensor, mjtObj.mjOBJ_SENSOR)
12241234 self .tendon_names, self ._tendon_name2id, self ._tendon_id2name = self ._extract_mj_names(p, p.name_tendonadr, p.ntendon, mjtObj.mjOBJ_TENDON)
1235+ self .mesh_names, self ._mesh_name2id, self ._mesh_id2name = self ._extract_mj_names(p, p.name_meshadr, p.nmesh, mjtObj.mjOBJ_MESH)
12251236 self .userdata_names = tuple ()
12261237 self ._userdata_name2id = dict ()
12271238 self ._userdata_id2name = dict ()
0 commit comments