利用lisp将现有命令根据你的操作习惯设置好,提高效率

周站长
周站长
管理员, Keymaster
7749
文章
5
粉丝
图文教程评论3,687字数 519阅读1分43秒阅读模式
CAD自学网会员

很多命令的操作,都需要根据命令行提示进行多步选择设定,如镜像操作中的是否保留源对象,一般情况下,我们都是选择否,那么针对这一操作,其实已经默认y,但是每次进行镜像时,都需要选择一遍。

利用lisp将现有命令根据你的操作习惯设置好,提高效率-图片1

诸如此种情况,就可以通过lisp进行事先设置好,并设置好一个容易记忆的命令名,可以减少工作量,提高效率。

Lisp:对镜像命令设置

编写改良版镜像lisp程序的前提,是要知道cad中mirror命令是怎么操作的。

利用lisp将现有命令根据你的操作习惯设置好,提高效率-图片2

所以,代码需要实现三个问题:

  1. 选择对象。
  2. 指定镜像线的两点。
  3. 确认删除源对象。

按照三个问题的解决顺序,进行顺序编写代码如下。

利用lisp将现有命令根据你的操作习惯设置好,提高效率-图片3

(defun C:MM()
  ;使用方法:加载,命令行输入mm
  ;实现功能:执行镜像操作并删除源对象
  (setq aa (ssget))
  (setq pt1 (getpoint "\n指定镜像第一点:"))
  (setq pt2 (getpoint pt1 "\n指定镜像第二点:"))
  (command "mirror" aa "" pt1 pt2 "y" )
  (prin1)
)

为了便于感兴趣的同学,进一步学习,解释代码行如下:

(setq aa (ssget)):ssget实现从图纸中选择对象,setq是将选择集赋值给aa,为了在代码中传送选择集,以实现操作。

(setq pt1 (getpoint "\n指定镜像第一点:")):getpoint实现在屏幕中指定第一点,并将第一点赋值给pt1。

(setq pt2 (getpoint pt1 "\n指定镜像第二点:")):getpoint实现在屏幕中指定第二点,并将第一点赋值给pt2,指定第二点需要有了第一点存在才能有第二点的实现,所有这里会出现pt1。

(command "mirror" aa "" pt1 pt2 "y" ):运行mirror镜像命令,选择对象aa,指定镜像线pt1 pt2,确认删除源对象y。

代码运行结果用截图无法更好的表达,现将运行以动图形式演示如下。

利用lisp将现有命令根据你的操作习惯设置好,提高效率-图片4

下次,使用镜像操作,少个确认删除,你会操作更快。

(完)

CAD自学网公众号
微信扫一扫关注我,每天分享各种免费设计干货小技巧。
weinxin
我的微信
微信号已复制
育设学堂服务号
微信扫一扫关注我,各种设计实战全套视频教程在线学。
weinxin
我的公众号
公众号已复制
育设学堂建筑学院
周站长
  • 本文由 周站长 发表于2023年4月7日 00:08:58
  • 转载请务必保留本文链接:https://www.cadzxw.com/53267.html
育设学堂CAD课程
匿名

发表评论

匿名网友
确定

拖动滑块以完成验证