大量更新
This commit is contained in:
@@ -1,4 +1,6 @@
|
||||
using Autodesk.Revit.DB;
|
||||
using System.Linq;
|
||||
|
||||
using Autodesk.Revit.DB;
|
||||
using Autodesk.Revit.UI;
|
||||
using Autodesk.Revit.UI.Selection;
|
||||
|
||||
@@ -193,29 +195,72 @@ namespace Szmedi.RvKits.DisplayTools
|
||||
{
|
||||
try
|
||||
{
|
||||
//if (doc.IsFamilyDocument)
|
||||
//{
|
||||
// var col = new FilteredElementCollector(doc).WhereElementIsNotElementType();
|
||||
// var views = new FilteredElementCollector(doc).OfClass(typeof(View)).WhereElementIsNotElementType().Cast<View>().ToList();
|
||||
// Transaction transaction = new Transaction(doc, "显示所有隐藏元素");
|
||||
// transaction.Start();
|
||||
// foreach (var v in views)
|
||||
// {
|
||||
// foreach (Element item in col)
|
||||
// {
|
||||
// if (item.IsHidden(v))
|
||||
// {
|
||||
// v.UnhideElements([item.Id]);
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// transaction.Commit();
|
||||
//}
|
||||
//else
|
||||
//{
|
||||
// ElementClassFilter hostFilter = new(typeof(HostObject));
|
||||
// //逻辑过滤器
|
||||
// LogicalOrFilter orFilter = new(instanceFilter, hostFilter);
|
||||
// //收集器应用过滤器(未应用过滤器,收集器会报错)
|
||||
// collection.WherePasses(orFilter);
|
||||
//}
|
||||
//foreach (Element item in collection)
|
||||
//{
|
||||
// if (item.IsHidden(doc.ActiveView))
|
||||
// {
|
||||
// doc.ActiveView.UnhideElements([item.Id]);
|
||||
// }
|
||||
//}
|
||||
if (doc.IsFamilyDocument)
|
||||
{
|
||||
ElementClassFilter formFilter = new(typeof(GenericForm));
|
||||
ElementClassFilter combineFilter = new(typeof(GeomCombination));
|
||||
|
||||
LogicalOrFilter logicalOrFilter = new([instanceFilter, formFilter, combineFilter]);
|
||||
collection.WherePasses(logicalOrFilter);
|
||||
var col = new FilteredElementCollector(doc).WhereElementIsNotElementType();
|
||||
var views = new FilteredElementCollector(doc).OfClass(typeof(View)).WhereElementIsNotElementType().Cast<View>().ToList();
|
||||
Transaction transaction = new Transaction(doc, $"显示隐藏");
|
||||
transaction.Start();
|
||||
foreach (var v in views)
|
||||
{
|
||||
foreach (Element item in col)
|
||||
{
|
||||
if (item.IsHidden(v))
|
||||
{
|
||||
v.UnhideElements([item.Id]);
|
||||
}
|
||||
}
|
||||
}
|
||||
transaction.Commit();
|
||||
}
|
||||
else
|
||||
{
|
||||
ElementClassFilter hostFilter = new(typeof(HostObject));
|
||||
//逻辑过滤器
|
||||
LogicalOrFilter orFilter = new(instanceFilter, hostFilter);
|
||||
//收集器应用过滤器(未应用过滤器,收集器会报错)
|
||||
collection.WherePasses(orFilter);
|
||||
}
|
||||
foreach (Element item in collection)
|
||||
{
|
||||
if (item.IsHidden(doc.ActiveView))
|
||||
var col = new FilteredElementCollector(doc).WhereElementIsNotElementType();
|
||||
Transaction transaction = new Transaction(doc, $"显示隐藏");
|
||||
transaction.Start();
|
||||
foreach (Element item in col)
|
||||
{
|
||||
doc.ActiveView.UnhideElements([item.Id]);
|
||||
if (item.IsHidden(doc.ActiveView))
|
||||
{
|
||||
doc.ActiveView.UnhideElements([item.Id]);
|
||||
}
|
||||
}
|
||||
transaction.Commit();
|
||||
}
|
||||
return;
|
||||
}
|
||||
catch (System.Exception)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user