通过两个点创建一个标注
如何获得Reference
Revit API 提供了的 Selection.PickObject 这个方法。可以选择各种类型,包括 element
,face
,edge
。
调用 Application.ActiveUIDocument.Selection.PickObject(ObjectType.Edge)
,则可以选择Revit中任意一条可以选择的边。
通过,Element.GetGeometryObjectFromReference
可以把这条选中的边从对应的 element 中区分出来。
public GeometryObject GetGeometryObjectFromReference(
Reference reference
)
如何加标注
为了方便,假设得到的是一条直线,用直线的两个端点来对这条直线加标注。
Dimension CreateNewDimensionAlongLine(Autodesk.Revit.DB.Document document, Line line)
{
// 使用线的起点和终点作为reference
// 这条线必须是Revit中一条线
ReferenceArray references = new ReferenceArray();
references.Append(line.GetEndPointReference(0));
references.Append(line.GetEndPointReference(1));
// 创建新的标注
Dimension dimension = document.Create.NewDimension(document.ActiveView,
line, references);
return dimension;
}