【捣鼓出来了】求修改
本帖最后由 yangchao2005090 于 2018-7-25 21:25 编辑(defun c:tt(/ x k s n m en r)
(vl-load-com)
(setq x(getangle"\n输入需要旋转的角度<归0>:"))
(if(null x)(setq x 0 k nil) (setq k t))
(setq s(ssget'((0 . "INSERT,text,mtext"))))
(if s
(progn
(setq n(sslength s)m 0)
(while(< m n)
(setq en(ssname s m)
m(1+ m))
(if k(setq r (+ (cdr(assoc 50 (entget en))) x))(setq r x))
(vla-put-Rotation (vlax-ename->vla-object en) r)
)
)
)
(princ)
)您好,这是论坛的edata的一段代码,但是默认是归零的,如果改成180,非水平方向的箭头旋转不是180度,请问如何修改能默认成180度呀,也就是掉个头,工作中有时需要反向,不是归零
(defun c:tt(/ x k s n m en r)
(vl-load-com)
(setq s(ssget'((0 . "INSERT,text,mtext"))))
(setq x(getangle"\n输入需要旋转的角度:"))
(if(null x)(setq x 180))
(setq x pi k nil)(setq k t)
(if s
(progn
(setq n(sslength s)m 0)
(while(< m n)
(setq en(ssname s m) m (1+ m))
(if k(setq r (+ (cdr(assoc 50 (entget en))) x))(setq r x))
(vla-put-Rotation (vlax-ename->vla-object en) r)
)
)
)
(princ)
) (setq x(getangle"\n输入需要旋转的角度:"))
(if(null x)(setq x 180))
(setq x pi k nil)(setq k t)
这倒底是想干嘛子?
最终结果是什么都不用输入同,直接X=PI,K=T了、
既然K都是T了,那这段也不用IF了(if k(setq r (+ (cdr(assoc 50 (entget en))) x))(setq r x)) 作者原意是
(if(null x)(setq x 0 k nil) (setq k t))
如果没X,(setq x 0 k nil)
如果有X,(setq k t) evayleung 发表于 2018-7-25 23:32
(setq x(getangle"\n输入需要旋转的角度:"))
(if(null x)(setq x 180))
(setq x pi k nil)(setq k t)
就是想默认180,什么都不用输入呀,其他角度用不到,初学这个,只会改改,如果有不对的,希望多多指教 本帖最后由 namezg 于 2018-7-26 15:33 编辑
;原代码有点啰嗦,我改了一下,两种不知你要哪一种(defun c:tt (/ s x n en r)
(vl-load-com)
(setq s (ssget '((0 . "INSERT,text,mtext"))))
(setq x (getangle"\n输入需要旋转的角度<180>: "))
(if (and s (/= x 0))
(repeat (setq n (sslength s))
(setq en (ssname s (setq n (1- n))))
(if x
(setq r (+ (cdr(assoc 50 (entget en))) x))
(setq r pi)
)
(vla-put-Rotation (vlax-ename->vla-object en) r)
)
)
(princ)
)
(defun c:tt (/ s x n en r)
(vl-load-com)
(setq s (ssget '((0 . "INSERT,text,mtext"))))
(if (not (setq x (getangle"\n输入需要旋转的角度<180>: ")))
(setq x pi)
)
(if (and s (/= x 0))
(repeat (setq n (sslength s))
(setq en (ssname s (setq n (1- n))))
(setq r (+ (cdr(assoc 50 (entget en))) x))
(vla-put-Rotation (vlax-ename->vla-object en) r)
)
)
(princ)
)
namezg 发表于 2018-7-26 15:18
;原代码有点啰嗦,我改了一下,两种不知你要哪一种(defun c:tt (/ s x n en r)
(vl-load-com)
...
第二种正是想要的,太感谢了
页:
[1]