遍历全部房间,为每个房间创建对应的空间。
- <div align="left">[TransactionAttribute(Autodesk.Revit.Attributes.TransactionMode.Manual)]
- public class cmdRoom : IExternalCommand
- {
- public Result Execute(ExternalCommandData commandData, ref string messages, ElementSet elements)
- {
- UIApplication uiApp = commandData.Application;
- Document doc = uiApp.ActiveUIDocument.Document;
- Selection sel = uiApp.ActiveUIDocument.Selection;
- Transaction ts = new Transaction(doc, "http://revit.5d6d.com");
- ts.Start();
- //遍历所有房间
- FilteredElementCollector collector = new FilteredElementCollector(doc);
- collector.OfCategory(BuiltInCategory.OST_Rooms);
- foreach (Element el in collector)
- {
- Room room = el as Room;
- LocationPoint roomPoint = room.Location as LocationPoint;
- //为房间创建空间
- doc.Create.NewSpace(room.Level, new UV(roomPoint.Point.X, roomPoint.Point.Y));
- }
- ts.Commit();
- return Result.Succeeded;
- }
- }</div>
复制代码
|