原地镜像180度,看有没有大神帮忙出手
求助各位大神,看有空是否可以实现原地180度镜像,图片及附件已上传1.选择文件
2.空格(以文件左右之间的中心镜像180度)如图片所式
本帖最后由 表骑马实开车 于 2023-3-8 11:40 编辑
(vl-load-com)
(defun c:tt (/ os ss box ssmid p3)
(setq os (getvar "osmode"))
(setvar "cmdecho" 0)
(setvar "osmode" 0)
(if (setq ss (ssget))
(progn
(setq box (LM:ssboundingbox ss)
ssmid (mapcar '*
(mapcar '+ (car box) (cadr box))
'(0.5 0.5 0.5)
)
p3 (polar ssmid (* 1.5 pi) 10)
)
(command "mirror" ss "" ssmid p3 "y")
)
)
(setvar "osmode" os)
(setvar "cmdecho" 1)
(princ)
)
;; 选择集边界框 - Lee Mac
;; 返回一个列表的左下角和右上角的 WCS 坐标
;; 包围提供的选择集中所有对象的矩形框。
;; sel - 返回边界框的选择集
(defun LM:ssboundingbox (sel / idx llp ls1 ls2 obj urp)
(repeat (setq idx (sslength sel))
(setq obj (vlax-ename->vla-object (ssname sel (setq idx (1- idx)))))
(if (and (vlax-method-applicable-p obj 'getboundingbox)
(not (vl-catch-all-error-p
(vl-catch-all-apply
'vla-getboundingbox
(list obj 'llp 'urp)
)
)
)
)
(setq ls1 (mapcar 'min
(vlax-safearray->list llp)
(cond (ls1)
((vlax-safearray->list llp))
)
)
ls2 (mapcar 'max
(vlax-safearray->list urp)
(cond (ls2)
((vlax-safearray->list urp))
)
)
)
)
)
(if (and ls1 ls2)
(list ls1 ls2)
)
)
一个旋转180° ,一个是旋转0°才能达到要求 CAD自带的镜像不好用吗?? 本帖最后由 liunian0524 于 2023-3-8 08:14 编辑
论坛好像有 你这说的好像不是很清楚,第一个图应该是以Y轴镜像的,第二个图应该是以x轴镜像的。
你说的图层是特定图层吗?某个图层就以Y轴镜像,某个图层就以X轴镜像?
另的网友写的,你看下是不是要这样?
(defun c:MMI (/cmn osnss i n ssn ssndata ssnsty pt ptmin ptmax cenpt
*error* msg)
(defun *error* (msg)
(if
(wcmatch msg "; 错误:,函数被取消")
(progn
(setvar 'cmdecho cmn)
(setvar 'osmode osn)
(princ)
)
(princ msg)
)
)
(setq cmn (getvar 'cmdecho))
(setq osn (getvar 'osmode))
(setvar 'cmdecho 0)
(setvar 'osmode 0)
(princ"\n选择要原地反转的对象:")
(setq ss (ssget ))
(setq i 0)
(setq n (sslength ss))
(repeat n
(setq ssn (vlax-ename->vla-object (ssname ss i)))
(vla-GetBoundingBox ssn 'ptmax 'ptmin)
(setq pt (mapcar '(lambda (a b) (/ (+ a b) 2))
(vlax-safearray->list ptmax)
(vlax-safearray->list ptmin)
)
)
(vlax-invoke-method
ssn
'rotate
(vlax-3d-point pt)
pi
)
(setq i (1+ i))
)
(command "ucs" "")
(setvar 'cmdecho cmn)
(setvar 'osmode osn)
(princ "\n命令:MMI")
(princ)
)
小毛草 发表于 2023-3-8 11:02
另的网友写的,你看下是不是要这样?
(defun c:MMI (/cmn osnss i n ssn ssndata ssnsty pt ptmin ...
这个试用了一下
感觉好象是旋转180°
应该不是镜像 fangmin723 发表于 2023-3-8 07:44
CAD自带的镜像不好用吗??
自带的镜像好用呀,就是要自己定义中心线原地镜像,我就是想输入命令直接让它镜个像,就不用自己定义镜像的两点了呢 小毛草 发表于 2023-3-8 11:02
另的网友写的,你看下是不是要这样?
(defun c:MMI (/cmn osnss i n ssn ssndata ssnsty pt ptmin ...
这个效果不是我想要的那种哦,谢谢您
页:
[1]
2