public IBimMaterial Convert (XbimMaterial material)
        {
            string matName = material.Name;
            IBimMaterial tMaterial = Target.GetMaterial(matName);
            if (tMaterial != null) return null;

            string lookUpMaterial = material.SingleProperties.GetProperty_string("nbl_MaterialCommon", "RevitMaterial");

            try
            {
                if (lookUpMaterial == null)
                {
                    tMaterial = Target.NewMaterial(matName);
                }
                else
                {
                    tMaterial = Target.NewMaterial(matName, lookUpMaterial);
                }
            }
            catch (Exception e)
            {
                
                throw new Exception("Error while creating new material '" + matName + "':" + e.Message);
            }
            
            

            Source.PropertiesHelper.Convert(tMaterial.SingleProperties, material.SingleProperties);
            Source.AddConvertedObject(material);

            return tMaterial;
        }
        public double? GetMaterialArea(XbimMaterial material)
        {
            IfcLabel materialName = material.Name;
            IfcValue value = _object != null ? _object.GetPropertyTableItemValue(_pSetName, _pAreaName, materialName) : _typeObject.GetPropertyTableItemValue(_pSetName, _pAreaName, materialName);
            if (value == null) return null;

            IfcAreaMeasure volumeMeasure = (IfcAreaMeasure)value;
            return (double)volumeMeasure;
        }
        public void SetMaterialArea(XbimMaterial material, double area)
        {
            IfcAreaMeasure volumeMeasure = area;
            IfcLabel materialName = material.Name;

            if (_object != null)
                _object.SetPropertyTableItemValue(_pSetName, _pAreaName, materialName, volumeMeasure);
            else
                _typeObject.SetPropertyTableItemValue(_pSetName, _pAreaName, materialName, volumeMeasure);
        }
        public void SetMaterialVolume(XbimMaterial material, double volume)
        {
            IfcVolumeMeasure volumeMeasure = volume;
            IfcLabel materialName = material.Name;

            if (_object != null)
                _object.SetPropertyTableItemValue(_pSetName, _pVolumeName, materialName, volumeMeasure);
            else
                _typeObject.SetPropertyTableItemValue(_pSetName, _pVolumeName, materialName, volumeMeasure);

        }