明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3435|回复: 8

在CAD界面里如何操作选择集里面的实体?

[复制链接]
发表于 2003-11-18 18:35:00 | 显示全部楼层 |阅读模式
本帖最后由 作者 于 2003-11-20 0:22:41 编辑

比如用下面代码把 跟选择实体所在层的所有实体加入了选择集 “topirolss”中,
我现在想在cad命令行用move,来移动在选择集 “topirolss”中所有实体。如何实现?(其实我就是想在CAD界面里面快速选择需要的实体,然后再做相应的操作,而不必要用光标一个一个选择)

Sub select_from_objectlayer()
Dim tsel As AcadSelectionSet
Dim entry As AcadEntity
Dim tpic As Variant
Dim layerstr As String


On Error Resume Next

Set tsel = ThisDrawing.SelectionSets("topirolss")
If Err Then
Err.Clear
Set tsel = ThisDrawing.SelectionSets.Add("topirolss")
End If
tsel.Clear
ThisDrawing.Utility.GetEntity entry, tpic, "选择跟该实体所在层的所有实体:"

If Err Then
Err.Clear
Exit Sub
End If

layerstr = entry.Layer



    Dim FilterType(0) As Integer
   Dim FilterData(0) As Variant
     FilterType(0) = 8
    FilterData(0) = layerstr
   
    tsel.Select acSelectionSetAll, , , FilterType, FilterData
         
   
End Sub
发表于 2003-11-18 18:56:00 | 显示全部楼层
VBA没有对选择集进行移动、旋转等的操作,只能遍历选择集,一个一个的操作。
 楼主| 发表于 2003-11-19 11:09:00 | 显示全部楼层
可能是我表达的不清楚,不是在VBA里对选择集进行移动、旋转等的操作,而是想把
选择集里的物体变成我用鼠标选中的状态
发表于 2003-11-19 11:51:00 | 显示全部楼层
选中的状态,使用对象的Highlight方法,设为True时该对象亮显。它跟系统变量HIGHLIGHT的设置有关。

HIGHLIGHT
类型:整数型
不保存
初始值:1
控制对象的突出显示。它并不影响使用夹点选定的对象。
 楼主| 发表于 2003-11-19 12:07:00 | 显示全部楼层
Highlight只是显亮而已,并不是选中状态吧,因为我不能用cad命令操作显亮的对象,比如我用move时,命令行还是提示我选择对象。我希望的效果是用move时候,就可以直接操作我选择集里面的对象(相当于我已经用夹点选定选择集里面的对象一样,然后再用move命令)
发表于 2003-11-19 13:10:00 | 显示全部楼层
你用MOVE命令后,在选择对象时用“P”参数就可以了。
 楼主| 发表于 2003-11-19 13:17:00 | 显示全部楼层
哈哈,真的可以,我开始用L不行,原来要用P。非常谢谢
发表于 2003-11-19 17:20:00 | 显示全部楼层
很好啊,这两天我一直在考虑这个问题,原来可以这样解决啊:)
发表于 2019-7-3 19:56:49 | 显示全部楼层
楼主解决了吗?
我也想知道这怎么做到。谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-28 22:57 , Processed in 0.187376 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表