|
|

楼主 |
发表于 2012-12-3 14:37
|
显示全部楼层
自己修改了一下; ~& k. }5 P( R+ x0 }, M" V
defun C:jx(/ ss len a o1 o2 o3 o4 p1 p2);定义参数
& Y7 P% D5 Q% M% z(setq ss (ssget));选取文本, P/ l6 }6 d! t% n
(setq ss (ssadd));选取文本: g. c, L) z* W9 Z$ A
(setq len (sslength ss));读取文本长度
- k: h! P' _" C5 A9 ^9 a8 D D(setq a (entget ss));将文本变成一个合集
+ W$ x8 Q3 f, H(setq o1 (+ (cadr (assoc 10 a))));得到文本插入点x坐标的和
% d4 {7 U" n; [(setq o2 (/ (o1 len)));求的x坐标的平均值! d. C- p5 q: f/ y1 S
(setq o3 (+ (cadr (assoc 20 a))));得到文本插入点y标的和* W# l3 r* z( W7 l7 H
(setq o4 (/ (o3 len))))));求的y标的平均值2 v: _% y) Z. I
if(=1 1)(progn+ m/ X' v( B0 m' R+ B' p
(cond ((=(assoc 10 ss) o2) ((setq p1 polar(o1,o3)) (setq p2 polar(o1,(+(o3 1))))如果x坐标相同,则按照Y的平均值的那条线镜像" X( B8 j. T& T2 i
(cond ((=(assoc 2 ss) o4) ((setq p1 polar((+(o2 1),o3)) (setq p2 polar(o2,o3)))如果y标相同,则按照x平均值的那条线镜像. g( O! s4 Z1 X3 P h$ o
(command "._mirror" ss "" p1 p2 "y")
. w$ o' e# p& ]& @' s (princ) |
|