cad二次开发中介绍vba
源代码在线查看: cad世界__autocad vba初级教程 (第二课 编程基础).htm
CAD世界__Autocad VBA初级教程 (第二课 编程基础)
BODY {
BACKGROUND-IMAGE: url(image/pagebg.gif)
}
.style1 {
FONT-WEIGHT: bold; COLOR: #ff0066
}
.style2 {
FONT-WEIGHT: bold; FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: Times New Roman, Times, serif, "黑体"
}
.style3 {
COLOR: #336699
}
.style4 {
COLOR: #333333
}
.style6 {
COLOR: #f76c8c
}
.style15 {
COLOR: #ff0033
}
.style16 {
FONT-WEIGHT: bold; COLOR: #ff0000
}
function MM_reloadPage(init) { //reloads the window if Nav4 resized
if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
//-->
src="CAD世界__Autocad VBA初级教程 (第二课 编程基础).files/headadA.js">
src="CAD世界__Autocad VBA初级教程 (第二课 编程基础).files/headmenuA.js">
align=center>
src="CAD世界__Autocad VBA初级教程 (第二课 编程基础).files/mu_search_red.gif"
width=159>
value=all name=datesearch> name=AreaSearch>
src="CAD世界__Autocad VBA初级教程 (第二课 编程基础).files/leftmenu2_01_red.gif"
width=159>
src="CAD世界__Autocad VBA初级教程 (第二课 编程基础).files/class2.js">
src="CAD世界__Autocad VBA初级教程 (第二课 编程基础).files/leftmenu2_02_red.gif"
width=160>
src="CAD世界__Autocad VBA初级教程 (第二课 编程基础).files/lttop6.js">
src="CAD世界__Autocad VBA初级教程 (第二课 编程基础).files/mu_mail_red.gif"
width=160>
src="CAD世界__Autocad VBA初级教程 (第二课 编程基础).files/tougaoA.js">
background="CAD世界__Autocad VBA初级教程 (第二课 编程基础).files/lbg1.gif">
-->
当前位置:ICAD >> 数字化设计 >> CAD >>
正文
style="FONT-SIZE: 16px">Autocad VBA初级教程 (第二课 编程基础) height=12 src="CAD世界__Autocad VBA初级教程 (第二课 编程基础).files/zi.jpg"
width=15>
作者:普天同庆 | 阅读次数:1263 转自: color=#cc0000>CAD世界网-论坛
时间:2005年5月30日15:32
size=3>
第二课 编程基础
本课主要任务是对上一课的例程进行详细分析
下面是源码:Sub c100()Dim cc(0 To 2) As Double '声明坐标变量cc(0)
= 1000 '定义圆心座标cc(1) = 1000cc(2) = 0For i = 1 To 1000
Step 10 '开始循环 Call ThisDrawing.ModelSpace.AddCircle(cc, i
* 10) '画圆Next iEnd Sub
先看第一行和最后一行:Sub C100()……End
SubC100是宏的名称,也叫过程名称,当用户执行C100时程序将运行sub 和end sub之间的所有指令。
第二行:Dim cc(0 To 2) As Double
'声明坐标变量后半段“'声明坐标变量”自动变为绿色字体,它是代码语句的注释,它不会影响程序运行,它的作用是告诉阅读者程序员的想法。对于简单的程序,一般不需要写注释,如果要编写非常复杂的程序,最好要多加注释,越详细越好,对于程序员来说,这是一个好习惯。电脑真正编译执行的是这条语句:Dim
cc(0 To 2) As
Double它的作用就是声明变量。Dim是一条语句,可以理解为计算机指令。它的语法:Dim变量名 As
数据类型本例中变量名为CC,而括号中的0 to
2声明这个CC是一个数组,这个数组有三个元素:CC(0)、CC(1)、CC(2),如果改为CC(1 to
3),则三个元素是CC(1)、CC(2)、CC(3),有了这个数组,就可以把坐标数值放到这个变量之中。Double是数据类型中的一种。ACAD中一般需要定义坐标时就用这个数据类型。在ACAD中数据类型的有很多,下面两个是比较常用的数据类型,初学者要有所理解。Long(长整型),其范围从
-2,147,483,648 到 2,147,483,647。Variant
它是那些没被显式声明为其他类型变量的数据类型,可以理解为一种通用的数据类型,这是最常用的。
下面三条语句cc(0) = 1000 '定义圆心座标cc(1) = 1000cc(2) =
0它们的作用是给CC变量的每一个元素赋,值其顺序是X、Y、Z坐标。
For i = 1 To 1000 Step 10 '开始循环……Next i
'结束循环这两条语句的作用是循环运行指令,每循环一次,i值要增加10,当i加到
1000时,结束循环。i也是一个变量,虽然没有声明i变量,程序还是认可的,VB不是C语言,每用一个变量都要声明,不声明就会报错。简单是简单了,这样做也有坏处,如果不小心打错了一个字母,程序不会报错,如果程序很长,那就会出现一些意想不到的错误。step后面的数值就是每次循环时增加的数值,step后也可以用负值。例如:For
i =1000 To 1 Step -10 很多情况下,后面可以不加step 10如:For i=1 to
100,它的作用是每循环一次i值就增加1Next i语句必须出现在需要结束循环的位置,不然程序没法运行。
下面看画圆命令:Call ThisDrawing.ModelSpace.AddCircle(cc, i *
10)Call语句的作用是调用其他过程或者方法。ThisDrawing.ModelSpace是指当前CAD文档的模型空间AddCircle是画圆方法Addcicle方法需要两个参数:圆心和半径CC就是圆心坐标,i*10就是圆的半径,本例中,这些圆的半径分别是10、110、210、310……
本课到此结束,下面请完成一道思考题:1.以(4,2)为圆心,画5个同心圆,其半径为1-5(编辑:zhaozh)
if (window.print) {
document.write('【打印本文】 ');
}
// End -->
【 href="http://old.icad.com.cn/review/index.asp?article=2005530153201"
target=_blank>发表评论】【 href="javascript:window.close()"> color=#cc0000>关闭窗口】
上一篇: href="http://old.icad.com.cn/html/2005-5-30/2005530153032.asp"
target=_blank>[文章]Autocad VBA初级教程 (第一课:入门)下一篇: href="http://old.icad.com.cn/html/2006-6-1/200661105959.asp"
target=_blank>[文章]CATIA车座设计中文教程(二)
src="CAD世界__Autocad VBA初级教程 (第二课 编程基础).files/endA.js">