正弦函数曲线
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Sub sinl()
Dim p(0 To 719) As Double '定义点坐标
For i = 0 To 718 Step 2 '开始画多段线
p(i) = i * 2 * 3.1415926535897 / 360 '横坐标
p(i + 1) = 2 * Sin(p(i)) '纵坐标
Next i
ThisDrawing.ModelSpace.AddLightWeightPolyline (p) '画多段线ZoomExtents '显示整个图形
End Sub
因为autoCAD的数据对象模型比较特殊,用vb来编写代码不如直接用它的vba 工程好用,
因此用autoCAD里自带的VBA工程即可,我用过它来编写一些小程序,还可以。有什么需要可以email:chixun99@
通常CAD的VBA对象模型是顺藤摸瓜式的逐渐显露对象的属性和方法。
最主要的对象或容器就是thisdrawing和application两个对象,通过它们你可以逐次检索到更深入的属性和方法;
然后他的对象又分为图元和图元定义(其实就是图块、线型、填充之类的预定义图案,这些图案分别作为范例,可以通过它绘制出很多个不同的图元,每个图元又分别可以有很多的属性)两大类。
通过顺藤摸瓜的方法你就可以得到你需要的任何一个对象、数据和方法。
当然要想尽快熟悉它就要多看帮助噢。
Dim Entry
For Each Entry In ThisDrawing.ModelSpace
Msgbox TypeName(Entry)
Next Entry
就会依次显示CAD里所绘制的所有图元的类型
Alt+F11
调出vb编辑器双击thisdrawing,贴上这些代码,然后运行Sub lines()
Dim x As Double
Dim y As Double
Dim start(0 To 2) As Double
Dim end1(0 To 2) As Double
x = 0
y = 0
Dim step As Double
step = 0.001
Do While y < 100
start(0) = x
start(1) = y
x = x + step
y = x * x
end1(0) = x
end1(1) = y
ThisDrawing.ModelSpace.AddLine start, end1
start(0) = -start(0)
end1(0) = -x
end1(1) = y
ThisDrawing.ModelSpace.AddLine start, end1
DoEvents
Loop
End Sub