大量更新

This commit is contained in:
GG Z
2025-12-23 21:37:02 +08:00
parent 3fc465959b
commit b611efeed9
105 changed files with 5814 additions and 371 deletions

View File

@@ -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)
{