繁体   English   中英

如何使用Matlab在空间中的两个点之间连接固定长度的曲线?

[英]How do I connect a curve of fixed length between two points in space using Matlab?

我们在3d空间中有两个点(x1,y1,z1)和(x2,y2,z2)。 我们有一条固定长度的曲线,要在这些点之间连接(而不是直线)。 如何在Matlab中进行代码处理?

在不知道要尝试使用蛇(即活动轮廓)的程度的情况下,我能做的最好的就是建议以下链接:

我遇到的活动轮廓的大多数应用似乎更多用于二维图像分割,但是希望这些链接能给您一些跳跃点。

如果试图最小化机器人关节的弯曲角度,则最佳曲线将是圆弧。

令L为弧的长度,d为端点之间的距离,theta为弧的角度的一半 ,r为弧的半径。 然后:

d / L = sin(theta)/ theta ==>使用Matlab的一个求解器对此数值进行数值求解

一旦有了theta,弧的半径就是:r = L /(2 * theta)

具有r和theta的两个端点之间仍然存在无限数量的弧。 您必须使用其他一些条件来选择要使用的点的横滚角。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM