如何使用 pydrake 更改从 urdf 文件加载的模型的浮动基本类型?
How to change floating base type of model loaded from urdf file using pydrake?
我正在尝试从 urdf 文件加载模型。
我可以通过 RigidBodyTree
class:
rbtree = RigidBodyTree(file_name, floating_base_type)
不幸的是,正如它在 pydrake.attic 参考页上所说,它很快就会被弃用。
我尝试使用 pydrake.multibody.parsing.Parser
和 pydrake.multibody.plant
添加模型,但模型似乎只与浮动四元数关节相连。
是否有合法的方法来设置浮动基类型而不是 attic
API?
对于固定基地,您要寻找的方法是MultibodyPlant.WeldFrames()
。如果 plant
是您已将模型添加到的 MultibodyPlant
对象,并且模型中名为 "my_base_frame" 的框架应该固定到世界,则适当的调用将是:
plant.WeldFrames(plant.world_frame(), plant.GetFrameByName("my_base_frame"))
请注意,此调用应在调用 plant.Finalize()
之前进行。
我相信MultibodyPlant
目前不支持 roll-pitch-yaw 浮动基地。
我正在尝试从 urdf 文件加载模型。
我可以通过 RigidBodyTree
class:
rbtree = RigidBodyTree(file_name, floating_base_type)
不幸的是,正如它在 pydrake.attic 参考页上所说,它很快就会被弃用。
我尝试使用 pydrake.multibody.parsing.Parser
和 pydrake.multibody.plant
添加模型,但模型似乎只与浮动四元数关节相连。
是否有合法的方法来设置浮动基类型而不是 attic
API?
对于固定基地,您要寻找的方法是MultibodyPlant.WeldFrames()
。如果 plant
是您已将模型添加到的 MultibodyPlant
对象,并且模型中名为 "my_base_frame" 的框架应该固定到世界,则适当的调用将是:
plant.WeldFrames(plant.world_frame(), plant.GetFrameByName("my_base_frame"))
请注意,此调用应在调用 plant.Finalize()
之前进行。
我相信MultibodyPlant
目前不支持 roll-pitch-yaw 浮动基地。