如何在AutoCAD Visual Lisp编辑器中创建与编译lisp程序

如何在AutoCAD Visual Lisp编辑器中创建与编译lisp程序,第1张

首先打开AutoCAD

2

在菜单栏点击工具。

3

选择AutoLISP--->Visual LISP编辑器

4

LISP的 *** 作介面就出现了,点击新建。

5

输入的介面已经出现,现在可在编辑器内输入你的程序。

END

方法/步骤2

1

也可以用命令启用编辑器,在命令栏输入vlide。

2

可得到相同效果。

做了隐藏和显示两个命令.

我编写的简单,功能不太全.你看着用吧

复制下列代码,创建acad.lsp.放在在CAD安装目录第一层文件夹下,可自动加载啊:

在命令行输入该命令hidsel,然后选择图元,结果没选的被改到隐藏层

(defun C:hidsel(/ all所有图元

xs非隐藏图元

yc隐藏图元

n nam dat)

(setvar "CMDECHO" 0)关闭命令回显

(command "_layer" "n" "临时隐藏图层" "")(command "_layer" "off" "临时隐藏图层" "")

(setvar "CMDECHO" 1)

(setq all (ssget "x"))选择所有

(setq xs (ssget))选择非隐藏图元

(setq n -1 yc all)运算隐藏图元

(repeat (sslength xs)

(setq n (+ n 1))

(setq nam (ssname xs n))返回第N个图元的名称

(setq yc (ssdel nam yc))

)

(setq N -1)隐藏

(repeat (sslength yc)

(setq N (+ n 1))

(setq nam (ssname yc n))返回第N个图元的名称

(setq dat (entget nam))DAT储存第N个图元数据

(entmod (subst (cons 8 "临时隐藏图层") (Assoc 8 dat) dat))将yc集合隐藏

)

(setq all nil xs nil yc nil n nil nam nil dat nil)清除数据占用内存

(princ)

)

显示所有图元

(defun c:shoal(/ all n nam dat)

(setq all (ssget "x"))选择所有

(setq N -1)隐藏

(repeat (sslength all)

(setq N (+ n 1))

(setq nam (ssname all n))返回第N个图元的名称

(setq dat (entget nam))DAT储存第N个图元数据

(entmod (subst (cons 8 "0") (Assoc 8 dat) dat))将yc集合隐藏

)

(setvar "CMDECHO" 0)

(COMMAND "PURGE" "LA" "临时隐藏图层" "Y" "Y" "")

(setvar "CMDECHO" 1)

(setq all nil n nil nam nil dat nil)清除数据占用内存

(princ)

)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12028753.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存