Autodesk.Revit.DB.RadialArray是Revit API中的一种数组类型,用于沿着一个以基准点为中心的轴向重复复制多个元素。
RadialArray(ElementId, Line, double, int, bool)
elementId:要进行数组操作的元素IDline:数组中心线的位置angle:重复的角度(以度为单位)count:重复的数量mirror:是否启用镜像选项Axis:获取或设置数组中心线的位置。
Count:获取或设置重复的数量。
Angle:获取或设置重复的角度(以度为单位)。
IsMirrored:获取或设置是否启用镜像选项。
CanMirror():检查是否可以启用镜像选项。
CanMirrorOn(Function):检查指定方向是否可以启用镜像选项。
Clone():创建数组的副本。
Dispose():释放RadialArray所占用的资源。
Equals(Object):判断一个对象是否等于该实例。
GetHashCode():获取该实例的哈希码。
IsValid():检查数组是否已失效。
Mirror(Line):将数组镜像到指定的轴。
SelectFaces(ElementId):使用给定的方法选择该数组中的表面。
以下是RadialArray的一个简单示例:
// 创建基准元素
ElementId elementId = // elementId of the element to be arrayed
// 定义中心线
XYZ startPoint = new XYZ(0, 0, 0);
XYZ endPoint = new XYZ(0, 10, 0);
Line centerLine = Line.CreateBound(startPoint, endPoint);
// 定义角度和数量
double angle = 60; // degrees
int count = 6;
// 创建RadialArray实例
RadialArray radialArray = RadialArray.Create(elementId, centerLine, angle, count, false);
// 使用RadialArray
// ...
使用RadialArray时,要确保基准元素是可复制的类型,例如FamilyInstance。
数组中心线可以是任何Line对象。
如果启用了IsMirrored选项,则数组中的元素将沿着轴的两侧分布。
RadialArray不支持所有类型的元素,例如线和文本等不可复制类型。在进行数组操作之前,请仔细检查元素的复制性能。
数组操作过程中如果出现任何问题,应当通过调用IsValid()方法进行检查。
当不再需要数组时,应当调用Dispose()方法及时释放资源,避免内存泄露。