tyliling 发表于 2005-7-25 13:52:00

抓取图形的最大外形或对角点

<P>各位大侠!请教一下,我在插入一个块后!怎样获得这个块的对角点,如果是一个矩形的话又怎样获得它的最大外形</P>

sieben 发表于 2005-7-25 14:16:00

<P>(vla-getboundingbox object 'MinPoint 'MaxPoint)</P>
<P>结果在MinPoint 和MaxPoint 里面,是SafeArray</P>
<P>&nbsp;</P>

tyliling 发表于 2005-7-25 16:22:00

上面这位老兄!我对那个好像不是很懂哟!假如我现在选择的是一个矩形,那我如何得到他的对角点的座标值!能否把最主要的程序写出来呀!

HuaiYu 发表于 2005-7-25 22:07:00

(defun c:Get_MinMax( / en vl-en minext maxext)<BR>&nbsp; (vl-load-com)<BR>&nbsp; (setq&nbsp;*acadobject*&nbsp;&nbsp; (vlax-get-acad-object)<BR>&nbsp;*acaddocument* (vla-get-activedocument *acadobject*)<BR>&nbsp;*mspace*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (vla-get-modelspace *acaddocument*)<BR>&nbsp; ) ;_ Endsetq<BR>&nbsp; (setq en (entsel "Please select a object: "))<BR>&nbsp; (setq vl-en (vlax-ename-&gt;vla-object (car en)))<BR>&nbsp; (setq minext (vlax-make-safearray vlax-vbdouble '(0 . 2)))<BR>&nbsp; (setq maxext (vlax-make-safearray vlax-vbdouble '(0 . 2)))<BR>&nbsp; (vla-getboundingbox vl-en 'minext 'maxext)<BR>&nbsp; (list (vlax-safearray-&gt;list minext) (vlax-safearray-&gt;list maxext))<BR>) ;_ EndDEFUN<BR>

sieben 发表于 2005-7-26 09:39:00

<P>楼上的朋友写得很详细,下面两行是可省略的</P>
<P>(setq minext (vlax-make-safearray vlax-vbdouble '(0 . 2)))<BR>&nbsp; (setq maxext (vlax-make-safearray vlax-vbdouble '(0 . 2)))<BR></P>

500w008 发表于 2013-5-6 21:24:34

页: [1]
查看完整版本: 抓取图形的最大外形或对角点