当前位置:首页 > 代码 > 正文

CAD程式代码(CAD命令代码)

admin 发布:2022-12-19 15:45 409


本篇文章给大家谈谈CAD程式代码,以及CAD命令代码对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

cad应用程序源代码是什么意思

程序自动化设置。cad应用程序源代码指的是程序自动化设置。源代码(也称源程序)是指未编译的按照一定的程序设计语言规范书写的文本文件,是一系列人类可读的计算机语言指令。

打开CAD图形不断跳出代码,很长时间才能打开图形

打开CAD图形不断跳出代码,很长时间才能打开图形是设置错误造成的,解决方法为:

1、打开cad软件,点击左上角图标。

2、点击图形使用工具。

3、点击打开图形修复管理器。

4、打开图形管理修复器后,找到需要找回的文件。点击前面的+号。

5、展开后找到时间最近的文档,双击恢复打开文件。

6、关闭图形管理器,将恢复文件另存即可完成找回。

谁能帮我编一段用VB对CAD进行二次开发的程序代码啊

第一个程序:画一百个同心圆

第一步:复制下面的红色代码

第二步:在模型空间按快捷键Alt+F8,出现宏窗口

第三步:在宏名称中填写C100,点“创建”、“确定”

第四步:在Sub c100()和End Sub之间粘贴代码

第五步:回到模型空间,再次按Alt+F8,点击“运行”

Sub c100()

Dim cc(0 To 2) As Double '声明坐标变量

cc(0) = 1000 '定义圆心座标

cc(1) = 1000

cc(2) = 0

For i = 1 To 1000 Step 10 '开始循环

Call ThisDrawing.ModelSpace.AddCircle(cc, i * 10) '画圆

Next i

End Sub

也许您还看不懂上面的代码,这没有关系,只要能把同心画出来就可以了,祝您成功。

第二课 编程基础

本课主要任务是对上一课的例程进行详细分析

下面是源码:

Sub c100()

Dim cc(0 To 2) As Double '声明坐标变量

cc(0) = 1000 '定义圆心座标

cc(1) = 1000

cc(2) = 0

For i = 1 To 1000 Step 10 '开始循环

Call ThisDrawing.ModelSpace.AddCircle(cc, i * 10) '画圆

Next i

End Sub

先看第一行和最后一行:

Sub C100()

……

End Sub

C100是宏的名称,也叫过程名称,当用户执行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) = 1000

cc(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值就增加1

Next 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

第三课 编程基础二

绘制三维多段线时X、Y值在屏幕上用鼠标选取,Z值用键盘输入

本课将讲解这个问题。

为了简化程序,这里用多条直线来代替多段线。以下是源码:

Sub myl()

Dim p1 As Variant '申明端点坐标

Dim p2 As Variant

p1 = ThisDrawing.Utility.GetPoint(, "输入点:") '获取点坐标

z = ThisDrawing.Utility.GetReal("Z坐标:") '用户输入Z坐标值

p1(2) = z '将Z坐标值赋予点坐标中

On Error GoTo Err_Control '出错陷井

Do '开始循环

p2 = ThisDrawing.Utility.GetPoint(p1, vbCr "输入下一点:") '获取下一个点的坐标

z = ThisDrawing.Utility.GetReal("Z坐标:") '用户输入Z坐标值

p2(2) = z '将Z坐标值赋予点坐标中

Call ThisDrawing.ModelSpace.AddLine(p1, p2) '画直线

p1 = p2 '将第二点的端点保存为下一条直线的第一个端点坐标

Loop

Err_Control:

End Sub

先谈一下本程序的设计思路:

1、获取第一点坐标

2、输入第一点Z坐标

3、获取第二点坐标

4、输入第二点Z坐标

5、以第一、二点为端点,画直线

6、下一条线的第一点=这条线的第二点

7、回到第3步进行循环

如果用户没有输入坐标或Z值,则程序结束。

首先看以下两条语句:

p1 = ThisDrawing.Utility.GetPoint(, "输入点:") ‘获取点坐标

……

p2 = ThisDrawing.Utility.GetPoint(p1, vbCr "输入下一点:") '获取下一个点的坐标

这两条语句的作用是由用户输入点用鼠标选取点坐标,并把坐标值赋给p1、p2两个变量。ThisDrawing.Utility.GetPoint()在ACAD中这是最常用的方法之一,它需要两个参数,在逗号前面的参数应该是一个点坐标,它的作用是在屏幕上画一条线,前一个端点位于点坐标位置,后一个端点跟随鼠标移动,逗号之前可以什么都不填,这时没有线条会跟随鼠标移动,但逗号必须保留。

逗号后面使用一串字符,程序在命令行显示这串字符,这不难理解。

VbCr通常代表一个回车符,而在这个语句中,它的作用是在命令行不显示“命令:”

的作用是连接字符。举例:

“爱我中华 ””抵制日货 ””从我做起”

z = ThisDrawing.Utility.GetReal("Z坐标:") '用户输入Z坐标值

由用户输入一个实数

On Error GoTo Err_Control '出错陷井

……

Err_Control:

On Error是出错陷井语句,在程序出错时将执行On Error 后面的语句

GoTo Err_contorl 是程序跳转语句,它的作用是在程序中寻找Err_control:,并执行这一行后面的语句,本例中Err_Control:后就是结束宏,所以只要出现错误,程序中止。

Do '开始循环

……

Loop ‘结束循环

这个循环就历害了,它会无休止地进行循环,好在本例中已经有了一个出错陷井,当用户输入回车时,由于程序没有得到点或坐标,程序出错,跳出循环,中止程序。如果要人为控制跳出循环,可以在代码中用Exit Do语句跳出循环。在For 变量 和Next 变量之间如果要跳出循环,那么只要在循环体内加一个Exit for 就可以跳出循环,关于这方面的例程以后会讲到。

Call ThisDrawing.ModelSpace.AddLine(p1, p2) '画直线

画直线方法也是很常用的,它的两个参数是点坐标变量

本课到此结束,请做思考题:

连续画圆,每次要求用户输入圆心、半径,当用户不再输入圆心或半径时程序才退出

第四课 程序的调试和保存

人非圣贤,孰能无过,初学者在编写复杂程序时往往会出现一些意想不到的错误,所以程序的调试显得尤为重要,随着学习的深入,以后我们需要经常进行程序调试。事实上,对于那些资深程序员来说,调试程序也是一项不可或缺的重要工作。

首先,在程序输入阶段,应该充分利用VBA编辑器的智能功能。当你在写代码时,输入一些字母后,编辑器可以自动列出合适的语句、对象、函数供你选择,可以用上下键选择,然后按TAB键(它位于“Q”键左边)确认。当输入一个回车符后程序会自动对这条语句进行分析,如果出现错误就会提示。

我们经常碰到的麻烦是程序的运行结果和预计的不一样,一般我会这样做:首先要想一想可能是哪一个变量有问题,然后去监视这个变量(或表达式),在程序合适的位置设置断点,这样可以使程序停下来看一看这个变量有没有按照我的设想在变化。下面我举一个简单的例子,先看源代码:

sub test()

for i=2 to 4 step 0.6

next i

end sub

这是一个非常简单的循环,每一次循环i便会增加0.6,当循环3次后i值就变为4.4,但问题是每一次循环时i值变为多少?

第一步:在菜单中选“调试”—“添加监视”,在表达试中填“i”,点击确定,这时你会看到临视窗口中会多一行。

第二步:把光标移到代码窗口中的“next i”行,按一下“F9”,于是每当程序运行到这里时就会暂停了。

好,一切就绪,请按F5执行程序,在监视窗口中C值立刻变为2,再按F5继续,C值为2.6,再按几次F5,直到程序结束,这样我们就成功监视了C值的变化。

第三步:在next i行再按一次F9,清除断点。监视的表达式的右键菜单选择“删除监视”。

另外,还可以用“逐语句”、“逐过程”、“运行到光标处”等方法进行调试,这些都在调试菜单中,操作比较简单,请读者自行领悟。

到目前为止,我们所做的工程都是“嵌入式工程”,它只是嵌入在当前的Autocad图形文件中, 以后打开这个文件时代码才会加载,如果别的dwg文件也要使用,那就需要把代码导出为.bas文件,供其他dwg文件导入。在VBA编辑器的“文件”菜单中有这两个功能,一试便知。

ACAD VBA还有一种工程叫“通用式工程”,只要进入ACAD就可以运行,程序可以在不同用户、不同的图形文件中共享,但是由于VBA功能太强,有时候会出现一些意想不到的事情,所以在学习阶段请暂时不要这样做。

本课结束,请做思考题;监视下列代码中的i和j的值,注意,此题虽然要监视2个变量,但是在代窗口中只要设置1个断点就足够了。

sub test()

for i=2 to 4 step 0.6

for j=-5 to 2 step 5.5

next j

next i

end sub

第五课 画函数曲线

先画一组下图抛物线。

下面是源码:

Sub myl()

Dim p(0 To 49) As Double '定义点坐标

Dim myl As Object '定义引用曲线对象变量

co = 15 '定义颜色

For a = 0.01 To 1 Step 0.02 '开始循环画抛物线

For i = -24 To 24 Step 2 '开始画多段线

j = i + 24 '确定数组元素

p(j) = i '横坐标

p(j + 1) = a * p(j) * p(j) / 10 '纵坐标

Next i '至此p(0)-p(40)所有元素已定义,结束循环

Set myl = ThisDrawing.ModelSpace.AddLightWeightPolyline(p) '画多段线

myl.Color = co '设置颜色属性

co = co + 1 '改变颜色,供下次定义曲线颜色

Next a

End sub

为了鼓励大家积极思考,从本课开始,我不再解释每一条语句的作用,只对以前没有提过的语句进行一些解释,也许你一时很难明白,建议用上一课提到的跟踪变量、添加断点的办法领悟每一条语句的作用。

在跟踪变量p时请在跟踪窗口中单击变量p前的+号,这样可以看清数组p中每一个元素的变化。

ACAD没有现成的画抛物线命令,我们只能用程序编写多段线画近似抛物线。理论上,抛物线的X值可以是无限小、无限大,这里取值范围在正负24之间。

程序第二行:Dim myl As Object '定义引用曲线对象变量

Object也是一种变量类型,它可以把变量定义为对象,本例中myl变量将引用多段线,所以要定义为Objet类型。

看画多段线命令:

Set myl = ThisDrawing.ModelSpace.AddLightWeightPolyline(p) '画多段线

其中括号中的p是一个数组,这个数组的元素数必须是偶数,每两个元数作为一个点坐标。

等号前面部分“Set myl”的作用就将myl变量去引用画好的多段线。

myl.Color = co '设置颜色属性。在ACAD中,颜色可以用数字表示,本例中co会增值,这样就会有五彩缤纷的效果。

本课第二张图:正弦曲线,下面是源码:

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

p(i) = i * 2 * 3.1415926535897 / 360 '横坐标

横坐标表示角度,后面表达式的作用是把角度转化弧度

ZoomExtents语句是缩放命令,它的作用是显示整个图形,消除图形以外的区域

本课思考题:画一条抛物线:y=0.5*x*x+3,其中X取值范围在正负50之间

第六课 数据类型的转换

上一节课我们用一个简单的公式把角度转化为弧度,这样做便于大家理解。不过VBA中有现成的方法可以转换数据类型。

我们举例说明:

jd = ThisDrawing.Utility.AngleToReal(30, 0)

这个表达式把角度30度转化为弧度,结果是.523598775598299。

AngleToReal需要两个参数,前面是表示要转换角度的数字,而后面一个参数可以取值为0-4之间的整数,有如下意义:

0:十进制角度;1:度分秒格式;2:梯度;3:弧度;4:测地单位

例:id= ThisDrawing.Utility.AngleToReal("62d30' 10""", 1)

这个表达式计算62度30分10秒的弧度

再看将字符串转换为实数的方法:DistanceToReal

需要两个参数,前一个参数是表示数值的字符串,后面可以取值1-5,表示数据格式,有如下意义:

1:科学计数;2:十进制;3:工程计数——英尺加英寸;4:建筑计数——英尺加分数英寸;5:分数格式。

例:以下表达式得到一个12.5的实数

temp1 = ThisDrawing.Utility.DistanceToReal("1.25E+01", 1)

temp2 = ThisDrawing.Utility.DistanceToReal("12.5", 2)

temp3 = ThisDrawing.Utility.DistanceToReal("12 1/2", 5)

而realtostring方法正好相反,它把一个实数转换为字符串。它需要3个参数

第一个参数是一个实数,第二个参数表示数据格式,含义同上,最后一个参数表示精确到几位小数。

temp1= ThisDrawing.Utility.RealToString(12.5, 1, 3)

得到这个字符串:“1.250E+01”,

下面介绍一些数型转换函数:

Cint,获得一个整数,例:Cint(3.14159) ,得到3

Cvar,获得一个Variant类型的数值,例:Cvar("123" "00"),得到”12300”

Cdate,转换为date数据类型,例:MyShortTime = CDate("11:13:14 AM")

下面的代码可以写出一串数字,从000-099。

Sub test()

Dim add0 As String

Dim text As String

Dim p(0 To 2) As Double

p(1) = 0 'Y坐标为0

p(2) = 0 'Z坐标为0

For i = 0 To 99 '开始循环

If i 10 Then '如果小于10

add0 = "00" '需要加00

Else '否则

add0 = "0" '需要加0

End If

text = add0 CStr(i) '加零,并转换数据

p(0) = i * 100 'X坐标

Call ThisDrawing.ModelSpace.AddText(text, p, 4) '写字

Next i

End Sub

重点解释条件判断语句:

If 条件表达式 Then

……

Else

……

End if

如果满足条件那么程序往下执行,到else时不再往下执行,直接跳到End if后面

如果不满足条件,程序跳到else后往下运行。

Call ThisDrawing.ModelSpace.AddText(text, p, 4) '写字

这是写单行文本,需要三个参数,分别是:写的内容、位置、字高

第七课 写文字

客观地说,ACAD写字功能不够历害,而用VBA可以使写字效率更高。比较正规的做法是把定义文字样式,用样式来控制文字的特性。我们还是用实例来学习,先看下面一段代码,它的作用是先创建一个文字样式,然后用这个文字样式写一段多行文本。

Sub txt()

Dim mytxt As AcadTextStyle '定义mytxt变量为文本样式

Dim p(0 To 2) As Double '定义坐标变量

p(0) = 100: p(1) = 100: p(2) = 0 '坐标赋值

Set mytxt = ThisDrawing.TextStyles.Add("mytxt") '添加mytxt样式

mytxt.fontFile = "c:\windows\fonts\simfang.ttf" '设置字体文件为仿宋体

mytxt.Height = 100 '字高

mytxt.Width = 0.8 '宽高比

mytxt.ObliqueAngle = ThisDrawing.Utility.AngleToReal(3, 0) '倾斜角度(需转为弧度)

ThisDrawing.ActiveTextStyle = mytxt '将当前文字样式设置为mytxt

Set txtobj = ThisDrawing.ModelSpace.AddMText(p, 1400, "{做到老,学到老}\P" "此心自光明正大,过人远矣")

txtobj.LineSpacingFactor = 2 '指定行间距

txtobj.AttachmentPoint = 3 '右对齐(1为左对齐,2为居中)

End Sub

我们看这条语句

Set mytxt = ThisDrawing.TextStyles.Add("mytxt")

添加文本样式并赋值给mytxt变量,只需要一个参数:文本样式名

fontfile、height、width、ObliqueAngle是文本样式最常用的属性

Call ThisDrawing.ModelSpace.AddMText(p, 1400, "{做到老,学到老}\P" "此心自光明正大,过人远矣")

这条语句是写文本,需要三个参数。第一个参数p是坐标,1400是宽度,最后一个参数是文本内容,其中\p是一个回车符

扩大字符间距用\T数字,例:\T3abc,使文字abc的间距扩大3 部,n取值范围是0.75-3

在论坛中有一个经常被同好提及的问题:如何使用文字叠加。举例说明:123\S+0.12^-0.34

\S是格式字符,^是分隔符,前面的数字在上,后面的数字在下。

\C是颜色格式字符,C后面跟一个数字表示颜色

\A是对齐方式,\A0,\A1,\A2分别表示底部对齐、中间对齐和顶部对齐

够不够,不够的话给个邮箱,我再发给你一个pdf文件!

谁有CAD机械制图全部的指令代码?

这个题回答过好多次了,就复制给你吧!

SC-比例因子0.05,看图形还大吗

分解后的图形转换成多段线形式,应该不行

AutoCAD常用命令缩写

AA, *AREA 计算面积

AR, *ARRAY 阵列

B, *BLOCK 制作块

H, *BHATCH 填充

BO, *BOUNDARY 边界创建

BR, *BREAK 打断

C, *CIRCLE 圆

CHA, *CHAMFER 倒直角

CO, *COPY 复制

D, *DIMSTYLE 标注样式

DI, *DIST 测量距离

DIV, *DIVIDE 定数等分

DO, *DONUT 圆环

E, *ERASE 删除物体

EX, *EXTEND 延伸

F, *FILLET 倒圆角

FI *FILTER 对象选择过滤器

G, *GROUP 对象编组

H, *BHATCH 填充

HI, *HIDE 三维图形消隐

I, *INSERT 插入块

L, *LINE 直线

LEN, *LENGTHEN 改变长度

M, *MOVE 移动

ME *MEASURE 定距等分

MI, *MIRROR 镜像

ML, *MLINE 参照线

O, *OFFSET 偏移

P, *PAN 小手移动

PE, *PEDIT 多段线编辑

PL, *PLINE 多段线

PO, *POINT 绘制点

POL, *POLYGON 正多边形

RE, *REGEN 重新生成图形

REC, *RECTANGLE 长方形

REG, *REGION 面域

RO, *ROTATE 旋转

ST, *STYLE 文字样式

S *STRETCH 拉伸

SC, *SCALE 比例缩放

TR, *TRIM 修剪

V *VIEW 保存视图

X, *EXPLODE 分解

XL, *XLINE 构造线

Z, *ZOOM 窗口缩放

AutoCAD提供的命令有很多,绘图时最常用的命令只有其中的百分之二十。采用键盘输入命令时由于有些常用命令较长,如 BHATCH(填充)、EXPLODE(分解),在输入时击键次数多,影响了绘图速度。虽然AutoCAD 提供了完善的菜单和工具栏两种输入方法,但是要提高绘图速度,只有掌握Auto CAD提供的快捷的命令输入方法。

笔者在进行AutoCAD设计、培训和教学研究时,对于快捷命令的使用和管理积累了一些体验,现总结出,以供大家使用AutoCAD 2000时参考。

一、概述:

所谓的快捷命令,是AutoCAD为了提高绘图速度定义的快捷方式,它用一个或几个简单的字母来代替常用的命令,使我们不用去记忆众多的长长的命令,也不必为了执行一个命令,在菜单和工具栏上寻寻匿匿。所有定义的快捷命令都保存在AutoCAD安装目录下SUPPORT子目录中的ACAD.PGP文件中,我们可以通过修改该文件的内容来定义自己常用的快捷命令。

当我们每次新建或打开一个AutoCAD绘图文件时,CAD本身会自动搜索到安装目录下的SUPPORT路径,找到并读入ACAD.PGP文件。当AutoCAD正在运行的时候,我们可以通过命令行的方式,用ACAD.PGP文件里定义的快捷命令来完成一个操作,比如我们要画一条直线,只需要在命令行里输入字母“L”即可。

二、快捷命令的命名规律

1、 快捷命令通常是该命令英文单词的第一个或前面两个字母,有的是前三个字母。

比如,直线(Line)的快捷命令是“L”;复制(COpy)的快捷命令是“CO”;线型比例(LTScale)的快捷命令是“LTS”。

在使用过程中,试着用命令的第一个字母,不行就用前两个字母,最多用前三个字母,也就是说,AutoCAD的快捷命令一般不会超过三个字母,如果一个命令用前三个字母都不行的话,只能输入完整的命令。

2、 另外一类的快捷命令通常是由“Ctrl键 + 一个字母”组成的,或者用功能键F1~F8来定义。比如Ctrl键+“N”,Ctrl键+“O”,Ctrl键+“S”,Ctrl键+“P”分别表示新建、打开、保存、打印文件;F3表示“对象捕捉”。

3、 如果有的命令第一个字母都相同的话,那么常用的命令取第一个字母,其它命令可用前面两个或三个字母表示。比如“R”表示Redraw,“RA”表示Redrawall;比如“L”表示Line,“LT”表示LineType,“LTS”表示LTScale。

4、 个别例外的需要我们去记忆,比如“修改文字”(DDEDIT)就不是“DD”,而是“ED”;还有“AA”表示Area,“T”表示Mtext, “X”表示 Explode。

三、快捷命令的定义

全面已经提到,AutoCAD所有定义的快捷命令都保存ACAD.PGP文件中。ACAD.PGP是一个纯文本文件,用户可以使用ASCⅡ文本编辑器(如DOS下的EDIT)或直接使用WINDOWS附件中的记事本来进行编辑。用户可以自行添加一些Auto CAD命令的快捷方式到文件中。

通常,快捷命令使用一个或两个易于记忆的字母,并用它来取代命令全名。快捷命令定义格式如下:

快捷命令名称, * 命令全名

如: CO , * COPY

即键入快捷命令后,再键入一个逗号和快捷命令所替代的命令全称。AutoCAD的命令必须用一个星号作为前缀。

【参考文献】

陈通等,《AutoCAD 2000中文版入门与提高》,清华大学出版社,2000年7月出版

附:常见的快捷命令

(一)字母类

1、对象特性

ADC, *ADCENTER(设计中心“Ctrl+2”)

CH, MO *PROPERTIES(修改特性“Ctrl+1”)

MA, *MATCHPROP(属性匹配)

ST, *STYLE(文字样式)

COL, *COLOR(设置颜色)

LA, *LAYER(图层操作)

LT, *LINETYPE(线形)

LTS, *LTSCALE(线形比例)

LW, *LWEIGHT (线宽)

UN, *UNITS(图形单位)

ATT, *ATTDEF(属性定义)

ATE, *ATTEDIT(编辑属性)

BO, *BOUNDARY(边界创建,包括创建闭合多段线和面域)

AL, *ALIGN(对齐)

EXIT, *QUIT(退出)

EXP, *EXPORT(输出其它格式文件)

IMP, *IMPORT(输入文件)

OP,PR *OPTIONS(自定义CAD设置)

PRINT, *PLOT(打印)

PU, *PURGE(清除垃圾)

R, *REDRAW(重新生成)

REN, *RENAME(重命名)

SN, *SNAP(捕捉栅格)

DS, *DSETTINGS(设置极轴追踪)

OS, *OSNAP(设置捕捉模式)

PRE, *PREVIEW(打印预览)

TO, *TOOLBAR(工具栏)

V, *VIEW(命名视图)

AA, *AREA(面积)

DI, *DIST(距离)

LI, *LIST(显示图形数据信息)

2、绘图命令:

PO, *POINT(点)

L, *LINE(直线)

XL, *XLINE(射线)

PL, *PLINE(多段线)

ML, *MLINE(多线)

SPL, *SPLINE(样条曲线)

POL, *POLYGON(正多边形)

REC, *RECTANGLE(矩形)

C, *CIRCLE(圆)

A, *ARC(圆弧)

DO, *DONUT(圆环)

EL, *ELLIPSE(椭圆)

REG, *REGION(面域)

MT, *MTEXT(多行文本)

T, *MTEXT(多行文本)

B, *BLOCK(块定义)

I, *INSERT(插入块)

W, *WBLOCK(定义块文件)

DIV, *DIVIDE(等分)

H, *BHATCH(填充)

3、修改命令:

CO, *COPY(复制)

MI, *MIRROR(镜像)

AR, *ARRAY(阵列)

O, *OFFSET(偏移)

RO, *ROTATE(旋转)

M, *MOVE(移动)

E, DEL键 *ERASE(删除)

X, *EXPLODE(分解)

TR, *TRIM(修剪)

EX, *EXTEND(延伸)

S, *STRETCH(拉伸)

I, *INSERT(插入块)

W, *WBLOCK(定义块文件)

DIV, *DIVIDE(等分)

H, *BHATCH(填充)

3、修改命令:

CO, *COPY(复制)

MI, *MIRROR(镜像)

AR, *ARRAY(阵列)

O, *OFFSET(偏移)

RO, *ROTATE(旋转)

M, *MOVE(移动)

E, DEL键 *ERASE(删除)

X, *EXPLODE(分解)

TR, *TRIM(修剪)

EX, *EXTEND(延伸)

S, *STRETCH(拉伸)

3D命令

EXT Extrude 拉伸二维物体生成三维

REV Revolve 旋转二维物体生成三维

SL Slice 做三维物体的断面

AL Align 对齐

SEC Section 做截面

UNI Union 并集

SU Subtract 差集

IN Intersect 交集

但我一般只用到下面这些

AR, *ARRAY 阵列

B, *BLOCK 制作块

H, *BHATCH 填充

BO, *BOUNDARY 边界创建

BR, *BREAK 打断

C, *CIRCLE 圆

CHA, *CHAMFER 倒直角

CO, *COPY 复制

D, *DIMSTYLE 标注样式

DI, *DIST 测量距离

DIV, *DIVIDE 定数等分

DO, *DONUT 圆环

E, *ERASE 删除物体

EX, *EXTEND 延伸

F, *FILLET 倒圆角

H, *BHATCH 填充

I, *INSERT 插入块

L, *LINE 直线

LEN, *LENGTHEN 改变长度

M, *MOVE 移动

ME *MEASURE 定距等分

MI, *MIRROR 镜像

ML, *MLINE 参照线

O, *OFFSET 偏移

P, *PAN 小手移动

PL, *PLINE 多段线

PO, *POINT 绘制点

POL, *POLYGON 正多边形

REC, *RECTANGLE 长方形

REG, *REGION 面域

RO, *ROTATE 旋转

S *STRETCH 拉伸

SC, *SCALE 比例缩放

TR, *TRIM 修剪

V *VIEW 保存视图

X, *EXPLODE 分解

XL, *XLINE 构造线

Z, *ZOOM 窗口缩放

求大神解释CAD的VBA程序代码,谢谢 在线等

Sub Y02()

On Error GoTo Err: '有错跳至err子过程

Dim Varian As Variant '定义Varian 类型

Dim Pti(0 To 2) As Double '定义Pti为数组,内容限0-2行,或列

Dim PtH As String'定义为文本

Dim TextH As Double'为双精度

Dim Po(0 To 2) As Double'为双精度数组

Dim Texta As AcadText'定义为cad单行文本

Dim Tsc As Double

Dim BlocobjA As AcadBlockReference'定义为cad块

Tsc = 1 '比例

PtH = "C:\螺钉标准件\螺钉标准件\六角螺栓.dwg"

'此路径你自定义,必须有;没有会报错

If Dir(PtH) "" Then'用dir判断有没有pth文件,没有=""

Varian = ThisDrawing.Utility.GetPoint(, vbCr "放置点:")'在cad上选择一个坐标,或位置

Po(0) = Varian(0): Po(1) = Varian(1): Po(2) = Varian(2)'取出坐标的xyz值

Set BlocobjA = ThisDrawing.ModelSpace.InsertBlock(Po, PtH, Tsc, Tsc, Tsc, 0)'在po位置插入块pth

BlocobjA.Explode'块分解?

BlocobjA.Delete'块删除

Else

MsgBox "" + PtH + " 文件不存在!!!", vbCritical, "读取文件错误" '文件报错

End If

Err: '错误停止运行

End Sub

大至是这个意思了

关于CAD程式代码和CAD命令代码的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;

本文地址:http://ahzz.com.cn/post/10993.html


取消回复欢迎 发表评论:

分享到

温馨提示

下载成功了么?或者链接失效了?

联系我们反馈

立即下载