您现在的位置是:首页 > 设计知识设计知识
vba开发cad教程,
2022-12-01 13:18:19设计知识0人已围观
简介 vba开发cad教程, PythonCAD是一款常用的图形绘制设计软件
vba开发cad教程,
PythonCAD是一款常用的图形绘制设计软件。为了让CAD软件的使用更加高效,一些老用户会重新打开程序,那么在CAD的二次开发中,如何用vba画直线呢?让我们来看看这个教程。
“CAD”还有你不知道的地方。单击此处了解有关“CAD”课程的更多信息。
工具/软件
硬件型号:联想winner 510S
版本:Windows7
所需软件:CAD2004
步骤/方法
第1步
下载安装AutoCAD 2004正式版,然后打开。选择“工具”菜单下“宏”下的“Visual Basic编辑器”。
第2步
在项目的空白处插入模块。
第3步
将上述代码复制到模块中保存,然后返回到CAD的点击工具菜单下的加载应用程序,选择刚刚保存的文件,点击加载。
第4步
然后单击工具菜单下的宏-宏(Alt F8)来运行此脚本。缩放CAD屏幕后,可以看到刚刚编辑的直线。起点(012)是起点(XYZ)的坐标。
第5步
为什么要提二次开发?重点是方便和准确。上面的XYZ坐标值也可以是变量,通过变量的相关计算,我们可以做出更多更方便的脚本。
第6步
下面是一个比较复杂的根据变量和公式画图的例子,只写了关于OK按钮的事件(下面的例子是我在一家玻璃切割公司用这个脚本做的方便切割图纸的小程序之一):Private Sub CommandButton1_Click()
c=Val(TextBox1。正文)
d=Val(文本框2。正文)
x=Val(TextBox3。正文)
dj1=Val(TextBox4。正文)
文本框5。Text=d - x - dj1
If选项按钮1。那么值=真
If选项按钮3。那么值=真
对于i=0到Int(Val(TextBox7。Text)/2)步骤1
我=我
fk1=c * Val(TextBox6。正文)
fk2=(d x) * i
模糊印章作为学术路线
双重调暗密封起点(2)
双重模糊密封端点(2)
密封起点(0)=fk2
密封起点(1)=0-Val(TextBox10。正文)
端点(0)=fk2
密封终点(1)=fk1 Val(文本框8。正文)
set=this drawing . model space . addline(密封起点,密封终点)
然后
其他
对于i=0到Int(Val(TextBox7。Text)/2)步骤1
我=我
fk1=c * Val(TextBox6。正文)
fk2=(d d) * i
作为AcadLine的Dim seal 1
将密封起点1(2)变暗为双重
Dim将端点1(2)密封为双重
密封起点1(0)=fk2
密封起点1(1)=0-Val(TextBox10。正文)
端点1(0)=fk2
端点1(1)=fk1 Val(TextBox8。正文)
设置密封1=this drawing . model space . addline(密封起点1,密封终点1)
然后
如果…就会结束
If选项按钮3。那么值=真
对于n=0到Int(Val(TextBox7。Text)/2 (Val(TextBox7。Text)/2 - Int(Val(TextBox7。Text)/2)) * 2 - 1)步骤1
n=n
fk12=c * Val(TextBox6。正文)
fk22=d (d x) * n
作为AcadLine的Dim seal 2
将密封起始点2(2)变暗为双点
将密封端点2(2)变暗为双重
密封起点2(0)=fk22
密封起点2(1)=0-Val(TextBox10。正文)
端点2(0)=fk22
端点2(1)=fk12 Val(TextBox8。正文)
设置密封2=this drawing . model space . addline(密封起点2,密封终点2)
然后
其他
对于n=0到Int(Val(TextBox7。Text)/2 (Val(TextBox7。Text)/2 - Int(Val(TextBox7。Text)/2)) * 2 - 1)步骤1
n=n
fk12=c * Val(TextBox6。正文)
fk22=d (d d) * n
Dim seal 21 As AcadLine
将密封起始点21(2)变暗为双点
双重模糊密封端点21(2)
密封起点21(0)=fk22
密封起点21(1)=0-Val(文本框10。正文)
端点21(0)=fk22
端点21(1)=fk12 Val(TextBox8。正文)
设置密封21=this drawing . model space . addline(密封起点21,密封终点21)
然后
如果…就会结束
If选项按钮3。那么值=真
对于m=0到(Val(TextBox6。文本))步骤1
m=m
fk13=(d x) * Int(Val(TextBox7。Text)/2)
fk23=c * m
将密封3变暗为AcadLine
将密封起点3(2)变暗为双重
双重模糊密封端点3(2)
密封起点3(0)=0-Val(文本框9。正文)
密封起点3(1)=fk23
端点3(0)=fk13(val(textbox 7 . text)/2-int(val(textbox 7 . text)/2))* 2 * d val(textbox 11 . text)
端点3(1)=fk23
设置密封3=this drawing . model space . addline(密封起点3,密封终点3)
然后
其他
对于m=0到(Val(TextBox6。文本))步骤1
m=m
fk13=(d d) * Int(Val(TextBox7 .Text)/2)
fk23=c * m
暗淡的封口31作为AcadLine
暗淡的封口起点31(2)为双精度
暗淡的封口端点31(2)为双精度
封口起点31(0)=0值(文本框9。正文)
封口起点31(1)=fk23
封口端点31(0)=fk13 Val(文本框11 .text)d *(Val(文本框7 .Text)/2 - Int(Val(TextBox7 .Text)/2)) * 2)
封口端点31(1)=fk23
一组封口31=本图。模型空间。添加线(封口起点31, 封口端点31)
然后
如果…就会结束
其他
如果选项按钮2。那么值=真
如果选项按钮3。那么值=真
对于i=0到Int(Val(TextBox7 .Text)/2)步骤一
我=我
fk1=c * Val(文本框6 .正文)
fk2=dj1 (d x) * i
暗淡的封口12作为AcadLine
暗淡的封口起点12(2)为双
暗淡的封口端点12(2)为双
封口起点12(0)=fk2
封口起点12(1)=0值(文本框10。正文)
封口端点12(0)=fk2
封口端点12(1)=fk1 Val(文本框8 .正文)
一组封口12=本图。模型空间。添加线(封口起点12, 封口端点12)
然后
其他
对于i=0到Int(Val(TextBox7 .正文)- 1)步骤一
我=我
fk1=c * Val(文本框6 .正文)
fk2=dj1 d * i
暗淡的封口121 As AcadLine
暗淡的封口起点121(2)作为双
暗淡的封口端点121(2)作为双
封口起点121(0)=fk2
封口起点121(1)=0值(文本框10。正文)
封口端点121(0)=fk2
封口端点121(1)=fk1 Val(文本框8 .正文)
一组封口121=本图。模型空间。添加线(封口起点121, 封口端点121)
然后
如果…就会结束
如果选项按钮3。那么值=真
对于n=0到Int(Val(TextBox7 .Text)/2 (Val(TextBox7 .Text)/2 - Int(Val(TextBox7 .Text)/2)) * 2 - 1)步骤一
n=n
fk12=c * Val(TextBox6 .正文)
fk22=dj1 x (d x) * n
暗淡的封口122 As AcadLine
暗淡的封口起点122(2)作为双
暗淡的封口端点122(2)作为双
封口起点122(0)=fk22
封口起点122(1)=0值(文本框10。正文)
封口端点122(0)=fk22
封口端点122(1)=fk12 Val(文本框8 .正文)
一组封口122=本图。模型空间。添加线(封口起点122, 封口端点122)
然后
其他
对于n=0到Int(Val(TextBox7 .正文)- 1)步骤一
n=n
fk12=c * Val(TextBox6 .正文)
fk22=(x dj1) d * n
暗淡的封口222 As AcadLine
暗淡的封口起点222(2)作为双
暗淡的封口端点222(2)作为双
封口起点222(0)=fk22
封口起点222(1)=0值(文本框10。正文)
封口端点222(0)=fk22
封口端点222(1)=fk12 Val(文本框8 .正文)
一组封口222=本图。模型空间。添加线(封口起点222, 封口端点222)
然后
如果…就会结束
如果选项按钮3。那么值=真
对于m=0到(Val(文本框6 .文本))步骤一
m=m
fk13=(d x) * Int(Val(TextBox7 .Text)/2)
fk23=c * m
暗淡的封口311 As AcadLine
暗淡的封口起点311(2)为双精度
暗淡的封口端点311(2)为双精度
封口起点311(0)=0值(文本框9。正文)
封口起点311(1)=fk23
封口端点311(0)=fk13 (Val(TextBox7 .Text)/2 - Int(Val(TextBox7 .Text)/2)) * 2 * d Val(TextBox11 .文字)dj1 dj2
封口端点311(1)=fk23
一组封口311=本图。模型空间。添加线(封口起点311, 封口端点311)
然后
其他
对于m=0到(Val(文本框6 .文本))步骤一
m=m
fk13=d * (Int(Val(TextBox7 .正文)- 1))
fk23=c * m
暗淡的封口312 As AcadLine
暗淡的封口起点312(2)为双精度
暗淡的封口端点312(2)为双精度
封口起点312(0)=dj1 - Val(文本框9 .正文)- dj1
封口起点312(1)=fk23
封口端点312(0)=fk13 d Val(TextBox11 .正文)
封口端点312(1)=fk23
一组封口312=本图。模型空间。添加线(封口起点312, 封口端点312)
然后
如果…就会结束
其他
MsgBox 请选择一个正面或是反面进行绘图!vbOKOnly,提示:
如果…就会结束
如果…就会结束
末端接头
第7步
假如说你新建的窗体名称是叫hpcc,那你就必须新建模块如下加以启动它:子AAA()
hpcc .显示
末端接头
意思是加载此模块时显示该窗体。
注意/提示
相信“CAD二次开发怎么用vba画直线?"这篇文章大家都已经学会了,如果大家还有其它疑问的话,可以持续关注,我们每天都会为大家带来最新最实用软件小技巧。
Tags: 设计知识
很赞哦! ()