Files

44 lines
1.2 KiB
C#
Raw Permalink Normal View History

2024-09-22 11:05:41 +08:00
using Autodesk.Revit.DB;
2026-02-21 16:31:24 +08:00
namespace ShrlAlgoToolkit.RevitCore.Extensions;
2024-09-22 11:05:41 +08:00
2025-04-24 20:56:44 +08:00
internal static class HostObjectExtensions
2024-09-22 11:05:41 +08:00
{
/// <summary>
/// 得到轮廓线(墙,板等)
/// </summary>
/// <param name="element"></param>
/// <returns></returns>
public static List<Sketch> GetSketch(this HostObject element)
{
var doc = element.Document;
2024-10-08 16:21:39 +08:00
List<Sketch> sketches = [];
2024-09-22 11:05:41 +08:00
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<Reference> GetBottomFaces(this HostObject host)
{
return HostObjectUtils.GetBottomFaces(host);
}
public static IList<Reference> GetSideFaces(this HostObject host, ShellLayerType side)
{
return HostObjectUtils.GetSideFaces(host, side);
}
public static IList<Reference> GetTopFaces(this HostObject host)
{
return HostObjectUtils.GetTopFaces(host);
}
}