olivetree 发表于 2004-5-28 17:44:00

求助:如何实现双重偏移并擦除原有实体?

下面这个程序是一本参考书上的,但是只能朝一个方向偏移,不知道是不是other点的定义有问题(标红线的部分),由于小弟初次接触lisp,还望各位多多指教


(defun c:DOF(/ a b b1 p1 d pckbox)<BR>       (setq d 20 p1 nil pee (/ pi 2) e 3 pckbox(getvar"pickbox") line "")<BR>       (if(= #parof nil)(setq #parof(/ (getvar "viewsize") 10)))<BR>       (princ "\n 请输入道路宽度&lt;")(princ #parof)<BR>       (setq answer (getstring"&gt;:"))<BR>       (if(/= (atof answer) 0.0)(setq #parof(/ (atof answer) 2)))<BR>                               (princ line)<BR>                               (setvar "pickbox" pckbox)<BR>                               (setq ent(entsel "\n 拾取道路中心线:"))<BR>                               (setvar "pickbox" 2)<BR>                               (setq point(cadr ent))<BR>                               (princ line)<BR>                                                       (setq side(getpoint "\n 拾取要偏移的一方:"))<BR>                                                       (setq dist(distance side point))<BR><FONT color=#e61a1a>                                                       (setq ang(angle side point))<BR>                                                       (if(or(or(&lt; ang 0.78)(&gt; ang 5.5))(and(&gt; ang 2.35)(&lt; ang 3.92)))<BR>               (setq ang(- 0 ang))(setq ang(- pi ang))<BR>                                                               );end if<BR>                                                       (setq other (polar point ang dist))<BR></FONT>                                                       (command "offset" #parof ent side ent other "")<BR>                                                                               (entdel (car ent))<BR>                                                       (setvar "pickbox" pckbox)<BR>                                                       (prin1)<BR>       )<BR>                       (prompt "\n 键入DOF唤起命令:")

meflying 发表于 2004-5-28 17:49:00

<A href="http://bbs.mjtd.com/forum.php?mod=viewthread&tid=16127&amp;replyID=77917&amp;skin=1" target="_blank" ><FONT color=#000000>参考</FONT></A>:


http://bbs.mjtd.com/forum.php?mod=viewthread&tid=16127&amp;replyID=77917&amp;skin=1

olivetree 发表于 2004-5-28 21:50:00

<TABLE class=tableborder1 style="WIDTH: 75%" cellSpacing=1 cellPadding=3 align=center>
<TBODY>
<TR>
<TD class=tablebody1 width="100%" colSpan=2>        <B>您在"<FONT color=#ff0000></FONT>"的时候发生错误,共有1项,下面是错误的详细信息</B></TD></TR>
<TR>
<TD class=tablebody1 width="100%" colSpan=2>
<LI>非法的贴子参数。 </LI></TD></TR>
<TR>
<TD class=tablebody1 width="100%" colSpan=2>
<LI>请仔细阅读论坛帮助文件,确保您有相应的操作权限。 </LI></TD></TR></TBODY></TABLE><A name=22221><FONT color=#000066><B></B></FONT></A>

meflying 发表于 2004-5-29 12:21:00

怎么中间会多出一个分号???再帖


<A href="http://www.mjtd.com/bbs/dispbbs.asp?BoardID=3&amp;" target="_blank" ><FONT color=#000000>http://www.mjtd.com/bbs/dispbbs.asp?BoardID=3&amp;</FONT></A><A href="http://www.mjtd.com/bbs/dispbbs.asp?BoardID=3&amp;" target="_blank" ><FONT color=#000000>ID=16127&amp;replyID=77917&amp;skin=1</FONT></A>

meflying 发表于 2004-5-29 12:22:00

还是不行,,,你把地址复制到地址栏里来看

olivetree 发表于 2004-5-30 18:48:00

看到了,很简捷的程序


多谢meflying斑主了

页: [1]
查看完整版本: 求助:如何实现双重偏移并擦除原有实体?