飞雪神光 发表于 2024-1-3 21:54:15

277283904 发表于 2024-1-3 15:29
(defun c:QQ()(command-s "_mirror" (ssget "_+.:E:S") "" "M2P" pause))
是这样运行吗老大,但是运行不 ...

低版本CAD 把-s去掉

xyp1964 发表于 2024-1-4 01:09:20





(defun c:tt ()
(if (and (setq ss (ssget))
           (setq s1 (car (entsel "\n选择竖线1: ")))
           (setq s2 (car (entsel "\n选择竖线2: ")))
      )
    (progn
      (setq p1 (vlax-curve-getStartPoint s1)
          p2 (vlax-curve-getStartPoint s2)
          p3 (mapcar '(lambda (x y) (* (+ x y) 0.5)) p1 p2)
          p4 (polar p3 (* pi 0.5) 10)
      )
      (command "_mirror" ss "" p3 p4 "")
    )
)
(princ)
)


277283904 发表于 2024-1-4 09:34:43

xyp1964 发表于 2024-1-4 01:09


选择了两条竖线之后不会镜像过去,CAD版本是2007
我只是想单纯的想把M2P简化掉,需要那么复杂吗;P

277283904 发表于 2024-1-4 13:37:26

277283904 发表于 2024-1-4 09:34
选择了两条竖线之后不会镜像过去,CAD版本是2007
我只是想单纯的想把M2P简化掉,需要那么复杂吗

就是按镜像命令后再按M2P键,点击两条竖线得出两条线之间的中线作为镜像线。

277283904 发表于 2024-1-4 14:07:19

xyp1964 发表于 2024-1-4 01:09


请问你的录屏是用什么软件录制的呢,可否提供一下

277283904 发表于 2024-1-5 09:14:32

刚看了一下,M2P不是镜像的附带命令,怎么把镜像和M2P两个命令组合起来

lidaxiu 发表于 2024-1-5 10:07:56

(defun C:ga()
(command "line" "m2p" pause pause))
(prompt "\n欢迎来到二次开发世界")
(princ)

zxp2007 发表于 2024-1-5 10:17:57

上面发的源码 是能满足你说的功能

start4444 发表于 2024-1-5 11:03:00

277283904 发表于 2024-1-5 09:14
刚看了一下,M2P不是镜像的附带命令,怎么把镜像和M2P两个命令组合起来

m2p 是捕捉两点的中点,只要有捕捉需求的命令都能用,你通过代码根本不需要调用他,直接求两点中点就完了,看沙发楼的中点函数

咏郡 发表于 2024-1-5 20:49:59

277283904 发表于 2024-1-3 17:18
我是想按1个键直达M2P的命令,不想又按镜像命令后,还要按M2P命令,各位大佬有办法吗?

(defun c:QQ ()(command"MIRROR""M2P" pause))
看看是不是你想要的
页: 1 [2] 3
查看完整版本: 镜像的M2P命令怎么写