空间路径规划初探(画空间内任意平面上的圆)

如下程序,通过修改前面的向量描述、圆心坐标和半径值,可以做出空间内任何圆的插值点。

#Authored by Tom Gong gongal@163.com
    import numpy as np
    import math
    # 所在平面的任意两个正交向量描述
    nx=1
    ny=0
    nz=0
    
    ox=0
    oy=0
    oz=1
    #圆心坐标
    px=0
    py=0
    pz=0
    #半径
    R=9
    
    for i in range (0,100,1):
     theta=math.pi/50*i
     x=nx*R*math.cos(theta)+ox*R*math.sin(theta)+px
     y=ny*R*math.cos(theta)+oy*R*math.sin(theta)+py
     z=nz*R*math.cos(theta)+oz*R*math.sin(theta)+pz
    
     print (x,y,z,'\n')

输出如下(部分):

9.0 0.0 0.0 

8.982240555854444 0.0 0.5651146757638204 

8.929032311830301 0.0 1.1279991020787383 

8.840585256558198 0.0 1.6864318312715216 

8.71724845015768 0.0 2.238208984483693 

8.559508646656381 0.0 2.7811529493745266 

8.367988372994263 0.0 3.3131209741621017 

8.143443472194175 0.0 3.8320136240856546 

7.886760120394772 0.0 4.335783066915438 

7.598951329518136 0.0 4.82244115481097 

7.281152949374527 0.0 5.2900672706322585 

6.934619184982102 0.0 5.736815907738208 

6.560717646792704 0.0 6.160923953358198 

6.160923953358197 0.0 6.560717646792704 

5.736815907738206 0.0 6.934619184982103 

5.290067270632258 0.0 7.281152949374527 

4.822441154810969 0.0 7.598951329518136 

4.335783066915436 0.0 7.886760120394773 

3.832013624085654 0.0 8.143443472194177 

3.313120974162101 0.0 8.367988372994263 

2.781152949374527 0.0 8.559508646656381 

2.2382089844836925 0.0 8.71724845015768 

1.6864318312715207 0.0 8.840585256558198 

1.1279991020787383 0.0 8.929032311830301 

0.5651146757638197 0.0 8.982240555854444 

-1.447310384708973e-15 0.0 9.0 

如果把圆心坐标改为 #圆心坐标
px=5
py=6
pz=700

用输出的点画圆,则如下图所示:

在这里插入图片描述
该路径用v-rep仿真视频如下:
https://v.youku.com/v_show/id_XNDQxNzcwMDYzNg==.html?spm=a2hzp.8244740.0.0

通过增加一个轴方向上的渐进量,可以做成螺旋线:
在这里插入图片描述
当然也有借助3D设计软件来进行路径规划的,大体步骤为,先用软件画出相应的路径曲线,再提取出其上若干点的坐标值,百度到如下内容,未经测试:

UG如何导出三维曲线的坐标数据 10
如题,希望有大虾伸出援助之手
 我来答 分享 举报浏览 5295 次
5个回答#情感# 讨厌的人情商很高是一种什么样的体验?
lqxzzk4
推荐于2017-12-16
第一步:选中曲线,点击“曲线”>“点集”>“点集”,选择曲线点产生方法、点数等,然后“确定”。(这一步是设定选取多少点)
第二步:除了要导出的点,隐藏其他对象。
第三步:“文件”>“导出”>“IGES文件”导出一个iges格式的文件。需要的点的数据就在里面。
第四步:用记事本打开iges文件,第一列数据是116的行的第2-4行就是需要的点的坐标。手动或Matlab等处理一下即可。
上述是我参考别人的想法总结出来的,不是十分方便,但还可以。

其它常用的3D设计软件()比如solidworks是否也有类似功能,请大家留言赐教。

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值