luowy 发表于 2008-10-21 17:26:00

用offset命令,然后用entlast获得偏移后的图元,然后用change也好,subst也好,都可以将新图元置于当前图层上

qing6688 发表于 2008-10-31 15:05:00

看这个程序是不是你要的效果

;偏移并将新对象改变到当前层<br/>(defun c:ofu (/ of1 of2 va1 en2 pt1) (princ)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (setvar "cmdecho" 0)(command "undo" "be")<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (princ "偏移并将新对象改变到当前层")<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (setq cm (princ (strcat "\n" (getvar "clayer"))))<br/>;确定偏移距离<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (setq of1 (getvar "offsetdist"))<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (setq of2 (strcat "\n偏移距离 &lt;"(rtos of1 2)"&gt;: "))<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (setq va1 (getstring of2))<br/>;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (setq en2 (entsel "\n选择偏移对象:")) <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (setq pt1 (getpoint "\n选择偏移方向:")) <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (while (/= pt1 nil)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (command "offset" va1 en2 pt1 "")<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (setq dz (entlast))<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (command "change" dz "" "P" "LA" cm "")<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (setq en2 (entsel "\nSelect object to offset:")) <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (setq pt1 (getpoint "\nSide to offset:"))<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ) <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (princ)(setvar "cmdecho" 1)(command "undo" "e")<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; )

glow123 发表于 2012-1-31 16:24:29

实在是个好思路

PDHDYH 发表于 2012-6-23 18:28:38

mingvictor 发表于 2007-10-3 13:40 static/image/common/back.gif
大侠!我二十四小时在线等啊!

写成偏移复制到指定层+目前层不是更完美吗

文化路上的流氓 发表于 2012-6-25 17:21:03

看不到啊
帮帮我,我也需要啊

5664491 发表于 2013-8-15 01:18:09

版主有没有办法就是

zmzk 发表于 2022-12-10 12:04:03

good idea! 收藏了
页: 1 [2]
查看完整版本: HELP ME !关于偏移为当前图层的问题!