尘缘一生 发表于 2014-6-16 00:32:25

简单的代码,作用不一定小!

本帖最后由 尘缘一生 于 2014-6-18 06:22 编辑

说明:
      设计人员主要是加快设计效率的,对于镜像命令,我们许多时候,是要求镜像过去,最好还沾在鼠标上,移动到合适位置,下面提供4段小代码,由于不会GIF拷屏,有兴趣下载实验下:自己20年前的写的,一直使用。

      希望得到点明经币。可以不可以?

第一段:
          水平镜像,原来部分删除,镜像部分跟随鼠标,移动目标位置定位!
   第二段:
          垂直镜像,原来部分删除,镜像部分跟随鼠标,移动目标位置定位!
   第三段:
         水平镜像,原来部分保留,镜像部分跟随鼠标,移动目标位置定位!
   第四段:
            垂直镜像,原来部分保留,镜像部分跟随鼠标,移动目标位置定位!

       记得关闭“捕捉”与“正交”,程序内没写!

      我为什么构造了4个命令,因为设计人员,做的目的是唯一的,比如:你作水平镜像的时候,难道你还同时作垂直镜像不成,就追求最少的击键,假如合并一起,当你选择镜像时,还得多一个选择键了。;;--------------------------------------------------------------------------

(defun C:H-MR-MV (/ s pt2 pt3)
(command)
(setq s(ssget))
(setq pt2 (nth 1(grread 5)))
(setq pt3 (polar pt2 (* 0.5 pi) 2.5))
(command "MIRROR" s "" PT2 pt3 "Y")
(command "MOVE" s "" PT3)
)

;;---------------------------------------------------------------------------

(defun C:V-MR-MV (/ s pt2 pt3)
(command)
(setq s(ssget))
(setq pt2 (nth 1(grread 5)))
(setq pt3 (polar pt2 0 2.5))
(command "MIRROR" s "" PT2 pt3 "Y")
(command "MOVE" s "" PT3)
)

;;------------------------------------------------------------------------------

(defun C:H-MR-MV-N (/ s l n s1 pt2 pt3)
(command)
(setq s(ssget))
(setq pt2 (nth 1(grread 5)))
(setq pt3 (polar pt2 (* 0.5 pi) 2.5))
(setq s1(ssget "X"))
(command "MIRROR" s "" PT2 pt3 "N")
(setq s(ssget "X"))
(setq l(- (sslength s1) 1))
(setq n 0)
(while (<= n l)
    (setq nam (ssname s1 n))
    (if (= (ssmemb nam s) nam)
      (setq s(ssdel nam s))
   )   
   (setq n (+ n 1))
)   
(command "MOVE" s "" PT3)
)

;;------------------------------------------------------------------------------

(defun C:V-MR-MV-N (/ s l n s1 pt2 pt3)
(command)
(setq s(ssget))
(setq pt2 (nth 1(grread 5)))
(setq pt3 (polar pt2 0 2.5))
(setq s1(ssget "X"))
(command "MIRROR" s "" PT2 pt3 "N")
(setq s(ssget "X"))
(setq l(- (sslength s1) 1))
(setq n 0)
(while (<= n l)
    (setq nam (ssname s1 n))
    (if (= (ssmemb nam s) nam)
      (setq s(ssdel nam s))
   )   
   (setq n (+ n 1))
)   
(command "MOVE" s "" PT3)
)
;;--------------------------------------------------------------------------------截图下我CAD的这4个命令按钮图标:



补充录屏:第一次用,不理想:

664571221 发表于 2019-10-30 09:26:44

怎么不能捕捉呀第一次镜像的时候不能选择捕捉点吗你移动时候的捕捉点

happy336 发表于 2019-10-30 00:16:59

谢谢分享,学习了

langjs 发表于 2014-6-16 01:17:09

我知道你缺明经币了

twsyzx 发表于 2014-6-16 02:02:04

啥介绍都没啊

spp_wall 发表于 2014-6-16 08:29:38

要B才能看 ???????

429014673 发表于 2014-6-16 09:46:33

还是做下GIF,看下优势在哪里

bai2000 发表于 2014-6-16 10:23:45

能不能加个镜像点?

emk 发表于 2014-6-16 13:08:50

自己20年前的写的

杜阳 发表于 2014-6-16 13:16:37

你还是发源代码吗   给你明经币就行了为了好好学习 呵呵

依然低调 发表于 2014-6-16 17:14:48

(command) ;请教前辈这句的作用

本帖最后由 依然低调 于 2014-6-16 17:18 编辑

(defun C:V-MR-MV (/ s pt2 pt3)
(command);请问这句存在的作用
(setq s (ssget))
(setq pt2 (nth 1 (grread 5)))
(setq pt3 (polar pt2 0 2.5))
(command "MIRROR" s "" PT2 pt3 "Y")
(command "MOVE" s "" PT3)
)

依然低调 发表于 2014-6-16 17:29:25

依然低调 发表于 2014-6-16 17:14 static/image/common/back.gif


不是必须存在的是吧?谢了!
页: [1] 2 3 4
查看完整版本: 简单的代码,作用不一定小!