[求助]局部放大的快捷方法?
<p>求高手帮忙:</p><p>在绘图中经常碰到将某处局部放大的情况,效果如图。那位高手能帮忙写几句命令,可以只输入命令就搞定,省的来回放大、修剪。主要是省去修剪的麻烦</p><p>新手,不要见笑。先谢谢各位了。</p><p>参考步骤:</p><p>1、选择(可否直接用圆做选择)</p><p>2、指定放大倍数</p><p>3、在屏幕上指定移动距离或者输入距离</p><p>4、ok</p> 看看前辈的杰作继续求助
(defun c:FD(/ e p pc k r n ep)
(SETVAR "BLIPMODE" 0)
(SETVAR "CMDECHO" 0)
(princ "\nplease select the circle 请选要放大的圆 :" )
(setq e (car (entsel))
pc (cdr (assoc 10 (entget e)))
p (getpoint "\nplease input the point 输入放置点 :")
k (getreal "\nplease input ratio 输入放大比例 :")
r (cdr (assoc 40(entget e)))
)
(command "copy" "cp")
(setq n 0)
(repeat 180
(command (polar pc (/(* 2 n pi)180) r))
(setq n (+ n 1))
)
(command "" "" pc p)
(setq n 0)
(setvar "pickbox" 5)
(command "zoom" "c" p (* 3 r ))
(command "circle" p r)
(setq ep (entlast))
(command "trim" ep "")
(repeat 180
;;;(command (polar p (/(* 2 n pi)180)(* r 1.1)))
(command "f" (polar p (/(* 2 n pi)180)(* r 1.01)))
(setq n (+ n 1))
(command (polar p (/(* 2 n pi)180)(* r 1.01))"")
)
(command "" "zoom" "P")
(command "scale" "c" (list (-(car p)r)(-(cadr p)r))
(list (+ (car p)r)(+(CADR P)R))"" P K)
(command "erase" ep "")
(command "redraw")
(SETVAR "BLIPMODE" 1)
(SETVAR "CMDECHO" 1)
(princ)
)
(princ "\nType FD to start.")
(princ)
我也一直在找这样的程序,上面那个程序我运用一下,好像不行呀 看看这个程序能不能帮上你的忙! 请问楼上的程序,调用命令是什么啊???? 局部放大的程序在站内搜索可以找到很多相关的内容,但是没有一个比较完善的.特别是在有填充线的时候,它们就更加搞不定了.上楼兄弟的程序还可以,不过不知道能不能在有填充线的时候也能搞定呢! 望<strong><font face="Verdana" color="#da2549">ZZXXQQ<font color="#000000">兄弟再次出现啊</font></font></strong>