若要创建 2D 或 3D 矩形数组,请使用为该对象提供的方法。ArrayRectangular 此方法要求您提供行数、列数、行间距离和列间距离。创建 3D 阵列时,还必须指定级别数和级别之间的距离。 矩形数组是通过将选择集中的对象复制适当的次数来构造的。如果定义一行,则必须指定多个列,反之亦然。 假定原始对象位于左下角,数组在向上和向右生成。如果行之间的距离为负数,则向下添加行。如果列之间的距离为负数,则列将添加到左侧。 AutoCAD 沿由当前捕捉旋转角度定义的基线构建矩形阵列。默认情况下,此角度为 0,因此矩形数组的行和列相对于X和Y绘图轴是正交的。您可以通过将捕捉旋转角度设置为非零值来更改此角度并创建旋转阵列。为此,请使用属性。SnapRotationAngle 创建矩形数组本示例创建一个圆,然后执行该圆的矩形数组,创建五行五列圆。 Sub Ch4_ArrayRectangularExample() ' Create the circle Dim circleObj As AcadCircle Dim center(0 To 2) As Double Dim radius As Double center(0) = 2#: center(1) = 2#: center(2) = 0# radius = 0.5 Set circleObj = ThisDrawing.ModelSpace.AddCircle(center, radius) ZoomAll ' Define the rectangular array Dim numberOfRows As Long Dim numberOfColumns As Long Dim numberOfLevels As Long Dim distanceBwtnRows As Double Dim distanceBwtnColumns As Double Dim distanceBwtnLevels As Double numberOfRows = 5 numberOfColumns = 5 numberOfLevels = 2 distanceBwtnRows = 1 distanceBwtnColumns = 1 distanceBwtnLevels = 1 ' Create the array of objects Dim retObj As Variant retObj = circleObj.ArrayRectangular _ (numberOfRows, numberOfColumns, numberOfLevels, _ distanceBwtnRows, distanceBwtnColumns, distanceBwtnLevels) ZoomAll End Sub |
|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 )
GMT+8, 2024-5-12 16:41
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.