设置移动并使基点为 0,0
**** Hidden Message ***** 张贴你有什么,我们可以改变它。看起来你就快到了。dim ZeroZero(2) as Double
ZeroZero(0)=0:ZeroZero(1)=0:ZeroZero(2)=0
For each Obj in SS
obj.move YourPickedPoint, ZeroZero
next obj
我所知道的唯一能让0,0成为你在VBA的基点的方法就是:
这张图。SendCommand "base" & vbCr "0,0" &vbCr(未测试)
很粗糙但很有效。将它添加到CmdrDuhs的代码中,就可以了。 是的,从帮助屏幕
,我已经在看
,我需要移动一个选择集,而且我知道没有一种方法可以做到这一点,
我尝试了一些奇怪的方法
,比如Dim Ent,因为Acadentity
Ent = Sset
Ent.move Pnt1,Pnt2
因为实体可以移动,但这可能不是最好的方法。
还有其他建议吗?
谢谢
马克
那么setvar INSBASE呢?
ThisDrawing.Set可变的“INSBASE”,“0,0,0”
嘿,deegeecee
有时候我们必须这么做!
谢谢
马克 是的,先生!
CM!你就是那个人!
很高兴它成功了
这一举动效果很好,谢谢你们!
现在我知道如何移动一个set,但仍然没有设置inbase变量?
这是我得到的
Sub MoveSsettoZeroZero()
On Error Resume Next
ThisDrawing.SelectionSets.Item("Selection1").Delete
Dim Sset As AcadSelectionSet
Dim Obj As AcadObject
Dim ZeroZero(0 To 2) As Double
Dim Pnt As Variant
ZeroZero(0) = 0: ZeroZero(1) = 0: ZeroZero(2) = 0
Set Sset = ThisDrawing.SelectionSets.Add("Selection1")
Sset.SelectOnScreen
Debug.Print "Selection Set " & "("; Sset.Name; ")" & " was created"
Pnt = ThisDrawing.Utility.GetPoint(, vbCrLf & "Pickpoint")
Debug.Print "Point = "; Pnt(0) & " , " & Pnt(1)
For Each Obj In Sset
Obj.Move Pnt, ZeroZero
Next Obj
ThisDrawing.SetVariable "INSBASE", ("0, 0, 0")
ThisDrawing.SelectionSets.Item("Selection1").Delete
End Sub
如果在命令行中键入 INSBASE,会发生什么情况?
页:
[1]
2