讲堂第三课《CAD制图技巧、经验交流》
chengxiang020
2006年04月02日 22:01:40
来自于学生专栏
只看楼主

网易建筑大讲堂第三期讲座[主 题]:CAD制图技巧、经验交流 [内容简介]:本讲座以CAD经验交流为主,主要放在如何提高作图速度上,作者给大家介绍如何通过对CAD中.lsp文件的修改来快速的绘图提高绘图效率。[演讲人]:飞龙一号 [时 间]:06.04.01晚8:30 【声明】:本讲义中的.lsp文件为飞龙原创,著作权归飞龙所有!本讲义版权属于网易建筑.飞龙一号所有,转载请注明来源!

网易建筑大讲堂第三期讲座
[主 题]:CAD制图技巧、经验交流
[内容简介]:本讲座以CAD经验交流为主,主要放在如何提高作图速度上,作者给大家介绍如何通过对CAD中.lsp文件的修改来快速的绘图提高绘图效率。
[演讲人]:飞龙一号
[时 间]:06.04.01晚8:30

【声明】:本讲义中的.lsp文件为飞龙原创,著作权归飞龙所有!本讲义版权属于网易建筑.飞龙一号所有,转载请注明来源!



1143986978700.JPG

免费打赏
chengxiang020
2006年04月02日 22:10:19
2楼
------------------------------------------------------
【2006-04-01 19:26:36】
------------------------------------------------------
为了这一节课,我从公司打的士过来的。还特别请我们公司的同事帮我做饭呢,哈哈(整理者按:俄代表大家向飞龙致敬!为了讲座,飞龙一号在头天晚上准备到了将近凌晨4点钟,再次感谢飞龙兄的无私奉献)。离讲座开始还有63分钟,我们先聊会,大家有什么问题可以提出来。

今天我把主要放在提速上,修改:acad.pgp 有多少人会改?以后这个课会发到贴上,大家把我免费送给大家的LSP复制或者自己输入到指定位置,经常使用,你就知道什么叫如何提速了!我的LSP文件都是我自己收集及修改的,属于原创。

【问】: 什么LSP文件?
【答】:lsp文件就是CAD的二次开发。

【问】:请问 你讲的 lsp、pgp 都是 cad 通用的吗?
【答】:是的。

【问】:lsp文件的功能是什么呢?
【答】:举个例子,大家计算面积有哪些步骤?你输入AREA 然后要不要输入O呀?我编写的LSP文件就直接输入:AE ,点你要查询的面积就得到结果!我是不是比你快呢?

【问】:适用那些版本?
【答】:对于任一版本都行。

【问】:02 精简版能符合讲座要求吗?
【答】:任何版本都行。

【问】:以前在工具--自定义--编辑自定义文件--acad.pgp,问一下CAD04里是在哪个里面改快捷键啊,我还没有改过?
【答】(本答案由9807893提供)我帮他回答你,你去搜索文件中搜索.pgp,在用记事本打开就可以改。acad.pgp 这个文件的位置,XP系统的在C:\Documents and Settings\{Administrator}\Application Data\Autodesk\AutoCAD 2005\R16.1\chs\Support里面。
回复
chengxiang020
2006年04月02日 22:14:20
3楼
-----------------------------------------------------
【2006-04-01 20:29:36】
-----------------------------------------------------
讲课时间到了,我计划讲课时间为二十分钟,一个小时互动。

【一】如何快速的绘图

一、熟悉对CAD中基本操作命令/快捷图标的使用
这一点大多数人都知道,古人云:熟能生巧。基本命令与快捷图标便是CAD中大家最熟悉的,也应该能熟练掌握了,所以不详谈了。


二、 ACAD.PGP文件修改
大家都知道LINE命令在COMMAND输入时可简化为L,为何会如此呢?因为在AutoCAD中有一个加密文件ACAD.PGP中定义了LINE命令的简写,先找出这个文件打开它。找到"These examples include most frequently used commands."的提示语,在其下的几行文字就可对简写的定义,记住它的左列是简写命令的文字实现你可以根据你的需要进行修改(当然是你比较熟悉的英文缩写喽),它的右列是默认的命令请不要随意修改。相信这能为你提高一定的速度。

三、对图形夹点操作
夹点,你用过吗?当你用鼠标左键点击图形,图形上便会出现许多方框这些就是夹点。通过控制夹点便能进行一些基本的编辑操作。如:COPY,MOVE,改变图形所在的图层等基本操作。而且不同的图形,还有其特殊的操作。如:直线有延伸操作等。

四、大量使用修改命令
对于CAD绘图工作人员来说,一幅图60%--70%是修改只有30%--40%是作图,这一点并不难理解。从图形构成来看图形只有直线与曲线这两种,而曲线又由大量的圆进行剪切而成的,所以一张图最终由直线和圆组成。既然如此作图只需先画圆或直线并确定位置,然后进行一系列操作如:OFFSET, TRIM, FILLET, ARRAY, CHAMFER等,来实现图形。

五、构建图块来简化绘图工作
图块是CAD操作中比较核心的工作,许多程序员与绘图工作者都建立了各种各样的图块。由于他们的工作给我们的带来了简便,我们能像砖瓦一样使用这些图块。如工程制图中建立各个规格的齿轮与轴承;建筑制图中建立一些门、窗、楼梯、台阶等以便在绘制时方便调用。
1. 建立图样原型的DWG文件并保存(在WBLOCK命令下的操作,要建立图块的基点,以便以后调用);
2. 从INSERTION中向需要图块的图形中加入图块。
通过这两步就能建立并运用图块了。图块的运用将进一步的提高绘图的速度。

【附注】:
1.BREAK将实体两点截开,在选取第二点时如用“@”来回答,可由第一点将实体分。
2.AutoCAD R14的BONUS中有一个ARCTEXT命令,可实现弧形文本输出,使用方法为先选圆弧,再输入文本内容,按OK。
回复
chengxiang020
2006年04月02日 22:15:15
4楼
【二】、提高绘图效率--熟悉AutoCAD默认快捷键

如果你想提高自己的绘图效率,我想只有一个办法了,就是熟练的操作。星际争霸中高手都用键盘操作来提高自己的速度,AutoCAD的熟练操作同样需要键盘输入。

下面的列表给出AutoCAD默认快捷键:
F1:联机帮助
F2:打开或关闭命令行窗口
F3或Ctrl+F:打开或关闭对象捕捉(OSNAP)
F4或Ctrl+T:打开或关闭数字化仪
F5或Ctrl+E:在等轴测平面位置(左、上和右)之间切换
F6或Ctrl+D:打开或关闭坐标显示
F7或Ctrl+G:栅格显示的开关
F8或Ctrl+L:正交模式的开关
F9或Ctrl+B:捕捉的开关
F10或Ctrl+U:极轴追踪的开关
F11或Ctrl+W:对象追踪的开关
Esc:取消命令
Delete:删除选择的对象
PageDown/PageUp:命令窗口中逐屏查看
向上箭头:显示上一个执行过的命令
向下箭头:显示命令行下一条命令(如果存在)
Ctrl+A:编组的开关
Ctrl+C:赋值选择的对象
Ctrl+M:重复上一命令
Ctrl+J:创建超级链接
Ctrl+N:新建文件
Ctrl+O:打开一个文件
Ctrl+P:打印图形
Ctrl+S:保存文件
Ctrl+V:粘贴剪贴板上的对象
Ctrl+X:剪切选择的对象
Ctrl+Z:撤销上一次操作的结果
Ctrl+方向键:在图形窗口中移动光标(微动)
Ctrl+1:属性窗口
Ctrl+2:设计中心
Ctrl+3:工具选项板的开关

【重要说明】
C:\Documents and Settings\flfuthpss\Application Data\Autodesk\AutoCAD 2006\R16.2\chs\Support 这个是默认CAD快捷键的存放地。但是对于大家来说,以上的路径为我的CAD存放地,大家的,应该把flfuthpss改为你的用户。如果不是AutoCAD 2006,你就找你所使用的CAD版本下面的support,再把AutoCAD 2006\R16.2改为你自己CAD对应的版本。一般来说,任何CAD版本都有两个support文件夹,你们可以通过查找(你也可以在工具--选项--文件--工作支持文件搜索路径--找到他的位置)。
回复
chengxiang020
2006年04月02日 22:16:38
5楼
【三】、提高绘图效率--修改AutoCAD默认快捷键,简化操作步骤

对于很多朋友说,为什么我看到别人按键很快完成任务,我为什么这么慢呢。飞龙告诉你,你不懂的如何修改快捷键!

设置CAD快捷键的两个文件,这两个文件分别:acad.lsp和acad.pgp。
l *line 这个就是用L来代line命令。但是对于CAD老菜鸟来说,一般会认为左手键盘,右手鼠标。我就是把R设置为绘线,如下:r *line。这个就是在acad.pgp下面修改的例子。
F, *FILLET 这个是倒圆角。
但是说到这里,这个文件夹只能修改一个命令,还不能带符件的,下面我们就引进acad.lsp文件来讲讲(因为群里不能说上传图片,你们现在看到的都是我现场打字给大家的)。

首先讲一个,对于计算面积的朋友都知道是用AREA这个命令,但是还要输入:“O”,对于很多朋友都说不方便,为了解决这个问题,飞龙就用记事本编写下面一段LSP:
(DEFUN C:AE () (COMMAND "AREA" "O") (PRINC))
这样对于大家来说,计算面积只要左手输入:AE,点你要查询的面积就可以呢。

对于绘制剖面图及立面图的朋友来说,经常会用到xline,但是它下面有几个选项,如果把它下面的选项独立和命令一起使用呢:
(DEFUN C:ve () (COMMAND "xline" "v") (PRINC)) 这个就是绘制垂直的。
(DEFUN C:va () (COMMAND "xline" "h") (PRINC)) 这个就是绘制水平的。

我相信大家要经常多动大脑想简单的方法,这个是成熟的LSP,大家在工作中及学习中用到就行。
(DEFUN C:va () (COMMAND "xline" "h") (PRINC)) 对于这个LSP的快捷键就是 va,大家如果喜欢别的按键可以设置你们喜欢的。我所讲的所有LSP,快捷键在(DEFUN C:()……)中间的 ()。

回复
chengxiang020
2006年04月02日 22:17:29
6楼
暂停一下,大家自己的问题先说一下,我好根据大家需要进行修进。我在这里都要教会大家在工作及学习中如何修改如何使用。

典型问题:
【问】:lsp有什么作用呢?
【答】:lsp的使用就能使CAD提速。

【问】:怎么提啊?
【答】:通过修改lsp文件,来修改系统默认的快捷键,设置符合大家操作习惯的快捷键,让键盘设计得心应手以次来提高作图速度!大家如果听完后,自己学的编,就知道了。

【问】:在那里写这个文件呢?
【答】:新建个记事本文本,在记事本中输入就可以呢,保存时输入acad.lsp。

【问】:你是说保存成cad.lsp格式?存放在那个位置呢?
【答】:存放到support文件夹内就可以了。

【问】:在工具栏空白处--鼠标右键---自定义---其中的键盘选项---修改菜单----倒角---输入新的快捷键也可行啦!
【答】:你说的这是修改pgp文件(前面有提到)。区别在于:acad.pgp只能修改单个命令的快捷键,但是autolisp 语言,它不但能改单个命令也能更多内容。

【问】:你拿个示例来讲一下啊 ?
【答】:由于大家是第一次接触lsp文件,所以我只能从简单到复杂,还拿前面说过的计算面积的例子来说吧:
1、命令: area
指定第一个角点或 [对象(O)/加(A)/减(S)]: o
选择对象:
面积 = 63975.0977,周长 = 1044.2022
2、命令: ae
指定第一个角点或 [对象(O)/加(A)/减(S)]: E
选择对象:
选择对象:
面积 = 63975.0977,周长 = 1044.2022
这个就是计算面积,第一个就是没有修改前的,后一个就是修改后的,修改前要输入:area o ,修改后只要输入:ae 就可以了,是不是更加简单?

【问】:我把14里自己原来用习惯的快捷健能改到04里吗?我用04其他专业用14我还需要分两次转吗?
【答】:你把你CAD R14下的acad.lsp和acad.pgp,复制到04两个support文件下就可以了。
回复
chengxiang020
2006年04月02日 22:18:22
7楼
大家还有没有什么问题?如果没有,我想继续。
好了,大家安静,我继续了。
-----------------------------
实例1)
(DEFUN C:B () (COMMAND "BREAK" pause "F" pause "@0,0") (PRINC))
这个就是打断后,分两根线,但是不会删除中间的,本来要输入break 然后再输入@,但是有这个之后,就可以直接输入B就可以了。
-----------------------------
实例2)
(DEFUN C:CE (/ ss)
(princ "\nSelect objects: ")
(setq ss (ssget))
(setq n (sslength ss))
(COMMAND "COPY" ss "" "M" "") (repeat n (COMMAND "" COPY "" ""))
)
这个就是多重复制的快捷键:CE,(你可以改为你自己喜欢的键,只需将上面的CE改为你喜欢的就可以了),这个快捷键可以解决多重复制要输入M的烦心事,但是对于CAD 2006以后,系统自带多重复制。
----------------------------
实例3)
(defun chgterr (s)
(if (/= s "Function cancelled") ; If an error (such as CTRL-C) occurs
(princ (strcat "\nError: " s)) ; while this command is active...
)
(setq p nil) ; Free selection set
(setq *error* olderr) ; Restore old *error* handler
(princ)
)

(Defun C:RRT ()
(setvar "cmdecho" 0)
(princ "飞龙提醒你请选择原文字:")
(setq dat1 (entget (car (entsel))))
(setq dat2 (cdr (assoc 1 dat1)))
(setq a (ssget ’((-4 . "<OR")
(0 . "text")
(0 . "Mtext")
(-4 . "OR>"))
)
)
(setq L 0
N (sslength a)
)
(While (< L N)
(setq b (ssname a L))
(setq Vdat (entget b))
(setq Vtext (assoc 1 Vdat))
(setq Rutext (cdr Vtext))
(setq Rutext dat2)
(setq Rutext (cons 1 Rutext))
(setq Vdat (subst Rutext Vtext Vdat))
(entmod Vdat)
(setq L (1+ L))
)
(setvar "cmdecho" 1)
(setq *error* olderr)
)
对于一些图纸要出图时,图名及图框下面的图名不一样的情况下,你有上面这个LSP文件,只要输入RRT,然后先选择正确的,然后再点错误的就可以改为两个正确的。打个比方:一层平面图,但是图框下的图为:网易土木在线,你只要先输入:rrt,然后先点一层平面图,然后再点网易土木在线,看到的结果就是两个一层平面图。我相信这个能帮到大家。


LSP文件也可以改单个命令如下:(DEFUN C:D () (COMMAND "DDEDIT") (PRINC)) 这个lsp文件的含义是DDEDIT修改文字的命令只要输入D就可以了,其它单个命令都是相应改写。
回复
chengxiang020
2006年04月02日 22:19:16
8楼
下面我们来讲讲标注的快捷键如何修改:
(DEFUN C:DH () (COMMAND "DIM1" "HORIZONTAL")(PRINC)) 这个LSP文件就是修改水平标注快捷键:DH,很方便也好记,原来在命令栏:dim回车,再输入HOR才能的,现在只要你听了及会用,你只要输入DH 。
(DEFUN C:DV () (COMMAND "DIM1" "VERTICAL")(PRINC)) 这个就是垂直标注:只要你输入:DV,对了,大家如果不太喜欢DV的话,你也可以设置别的字母,其他的保持不变。

【注意】:lsp语言的任务半个括号都有一定的含义,请不要多或少输入,哪样的话,你就不能使用这个命令。

说了水平及垂直标注,其他的都是方法一样
回复
chengxiang020
2006年04月02日 22:19:50
9楼
下面说说单个改变颜色:
(DEFUN C:C1 ()
(SETVAR "CMDECHO" 0)
(PRINC "SELECT Obj. Color be 1#: ")
(SETQ SS(SSGET))
(COMMAND "CHANGE" SS "" "PROPERTIES" "C" "1" "") (SETVAR "CMDECHO" 1) (PRINC))
这个LSP的含义是将你所选物体的颜色改为红色,只要你输入:C1。使用方法:在命令栏中输入:C1,然后选择物体,你会发现,怎么一下子变为红色也就是1#色。

(DEFUN C:C2 ()
(SETVAR "CMDECHO" 0)
(PRINC "SELECT Obj. Color be 2#: ")
(SETQ SS (SSGET))
(COMMAND "CHPROP" SS "" "C" "2" "") (SETVAR "CMDECHO" 1) (PRINC))
相同的道理,这个就是把你选择的物体变成2#色,黄色,仔细观察的朋友会发现,你改为255中任何一个色只要修改。

(DEFUN C:C2 ()
(SETVAR "CMDECHO" 0)
(PRINC "SELECT Obj. Color be 2#: ")
(SETQ SS (SSGET))
(COMMAND "CHPROP" SS "" "C" "2" "") (SETVAR "CMDECHO" 1) (PRINC))
只要修改C、 2# 、"C" "2"。

同样可以修改:
(DEFUN C:C3 ()
(SETVAR "CMDECHO" 0)
(PRINC "SELECT Obj. Color be 3#: ")
(SETQ SS (SSGET))
(COMMAND "CHPROP" SS "" "C" "3" "") (SETVAR "CMDECHO" 1) (PRINC))
……
(DEFUN C:C8 ()
(SETVAR "CMDECHO" 0)
(PRINC "SELECT Obj. Color be 8#: ")
(SETQ SS (SSGET))
(COMMAND "CHPROP" SS "" "C" "8" "") (SETVAR "CMDECHO" 1) (PRINC))
(DEFUN C:C9 ()
(SETVAR "CMDECHO" 0)
(PRINC "SELECT Obj. Color be 9#: ")
(SETQ SS (SSGET))
(COMMAND "CHPROP" SS "" "C" "9" "") (SETVAR "CMDECHO" 1) (PRINC))

-------------------------------------------------
【提示】:飞龙一号在17楼对本步骤内容做了补充,请参阅!
回复
chengxiang020
2006年04月02日 22:20:27
10楼
------------------------------------------------------
【2006-04-01 21:24:34】
------------------------------------------------------
互动时间到,大家可以积极发言,上了一个小时了,不好意思。本来有很多图片的,但是QQ,不允许,所以,以上内容由我一个字一个字打进来的。希望我能帮到大家提高一点速度 。

典型问题:
【问】:偶还是有些一些不明白有时候输入一个命令,比如"z"然后再输入"e"才可以实现"zoom extents"。有没有什么好办法可以将一些长用的命令都集成在一个acdc.pgp里啊?
【答】:这个问题到LSP可以很简单解决,lsp文件:(DEFUN C:ZE () (COMMAND "ZOOM" "E") (PRINC)) 只要输入:ze 就可以了。

【问】:可你上面讲的这些不都是要建立独立的文件才可以实现那些快捷命令的吗?是不是每改一个就要存放一个文件?
【答】:不是的。我说的只要是LSP文件,都可以放到一个文件内。(补充:对于上面所讲的所有LSP文件只要放在acad.lsp文件里面就行呢,不要独立放,这样对管理文件不方便--飞龙一号)
回复
chengxiang020
2006年04月02日 22:21:31
11楼
自由讨论期间,罂粟/mg凄美朋友提供的值得供大家参考的个人经验:

在AutoCAD中的菜单源文件为.mnu文件,将其修改可将自己的命令加入菜单中,再用menu命令装入,可参加AutoCAD帮助了解菜单文件格式。图标工具条中加入自己的命令相对简单,可在工具条上点右键,在toolbar对话中,点new按钮,输入工具条后,一个新工具条产生,再选Customize按钮,选定custom,将空按钮拖入工具条中,再在空按钮上按右键,这样就可定义自己的按钮图标和命令。
回复

相关推荐

APP内打开