明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2167|回复: 5

[VBA]移动选择集

[复制链接]
发表于 2005-6-15 11:19:00 | 显示全部楼层 |阅读模式
Dim acadselect As AcadSelectionSet
Set acadselect = doc1.SelectionSets.Add("ss1")

Dim minExt As Variant
Dim maxExt As Variant
For Each obj In doc0.ModelSpace
If obj.EntityName = "AcDbPolyline" Then

obj.GetBoundingBox minExt, maxExt acadselect.Select acSelectionSetWindow, minExt, maxExt 我想把选择集内所有的对象,移动到某一个位置,以矩形的左上角(188.3626,555.546,0)为参考,移到(0,0,0),选择集中又没有move属性 acadselect.itme(i).move 倒是可以,但计算很复杂,而且移动需要两个点,像附图中的那个复杂的花,算起来可就麻烦了,有没有更好的办法呢?
发表于 2005-6-15 12:12:00 | 显示全部楼层
用thisdrawing.sendcommand "move" & vbcr & "p" &vbcr &.................应该可以吧?
 楼主| 发表于 2005-6-15 14:36:00 | 显示全部楼层
我是用vb做的,sendcommand也可以, doc1.SendCommand "move" & vbCr & a & minExt(0) & "," & b & maxExt(1) & ",0" & vbCr & vbCr & "p"
但是执行时,老是提示:由于autocad部件忙不能执行该操作,请切换到,按切换到,得手动操作,还得近回车,才执行下面的,这样不好
发表于 2005-6-15 16:44:00 | 显示全部楼层
本帖最后由 作者 于 2005-6-15 18:25:34 编辑

执行时隐藏vb的窗口.
 楼主| 发表于 2005-6-15 18:21:00 | 显示全部楼层
关掉就中断了,程序就没法运行了
发表于 2005-6-16 20:32:00 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-27 14:37 , Processed in 0.174970 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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