按圆心重合
如图片所示,要在圆心处重合。请高手帮忙!(defun c:tt5 (/ en i pt ss)
(setq ss (ssget '((0 . "arc,circle"))) en (entsel "\n选择基准对象:") pt (cdr (assoc 10 (entget (car en)))))
(setq i -1)
(while (setq en (ssname ss (setq i (1+ i))))
(command "move" en "" "non" (cdr (assoc 10 (entget en))) "non" pt)
)
(princ)
) (defun c:tt ()
(defun xyp-dxf (code e) (cdr (assoc code (entget e))))
(if (and (setq s0 (car (entsel "\n选择基准对象: ")))
(setq ss (ssget '((0 . "arc,circle"))))
)
(progn
(command "undo" "be")
(setq os (getvar "osmode"))
(setvar "osmode" 0)
(setq pt (xyp-dxf 10 s0))
(setq i -1)
(while (setq s1 (ssname ss (setq i (1+ i))))
(setq p1 (xyp-DXF 10 s1))
(command "move" s1 "" p1 pt)
)
(command "undo" "e")
)
)
(setvar "osmode" os)
(princ)
) (defun c:tt (/ e m s ne)
(setq os (getvar "osmode"))
(setvar "osmode" 0)
(if (and (setq e (entsel "\n选择基准对象:")
s (ssget '((0 . "arc,circle")))
)
)
(progn
(setq m (cdr (assoc 10 (entget (car e)))))
(foreach x (vl-remove-if 'listp (mapcar 'cadr (ssnamex s)))
(setq ne (subst (cons 10 m) (assoc 10 (entget x)) (entget x)))
(entmod ne)
)
)
)
(setvar "osmode" os)
(princ)
)
新手来练习练习 这个有什么用,介绍一下啊
页:
[1]