黄玉宏 发表于 2008-8-30 13:05:00

选择通过某点的所有多段线

<p>如题,如何选择通过某已知点的所有多段线?</p><p>我知道选择集中有个Selection Atpoint(记不太清了)方法可以选择通过某点的最后一个对象。请各位高手教我!</p><p>先谢谢各位!</p><p>黄玉宏  8.30</p>

sailorcwx 发表于 2008-8-31 01:08:00

object.SelectAtPoint Point, FilterType, FilterData

黄玉宏 发表于 2008-8-31 15:33:00

<p>谢谢2楼,这种方法只能选择通过某点最后一根多段线。问题是选择通过某点的所有多段线,请各位高手帮助解答。</p><p>谢谢论坛各位同行!</p><p>黄玉宏&nbsp;&nbsp; 8.31</p>

sailorcwx 发表于 2008-8-31 23:25:00

<p>那就用select</p><p>Sub test()<br/>On Error Resume Next<br/>Dim sset As AcadSelectionSet<br/>ThisDrawing.SelectionSets.Add "test"<br/>Set sset = ThisDrawing.SelectionSets("test")<br/>sset.Clear<br/>Dim pt As Variant<br/>pt = ThisDrawing.Utility.GetPoint<br/>sset.Select acSelectionSetCrossing, pt, pt<br/>MsgBox sset.Count<br/>End Sub</p>

王咣生 发表于 2008-9-2 08:22:00

SelectAtPoint选择最后还是最上层对象,如果是最上层对象,那可以作个循环,把每次选到的对象隐藏,知道选择所有的对象.当然选到的对象放到一个新的选择集中.

黄玉宏 发表于 2008-9-2 18:13:00

<p>谢谢4楼及5楼,4楼的方法很巧妙,看来哲学很有用。</p><p>王版主的方法在小实在不会,在CAD帮助中也看不到SelectAtPoint内容,不知版主所述如何做,能否请举例说明,非常感谢!</p><p>黄玉宏  二○○八年九月二日</p>

zzaxet 发表于 2008-9-2 20:03:00

<p>Sub test()<br/>On Error Resume Next<br/>Dim sset As AcadSelectionSet<br/>ThisDrawing.SelectionSets.Add "test"<br/>Set sset = ThisDrawing.SelectionSets("test")<br/>sset.Clear<br/>Dim pt As Variant<br/>pt = ThisDrawing.Utility.GetPoint<br/>sset.Select acSelectionSetCrossing, pt, pt<br/>MsgBox sset.Count<br/>End Sub</p><p>谢谢4楼这个方法,但是我也有个问题,这个方法在图形比较小的时候可以,在图形非常大,放到全屏后使用此方法,会把附近隔的比较近但并不通过此点的要素也选中了,请问有什么办法解决?</p><p></p>
页: [1]
查看完整版本: 选择通过某点的所有多段线