更新整理
This commit is contained in:
44
ShrlAlgoToolkit.Revit/Extensions/HostObjectExtensions.cs
Normal file
44
ShrlAlgoToolkit.Revit/Extensions/HostObjectExtensions.cs
Normal file
@@ -0,0 +1,44 @@
|
||||
using Autodesk.Revit.DB;
|
||||
|
||||
namespace ShrlAlgoToolkit.Revit.Assists;
|
||||
|
||||
internal static class HostObjectExtensions
|
||||
{
|
||||
/// <summary>
|
||||
/// 得到轮廓线(墙,板等)
|
||||
/// </summary>
|
||||
/// <param name="element"></param>
|
||||
/// <returns></returns>
|
||||
public static List<Sketch> GetSketch(this HostObject element)
|
||||
{
|
||||
var doc = element.Document;
|
||||
List<Sketch> sketches = [];
|
||||
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);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user