选择集问题
斑竹有没有好方法:当前图形中有许多相同的图块,用啥子方法可以把一个特定名称的所有图快添加到选择集?
用遍历模型空间的方法实在太慢了?高手帮帮忙,最好给个例子,万分感激!!!
Sub hj()<BR>On Error Resume Next<BR>Dim ss As AcadSelectionSet<BR>Dim ft(1) As Integer, fd(1)<BR>ThisDrawing.SelectionSets("*TlsTest*").Delete<BR>Set ss = ThisDrawing.SelectionSets.Add("*TlsTest*")<BR>ft(0) = 0: fd(0) = "Insert"<BR>ft(1) = 2: fd(1) = "MyBlockName"<BR>ss.Select acSelectionSetAll, , , ft, fd<BR>MsgBox ss.Count<BR>ThisDrawing.SelectionSets("*TlsTest*").Delete
End Sub<BR> 多谢斑竹,我用的是VB6.0
Dim ss As Object<BR>Set ss = acadDoc.ActiveSelectionSet<BR>Dim ft(1) As Integer, fd(1)<BR>acadDoc.SelectionSets("*TlsTest*").Delete<BR>Set ss = acadDoc.SelectionSets.Add("*TlsTest*")<BR>ft(0) = 0: fd(0) = "Insert"<BR>ft(1) = 2: fd(1) = "CB30"<BR>ss.Select acSelectionSetAll, , , ft, fd<BR>MsgBox ss.Count<BR>acadDoc.SelectionSets("*TlsTest*").Delete
斑竹能否解释一下,ss.Select acSelectionSetAll, , , ft, fd中的ft和fd,CAD的帮助文件内没有详细的描述!<BR> 十分感谢斑竹,可不可以把选择集内的块引用根据插入点的坐标由左到右,右上到下的顺序排列就完美了,好像要费一番手脚....... 过滤器的原理就是根据提供的DXF码的条件,找到符合条件的实体,关键是DXF组码 可不可以对DXF组码说两句??哪个地方有详细资料,打扰了!! ft(0) = 0: fd(0) = "Insert" 0表示图元类型的文字字符串(固定)
<BR>ft(1) = 2: fd(1) = "CB30" 2表示名称(属性标记、块名称等)
<A href="http://www.mjtd.com/develop/dxf/dxf0006.htm" target="_blank" >http://www.mjtd.com/develop/dxf/dxf0006.htm</A><BR> 飞狐大哥,我用的块是属性块,好象找不到其中的某一属性的群码?用什么办法能找到,比如找到属性群码后,我要求将上一选择集基础上过滤,比如我的属性块的其中某一属性名称为xh,要求将所有插入的图块名为my,xh值大于5的选择集如何进行? <strong>大家用过中望CAD就会发现,中望的选择集非常方便,它除了具有AutoCAD的快速选择外,还有:输入GETSEL命令后鼠标点一个想选的图元,再点一次,然后整个图形里同这一类图元全部被选中,这样方便多了,而AutoCAD却没有这样方便的功能,它的快速选择要点很多次,非常麻烦,请高手们研究一下,怎样做才更方便。</strong>
页:
[1]