创建一个包含所有块的选择集,然后通过选择集循环获取每个块的边界框,并使用这些坐标作为缩放窗口,然后执行mslide操作,这难道不是比在命名视图中胡闹更容易吗
While X < SSet1.Count
For Each Xblk In SSet1
Inspt = Xblk.InsertionPoint
Dim Zcenter(0 To 2) As Double
Zcenter(0) = Inspt(0): Zcenter(1) = Inspt(1): Zcenter(2) = Inspt(2)
Dim BboxSP As Variant
Dim BboxEP As Variant
Xblk.GetBoundingBox BboxSP, BboxEP
Dim BboxP1(0 To 2) As Double
Dim BboxP2(0 To 2) As Double
BboxP1(0) = BboxSP(0): BboxP1(1) = BboxSP(1): BboxP1(2) = BboxSP(2)
BboxP2(0) = BboxEP(0): BboxP2(1) = BboxEP(1): BboxP2(2) = BboxEP(2)
ZoomWindow BboxP1, BboxP2
' DO THE MSLIDE BIT HERE
Next Xblk
X = X + 1
Wend
嘿,Hendie
是的,这很有道理,Bob为此提供了一些很好的代码,但问题似乎是边框没有给你足够的空间,幻灯片也没有出来;滑块倾向于太靠近载玻片的边缘。如果有办法增加边界框的大小,那就太好了。
最初使用Bob提供的代码,我能够抓住每个边界框的中心,这确实有助于将块放置到位;这是一个很大的时间节省,但对于这个特殊的事情,我想我更喜欢选择点。
我想我会回到最初的想法,简单地选择2个点,然后让幻灯片名称blkref名称。
我在抓住每张幻灯片的几个要点方面真的没有问题,只是为每张幻灯片键入我不需要的名称。
谢谢Hendie,我还是会看你的代码。标记
页:
1
[2]