iCAx开思网

标题: 问一个比较低B的问题:怎样利用方程插入一条渐开线曲线? [打印本页]

作者: dakuai    时间: 2005-10-28 10:40
标题: 问一个比较低B的问题:怎样利用方程插入一条渐开线曲线?
笛卡尔坐标系渐开张方程
afa=60*t
        x=10*cos(afa)+pi*10*afa/180 * sin(afa)
        y=10*sin(afa)-pi*10*afa/180 * cos(afa)
        z=0
用破衣来做输入这些东东就得了。用Solidwrok不知如何弄,有没有高手答~~~~谢了。
作者: xajin    时间: 2005-10-29 17:42
这个问题好。
帮顶
作者: clear2008    时间: 2005-10-29 20:55
我也帮你顶,不让它沉了。
作者: npumacy    时间: 2005-10-29 21:41
这个需要使用专门的曲线生成插件才可以的!
作者: dakuai    时间: 2005-11-2 15:51
那去哪找插件?我是是正版的Solidwork,好多东东没有。
作者: rainingdidadi    时间: 2005-11-4 22:12
我是用宏来做的
Dim swApp As Object
Dim Part As Object
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long
Dim FeatureData As Object
Dim Feature As Object
Dim Component As Object
Sub main()

Dim x, y, pi, afa, z
pi = 3.1415926


Set swApp = Application.SldWorks

Set Part = swApp.ActiveDoc
boolstatus = Part.Extension.SelectByID2("前视基准面", "PLANE", 0, 0, 0, False, 0, Nothing, 0)
Part.InsertSketch2 True
Part.ClearSelection2 True
Part.InsertSketch2 True
Part.InsertCurveFileBegin
For t = 0 To 2 * pi Step 0.1

  afa = 60 / 1000 * t
        x = (10 * Cos(afa) + pi * 10 * afa / 180 * Sin(afa)) / 1000
        y = (10 * Sin(afa) - pi * 10 * afa / 180 * Cos(afa)) / 1000
        z = 0

  Part.InsertCurveFilePoint x, y, z
Next t

Part.InsertCurveFileEnd
End Sub
运行就可以了
作者: rainingdidadi    时间: 2005-11-4 22:16
用曲线逼近的
所以是近似的做法
我不知道solidworks是用什么算法做曲线插值
所以无法告诉你差别有多大
作者: dakuai    时间: 2005-11-5 10:13
原帖由 rainingdidadi 于 2005-11-4 22:16 发表
用曲线逼近的
所以是近似的做法
我不知道solidworks是用什么算法做曲线插值
所以无法告诉你差别有多大


高手阿。呵呵。
前几天下了一个插件来做,也是用线段来逼近的,但做出来的齿轮会N多面阿,这样我觉得不能接受,不明不白多出很多面出来,而且这样也会造成整个文件很大的。
作者: panfl    时间: 2005-11-5 13:06
好问题,顶上去




欢迎光临 iCAx开思网 (https://www.icax.org/) Powered by Discuz! X3.3