|

楼主 |
发表于 2012-12-3 14:37
|
显示全部楼层
自己修改了一下7 h5 R# X, `: d/ r6 A; R" Z
defun C:jx(/ ss len a o1 o2 o3 o4 p1 p2);定义参数' n+ V" K; a) ?# O
(setq ss (ssget));选取文本; D. D4 t0 [ a) K: w9 z
(setq ss (ssadd));选取文本! @9 s6 s, i6 ^4 m4 ?3 ]
(setq len (sslength ss));读取文本长度8 X* e% }2 h8 ^ F! c2 E
(setq a (entget ss));将文本变成一个合集
0 u5 C* ?5 I0 N( G: B(setq o1 (+ (cadr (assoc 10 a))));得到文本插入点x坐标的和! t# \+ a# N* \. S: I" B2 K
(setq o2 (/ (o1 len)));求的x坐标的平均值& `/ h4 W6 G' U1 G
(setq o3 (+ (cadr (assoc 20 a))));得到文本插入点y标的和: \ f. b5 m% D* h' [/ @9 z
(setq o4 (/ (o3 len))))));求的y标的平均值2 _/ R- f4 K x
if(=1 1)(progn
5 U: U9 Y: k8 D8 r7 S# i(cond ((=(assoc 10 ss) o2) ((setq p1 polar(o1,o3)) (setq p2 polar(o1,(+(o3 1))))如果x坐标相同,则按照Y的平均值的那条线镜像 E5 k8 ~3 s9 c# x
(cond ((=(assoc 2 ss) o4) ((setq p1 polar((+(o2 1),o3)) (setq p2 polar(o2,o3)))如果y标相同,则按照x平均值的那条线镜像0 W& n2 H7 w* Z* c" r8 t }+ A( D
(command "._mirror" ss "" p1 p2 "y")
% W( @9 L% V) ^$ b (princ) |
|