import math #导入数学模块,因为会使用π

def x_comp(k,r,t): #定义x坐标的计算函数

return r * (k -1) * math.cos(t) + r * math.cos( (k - 1) *
t)

def y_comp(k,r,t): #定义y坐标的计算函数

return r * (k -1) * math.sin(t) - r * math.sin( (k - 1) *
t)

def z_comp(k,r,t): #定义z坐标的计算函数

return 0

k = 4  #一共由四条线组成

r = IN(1)  #半径

i = math.pi*2.0 / k / 10.0 #在各条线上取十个点,计算每个点的角度位置

def GenerateHypocycloidSegment(t,n, i):
#定义内摆线的生成函数

ptList = List[Point]() #定义一个点的列表

while t <= n: #循环每条线

ptList.Add(Point.Create(x_comp(k,r,t), y_comp(k,r,t),
z_comp(k,r,t))) #将点放入点的列表当中

t =
t + i #

#生成非均匀有理B样条曲线穿过所有的点

#第一个参数False表示曲线不具有周期性

#第二个参数表示曲线穿过的点

#第三个参数表示曲线的容差

ncurve = NurbsCurve.CreateThroughPoints(False, ptList,
0.0001)

#CurveSegment表示曲线段,用上面的曲线创建曲线段

curveSegment = CurveSegment.Create(ncurve)

#设计曲线两个参数

#第一个参数需要得到曲线的父类

#第二个参数表示需要设计的曲线

designCurve = DesignCurve.Create(GetPart(),
curveSegment)

index = 0 #曲线的索引

segment = math.pi*2.0 / k #每条曲线的角度

while index < k: #循环索引生成各条曲线

GenerateHypocycloidSegment(index*segment, (index+1)*segment, i)
#生成曲线

index = index + 1

spaceclaim脚本(内摆线)的更多相关文章

  1. SpaceClaim脚本功能(Beta功能)

    本操作仅适用ANSYS SpaceClaim 2016 打开SpaceClaim脚本编辑器的方法有两种 方法一(看截图操作):         方法二(请见后面的实例操作). 创建球体源代码: #定义 ...

  2. 常用spaceclaim脚本(三)

    拉伸曲线 ptList=List[Point]() #定义一个点的列表 ptList.Add(Point.Create(MM(11),MM(-14),MM(0))) #创建点,并放入列表当中 ptLi ...

  3. 常用spaceclaim脚本(二)

    #创建一个草图 #第一个参数传入一个Frame对象 #通过一个点和两个向量创建Frame #Frame的类成员函数Create被重载 #重载函数1:Frame.Create(Point, Direct ...

  4. 常用spaceclaim脚本

    #创建一个长方体,通过两点来确定一个立方体 #MM表示的是以毫米作为单位 #返回的是一个BlockBody的对象 #本函数还有第三个参数可选,分别代表增加材料,切除材料等等 #默认值为增加材料 注:第 ...

  5. spaceclaim脚本(线生成面体)

    #新建一个列表,用来保存修剪曲线(PS:修建曲线的意思是开始点和结束点不在一起,圆就不属于修建曲线) #注意和Line,Circle类型等的区别 curves = List[ITrimmedCurve ...

  6. SpaceClaim通过脚本创建新窗口

    下载安装SharpDevelop,下载地址:http://www.icsharpcode.net/OpenSource/SD/Download/Default.aspx#SharpDevelop3x ...

  7. Apache执行Python脚本

    由于经常需要到服务器上执行些命令,有些命令懒得敲,就准备写点脚本直接浏览器调用就好了,比如这样: 因为线上有现成的Apache,就直接放它里面了,当然访问安全要设置,我似乎别的随笔里写了安全问题,这里 ...

  8. SQL Server镜像自动生成脚本

    SQL Server镜像自动生成脚本 镜像的搭建非常繁琐,花了一点时间写了这个脚本,方便大家搭建镜像 执行完这个镜像脚本之后,最好在每台机器都绑定一下hosts文件,不然的话,镜像可能会不work 1 ...

  9. 分享一个SQLSERVER脚本(计算数据库中各个表的数据量和每行记录所占用空间)

    分享一个SQLSERVER脚本(计算数据库中各个表的数据量和每行记录所占用空间) 很多时候我们都需要计算数据库中各个表的数据量和每行记录所占用空间 这里共享一个脚本 CREATE TABLE #tab ...

随机推荐

  1. CSS 实现盒子水平居中、垂直居中和水平垂直居中的方法

     CSS 实现盒子模型水平居中 水平居中效果图如下: HTML: CSS 全局样式: 方法一:使用margin: 0 auto;(只适用于子盒子有宽的时候) 方法二:text-align + disp ...

  2. 通过 Web Deploy 发布的配置

    罩着别人的配置弄了一下午,死活认证通不过,后来好不容易试出来,备忘. 服务端:安装IIS,启动管理程序,安装Web Deploy, 建立网站,建立IIS用户,进网站的权限管理里面给IIS用户授权. V ...

  3. SVN上文件出现左侧黄色箭头右侧绿色箭头的双向箭头

    转自:https://blog.csdn.net/jiuweihu521/article/details/90902152 与资源库对比又没有要提交的东西,网上说删除这个目录,然后更新整个配置库..我 ...

  4. HTTP协议复习一--认识HTTP

    HTTP 是什么 HTTP 是一个在计算机世界里专门在两点之间传输文字.图片.音频.视频等超文本数据的约定和规范. HTTP 是一个用在计算机世界里的协议,它确立了一种计算机之间交流通信的规范,以及相 ...

  5. 使用protobuf (proto3, C++和go语言)

    在这里,我先讲述C++使用protobuf,之后,会补充使用go语言使用protobuf. 使用protobuf需要有如下步骤: 在.proto文件中定义消息(message)格式. 使用protob ...

  6. 搭建exsi主机6.5版本

    1.服务器读取到镜像,进入此图: 2.回车或者F11安装进行下一步 至此exsi主机安装和配置IP完成(80和443端口的开关会影响远程登录) 在浏览器输入IP登录exsi主机 正常安装centos就 ...

  7. RQM — 需求驱动的测试管理工具

    嵌入式系统复杂程度越来越高,随之而来的测试要求和任务也越来越繁重,而测试更多的是对产品满足需求情况的测试,因此,在高强度.高频度的测试过程中,难免有需求遗漏.回归测试不充分.缺陷管理不合理.测试人员疏 ...

  8. python高级特性-迭代器

    凡是可作用于for循环的对象都是Iterable类型: 凡是可作用于next()函数的对象都是Iterator类型,它们表示一个惰性计算的序列: 集合数据类型如list.dict.str等是Itera ...

  9. 51nod 2488 矩形并的面积

    在二维平面上,给定两个矩形,满足矩形的每条边分别和坐标轴平行,求这个两个矩形的并的面积.即它们重叠在一起的总的面积. 收起   输入 8个数,分别表示第一个矩形左下角坐标为(A,B),右上角坐标为(C ...

  10. awk命令笔记

    awk是啥? awk(奥克)是linux中一个强大的分析工具,linux面试必考 [root@rainbol ~]# awk Usage: awk [POSIX or GNU style option ...