1)过滤器:
public class FaceFilter : ISelectionFilter
{
Document doc = null;
public FaceFilter(Document document)
{
doc = document;
}
public bool AllowElement(Element elem)
{
return true;
}
public bool AllowReference(Reference reference, XYZ position)
{
if (doc.GetElement(reference).GetGeometryObjectFromReference(reference) is PlanarFace)
{
return true;
}
return false;
}
}
2)拾取面
Reference refer = uidoc.Selection.PickObject(ObjectType.Face,new FaceFilter(revitDoc));
PlanarFace face = revitDoc.GetElement(refer).GetGeometryObjectFromReference(refer) as PlanarFace;
3)得到面的面积:
double d = face.Area * 0.3048 * 0.3048;
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- nryq.cn 版权所有 赣ICP备2024042798号-6
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务