|
|

楼主 |
发表于 2012-12-3 14:37
|
显示全部楼层
自己修改了一下
4 l$ y) F( B3 T: [( X) `8 n3 Adefun C:jx(/ ss len a o1 o2 o3 o4 p1 p2);定义参数7 v( c2 h& H) q5 ?" E
(setq ss (ssget));选取文本
1 a. Q& z; q4 R% f(setq ss (ssadd));选取文本! a/ G' A! F, e1 w( s8 |
(setq len (sslength ss));读取文本长度2 M+ ~+ T! b& N3 i: }" t4 B
(setq a (entget ss));将文本变成一个合集; w7 `! @$ a6 ^: k1 w
(setq o1 (+ (cadr (assoc 10 a))));得到文本插入点x坐标的和& R6 L% k" |: P, y" O
(setq o2 (/ (o1 len)));求的x坐标的平均值0 X9 X0 b% I% p, q) n
(setq o3 (+ (cadr (assoc 20 a))));得到文本插入点y标的和9 L2 G" Q" O0 W" l1 ~0 N
(setq o4 (/ (o3 len))))));求的y标的平均值
# k. F8 }4 g0 L6 X5 sif(=1 1)(progn* U' J1 O, t7 |3 d. ]9 A2 F
(cond ((=(assoc 10 ss) o2) ((setq p1 polar(o1,o3)) (setq p2 polar(o1,(+(o3 1))))如果x坐标相同,则按照Y的平均值的那条线镜像
$ z( }- D r1 b. u4 C# p, M; A: t(cond ((=(assoc 2 ss) o4) ((setq p1 polar((+(o2 1),o3)) (setq p2 polar(o2,o3)))如果y标相同,则按照x平均值的那条线镜像; J' ~& G% f! G4 Y, [
(command "._mirror" ss "" p1 p2 "y")5 I7 _% o& C0 s7 J. K5 l; J
(princ) |
|