是否可以支持将X_PF、X_BM作为参数的AddJoint的Python绑定?
我正在尝试翻译成Python。要添加是否可以支持将X_PF、X_BM作为参数的AddJoint的Python绑定?,python,drake,Python,Drake,我正在尝试翻译成Python。要添加弯头关节,我需要将X_PF和X_BM传递到AddJoint(如中所示) 这是在C++接口中支持的,如但是当前的Python绑定只支持,有解决方法吗?您应该能够通过首先构造关节来添加它们。参见,例如: 我不擅长Python绑定,但至少让我给你一个选择。 C++ API是为定义框架F(粘贴到P)和M(附加到B)的建议。您可以使用AddFrame从Python API实现这一点。大概是这样的: API中的父体P arm=plant.GetBodyByName(“ar
弯头
关节,我需要将X_PF
和X_BM
传递到AddJoint
(如中所示)
<>这是在C++接口中支持的,如但是当前的Python绑定只支持,有解决方法吗?您应该能够通过首先构造关节来添加它们。参见,例如:
我不擅长Python绑定,但至少让我给你一个选择。 C++ API是为定义框架F(粘贴到P)和M(附加到B)的建议。您可以使用AddFrame从Python API实现这一点。大概是这样的: API中的父体P arm=plant.GetBodyByName(“arm”) #API中的子体B 前臂=plant.GetBodyByName(“前臂”) #在API中定义框架F。 arm\u弯头\u框架=plant.AddFrame(FixedOffsetFrame(name=“F”,P=arm.body\u框架(),X\u PF,model\u instance=None)) #假设M=B。在这种情况下,你不需要一个新的框架。 肘部=植物.AddJoint(RevoluteJoint(name=“肘部”,父项上的框架=手臂上的肘部框架,子项上的框架=前臂。身体上的框架(),轴F=[0,0,1],阻尼=0.))
FTR Russ和Alejandro下面的回答是100%正确的。正如您可能注意到的,C++代码的完整拼写是
plant.AddJoint(revolutionjoint(…)
。如果你对C++中的这个特性感到好奇,请看。如果您认为有任何不清楚的地方,请随时发表评论。谢谢