public static List <bool> UpdateSurfaceOutputSpecs(this TBD.TBDDocument tBDDocument, IEnumerable <SurfaceOutputSpec> surfaceOutputSpecs) { if (tBDDocument == null || surfaceOutputSpecs == null) { return(null); } TBD.Building building = tBDDocument.Building; if (building == null) { return(null); } List <bool> result = new List <bool>(); List <TBD.SurfaceOutputSpec> surfaceOutputSpecs_TBD = building?.SurfaceOutputSpecs(); foreach (TBD.SurfaceOutputSpec surfaceOutputSpec_TBD in surfaceOutputSpecs_TBD) { tBDDocument.DeleteObjectByName(surfaceOutputSpec_TBD.name); } surfaceOutputSpecs_TBD.Clear(); foreach (SurfaceOutputSpec surfaceOutputSpec in surfaceOutputSpecs) { if (surfaceOutputSpec == null) { continue; } TBD.SurfaceOutputSpec surfaceOutputSpec_TBD = surfaceOutputSpecs_TBD.Find(x => x.name == surfaceOutputSpec.Name); if (surfaceOutputSpec_TBD == null) { surfaceOutputSpec_TBD = building.AddSurfaceOutputSpec(); if (surfaceOutputSpec.Name != null) { surfaceOutputSpec_TBD.name = surfaceOutputSpec.Name; } } surfaceOutputSpec_TBD.description = surfaceOutputSpec.Description; surfaceOutputSpec_TBD.apertureData = surfaceOutputSpec.ApertureData ? 1 : 0; surfaceOutputSpec_TBD.condensation = surfaceOutputSpec.Condensation ? 1 : 0; surfaceOutputSpec_TBD.convection = surfaceOutputSpec.Convection ? 1 : 0; surfaceOutputSpec_TBD.solarGain = surfaceOutputSpec.SolarGain ? 1 : 0; surfaceOutputSpec_TBD.conduction = surfaceOutputSpec.Conduction ? 1 : 0; surfaceOutputSpec_TBD.longWave = surfaceOutputSpec.LongWave ? 1 : 0; surfaceOutputSpec_TBD.dryBulbTemp = surfaceOutputSpec.Temperature ? 1 : 0; } return(result); }
public static List <TBD.SurfaceOutputSpec> SurfaceOutputSpecs(this TBD.Building building) { List <TBD.SurfaceOutputSpec> result = new List <TBD.SurfaceOutputSpec>(); int index = 0; TBD.SurfaceOutputSpec surfaceOutputSpec = building.GetSurfaceOutputSpec(index); while (surfaceOutputSpec != null) { result.Add(surfaceOutputSpec); index++; surfaceOutputSpec = building.GetSurfaceOutputSpec(index); } return(result); }
public static bool AssignSurfaceOutputSpecs(this TBD.TBDDocument tBDDocument, string name) { if (tBDDocument == null) { return(false); } TBD.Building building = tBDDocument.Building; if (building == null) { return(false); } List <TBD.SurfaceOutputSpec> surfaceOutputSpecs_TBD = building?.SurfaceOutputSpecs(); if (surfaceOutputSpecs_TBD == null || surfaceOutputSpecs_TBD.Count == 0) { return(false); } TBD.SurfaceOutputSpec surfaceOutputSpec = surfaceOutputSpecs_TBD.Find(x => x.name == name); if (surfaceOutputSpec == null) { return(false); } List <TBD.buildingElement> buildingElements = building.BuildingElements(); if (buildingElements == null || buildingElements.Count == 0) { return(false); } foreach (TBD.buildingElement buildingElement in buildingElements) { buildingElement.AssignSurfaceOutputSpec(surfaceOutputSpec); } return(true); }
internal SurfaceOutputSpec(TBD.SurfaceOutputSpec SurfaceOutputSpec) { pSurfaceOutputSpec = SurfaceOutputSpec; }