1234567891011121314151617181920212223242526272829303132333435363738394041 |
- /*-------------------------------------------------------------------------
- * 功能描述:WallExtension
- * 作者:xulisong
- * 创建时间: 2019/6/26 17:57:20
- * 版本号:v1.0
- * -------------------------------------------------------------------------*/
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using Autodesk.Revit.DB;
- using SAGA.DotNetUtils.Extend;
- using SAGA.RevitUtils;
- using SAGA.RevitUtils.Extends;
- namespace RevitToJBim.Extension
- {
- public static class WallExtension
- {
- public static List<PlanarFace> GetTopFaces(this Wall wall)
- {
- var solids = Extension.GeometryElementExtension.GetSolids(wall, wall.Document.GetUseView());
- var topZ = wall.GetTopStaticHeight();
- List<PlanarFace> faces = new List<PlanarFace>();
- foreach (var solid in solids)
- {
- foreach (Face face in solid.Faces)
- {
- if (face is PlanarFace planarFace && planarFace.FaceNormal == XYZ.BasisZ && planarFace.Origin.Z.IsEqual(topZ))
- {
- faces.Add(planarFace);
- }
- }
- }
- return faces;
- }
- }
- }
|