forestgxc 发表于 2008-9-13 01:09:00

pline画角码易出错

<p>&nbsp;&nbsp;&nbsp;&nbsp;简单的一个铝合金角码程序,如果当前图纸中有类似的多义线曾经出现过,</p><p>则该程序一般不会出错,但是如果是新建的图纸用这个程序做肯定出错,不知为何.</p><p>难道需要初始化pline的什么参数不成?请高手赐教</p><p></p><p>&nbsp;;铝合金角码<br/>(defun c:ljm ()<br/>&nbsp; (sub-ljm)<br/>&nbsp; (prin1)<br/>)</p><p>(defun sub-ljm ()<br/>&nbsp; (setvar "cmdecho" 0)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;指定插入点,宽,高,厚<br/>&nbsp; (setq p1 (getpoint "\n 插入点:"))<br/>&nbsp; (setq L1 (getreal "\n 宽&lt;20&gt;:"))<br/>&nbsp; (if (null L1)<br/>&nbsp;&nbsp;&nbsp; (setq L1 20)<br/>&nbsp; )<br/>&nbsp; (setq L2 (getreal "\n 高&lt;20&gt;:"))<br/>&nbsp; (if (null L2)<br/>&nbsp;&nbsp;&nbsp; (setq L2 20)<br/>&nbsp; )<br/>&nbsp; (setq THK (getreal "\n 厚&lt;3&gt;:"))<br/>&nbsp; (if (null THK)<br/>&nbsp;&nbsp;&nbsp; (setq THK 3)<br/>&nbsp; )<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;角码的6个点<br/>&nbsp; (setq p2 (polar p1 0 L1))<br/>&nbsp; (setq p3 (polar p2 (/ pi 2) L2))<br/>&nbsp; (setq p4 (polar p3 pi THK))<br/>&nbsp; (setq p5 (polar p4 (* pi 1.5) (- L2 THK)))<br/>&nbsp; (setq p6 (polar p5 pi (- L1 THK)))<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;pline<br/>&nbsp; (command "pline" p1 p2 p3 p4 p5 p6 "c")</p><p>)</p>

ZZXXQQ 发表于 2008-9-14 08:07:00

不知是出的什么错?从程序看仅仅是提示串中\n后多了空格,有可能在键盘输入时出错。

forestgxc 发表于 2008-9-16 23:53:00

难道getpoint与绘图边界有关系吗?

forestgxc 发表于 2008-9-16 23:54:00

有哪些函数与绘图边界有关系呢?

forestgxc 发表于 2008-9-17 00:00:00

当此程序在与所画尺寸的角码尺寸比较接近时则程序不会出错,如果尺寸相差过大则程序绘出几条重叠在一起的直线,不知道是什么大原因?

ZZXXQQ 发表于 2008-9-17 15:02:00

在画图前加一行(command ".ZOOM" "W" p1 p3),画线后加(command ".ZOOM" "P")

forestgxc 发表于 2008-9-17 22:36:00

千恩万谢,原来差这么两行。

龙龙仔 发表于 2008-9-18 10:20:00

(setvar "OSMODE" 0)

wwwbxd 发表于 2008-10-27 22:39:00

<p>关闭捕捉就行了</p><p>开始:(setq os (getvar "osmode"))</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(setvar "osmode" 0 )</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ---------</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ---------</p><p>结束:(setvar "osmode" os )</p><p>这样就好啊</p><p></p>
页: [1]
查看完整版本: pline画角码易出错