CAD中LISP程序使用方法

CAD中LISP程序使用方法
CAD中LISP程序使用方法

CAD中LISP程序使用方法

2007-08-06 19:13:32| 分类:学习园地 |字号订阅

1. 对于提供附件下载的,把附件下载就可以了

2. 对于提供的源LISP代码,把代码拷贝、粘贴到一个文件,自己起个名或者若程序里面注释推荐了文件名,就用推荐的,然后保存成扩展名是LSP的文件即可了。

LISP程序使用方法:

加载LISP

1. 可以使用APPLOAD命令,然后去找到要加载的LISP文件,加载即可。

2. 可以自己从文件管理器把LISP文件拖动到ACAD的图形窗口,也可以加载

3. 在命令行后用,(load "c:\\temp\\xxx.lsp")也可以加载,路径名请输入实际的路径。

另:对于一个LSP程序,(defun 后面的既是命令或者函数,一般程序应该有提示,若没有,标志符c:后面的单词是可以在ACAD下使用的命令,既可以在COMMAND:后面直接输入,即可执行。

CAD快速切换图层LISP代码(方法2)

给楼主发一个图层更改的lisp程序,按对应数字键就可以切换到相应的图层。很方便。

0————0

1————OBJ

2————6t

3————SCETR

。。。

8————BORDER

如果这些不是你想要的图层,将lisp用笔记本打开,把里边的OBJ,6t等图层名改为你想要的就可以了。以后要切换图层时,按相应的数字键即可。

(defun YH_chlayer (YH_layer / YH_S)

(if (null (tblsearch "LAYER" YH_layer))

(entmake (list

'(0 . "LAYER")

'(100 . "AcDbSymbolTableRecord")

'(100 . "AcDbLayerTableRecord")

(cons 2 YH_layer) ;图层名称

'(70 . 0) ;图层状态

'(62 . 7) ;图层颜色

'(6 . "bylayer") ;图层线型

)

)

)

(setq YH_S (cadr (ssgetfirst)))

(if YH_S

(command "CHPROP" YH_S "" "la" YH_layer "c" "bylayer" "") (setvar "clayer" YH_layer)

)

(princ)

)

(defun c:0 ()

(YH_chlayer "0")

)

(defun c:1 ()

(YH_chlayer "OBJ")

)

(defun c:2 ()

(YH_chlayer "6t")

)

(defun c:3 ()

(YH_chlayer "SCETR")

)

(defun c:4 ()

(YH_chlayer "HIDD")

)

(defun c:5 ()

(YH_chlayer "DIM")

)

(defun c:6 ()

(YH_chlayer "DASH")

)

(defun c:7 ()

(YH_chlayer "TEXT")

)

(defun c:8 ()

(YH_chlayer "BORDER")

)

#Cad

到上面一行为址,保存为lsp格式。

LISP 小程序,改变对象颜色

;;数字1

(defun C:1 ( / gp)

(setvar "cmdecho" 0)

(princ "\n★改变对象颜色为红色★")

(setq gp (ssget))

(if (/= gp nil) (command ".change" gp "" "p" "c" "1" "")) (princ "\nOK")

(princ)

);end defun C:1

;;数字2

(defun C:2 ( / gp)

(setvar "cmdecho" 0)

(princ "\n★改变对象颜色为黄色★")

(setq gp (ssget))

(if (/= gp nil) (command ".change" gp "" "p" "c" "2" "")) (princ "\nOK")

(princ)

);end defun C:2

;;数字3

(defun C:3 ( / gp)

(setvar "cmdecho" 0)

(princ "\n★改变对象颜色为绿色★")

(setq gp (ssget))

(if (/= gp nil) (command ".change" gp "" "p" "c" "3" "")) (princ "\nOK")

(princ)

);end defun C:3

;;数字4

(defun C:4 ( / gp)

(setvar "cmdecho" 0)

(princ "\n★改变对象颜色为青色★")

(setq gp (ssget))

(if (/= gp nil) (command ".change" gp "" "p" "c" "4" "")) (princ "\nOK")

(princ)

);end defun C:4

;;数字5

(defun C:5 ( / gp)

(setvar "cmdecho" 0)

(princ "\n★改变对象颜色为蓝色★")

(setq gp (ssget))

(if (/= gp nil) (command ".change" gp "" "p" "c" "5" "")) (princ "\nOK")

(princ)

);end defun C:5

;;数字6

(defun C:6 ( / gp)

(setvar "cmdecho" 0)

(princ "\n★改变对象颜色为紫色★")

(setq gp (ssget))

(if (/= gp nil) (command ".change" gp "" "p" "c" "6" "")) (princ "\nOK")

(princ)

);end defun C:6

;;数字7

(defun C:7 ( / gp)

(setvar "cmdecho" 0)

(princ "\n★改变对象颜色为白色★")

(setq gp (ssget))

(if (/= gp nil) (command ".change" gp "" "p" "c" "7" "")) (princ "\nOK")

(princ)

);end defun C:7

;;数字8

(defun C:8 ( / gp)

(setvar "cmdecho" 0)

(princ "\n★改变对象颜色为深灰色★")

(setq gp (ssget))

(if (/= gp nil) (command ".change" gp "" "p" "c" "8" "")) (princ "\nOK")

(princ)

);end defun C:8

;;数字9

(defun C:9 ( / gp)

(setvar "cmdecho" 0)

(princ "\n★改变对象颜色为灰色★")

(setq gp (ssget))

(if (/= gp nil) (command ".change" gp "" "p" "c" "9" "")) (princ "\nOK")

(princ)

);end defun C:9

相关主题
相关文档
最新文档