Autodesk.Revit.DB.BRepBuilderPersistentIds 是一个用于创建和管理几何体对象的类。该类主要用于将具有相同拓扑结构的几何体对象映射到唯一的ID上。
以下是使用 Autodesk.Revit.DB.BRepBuilderPersistentIds 的基本步骤:
Autodesk.Revit.DB.BRepBuilderPersistentIds 实例。AddLoop() 和 AddCoEdge() 方法将几何体的拓扑结构添加到 Autodesk.Revit.DB.BRepBuilderPersistentIds 实例中。Finish() 方法以获取几何体对象的唯一ID。Autodesk.Revit.DB.BRepBuilderPersistentIds persistentIds = new Autodesk.Revit.DB.BRepBuilderPersistentIds();
// Adds loops to the persistent id's object
foreach (IList<XYZ> loop in loops)
{
IList<EdgeInfo> edges = loop.ToEdges();
int loopId = persistentIds.AddLoop();
foreach (EdgeInfo edge in edges)
{
int halfEdgeId = persistentIds.AddCoEdge(loopId, edge.Start, edge.End);
persistentIds.AddCorner(halfEdgeId, edge.End);
}
}
// Gets the persistent id's unique id for the solid
int solidId = persistentIds.Finish();
AddLoop():向 Autodesk.Revit.DB.BRepBuilderPersistentIds 实例添加一个循环,并返回其ID。AddCoEdge(int loopId, XYZ startPoint, XYZ endPoint):向 Autodesk.Revit.DB.BRepBuilderPersistentIds 实例中添加一条共边,并返回其ID。AddCorner(int halfEdgeId, XYZ cornerPoint):向 Autodesk.Revit.DB.BRepBuilderPersistentIds 实例中的特定共边(halfEdgeId)添加一个角点。Finish():获取几何体对象的唯一ID。Autodesk.Revit.DB.BRepBuilderPersistentIds 类提供了一种将具有相同拓扑结构的几何体对象映射到唯一的ID上的方法。通过使用 AddLoop()、AddCoEdge()、AddCorner() 和 Finish() 方法,可以很容易地创建和管理几何体对象,并获取其唯一ID。