AutoCAD的定制与开发-基础电子_第1页
AutoCAD的定制与开发-基础电子_第2页
AutoCAD的定制与开发-基础电子_第3页
AutoCAD的定制与开发-基础电子_第4页
AutoCAD的定制与开发-基础电子_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

精品文档-下载后可编辑AutoCAD的定制与开发-基础电子在计算机技术飞速发展的今天,AutoCAD已成为世界上成功的计算机辅助设计系列软件平台之一,该软件得到了极为广泛的应用。这不仅是因为它功能强、支持的平台多、外设广,更主要的原因是它具有开放的体系结构,AutoCAD允许用户和开发者在几乎所有方面对其进行扩充与修改(即进行定制与二次开发),能限度地满足用户的特殊要求。

目前,介绍AutoCAD的基本命令及用法的普及型读物较多,而介绍AutoCAD定制与开发方法的提高型读物较少;AutoCAD是计算机辅助绘图软件,具有普遍性,可广泛适用于机械、电子、建筑等多种领域,再加上各个行业的自身特点,这就要求有针对性的对AutoCAD进行定制与开发,以满足不同领域和不同行业的需求。这篇文章以机械行业为例,与大家共同探讨AutoCAD定制与开发的具体方法(功能、图标、标准件库、尺寸公差库等),供读者学习和参考。

一、AutoCAD的初始设置

对于一幅完整的机械制图(零件图或装配图),需要有图幅大小、图幅比例、标题栏、明细栏、图层、尺寸标注、粗糙度符号、形位公差标注、基准符号、零件与标准件等的引线序列号等等,这些都需要特殊定制与开发的。由于文章涉及的具体命令多且杂,在此就不逐一介绍说明了。如果您有一定的AutoCAD操作基础,按下述步骤就可以编制本文所提到的功能。以AutoCAD2022为例(不同版本CAD的操作方法大同小异),具体的操作过程与程序内容如下:

打开AutoCAD2022(或R14),创建新图,设置好图层(例如:名称为01、颜色为青、线型为center)、图幅界限、文字样式、尺寸样式(保存于STANDARD中)等一些重要的设置,然后另存为*.dwt格式(自命名,如:acad.dwt),该格式的文件保存在C:\ProgramFiles\AutoCAD2022\Template下。这样,就建立了统一的模板文件。

在该模板文件下,绘制您所需要的标题栏,然后在命令行输入ddattdef(回车),弹出属性定义对话框,输入相应的值。例如:

1.MODE设置属性模式

(1)Invisible控制为可见或不可见模式(选上)

(2)CoNStant设置块插入后的属性常数为固定值

(3)Verify在键入属性后会要求您确认键入值的正确性

(4)Preset设置可以改变的固定值

2.Attribute属性对话栏

(1)Tag设置属性标签的名称

(2)Prompt设置提示的文字

(3)Value设置提示文字的缺省值

3.TextOptions设置属性文字的类型

(1)Justification设置文字的对齐方式

(2)TextStyle设置文字的字形

(3)Height设置文字的高度

(4)Rotation设置文字的旋转角度

4、PickPoint直接使用鼠标在画面上选取位置,选用移动命令使该属性在理想的位置上将各个需要的属性按上述方法输入完毕后,接下来的操作是要将图形与属性结合为一个WBLOCK(块),在命令行下输入wblock回车,

Command:wblock回车

FileNAME:输入一个文件名(回车)

BlockName:回车

InsertionBasePoint:捕捉一个插入点(回车)

SelectObjects:选择您所绘制的图形与属性(回车)

SelectObjects:回车

Command:oops回车

至此标题栏的属性块就定义完成了。如果您确实理解了的话,按照上述步骤就可以定制出明细表、粗糙度符号、基准符号的属性块。

下面该定义图幅的模板了,在统一的模板(acad.dwt)下,按国家标准绘制一幅图如A0,在命令行下输入ddinsert(回车)

Command:ddinsert(回车)

FileName:输入一个文件名(回车)注:即建属性块的文件名

Insertpoint:在图幅上选择理想的位置(回车)

Xscalefactor1/Corner/XYZ:(回车)

Yscalefactor(default=X):(回车)

Rotationangle0:(回车)

属性值(设置属性提示的文字):(一直回车)直到Command状态下,然后另存为图幅A0.dwt(自命名)。

同样,建立A1、A2、A3、A4的图幅模板。

在命令行下输入ddatte(回车)

Command:ddatte(回车)

Selectblock:选择标题栏

在弹出编辑属性的对话框,输入相应的属性值,该属性值就可自动的填充到您所定义的相应的位置上。

二、AutoCAD的程序及图标菜单、下拉菜单设置

1.介绍一下如何用LISP语言开发程序及程序中所涉及的函数的简要说明。新建一文本文件*.lsp(例如mycad.lsp),在该文件中输入下面的内容。

(defunc:bscale(/hk)“定义图幅比例

(setqhk(getdist"\n请输入图幅比例:"))

(command"SCALE""all""""0,0"(/1hk))

(command"DIMSCALE"(/1hk))

(command"ZOOM""all""")

(setvar"HPNAME""ANSI31")

(setvar"HPSCALE"1.5)

(setvar"TEXTSIZE"(/4hk))

打开C:\ProgramFiles\AutoCAD2022\SUPPORT\AutoCAD2000doc.lsp(AcadR14.lsp),在该文件的倒数第二行输入(load"mycad.lsp"""),保存该文件。(先把原文件做一个备份)。

重新进入CAD,您所定义的功能就自动加载了,下面介绍一下这个功能的用法。打开一个标准的图幅模板如A1.dwg,在命令行下输入:

Command:bscale(回车)

请输入图幅比例:1/2(回车)

注:如果建模板时,把该比例输入为1,那么A0~A4.dwt的图幅比例始终默认为1。输入图幅比例的优点在于您所使用的属性块(例如粗糙度符号等)的放大缩小比例与图幅比例相一致。

2.输入命令的方式即难记又麻烦,那么如何把上述命令变成图标或菜单的形式呢?回答是肯定的。

打开C:\ProgramFiles\AutoCAD2022(R14)\SUPPORT\acad.mnu(或acad.mns),在相应的位置插入如下内容,并保存:

(1)定义下拉菜单(插入在原有的下拉菜单之后)

***POPx

[自制CAD(Z)]

[图幅比例(A)]^C^C_bscale

[--]

说明:

1)设置第x个下拉菜单

2)第x个下拉菜单的功能项名称,快捷键代码为Z

3)下拉菜单的分项名称,^C^C执行二次中断操作然后执行后面的命令(功能中所定义的,如bscale)

4)在下拉菜单中显示分隔符

图2定义图标工具栏

(2)定义图标工具栏(插入在原有的图标菜单之后)

**MYCAD

[_Toolbar("MYCAD",_Floating,_Show,0,1,0)]

[_Button("图幅比例","bscale.bmp","bscale.bmp")]^C^C_bscale

[--]

重新进入CAD,您就可以看到所编制的下拉菜单和图标标工具栏了。如果没有,请在Command状态下输入menu(回车),在弹出的对话框中选中您刚刚保存的acad.mun(或acad.mns),然后按确定按钮。另外,图标工具栏也可手工定制。在绘图环境下的任意图标上按鼠标右键,弹出菜单选择自定义,在自定义对话框中选择工具栏,按新建按钮,在工具栏名称中输入MYCAD,按确定按钮。再选择命令中的用户定义,按住鼠标左键拖动用户定义的按钮到MYCAD的工具栏中后,鼠标左键单击该按钮,在按钮特性中输入用户定义的按钮名称如“图幅比例”,在与此按钮关联的宏中输入^C^C_bscale,然后选择编辑按钮,可以在按钮编辑器上直接画,也可打开bscale.bmp文件(如:用Photoshop绘画的),选中应用按钮。其余的图标定制方法以此类推。

三、笔者开发的AutoCAD的功能及使用方法

1.程序

(1)定义对称线

(defunc:dcx(/ss1distp1p2p3p4p5lenpnpmpn1pm1eeang1sb)

(setvar"orthomode"1)

(setqsb(getvar"osmode"))

(setvar"osmode"33)

(setqss1(ssget)

dist(getdist"\n请输入平行线间的距离:")

p1(getpoint"\n起始点或特征点:")

len(getdistp1"\n终点或特征点或长度:")

ee(entget(ssnamess10))

p2(cdr(assoc10ee))

p3(cdr(assoc11ee))

ang1(angtos(anglep2p3)01)

)

(command"_UCS""_Z"ang1"")

(setqp4(transp101)

p5(transp201)

pn(list(carp4)(+(cadrp5)(/dist2.0)))

pm(list(carp4)(-(cadrp5)(/dist2.0)))

pn1(polarpn0len)

pm1(polarpm0len)

)

(setvar"osmode"0)

(command"line"pnpn1"""line"pmpm1"")

(command"_UCS""_W""")

(setvar"osmode"sb)

)

(2)定义粗糙度

(defunC:wbin(/sa)

(setqsa(getvar"osmode"))

(setvar"osmode"0)

(setqsc(getvar"DIMSCALE"))

(setvar"osmode"512)

(command"insert""ccd"pausescscpause)

(setvar"osmode"sa)

)

(3)定义序列号

(defunC:bub1(/p1p2p3schdhd1khsb)

(setqsb(getvar"osmode"))

(setvar"osmode"0)

(setqh(getint"\n序列号的个数:")

p1(getpoint"\nFirstpoint:")

)

(setvar"osmode"512)

(setqp2(getpointp1"\nSecondpoint:")

sc(getvar"DIMSCALE")

hd(*7sc)

hd1(*4sc)

)

(setvar"osmode"0)

(command"LAYER""S""03""""donut"0scp1"""line"p1P2"")

(if((carp2)(carp1))

(setqan10)

)

(if((carp2)(carp1))

(setqan1pi)

)

(setqp3(polarp2an1hd))

(command"line"p2P3"")

(setqp0p2

k2

)

(while(=kh)

(setqp2(list(carp2)(+(*8sc)(cadrp2)))

p3(polarp2an1hd)

)

(command"line"p2P3"")

(setqk(1+k))

)

(setqpt(list(/(+(car

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论