예제 #1
0
        /// <summary>
        /// Returns the projected footprint are of the site, this value is derived and makes use of property sets not in the ifc schema
        /// </summary>
        /// <param name="site"></param>
        /// <returns></returns>
        public static IfcAreaMeasure?GetFootprintArea(this IfcSite site)
        {
            IfcQuantityArea qArea = site.GetQuantity <IfcQuantityArea>("BaseQuantities", "GrossArea");

            if (qArea == null)
            {
                qArea = site.GetQuantity <IfcQuantityArea>("GrossArea");              //just look for any area
            }
            if (qArea != null)
            {
                return(qArea.AreaValue);
            }
            //if revit try their value
            IfcAreaMeasure val = site.GetPropertySingleValue <IfcAreaMeasure>("PSet_Revit_Dimensions", "Projected Area");

            if (val != null)
            {
                return(val);
            }

            return(null);
        }