onlypony 发表于 2006-6-27 11:12:00

图块中点的捕捉问题

<P>希望通过鼠标选择(不使用绘图相关的命令,如line,point等), 能够精确捕捉到块中某个圆心或者直线中点的坐标,返回这个坐标和块名.现在的想法是利用查询定位点得到这个坐标,然后获取点所在块的名字,可是不知道怎样搜索或者求解包括此点的图块,请各位指教</P>
<P>谢谢!</P>

wyj7485 发表于 2006-6-27 13:29:00

炸开块,判断块中对象的圆心或中点是否与定位点重合来判断.

sangding 发表于 2006-6-27 13:35:00

<P>要返回块名的</P>
<P>炸开就得不到块名了</P>

wyj7485 发表于 2006-6-27 13:54:00

用vba的炸开原块还在啊

bluefires 发表于 2006-6-27 21:17:00

<P>我看了帮助文档。很简单,用insertpoint 点,你自己看看帮助,很简单的!获得块名,用getentity方法</P>

68651521 发表于 2006-6-28 07:59:00

<P>insertpoint方法只是取得块定义时候的基点</P>
<P>如果定义块的时候 基点设在很远的地方 那么这个坐标对这个块来说 毫无意义</P>

霹雳啪啦啦 发表于 2006-6-28 12:19:00

<P>我想到的:</P>
<P>方法1:用getpoint方法选择点,然后对于图形中的块做boundingbox,如果点在其中,那么就是这个块。缺点:如果2个块的boundingbox相交,就可能会找到2个甚至更多的块。</P>
<P>方法2:用Getentity方法选择块,要求选择块时使用特定的捕捉点,比如在选择前设为中点,就只能选到终点,然后使用getentity方法的pickpoint参数得到点。缺点:选择圆心不行,且还是可能会选到别的不需要的点。</P>
<P>方法3:分成2步做,先提示选对象,再提示选点。</P>

雪山飞狐_lzh 发表于 2006-6-28 12:23:00

<P>试试getsubentity</P>
<P>&nbsp;</P>http://www.mccad.net/object/acad2004/idh_getsubentity.htm

elite 发表于 2006-6-28 15:57:00

按照版主提供的方法,依然没有解决在块中通过拾取圆心、端点、交点来选择对象。请问如何解决??

bluefires 发表于 2006-6-29 23:15:00

我问一下,要是你给你一个点,在这个点上面放了一个块,怎么样才能得到这个块呢?这个块只是覆盖住了这个块,位置怎么样随便放的。怎么样光知道这个点就可以知道这个块呢??
页: [1]
查看完整版本: 图块中点的捕捉问题