Revit.SDK.Samples.EnergyAnalysisModel.CS.EnergyAnalysisModel.GetAnalyticalSpaces C# (CSharp) Method

GetAnalyticalSpaces() public method

Extract Analytical data about Space and its surfaces
public GetAnalyticalSpaces ( ) : System.Xml.Linq.XElement
return System.Xml.Linq.XElement
        public XElement GetAnalyticalSpaces()
        {
            // create a node that place all spaces.
            XElement energyAnalysisSpacesNode = new XElement("AnalyticalSpaces");
            energyAnalysisSpacesNode.Add(new XAttribute("Name", "AnalyticalSpaces"));
            // get EnergyAnalysisSpaces from m_energyAnalysisDetailModel
            IList<EnergyAnalysisSpace> energyAnalysisSpaces = m_energyAnalysisDetailModel.GetAnalyticalSpaces();
            // get surface from each Space
            foreach (EnergyAnalysisSpace space in energyAnalysisSpaces)
            {
                XElement spaceNode = new XElement("Space");
                spaceNode.Add(new XAttribute("Name", space.ComposedName));
                // add individual space node to spaces collection node
                energyAnalysisSpacesNode.Add(spaceNode);

                IList<EnergyAnalysisSurface> analyticalSurfaces = space.GetAnalyticalSurfaces();
                SurfacesToXElement(spaceNode, analyticalSurfaces);
            }
            // return the whole Spaces Node
            return energyAnalysisSpacesNode;
        }