我加载了一个包含多个机器人/对象的SDF文件,我想要得到它们的名称"在SDF中定义的这些机器人/物体。PyBullet在使用loadSDF
时将返回这些主体的唯一id列表,我想将这些id转换为名称。这可能吗?
getBodyInfo()
方法,参见这里的示例,返回一个包含主体名称作为第一个元素的元组,因此您可以使用body_info[0]
访问它,尽管您必须记住该信息可能被编码,您可能需要.decode()
用于人类可读的表示。
如果SDF文件包含每个主体的唯一名称,则此操作仅适用于唯一名称。如果多个主体具有相同的名称,则只返回具有该名称的第一个主体。在这种情况下,你必须使用setBodyUniqueId()
方法,如有必要,为每个主体设置唯一的ID。