UIApplication uiapp = commandData.Application;
UIDocument uidoc = uiapp.ActiveUIDocument;
Autodesk.Revit.ApplicationServices.Application app = uiapp.Application;
Document doc = uidoc.Document;
FilteredElementCollector collector = new FilteredElementCollector(doc);
//QuickFilter 快速过滤;OST_Windows :过滤的是窗; FamilySymbol:过滤类型是族类型
collector = collector.OfCategory(BuiltInCategory.OST_Windows).OfClass(typeof(FamilyInstance));
List<Autodesk.Revit.DB.Element> famSyms = new List<Element>();
foreach (Element e in collector) {
famSyms.Add(e);
}
try
{
Type t = famSyms[0].GetType();
if (t.Equals(typeof(FamilyInstance)))
{
FamilyInstance familyInstance = famSyms[1] as FamilyInstance;
Room room;
room= familyInstance.Room;
if (room ==null) {
room = familyInstance.FromRoom;
if (room == null) {
room = familyInstance.ToRoom;
}
}
if (room != null)
{
SpatialElement ph = famSyms[0] as SpatialElement;
TaskDialog.Show("是", "头tt是:" + room.Name);
}
else {
TaskDialog.Show("null", "null");
}
}
}
catch
{
TaskDialog.Show("异常", "异常");
}