找回密码
 注册会员
查看: 3857|回复: 3

[求助] 如何用CAD画正弦曲线

[复制链接]
发表于 2010-8-15 20:28:29 |Error| 显示全部楼层 |阅读模式

我们不再是孤独的探索者;让我们的手紧紧相连,一起成长。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
各位老师如何用CAD画正弦曲线,谢谢。
发表于 2010-8-16 09:50:00 |Error| 显示全部楼层
1.描点法,取正弦线上一些容易计算的特殊点,可以用“样条曲线”连结所取各坐标点——描点法。你可试一试,看能否达到要求精度。(用excle算出坐标,精度根据需要确定。然后在CAD中用“样条曲线”画出。)
2.用编程
Sub sin2()
'由正弦曲线的起点、幅度、周期、周波数、方向来画正弦曲线
Dim sinObj As AcadLWPolyline
Dim points() As Double
Dim a, n, k As Integer
Dim H, f As Double
Dim pa, pb As Variant
PI = 3.1415926535

pa = ThisDrawing.Utility.GetPoint(, "请输入正弦曲线起点:")
H = ThisDrawing.Utility.GetDistance(pa, "请正弦曲线幅度:")
f = ThisDrawing.Utility.GetDistance(pa, "请正弦曲线周期:")
n = ThisDrawing.Utility.GetReal("请输入正弦曲线周波数:")
k = ThisDrawing.Utility.GetReal("请输入正弦曲线每周波线段数(建议不小于36):")
pb = ThisDrawing.Utility.GetPoint(pa, "请输入点以确定正弦曲线的方向:")

ReDim points(0 To 2 * k * n + 1) As Double
b = ThisDrawing.Utility.AngleFromXAxis(pa, pb)

For a = 0 To 2 * k * n Step 2
points(a) = pa(0) + f * (a / 2) / k
points(a + 1) = pa(1) + H * Sin(2 * PI * a / k / 2)
Next

Set sinObj = ThisDrawing.ModelSpace.AddLightWeightPolyline(points)
sinObj.Rotate pa, b
ZoomExtents
End Sub

这个我也看得不太懂,是从别的地方查的,不知楼主能否用得上,其他高手还得帮忙解释一下啊

评分

参与人数 1蓝币 +10 收起 理由
红色32 + 10 谢谢分享

查看全部评分

回复 顶 踩

使用道具 举报

头像被屏蔽
发表于 2010-8-16 13:35:39 |Error| 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 顶 踩

使用道具 举报

发表于 2010-8-18 22:08:32 |Error| 显示全部楼层
这个貌似难度有点大,,
回复 顶 踩

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

小黑屋|手机版|Cncad.Net ( 苏ICP备2026083443号 )

GMT+8, 2026-11-1 19:27 , Processed in 0.279051 second(s), 25 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表