using Autodesk.Revit.DB;
using JetBrains.Annotations;
namespace Sai.Toolkit.Revit.Assist;
internal static class HostObjectAssist
{
///
/// 得到轮廓线(墙,板等)
///
///
///
public static List GetSketch(this HostObject element)
{
var doc = element.Document;
List sketches = new();
using (SubTransaction subTransaction = new(doc))
{
subTransaction.Start();
var ids = doc.Delete(element.Id);
subTransaction.RollBack();
foreach (var id in ids)
{
if (doc.GetElement(id) is Sketch sketch)
{
sketches.Add(sketch);
}
}
}
return sketches;
}
public static IList GetBottomFaces(this HostObject host)
{
return HostObjectUtils.GetBottomFaces(host);
}
public static IList GetSideFaces(this HostObject host, ShellLayerType side)
{
return HostObjectUtils.GetSideFaces(host, side);
}
public static IList GetTopFaces(this HostObject host)
{
return HostObjectUtils.GetTopFaces(host);
}
}