diff --git a/src/IFC-dotnet/IFC.cs b/src/IFC-dotnet/IFC.cs index fae338c..5fe19a6 100755 --- a/src/IFC-dotnet/IFC.cs +++ b/src/IFC-dotnet/IFC.cs @@ -5,13 +5,15 @@ using System.ComponentModel; using System.Collections.Generic; using Newtonsoft.Json; +using System.Linq; +using STEPExtensions; namespace IFC4 { public abstract class BaseIfc { [JsonProperty("id")] - public Guid Id{get;} + public Guid Id{ get; set; } public BaseIfc() { @@ -28,11 +30,39 @@ public virtual string ToJSON() return JsonConvert.SerializeObject(this); } - public virtual string ToSTEP() - { - throw new NotImplementedException(); - } - } + public virtual string STEPParameters(ref Dictionary indexDictionnary) + { + return ""; + } + + public virtual string ToSTEP(ref Dictionary indexDictionnary) + { + return string.Format("{0} = {1}({2});\r\n", + STEPValue(ref indexDictionnary), + this.GetType().Name.ToUpper(), + this.STEPParameters(ref indexDictionnary)); + } + + public virtual string STEPValue(ref Dictionary indexDictionnary) + { + return "#" + indexDictionnary[Id].ToString(); + //if (indexDictionnary.ContainsKey(Id)) + //{ + // return "#" + indexDictionnary[Id].ToString(); + //} + //else + //{ + // if (indexDictionnary.Count == 0) + // { + // indexDictionnary.Add(Id, 1); + // return "#1"; + // } + // int index = indexDictionnary.Values.Last() + 1; + // indexDictionnary.Add(Id, index); + // return "#" + index.ToString(); + //} + } + } public abstract class Select : BaseIfc { @@ -79,6 +109,12 @@ public static IfcAbsorbedDoseMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -102,6 +138,12 @@ public static IfcAccelerationMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -125,6 +167,12 @@ public static IfcAmountOfSubstanceMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -148,6 +196,12 @@ public static IfcAngularVelocityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -171,6 +225,12 @@ public static IfcAreaDensityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -194,6 +254,12 @@ public static IfcAreaMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -217,6 +283,12 @@ public static IfcBoolean FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -240,6 +312,12 @@ public static IfcBoxAlignment FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -263,6 +341,12 @@ public static IfcCardinalPointReference FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -286,6 +370,18 @@ public static IfcComplexNumber FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + List < string > values = new List(); + foreach (double value in Value) + { + values.Add(value.STEPValue(ref indexDictionnary)); + } + if (values.Count == 0) return "$"; + return "(" + string.Join(", ", values.ToArray()) + ")"; + } + } /// @@ -309,6 +405,18 @@ public static IfcCompoundPlaneAngleMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + List < string > values = new List(); + foreach (int value in Value) + { + values.Add(value.STEPValue(ref indexDictionnary)); + } + if (values.Count == 0) return "$"; + return "(" + string.Join(", ", values.ToArray()) + ")"; + } + } /// @@ -332,6 +440,12 @@ public static IfcContextDependentMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -355,6 +469,12 @@ public static IfcCountMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -378,6 +498,12 @@ public static IfcCurvatureMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -401,6 +527,12 @@ public static IfcDate FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -424,6 +556,12 @@ public static IfcDateTime FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -447,6 +585,12 @@ public static IfcDayInMonthNumber FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -470,6 +614,12 @@ public static IfcDayInWeekNumber FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -493,6 +643,12 @@ public static IfcDescriptiveMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -516,6 +672,12 @@ public static IfcDimensionCount FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -539,6 +701,12 @@ public static IfcDoseEquivalentMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -562,6 +730,12 @@ public static IfcDuration FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -585,6 +759,12 @@ public static IfcDynamicViscosityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -608,6 +788,12 @@ public static IfcElectricCapacitanceMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -631,6 +817,12 @@ public static IfcElectricChargeMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -654,6 +846,12 @@ public static IfcElectricConductanceMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -677,6 +875,12 @@ public static IfcElectricCurrentMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -700,6 +904,12 @@ public static IfcElectricResistanceMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -723,6 +933,12 @@ public static IfcElectricVoltageMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -746,6 +962,12 @@ public static IfcEnergyMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -769,6 +991,12 @@ public static IfcFontStyle FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -792,6 +1020,12 @@ public static IfcFontVariant FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -815,6 +1049,12 @@ public static IfcFontWeight FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -838,6 +1078,12 @@ public static IfcForceMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -861,6 +1107,12 @@ public static IfcFrequencyMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -884,6 +1136,12 @@ public static IfcGloballyUniqueId FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -907,6 +1165,12 @@ public static IfcHeatFluxDensityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -930,6 +1194,12 @@ public static IfcHeatingValueMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -953,6 +1223,12 @@ public static IfcIdentifier FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -976,6 +1252,12 @@ public static IfcIlluminanceMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -999,6 +1281,12 @@ public static IfcInductanceMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1022,6 +1310,12 @@ public static IfcInteger FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1045,6 +1339,12 @@ public static IfcIntegerCountRateMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1068,6 +1368,12 @@ public static IfcIonConcentrationMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1091,6 +1397,12 @@ public static IfcIsothermalMoistureCapacityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1114,6 +1426,12 @@ public static IfcKinematicViscosityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1137,6 +1455,12 @@ public static IfcLabel FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1160,6 +1484,12 @@ public static IfcLanguageId FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1183,6 +1513,12 @@ public static IfcLengthMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1206,6 +1542,12 @@ public static IfcLinearForceMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1229,6 +1571,12 @@ public static IfcLinearMomentMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1252,6 +1600,12 @@ public static IfcLinearStiffnessMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1275,6 +1629,12 @@ public static IfcLinearVelocityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1298,6 +1658,12 @@ public static IfcLogical FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1321,6 +1687,12 @@ public static IfcLuminousFluxMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1344,6 +1716,12 @@ public static IfcLuminousIntensityDistributionMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1367,6 +1745,12 @@ public static IfcLuminousIntensityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1390,6 +1774,12 @@ public static IfcMagneticFluxDensityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1413,6 +1803,12 @@ public static IfcMagneticFluxMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1436,6 +1832,12 @@ public static IfcMassDensityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1459,6 +1861,12 @@ public static IfcMassFlowRateMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1482,6 +1890,12 @@ public static IfcMassMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1505,6 +1919,12 @@ public static IfcMassPerLengthMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1528,6 +1948,12 @@ public static IfcModulusOfElasticityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1551,6 +1977,12 @@ public static IfcModulusOfLinearSubgradeReactionMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1574,6 +2006,12 @@ public static IfcModulusOfRotationalSubgradeReactionMeasure FromJSON(string json { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1597,6 +2035,12 @@ public static IfcModulusOfSubgradeReactionMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1620,6 +2064,12 @@ public static IfcMoistureDiffusivityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1643,6 +2093,12 @@ public static IfcMolecularWeightMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1666,6 +2122,12 @@ public static IfcMomentOfInertiaMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1689,6 +2151,12 @@ public static IfcMonetaryMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1712,6 +2180,12 @@ public static IfcMonthInYearNumber FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1735,6 +2209,12 @@ public static IfcNonNegativeLengthMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1758,6 +2238,12 @@ public static IfcNormalisedRatioMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1781,6 +2267,12 @@ public static IfcNumericMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1804,6 +2296,12 @@ public static IfcPHMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1827,6 +2325,12 @@ public static IfcParameterValue FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1850,6 +2354,12 @@ public static IfcPlanarForceMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1873,6 +2383,12 @@ public static IfcPlaneAngleMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1896,6 +2412,12 @@ public static IfcPositiveLengthMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1919,6 +2441,12 @@ public static IfcPositivePlaneAngleMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1942,6 +2470,12 @@ public static IfcPositiveRatioMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1965,6 +2499,12 @@ public static IfcPowerMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1988,6 +2528,12 @@ public static IfcPresentableText FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2011,6 +2557,12 @@ public static IfcPressureMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2034,6 +2586,18 @@ public static IfcPropertySetDefinitionSet FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + List < string > values = new List(); + foreach (IfcPropertySetDefinition value in Value) + { + values.Add(value.STEPValue(ref indexDictionnary)); + } + if (values.Count == 0) return "$"; + return "(" + string.Join(", ", values.ToArray()) + ")"; + } + } /// @@ -2057,6 +2621,12 @@ public static IfcRadioActivityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2080,6 +2650,12 @@ public static IfcRatioMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2103,6 +2679,12 @@ public static IfcReal FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2126,6 +2708,12 @@ public static IfcRotationalFrequencyMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2149,6 +2737,12 @@ public static IfcRotationalMassMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2172,6 +2766,12 @@ public static IfcRotationalStiffnessMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2195,6 +2795,12 @@ public static IfcSectionModulusMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2218,6 +2824,12 @@ public static IfcSectionalAreaIntegralMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2241,6 +2853,12 @@ public static IfcShearModulusMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2264,6 +2882,12 @@ public static IfcSolidAngleMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2287,6 +2911,12 @@ public static IfcSoundPowerLevelMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2310,6 +2940,12 @@ public static IfcSoundPowerMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2333,6 +2969,12 @@ public static IfcSoundPressureLevelMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2356,6 +2998,12 @@ public static IfcSoundPressureMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2379,6 +3027,12 @@ public static IfcSpecificHeatCapacityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2402,6 +3056,12 @@ public static IfcSpecularExponent FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2425,6 +3085,12 @@ public static IfcSpecularRoughness FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2448,6 +3114,12 @@ public static IfcTemperatureGradientMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2471,6 +3143,12 @@ public static IfcTemperatureRateOfChangeMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2494,6 +3172,12 @@ public static IfcText FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2517,6 +3201,12 @@ public static IfcTextAlignment FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2540,6 +3230,12 @@ public static IfcTextDecoration FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2563,6 +3259,12 @@ public static IfcTextFontName FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2586,6 +3288,12 @@ public static IfcTextTransformation FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2609,6 +3317,12 @@ public static IfcThermalAdmittanceMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2632,6 +3346,12 @@ public static IfcThermalConductivityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2655,6 +3375,12 @@ public static IfcThermalExpansionCoefficientMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2678,6 +3404,12 @@ public static IfcThermalResistanceMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2701,6 +3433,12 @@ public static IfcThermalTransmittanceMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2724,6 +3462,12 @@ public static IfcThermodynamicTemperatureMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2747,6 +3491,12 @@ public static IfcTime FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2770,6 +3520,12 @@ public static IfcTimeMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2793,6 +3549,12 @@ public static IfcTimeStamp FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2816,6 +3578,12 @@ public static IfcTorqueMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2839,6 +3607,12 @@ public static IfcURIReference FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2862,6 +3636,12 @@ public static IfcVaporPermeabilityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2885,6 +3665,12 @@ public static IfcVolumeMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2908,6 +3694,12 @@ public static IfcVolumetricFlowRateMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2931,6 +3723,12 @@ public static IfcWarpingConstantMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2954,6 +3752,12 @@ public static IfcWarpingMomentMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -5049,7 +5853,21 @@ public IfcActionRequest(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistor { return JsonConvert.DeserializeObject(json); } - } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(Status != null ? Status.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LongDescription != null ? LongDescription.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } + } /// /// @@ -5078,6 +5896,18 @@ public IfcControl(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcL { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Identification != null ? Identification.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5108,6 +5938,18 @@ public IfcActor(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLab { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(TheActor != null ? TheActor.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5137,6 +5979,18 @@ public IfcOccupant(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5166,6 +6020,18 @@ public IfcObject(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLa { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ObjectType != null ? ObjectType.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5200,6 +6066,20 @@ public static IfcActorRole FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Role.STEPValue(ref indexDictionnary)); + parameters.Add(UserDefinedRole != null ? UserDefinedRole.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5229,6 +6109,18 @@ public IfcActuator(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5255,6 +6147,16 @@ public IfcDistributionControlElement(IfcGloballyUniqueId globalId,IfcOwnerHistor { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5285,6 +6187,18 @@ public IfcActuatorType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5311,6 +6225,16 @@ public IfcDistributionControlElementType(IfcGloballyUniqueId globalId,IfcOwnerHi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5344,6 +6268,20 @@ public static IfcAddress FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Purpose.STEPValue(ref indexDictionnary)); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(UserDefinedPurpose != null ? UserDefinedPurpose.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5373,7 +6311,15 @@ public IfcPostalAddress():base() public IfcPostalAddress(IfcAddressTypeEnum purpose,IfcText description,IfcLabel userDefinedPurpose,IfcLabel internalLocation,List addressLines,IfcLabel postalBox,IfcLabel town,IfcLabel region,IfcLabel postalCode,IfcLabel country):base(purpose,description,userDefinedPurpose) { InternalLocation = internalLocation; - AddressLines = new List(); + + if (addressLines != null) + { + AddressLines = addressLines; + } + else + { + AddressLines = new List(); + } PostalBox = postalBox; Town = town; Region = region; @@ -5385,6 +6331,24 @@ public IfcPostalAddress(IfcAddressTypeEnum purpose,IfcText description,IfcLabel { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(InternalLocation != null ? InternalLocation.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(AddressLines != null ? AddressLines.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PostalBox != null ? PostalBox.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Town != null ? Town.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Region != null ? Region.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PostalCode != null ? PostalCode.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Country != null ? Country.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5412,18 +6376,67 @@ public IfcTelecomAddress():base() [JsonConstructor] public IfcTelecomAddress(IfcAddressTypeEnum purpose,IfcText description,IfcLabel userDefinedPurpose,List telephoneNumbers,List facsimileNumbers,IfcLabel pagerNumber,List electronicMailAddresses,IfcURIReference wWWHomePageURL,List messagingIDs):base(purpose,description,userDefinedPurpose) { - TelephoneNumbers = new List(); - FacsimileNumbers = new List(); + + if (telephoneNumbers != null) + { + TelephoneNumbers = telephoneNumbers; + } + else + { + TelephoneNumbers = new List(); + } + + if (facsimileNumbers != null) + { + FacsimileNumbers = facsimileNumbers; + } + else + { + FacsimileNumbers = new List(); + } PagerNumber = pagerNumber; - ElectronicMailAddresses = new List(); + + if (electronicMailAddresses != null) + { + ElectronicMailAddresses = electronicMailAddresses; + } + else + { + ElectronicMailAddresses = new List(); + } WWWHomePageURL = wWWHomePageURL; - MessagingIDs = new List(); + + if (messagingIDs != null) + { + MessagingIDs = messagingIDs; + } + else + { + MessagingIDs = new List(); + } } public static new IfcTelecomAddress FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(TelephoneNumbers != null ? TelephoneNumbers.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FacsimileNumbers != null ? FacsimileNumbers.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PagerNumber != null ? PagerNumber.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ElectronicMailAddresses != null ? ElectronicMailAddresses.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(WWWHomePageURL != null ? WWWHomePageURL.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(MessagingIDs != null ? MessagingIDs.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5443,6 +6456,16 @@ public IfcAdvancedBrep(IfcClosedShell outer):base(outer) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5465,6 +6488,18 @@ public IfcAdvancedBrepWithVoids(IfcClosedShell outer,List voids) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Voids != null ? Voids.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5487,6 +6522,18 @@ public IfcManifoldSolidBrep(IfcClosedShell outer):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Outer != null ? Outer.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5506,6 +6553,16 @@ public IfcAdvancedFace(List bounds,IfcSurface faceSurface,bool sam { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5530,6 +6587,19 @@ public IfcFaceSurface(List bounds,IfcSurface faceSurface,bool same { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(FaceSurface != null ? FaceSurface.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SameSense.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5559,6 +6629,18 @@ public IfcAirTerminal(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5585,6 +6667,16 @@ public IfcFlowTerminal(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5614,6 +6706,18 @@ public IfcAirTerminalBox(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5640,6 +6744,16 @@ public IfcFlowController(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5670,6 +6784,18 @@ public IfcAirTerminalBoxType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerH { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5696,6 +6822,16 @@ public IfcFlowControllerType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerH { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5726,6 +6862,18 @@ public IfcAirTerminalType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5752,6 +6900,16 @@ public IfcFlowTerminalType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5781,6 +6939,18 @@ public IfcAirToAirHeatRecovery(IfcGloballyUniqueId globalId,IfcOwnerHistory owne { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5807,6 +6977,16 @@ public IfcEnergyConversionDevice(IfcGloballyUniqueId globalId,IfcOwnerHistory ow { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5837,6 +7017,18 @@ public IfcAirToAirHeatRecoveryType(IfcGloballyUniqueId globalId,IfcOwnerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5863,6 +7055,16 @@ public IfcEnergyConversionDeviceType(IfcGloballyUniqueId globalId,IfcOwnerHistor { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5892,6 +7094,18 @@ public IfcAlarm(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLab { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5922,6 +7136,18 @@ public IfcAlarmType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,If { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5948,6 +7174,16 @@ public IfcAnnotation(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -5979,6 +7215,19 @@ public IfcProduct(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcL { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ObjectPlacement != null ? ObjectPlacement.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Representation != null ? Representation.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6004,13 +7253,34 @@ public IfcAnnotationFillArea(IfcCurve outerBoundary):base() public IfcAnnotationFillArea(IfcCurve outerBoundary,List innerBoundaries):base() { OuterBoundary = outerBoundary; - InnerBoundaries = new List(); + + if (innerBoundaries != null) + { + InnerBoundaries = innerBoundaries; + } + else + { + InnerBoundaries = new List(); + } } public static new IfcAnnotationFillArea FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(OuterBoundary != null ? OuterBoundary.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(InnerBoundaries != null ? InnerBoundaries.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6030,6 +7300,16 @@ public IfcGeometricRepresentationItem():base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6058,6 +7338,21 @@ public static IfcApplication FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ApplicationDeveloper != null ? ApplicationDeveloper.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Version != null ? Version.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ApplicationFullName != null ? ApplicationFullName.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ApplicationIdentifier != null ? ApplicationIdentifier.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6098,13 +7393,42 @@ public IfcAppliedValue(IfcLabel name,IfcText description,IfcAppliedValueSelect a Category = category; Condition = condition; ArithmeticOperator = arithmeticOperator; - Components = new List(); + + if (components != null) + { + Components = components; + } + else + { + Components = new List(); + } } public static IfcAppliedValue FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(AppliedValue != null ? AppliedValue.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(UnitBasis != null ? UnitBasis.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ApplicableDate != null ? ApplicableDate.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FixedUntilDate != null ? FixedUntilDate.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Category != null ? Category.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Condition != null ? Condition.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ArithmeticOperator.STEPValue(ref indexDictionnary)); + parameters.Add(Components != null ? Components.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6131,6 +7455,16 @@ public IfcCostValue(IfcLabel name,IfcText description,IfcAppliedValueSelect appl { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6176,6 +7510,26 @@ public static IfcApproval FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Identifier != null ? Identifier.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TimeOfApproval != null ? TimeOfApproval.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Status != null ? Status.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Level != null ? Level.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Qualifier != null ? Qualifier.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RequestingApproval != null ? RequestingApproval.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(GivingApproval != null ? GivingApproval.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6209,6 +7563,19 @@ public IfcApprovalRelationship(IfcLabel name,IfcText description,IfcApproval rel { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingApproval != null ? RelatingApproval.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedApprovals != null ? RelatedApprovals.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6240,6 +7607,19 @@ public static IfcResourceLevelRelationship FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6270,6 +7650,18 @@ public IfcArbitraryClosedProfileDef(IfcProfileTypeEnum profileType,IfcLabel prof { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(OuterCurve != null ? OuterCurve.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6300,6 +7692,18 @@ public IfcArbitraryProfileDefWithVoids(IfcProfileTypeEnum profileType,IfcLabel p { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(InnerCurves != null ? InnerCurves.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6332,6 +7736,19 @@ public static IfcProfileDef FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ProfileType.STEPValue(ref indexDictionnary)); + parameters.Add(ProfileName != null ? ProfileName.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6362,6 +7779,18 @@ public IfcArbitraryOpenProfileDef(IfcProfileTypeEnum profileType,IfcLabel profil { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Curve != null ? Curve.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6392,6 +7821,18 @@ public IfcCenterLineProfileDef(IfcProfileTypeEnum profileType,IfcLabel profileNa { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Thickness != null ? Thickness.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6437,6 +7878,26 @@ public IfcAsset(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLab { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Identification != null ? Identification.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(OriginalValue != null ? OriginalValue.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CurrentValue != null ? CurrentValue.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TotalReplacementCost != null ? TotalReplacementCost.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Owner != null ? Owner.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(User != null ? User.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ResponsiblePerson != null ? ResponsiblePerson.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(IncorporationDate != null ? IncorporationDate.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(DepreciatedValue != null ? DepreciatedValue.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6463,6 +7924,16 @@ public IfcGroup(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLab { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6519,6 +7990,29 @@ public IfcAsymmetricIShapeProfileDef(IfcProfileTypeEnum profileType,IfcLabel pro { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(BottomFlangeWidth != null ? BottomFlangeWidth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(OverallDepth != null ? OverallDepth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(WebThickness != null ? WebThickness.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(BottomFlangeThickness != null ? BottomFlangeThickness.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(BottomFlangeFilletRadius != null ? BottomFlangeFilletRadius.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TopFlangeWidth != null ? TopFlangeWidth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TopFlangeThickness != null ? TopFlangeThickness.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TopFlangeFilletRadius != null ? TopFlangeFilletRadius.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(BottomFlangeEdgeRadius != null ? BottomFlangeEdgeRadius.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(BottomFlangeSlope != null ? BottomFlangeSlope.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TopFlangeEdgeRadius != null ? TopFlangeEdgeRadius.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TopFlangeSlope != null ? TopFlangeSlope.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6548,6 +8042,18 @@ public IfcParameterizedProfileDef(IfcProfileTypeEnum profileType,IfcLabel profil { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Position != null ? Position.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6577,6 +8083,18 @@ public IfcAudioVisualAppliance(IfcGloballyUniqueId globalId,IfcOwnerHistory owne { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6607,6 +8125,18 @@ public IfcAudioVisualApplianceType(IfcGloballyUniqueId globalId,IfcOwnerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6636,6 +8166,18 @@ public IfcAxis1Placement(IfcCartesianPoint location,IfcDirection axis):base(loca { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Axis != null ? Axis.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6658,6 +8200,18 @@ public IfcPlacement(IfcCartesianPoint location):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Location != null ? Location.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6687,6 +8241,18 @@ public IfcAxis2Placement2D(IfcCartesianPoint location,IfcDirection refDirection) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RefDirection != null ? RefDirection.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6718,6 +8284,19 @@ public IfcAxis2Placement3D(IfcCartesianPoint location,IfcDirection axis,IfcDirec { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Axis != null ? Axis.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RefDirection != null ? RefDirection.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6748,6 +8327,22 @@ public IfcBSplineCurve(int degree,List controlPointsList,IfcB { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Degree.STEPValue(ref indexDictionnary)); + parameters.Add(ControlPointsList != null ? ControlPointsList.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CurveForm != null ? CurveForm.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ClosedCurve != null ? ClosedCurve.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SelfIntersect != null ? SelfIntersect.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6774,6 +8369,20 @@ public IfcBSplineCurveWithKnots(int degree,List controlPoints { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(KnotMultiplicities != null ? KnotMultiplicities.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Knots != null ? Knots.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(KnotSpec != null ? KnotSpec.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6793,6 +8402,16 @@ public IfcBoundedCurve():base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6815,6 +8434,18 @@ public IfcRationalBSplineCurveWithKnots(int degree,List contr { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(WeightsData != null ? WeightsData.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6849,6 +8480,24 @@ public IfcBSplineSurface(int uDegree,int vDegree,List> c { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(UDegree.STEPValue(ref indexDictionnary)); + parameters.Add(VDegree.STEPValue(ref indexDictionnary)); + parameters.Add(ControlPointsList != null ? ControlPointsList.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SurfaceForm != null ? SurfaceForm.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(UClosed != null ? UClosed.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(VClosed != null ? VClosed.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SelfIntersect != null ? SelfIntersect.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6879,6 +8528,22 @@ public IfcBSplineSurfaceWithKnots(int uDegree,int vDegree,List(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(UMultiplicities != null ? UMultiplicities.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(VMultiplicities != null ? VMultiplicities.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(UKnots != null ? UKnots.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(VKnots != null ? VKnots.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(KnotSpec != null ? KnotSpec.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6898,6 +8563,16 @@ public IfcBoundedSurface():base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6920,6 +8595,18 @@ public IfcRationalBSplineSurfaceWithKnots(int uDegree,int vDegree,List(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(WeightsData != null ? WeightsData.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6949,6 +8636,18 @@ public IfcBeam(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLabe { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -6975,6 +8674,16 @@ public IfcBeamStandardCase(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7001,6 +8710,16 @@ public IfcBuildingElement(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7031,6 +8750,18 @@ public IfcBeamType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7057,6 +8788,16 @@ public IfcBuildingElementType(IfcGloballyUniqueId globalId,IfcOwnerHistory owner { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7090,6 +8831,19 @@ public IfcBlobTexture(bool repeatS,bool repeatT,IfcIdentifier mode,IfcCartesianT { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RasterFormat != null ? RasterFormat.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RasterCode != null ? RasterCode.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7122,13 +8876,37 @@ public IfcSurfaceTexture(bool repeatS,bool repeatT,IfcIdentifier mode,IfcCartesi RepeatT = repeatT; Mode = mode; TextureTransform = textureTransform; - Parameter = new List(); + + if (parameter != null) + { + Parameter = parameter; + } + else + { + Parameter = new List(); + } } public static new IfcSurfaceTexture FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RepeatS.STEPValue(ref indexDictionnary)); + parameters.Add(RepeatT.STEPValue(ref indexDictionnary)); + parameters.Add(Mode != null ? Mode.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TextureTransform != null ? TextureTransform.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Parameter != null ? Parameter.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7155,6 +8933,20 @@ public IfcBlock(IfcAxis2Placement3D position,IfcPositiveLengthMeasure xLength,If { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(XLength != null ? XLength.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(YLength != null ? YLength.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ZLength != null ? ZLength.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7177,6 +8969,18 @@ public IfcCsgPrimitive3D(IfcAxis2Placement3D position):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Position != null ? Position.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7206,6 +9010,18 @@ public IfcBoiler(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLa { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7236,6 +9052,18 @@ public IfcBoilerType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7255,6 +9083,16 @@ public IfcBooleanClippingResult(IfcBooleanOperator op,IfcBooleanOperand firstOpe { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7281,6 +9119,20 @@ public IfcBooleanResult(IfcBooleanOperator op,IfcBooleanOperand firstOperand,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Operator != null ? Operator.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FirstOperand != null ? FirstOperand.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SecondOperand != null ? SecondOperand.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7310,6 +9162,18 @@ public static IfcBoundaryCondition FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7349,6 +9213,23 @@ public IfcBoundaryEdgeCondition(IfcLabel name,IfcModulusOfTranslationalSubgradeR { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(TranslationalStiffnessByLengthX != null ? TranslationalStiffnessByLengthX.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TranslationalStiffnessByLengthY != null ? TranslationalStiffnessByLengthY.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TranslationalStiffnessByLengthZ != null ? TranslationalStiffnessByLengthZ.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RotationalStiffnessByLengthX != null ? RotationalStiffnessByLengthX.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RotationalStiffnessByLengthY != null ? RotationalStiffnessByLengthY.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RotationalStiffnessByLengthZ != null ? RotationalStiffnessByLengthZ.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7382,6 +9263,20 @@ public IfcBoundaryFaceCondition(IfcLabel name,IfcModulusOfSubgradeReactionSelect { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(TranslationalStiffnessByAreaX != null ? TranslationalStiffnessByAreaX.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TranslationalStiffnessByAreaY != null ? TranslationalStiffnessByAreaY.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TranslationalStiffnessByAreaZ != null ? TranslationalStiffnessByAreaZ.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7421,6 +9316,23 @@ public IfcBoundaryNodeCondition(IfcLabel name,IfcTranslationalStiffnessSelect tr { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(TranslationalStiffnessX != null ? TranslationalStiffnessX.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TranslationalStiffnessY != null ? TranslationalStiffnessY.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TranslationalStiffnessZ != null ? TranslationalStiffnessZ.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RotationalStiffnessX != null ? RotationalStiffnessX.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RotationalStiffnessY != null ? RotationalStiffnessY.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RotationalStiffnessZ != null ? RotationalStiffnessZ.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7440,6 +9352,16 @@ public IfcBoundaryCurve(List segments,bool? selfInters { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7459,6 +9381,16 @@ public IfcOuterBoundaryCurve(List segments,bool? selfI { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7478,6 +9410,16 @@ public IfcCompositeCurveOnSurface(List segments,bool? { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7507,6 +9449,18 @@ public IfcBoundaryNodeConditionWarping(IfcLabel name,IfcTranslationalStiffnessSe { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(WarpingStiffness != null ? WarpingStiffness.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7531,6 +9485,19 @@ public IfcCompositeCurve(List segments,bool? selfInter { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Segments != null ? Segments.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SelfIntersect != null ? SelfIntersect.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7553,6 +9520,18 @@ public IfcPolyline(List points):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Points != null ? Points.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7583,6 +9562,22 @@ public IfcTrimmedCurve(IfcCurve basisCurve,List trim1,List(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(BasisCurve != null ? BasisCurve.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Trim1 != null ? Trim1.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Trim2 != null ? Trim2.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SenseAgreement.STEPValue(ref indexDictionnary)); + parameters.Add(MasterRepresentation != null ? MasterRepresentation.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7602,6 +9597,16 @@ public IfcCurve():base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7628,9 +9633,23 @@ public IfcCurveBoundedPlane(IfcPlane basisSurface,IfcCurve outerBoundary,List(json); } - } - /// + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(BasisSurface != null ? BasisSurface.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(OuterBoundary != null ? OuterBoundary.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(InnerBoundaries != null ? InnerBoundaries.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } + } + + /// /// /// public partial class IfcCurveBoundedSurface : IfcBoundedSurface @@ -7654,6 +9673,20 @@ public IfcCurveBoundedSurface(IfcSurface basisSurface,List bou { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(BasisSurface != null ? BasisSurface.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Boundaries != null ? Boundaries.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ImplicitOuter.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7688,6 +9721,24 @@ public IfcRectangularTrimmedSurface(IfcSurface basisSurface,IfcParameterValue u1 { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(BasisSurface != null ? BasisSurface.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(U1 != null ? U1.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(V1 != null ? V1.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(U2 != null ? U2.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(V2 != null ? V2.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Usense.STEPValue(ref indexDictionnary)); + parameters.Add(Vsense.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7707,6 +9758,16 @@ public IfcSurface():base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7735,6 +9796,21 @@ public IfcBoundingBox(IfcCartesianPoint corner,IfcPositiveLengthMeasure xDim,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Corner != null ? Corner.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(XDim != null ? XDim.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(YDim != null ? YDim.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ZDim != null ? ZDim.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7757,6 +9833,18 @@ public IfcBoxedHalfSpace(IfcSurface baseSurface,bool agreementFlag,IfcBoundingBo { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Enclosure != null ? Enclosure.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7781,6 +9869,19 @@ public IfcHalfSpaceSolid(IfcSurface baseSurface,bool agreementFlag):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(BaseSurface != null ? BaseSurface.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(AgreementFlag.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7814,6 +9915,20 @@ public IfcBuilding(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ElevationOfRefHeight != null ? ElevationOfRefHeight.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ElevationOfTerrain != null ? ElevationOfTerrain.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(BuildingAddress != null ? BuildingAddress.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7843,6 +9958,18 @@ public IfcSpatialStructureElement(IfcGloballyUniqueId globalId,IfcOwnerHistory o { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(CompositionType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7872,6 +9999,18 @@ public IfcBuildingElementProxy(IfcGloballyUniqueId globalId,IfcOwnerHistory owne { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7901,6 +10040,18 @@ public IfcChimney(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcL { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7930,6 +10081,18 @@ public IfcColumn(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLa { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7959,6 +10122,18 @@ public IfcCovering(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -7988,6 +10163,18 @@ public IfcCurtainWall(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8025,6 +10212,22 @@ public IfcDoor(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLabe { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(OverallHeight != null ? OverallHeight.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(OverallWidth != null ? OverallWidth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(OperationType.STEPValue(ref indexDictionnary)); + parameters.Add(UserDefinedOperationType != null ? UserDefinedOperationType.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8054,6 +10257,18 @@ public IfcFooting(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcL { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8083,6 +10298,18 @@ public IfcMember(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLa { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8114,6 +10341,19 @@ public IfcPile(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLabe { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(ConstructionType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8143,6 +10383,18 @@ public IfcPlate(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLab { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8172,6 +10424,18 @@ public IfcRailing(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcL { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8201,6 +10465,18 @@ public IfcRamp(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLabe { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8230,6 +10506,18 @@ public IfcRampFlight(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8259,6 +10547,18 @@ public IfcRoof(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLabe { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8288,6 +10588,18 @@ public IfcShadingDevice(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistor { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8317,6 +10629,18 @@ public IfcSlab(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLabe { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8346,6 +10670,18 @@ public IfcStair(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLab { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8383,6 +10719,22 @@ public IfcStairFlight(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(NumberOfRiser.STEPValue(ref indexDictionnary)); + parameters.Add(NumberOfTreads.STEPValue(ref indexDictionnary)); + parameters.Add(RiserHeight != null ? RiserHeight.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TreadLength != null ? TreadLength.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8412,6 +10764,18 @@ public IfcWall(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLabe { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8449,6 +10813,22 @@ public IfcWindow(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLa { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(OverallHeight != null ? OverallHeight.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(OverallWidth != null ? OverallWidth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(PartitioningType.STEPValue(ref indexDictionnary)); + parameters.Add(UserDefinedPartitioningType != null ? UserDefinedPartitioningType.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8478,6 +10858,18 @@ public IfcElement(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcL { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Tag != null ? Tag.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8507,6 +10899,18 @@ public IfcBuildingElementPart(IfcGloballyUniqueId globalId,IfcOwnerHistory owner { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8533,6 +10937,16 @@ public IfcElementComponent(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8563,6 +10977,18 @@ public IfcBuildingElementPartType(IfcGloballyUniqueId globalId,IfcOwnerHistory o { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8589,6 +11015,16 @@ public IfcElementComponentType(IfcGloballyUniqueId globalId,IfcOwnerHistory owne { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8619,6 +11055,18 @@ public IfcBuildingElementProxyType(IfcGloballyUniqueId globalId,IfcOwnerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8649,6 +11097,18 @@ public IfcChimneyType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8679,6 +11139,18 @@ public IfcColumnType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8709,6 +11181,18 @@ public IfcCoveringType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8739,6 +11223,18 @@ public IfcCurtainWallType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8776,6 +11272,21 @@ public IfcDoorType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(OperationType.STEPValue(ref indexDictionnary)); + parameters.Add(ParameterTakesPrecedence.STEPValue(ref indexDictionnary)); + parameters.Add(UserDefinedOperationType != null ? UserDefinedOperationType.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8806,6 +11317,18 @@ public IfcFootingType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8836,6 +11359,18 @@ public IfcMemberType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8866,6 +11401,18 @@ public IfcPileType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8896,6 +11443,18 @@ public IfcPlateType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,If { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8926,6 +11485,18 @@ public IfcRailingType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8956,6 +11527,18 @@ public IfcRampFlightType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -8986,6 +11569,18 @@ public IfcRampType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9016,6 +11611,18 @@ public IfcRoofType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9046,6 +11653,18 @@ public IfcShadingDeviceType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9076,6 +11695,18 @@ public IfcSlabType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9106,6 +11737,18 @@ public IfcStairFlightType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9136,6 +11779,18 @@ public IfcStairType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,If { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9166,6 +11821,18 @@ public IfcWallType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9203,6 +11870,21 @@ public IfcWindowType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(PartitioningType.STEPValue(ref indexDictionnary)); + parameters.Add(ParameterTakesPrecedence.STEPValue(ref indexDictionnary)); + parameters.Add(UserDefinedPartitioningType != null ? UserDefinedPartitioningType.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9232,6 +11914,18 @@ public IfcElementType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ElementType != null ? ElementType.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9261,6 +11955,18 @@ public IfcBuildingStorey(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Elevation != null ? Elevation.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9290,6 +11996,18 @@ public IfcBuildingSystem(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9316,6 +12034,16 @@ public IfcSystem(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLa { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9345,6 +12073,18 @@ public IfcBurner(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLa { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9375,6 +12115,18 @@ public IfcBurnerType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9416,6 +12168,22 @@ public IfcCShapeProfileDef(IfcProfileTypeEnum profileType,IfcLabel profileName,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Depth != null ? Depth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Width != null ? Width.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(WallThickness != null ? WallThickness.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Girth != null ? Girth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(InternalFilletRadius != null ? InternalFilletRadius.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9445,6 +12213,18 @@ public IfcCableCarrierFitting(IfcGloballyUniqueId globalId,IfcOwnerHistory owner { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9471,6 +12251,16 @@ public IfcFlowFitting(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9501,6 +12291,18 @@ public IfcCableCarrierFittingType(IfcGloballyUniqueId globalId,IfcOwnerHistory o { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9527,6 +12329,16 @@ public IfcFlowFittingType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9556,6 +12368,18 @@ public IfcCableCarrierSegment(IfcGloballyUniqueId globalId,IfcOwnerHistory owner { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9582,6 +12406,16 @@ public IfcFlowSegment(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9612,6 +12446,18 @@ public IfcCableCarrierSegmentType(IfcGloballyUniqueId globalId,IfcOwnerHistory o { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9638,6 +12484,16 @@ public IfcFlowSegmentType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9667,6 +12523,18 @@ public IfcCableFitting(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9697,6 +12565,18 @@ public IfcCableFittingType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9726,6 +12606,18 @@ public IfcCableSegment(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9756,6 +12648,18 @@ public IfcCableSegmentType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9778,6 +12682,18 @@ public IfcCartesianPoint(List coordinates):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Coordinates != null ? Coordinates.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9797,6 +12713,16 @@ public IfcPoint():base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9816,6 +12742,16 @@ public IfcCartesianPointList():base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9838,6 +12774,18 @@ public IfcCartesianPointList3D(List> coordList):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(CoordList != null ? CoordList.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9874,6 +12822,21 @@ public IfcCartesianTransformationOperator(IfcDirection axis1,IfcDirection axis2, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Axis1 != null ? Axis1.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Axis2 != null ? Axis2.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LocalOrigin != null ? LocalOrigin.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Scale.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9900,6 +12863,16 @@ public IfcCartesianTransformationOperator2D(IfcDirection axis1,IfcDirection axis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9929,6 +12902,18 @@ public IfcCartesianTransformationOperator3D(IfcDirection axis1,IfcDirection axis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Axis3 != null ? Axis3.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9958,6 +12943,18 @@ public IfcCartesianTransformationOperator2DnonUniform(IfcDirection axis1,IfcDire { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Scale2.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -9989,6 +12986,19 @@ public IfcCartesianTransformationOperator3DnonUniform(IfcDirection axis1,IfcDire { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Scale2.STEPValue(ref indexDictionnary)); + parameters.Add(Scale3.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10018,6 +13028,18 @@ public IfcChiller(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcL { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10048,6 +13070,18 @@ public IfcChillerType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10070,6 +13104,18 @@ public IfcCircle(IfcAxis2Placement position,IfcPositiveLengthMeasure radius):bas { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Radius != null ? Radius.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10092,6 +13138,18 @@ public IfcConic(IfcAxis2Placement position):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Position != null ? Position.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10122,6 +13180,18 @@ public IfcCircleHollowProfileDef(IfcProfileTypeEnum profileType,IfcLabel profile { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(WallThickness != null ? WallThickness.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10152,6 +13222,18 @@ public IfcCircleProfileDef(IfcProfileTypeEnum profileType,IfcLabel profileName,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Radius != null ? Radius.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10178,7 +13260,17 @@ public IfcCivilElement(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory { return JsonConvert.DeserializeObject(json); } - } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } + } /// /// @@ -10204,6 +13296,16 @@ public IfcCivilElementType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10239,13 +13341,39 @@ public IfcClassification(IfcLabel source,IfcLabel edition,IfcDate editionDate,If Name = name; Description = description; Location = location; - ReferenceTokens = new List(); + + if (referenceTokens != null) + { + ReferenceTokens = referenceTokens; + } + else + { + ReferenceTokens = new List(); + } } public static new IfcClassification FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Source != null ? Source.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Edition != null ? Edition.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(EditionDate != null ? EditionDate.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Location != null ? Location.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ReferenceTokens != null ? ReferenceTokens.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10265,6 +13393,16 @@ public static IfcExternalInformation FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10298,6 +13436,20 @@ public IfcClassificationReference(IfcURIReference location,IfcIdentifier identif { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ReferencedSource != null ? ReferencedSource.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Sort != null ? Sort.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10331,6 +13483,20 @@ public static IfcExternalReference FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Location != null ? Location.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Identification != null ? Identification.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10350,6 +13516,16 @@ public IfcClosedShell(List cfsFaces):base(cfsFaces) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10372,6 +13548,18 @@ public IfcConnectedFaceSet(List cfsFaces):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(CfsFaces != null ? CfsFaces.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10401,6 +13589,18 @@ public IfcCoil(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLabe { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10431,6 +13631,18 @@ public IfcCoilType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10467,6 +13679,20 @@ public IfcColourRgb(IfcLabel name,IfcNormalisedRatioMeasure red,IfcNormalisedRat { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Red != null ? Red.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Green != null ? Green.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Blue != null ? Blue.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10496,6 +13722,18 @@ public IfcColourSpecification(IfcLabel name):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10518,6 +13756,18 @@ public IfcColourRgbList(List> colourList):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ColourList != null ? ColourList.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10537,6 +13787,16 @@ public static IfcPresentationItem FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10563,6 +13823,16 @@ public IfcColumnStandardCase(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerH { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10592,6 +13862,18 @@ public IfcCommunicationsAppliance(IfcGloballyUniqueId globalId,IfcOwnerHistory o { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10622,6 +13904,18 @@ public IfcCommunicationsApplianceType(IfcGloballyUniqueId globalId,IfcOwnerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10655,6 +13949,19 @@ public IfcComplexProperty(IfcIdentifier name,IfcText description,IfcIdentifier u { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(UsageName != null ? UsageName.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(HasProperties != null ? HasProperties.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10687,6 +13994,19 @@ public IfcProperty(IfcIdentifier name,IfcText description):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10713,13 +14033,35 @@ public IfcComplexPropertyTemplate(IfcGloballyUniqueId globalId,IfcOwnerHistory o { UsageName = usageName; TemplateType = templateType; - HasPropertyTemplates = new List(); + + if (hasPropertyTemplates != null) + { + HasPropertyTemplates = hasPropertyTemplates; + } + else + { + HasPropertyTemplates = new List(); + } } public static new IfcComplexPropertyTemplate FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(UsageName != null ? UsageName.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TemplateType.STEPValue(ref indexDictionnary)); + parameters.Add(HasPropertyTemplates != null ? HasPropertyTemplates.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10746,6 +14088,16 @@ public IfcPropertyTemplate(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10772,6 +14124,20 @@ public IfcCompositeCurveSegment(IfcTransitionCode transition,bool sameSense,IfcC { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Transition != null ? Transition.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SameSense.STEPValue(ref indexDictionnary)); + parameters.Add(ParentCurve != null ? ParentCurve.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10794,6 +14160,18 @@ public IfcReparametrisedCompositeCurveSegment(IfcTransitionCode transition,bool { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ParamLength != null ? ParamLength.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10826,6 +14204,19 @@ public IfcCompositeProfileDef(IfcProfileTypeEnum profileType,IfcLabel profileNam { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Profiles != null ? Profiles.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Label != null ? Label.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10855,6 +14246,18 @@ public IfcCompressor(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10881,6 +14284,16 @@ public IfcFlowMovingDevice(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10911,6 +14324,18 @@ public IfcCompressorType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10937,6 +14362,16 @@ public IfcFlowMovingDeviceType(IfcGloballyUniqueId globalId,IfcOwnerHistory owne { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10966,6 +14401,18 @@ public IfcCondenser(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,If { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -10996,6 +14443,18 @@ public IfcCondenserType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistor { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11020,6 +14479,19 @@ public IfcEllipse(IfcAxis2Placement position,IfcPositiveLengthMeasure semiAxis1, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(SemiAxis1 != null ? SemiAxis1.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SemiAxis2 != null ? SemiAxis2.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11039,6 +14511,16 @@ public IfcOpenShell(List cfsFaces):base(cfsFaces) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11058,6 +14540,16 @@ public IfcTopologicalRepresentationItem():base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11090,6 +14582,19 @@ public IfcConnectionCurveGeometry(IfcCurveOrEdgeCurve curveOnRelatingElement,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(CurveOnRelatingElement != null ? CurveOnRelatingElement.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CurveOnRelatedElement != null ? CurveOnRelatedElement.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11109,6 +14614,16 @@ public static IfcConnectionGeometry FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11141,6 +14656,19 @@ public IfcConnectionPointGeometry(IfcPointOrVertexPoint pointOnRelatingElement,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PointOnRelatingElement != null ? PointOnRelatingElement.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PointOnRelatedElement != null ? PointOnRelatedElement.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11173,6 +14701,19 @@ public IfcConnectionSurfaceGeometry(IfcSurfaceOrFaceSurface surfaceOnRelatingEle { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(SurfaceOnRelatingElement != null ? SurfaceOnRelatingElement.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SurfaceOnRelatedElement != null ? SurfaceOnRelatedElement.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11205,6 +14746,19 @@ public IfcConnectionVolumeGeometry(IfcSolidOrShell volumeOnRelatingElement,IfcSo { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(VolumeOnRelatingElement != null ? VolumeOnRelatingElement.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(VolumeOnRelatedElement != null ? VolumeOnRelatedElement.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11238,6 +14792,20 @@ public IfcConnectionPointEccentricity(IfcPointOrVertexPoint pointOnRelatingEleme { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(EccentricityInX != null ? EccentricityInX.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(EccentricityInY != null ? EccentricityInY.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(EccentricityInZ != null ? EccentricityInZ.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11281,6 +14849,24 @@ public static IfcConstraint FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ConstraintGrade.STEPValue(ref indexDictionnary)); + parameters.Add(ConstraintSource != null ? ConstraintSource.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CreatingActor != null ? CreatingActor.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CreationTime != null ? CreationTime.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(UserDefinedGrade != null ? UserDefinedGrade.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11318,6 +14904,21 @@ public IfcMetric(IfcLabel name,IfcText description,IfcConstraintEnum constraintG { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Benchmark.STEPValue(ref indexDictionnary)); + parameters.Add(ValueSource != null ? ValueSource.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(DataValue != null ? DataValue.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ReferencePath != null ? ReferencePath.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11344,7 +14945,15 @@ public IfcObjective(IfcLabel name,IfcConstraintEnum constraintGrade,IfcObjective [JsonConstructor] public IfcObjective(IfcLabel name,IfcText description,IfcConstraintEnum constraintGrade,IfcLabel constraintSource,IfcActorSelect creatingActor,IfcDateTime creationTime,IfcLabel userDefinedGrade,List benchmarkValues,IfcLogicalOperatorEnum logicalAggregator,IfcObjectiveEnum objectiveQualifier,IfcLabel userDefinedQualifier):base(name,description,constraintGrade,constraintSource,creatingActor,creationTime,userDefinedGrade) { - BenchmarkValues = new List(); + + if (benchmarkValues != null) + { + BenchmarkValues = benchmarkValues; + } + else + { + BenchmarkValues = new List(); + } LogicalAggregator = logicalAggregator; ObjectiveQualifier = objectiveQualifier; UserDefinedQualifier = userDefinedQualifier; @@ -11354,6 +14963,21 @@ public IfcObjective(IfcLabel name,IfcText description,IfcConstraintEnum constrai { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(BenchmarkValues != null ? BenchmarkValues.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LogicalAggregator.STEPValue(ref indexDictionnary)); + parameters.Add(ObjectiveQualifier.STEPValue(ref indexDictionnary)); + parameters.Add(UserDefinedQualifier != null ? UserDefinedQualifier.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11383,6 +15007,18 @@ public IfcConstructionEquipmentResource(IfcGloballyUniqueId globalId,IfcOwnerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11408,7 +15044,15 @@ public IfcConstructionResource(IfcGloballyUniqueId globalId):base(globalId) public IfcConstructionResource(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLabel name,IfcText description,IfcLabel objectType,IfcIdentifier identification,IfcText longDescription,IfcResourceTime usage,List baseCosts,IfcPhysicalQuantity baseQuantity):base(globalId,ownerHistory,name,description,objectType,identification,longDescription) { Usage = usage; - BaseCosts = new List(); + + if (baseCosts != null) + { + BaseCosts = baseCosts; + } + else + { + BaseCosts = new List(); + } BaseQuantity = baseQuantity; } @@ -11416,6 +15060,20 @@ public IfcConstructionResource(IfcGloballyUniqueId globalId,IfcOwnerHistory owne { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Usage != null ? Usage.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(BaseCosts != null ? BaseCosts.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(BaseQuantity != null ? BaseQuantity.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11446,6 +15104,18 @@ public IfcConstructionEquipmentResourceType(IfcGloballyUniqueId globalId,IfcOwne { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11469,7 +15139,15 @@ public IfcConstructionResourceType(IfcGloballyUniqueId globalId):base(globalId) [JsonConstructor] public IfcConstructionResourceType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLabel name,IfcText description,IfcIdentifier applicableOccurrence,List hasPropertySets,IfcIdentifier identification,IfcText longDescription,IfcLabel resourceType,List baseCosts,IfcPhysicalQuantity baseQuantity):base(globalId,ownerHistory,name,description,applicableOccurrence,hasPropertySets,identification,longDescription,resourceType) { - BaseCosts = new List(); + + if (baseCosts != null) + { + BaseCosts = baseCosts; + } + else + { + BaseCosts = new List(); + } BaseQuantity = baseQuantity; } @@ -11477,6 +15155,19 @@ public IfcConstructionResourceType(IfcGloballyUniqueId globalId,IfcOwnerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(BaseCosts != null ? BaseCosts.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(BaseQuantity != null ? BaseQuantity.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11506,6 +15197,18 @@ public IfcConstructionMaterialResource(IfcGloballyUniqueId globalId,IfcOwnerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11536,6 +15239,18 @@ public IfcConstructionMaterialResourceType(IfcGloballyUniqueId globalId,IfcOwner { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11565,6 +15280,18 @@ public IfcConstructionProductResource(IfcGloballyUniqueId globalId,IfcOwnerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11595,6 +15322,18 @@ public IfcConstructionProductResourceType(IfcGloballyUniqueId globalId,IfcOwnerH { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11624,6 +15363,18 @@ public IfcCrewResource(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11653,6 +15404,18 @@ public IfcLaborResource(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistor { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11682,6 +15445,18 @@ public IfcSubContractResource(IfcGloballyUniqueId globalId,IfcOwnerHistory owner { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11713,6 +15488,19 @@ public IfcResource(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Identification != null ? Identification.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LongDescription != null ? LongDescription.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11743,6 +15531,18 @@ public IfcCrewResourceType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11773,6 +15573,18 @@ public IfcLaborResourceType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11803,6 +15615,18 @@ public IfcSubContractResourceType(IfcGloballyUniqueId globalId,IfcOwnerHistory o { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11836,6 +15660,20 @@ public IfcTypeResource(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Identification != null ? Identification.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LongDescription != null ? LongDescription.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ResourceType != null ? ResourceType.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11865,7 +15703,15 @@ public IfcContext(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcL ObjectType = objectType; LongName = longName; Phase = phase; - RepresentationContexts = new List(); + + if (representationContexts != null) + { + RepresentationContexts = representationContexts; + } + else + { + RepresentationContexts = new List(); + } UnitsInContext = unitsInContext; } @@ -11873,6 +15719,22 @@ public IfcContext(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcL { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ObjectType != null ? ObjectType.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LongName != null ? LongName.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Phase != null ? Phase.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RepresentationContexts != null ? RepresentationContexts.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(UnitsInContext != null ? UnitsInContext.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11899,6 +15761,16 @@ public IfcProject(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcL { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11925,6 +15797,16 @@ public IfcProjectLibrary(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11951,6 +15833,16 @@ public IfcObjectDefinition(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11973,6 +15865,18 @@ public IfcContextDependentUnit(IfcDimensionalExponents dimensions,IfcUnitEnum un { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -11997,6 +15901,19 @@ public static IfcNamedUnit FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Dimensions != null ? Dimensions.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(UnitType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12022,14 +15939,44 @@ public IfcCostItem(IfcGloballyUniqueId globalId):base(globalId) public IfcCostItem(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLabel name,IfcText description,IfcLabel objectType,IfcIdentifier identification,IfcCostItemTypeEnum predefinedType,List costValues,List costQuantities):base(globalId,ownerHistory,name,description,objectType,identification) { PredefinedType = predefinedType; - CostValues = new List(); - CostQuantities = new List(); + + if (costValues != null) + { + CostValues = costValues; + } + else + { + CostValues = new List(); + } + + if (costQuantities != null) + { + CostQuantities = costQuantities; + } + else + { + CostQuantities = new List(); + } } public static new IfcCostItem FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(CostValues != null ? CostValues.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CostQuantities != null ? CostQuantities.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12065,6 +16012,21 @@ public IfcCostSchedule(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(Status != null ? Status.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SubmittedOn != null ? SubmittedOn.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(UpdateDate != null ? UpdateDate.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12097,6 +16059,19 @@ public IfcPerformanceHistory(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerH { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(LifeCyclePhase != null ? LifeCyclePhase.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12130,6 +16105,20 @@ public IfcPermit(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLa { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(Status != null ? Status.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LongDescription != null ? LongDescription.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12163,6 +16152,20 @@ public IfcProjectOrder(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(Status != null ? Status.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LongDescription != null ? LongDescription.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12187,8 +16190,24 @@ public IfcWorkCalendar(IfcGloballyUniqueId globalId):base(globalId) [JsonConstructor] public IfcWorkCalendar(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLabel name,IfcText description,IfcLabel objectType,IfcIdentifier identification,List workingTimes,List exceptionTimes,IfcWorkCalendarTypeEnum predefinedType):base(globalId,ownerHistory,name,description,objectType,identification) { - WorkingTimes = new List(); - ExceptionTimes = new List(); + + if (workingTimes != null) + { + WorkingTimes = workingTimes; + } + else + { + WorkingTimes = new List(); + } + + if (exceptionTimes != null) + { + ExceptionTimes = exceptionTimes; + } + else + { + ExceptionTimes = new List(); + } PredefinedType = predefinedType; } @@ -12196,6 +16215,20 @@ public IfcWorkCalendar(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(WorkingTimes != null ? WorkingTimes.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ExceptionTimes != null ? ExceptionTimes.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12227,7 +16260,15 @@ public IfcWorkControl(IfcGloballyUniqueId globalId,IfcDateTime creationDate,IfcD public IfcWorkControl(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLabel name,IfcText description,IfcLabel objectType,IfcIdentifier identification,IfcDateTime creationDate,List creators,IfcLabel purpose,IfcDuration duration,IfcDuration totalFloat,IfcDateTime startTime,IfcDateTime finishTime):base(globalId,ownerHistory,name,description,objectType,identification) { CreationDate = creationDate; - Creators = new List(); + + if (creators != null) + { + Creators = creators; + } + else + { + Creators = new List(); + } Purpose = purpose; Duration = duration; TotalFloat = totalFloat; @@ -12239,6 +16280,24 @@ public IfcWorkControl(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(CreationDate != null ? CreationDate.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Creators != null ? Creators.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Purpose != null ? Purpose.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Duration != null ? Duration.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TotalFloat != null ? TotalFloat.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(StartTime != null ? StartTime.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FinishTime != null ? FinishTime.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12268,6 +16327,18 @@ public IfcController(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12298,6 +16369,18 @@ public IfcControllerType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12322,6 +16405,19 @@ public IfcConversionBasedUnit(IfcDimensionalExponents dimensions,IfcUnitEnum uni { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ConversionFactor != null ? ConversionFactor.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12344,6 +16440,18 @@ public IfcConversionBasedUnitWithOffset(IfcDimensionalExponents dimensions,IfcUn { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ConversionOffset != null ? ConversionOffset.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12373,6 +16481,18 @@ public IfcCooledBeam(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12403,6 +16523,18 @@ public IfcCooledBeamType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12432,6 +16564,18 @@ public IfcCoolingTower(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12462,6 +16606,18 @@ public IfcCoolingTowerType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12486,6 +16642,19 @@ public static IfcCoordinateOperation FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(SourceCRS != null ? SourceCRS.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TargetCRS != null ? TargetCRS.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12528,6 +16697,23 @@ public IfcMapConversion(IfcCoordinateReferenceSystemSelect sourceCRS,IfcCoordina { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Eastings != null ? Eastings.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Northings != null ? Northings.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(OrthogonalHeight != null ? OrthogonalHeight.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(XAxisAbscissa != null ? XAxisAbscissa.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(XAxisOrdinate != null ? XAxisOrdinate.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Scale != null ? Scale.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12564,6 +16750,21 @@ public static IfcCoordinateReferenceSystem FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(GeodeticDatum != null ? GeodeticDatum.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(VerticalDatum != null ? VerticalDatum.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12597,6 +16798,20 @@ public IfcProjectedCRS(IfcLabel name,IfcText description,IfcIdentifier geodeticD { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(MapProjection != null ? MapProjection.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(MapZone != null ? MapZone.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(MapUnit != null ? MapUnit.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12623,6 +16838,20 @@ public IfcRectangularPyramid(IfcAxis2Placement3D position,IfcPositiveLengthMeasu { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(XLength != null ? XLength.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(YLength != null ? YLength.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Height != null ? Height.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12647,6 +16876,19 @@ public IfcRightCircularCone(IfcAxis2Placement3D position,IfcPositiveLengthMeasur { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Height != null ? Height.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(BottomRadius != null ? BottomRadius.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12671,6 +16913,19 @@ public IfcRightCircularCylinder(IfcAxis2Placement3D position,IfcPositiveLengthMe { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Height != null ? Height.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Radius != null ? Radius.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12693,6 +16948,18 @@ public IfcSphere(IfcAxis2Placement3D position,IfcPositiveLengthMeasure radius):b { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Radius != null ? Radius.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12715,6 +16982,18 @@ public IfcCsgSolid(IfcCsgSelect treeRootExpression):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(TreeRootExpression != null ? TreeRootExpression.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12734,6 +17013,16 @@ public IfcSolidModel():base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12774,6 +17063,22 @@ public IfcCurrencyRelationship(IfcLabel name,IfcText description,IfcMonetaryUnit { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingMonetaryUnit != null ? RelatingMonetaryUnit.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedMonetaryUnit != null ? RelatedMonetaryUnit.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ExchangeRate != null ? ExchangeRate.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RateDateTime != null ? RateDateTime.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RateSource != null ? RateSource.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12798,6 +17103,19 @@ public IfcLine(IfcCartesianPoint pnt,IfcVector dir):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Pnt != null ? Pnt.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Dir != null ? Dir.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12824,6 +17142,20 @@ public IfcOffsetCurve2D(IfcCurve basisCurve,IfcLengthMeasure distance,bool? self { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(BasisCurve != null ? BasisCurve.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Distance != null ? Distance.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SelfIntersect != null ? SelfIntersect.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12852,6 +17184,21 @@ public IfcOffsetCurve3D(IfcCurve basisCurve,IfcLengthMeasure distance,bool? self { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(BasisCurve != null ? BasisCurve.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Distance != null ? Distance.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SelfIntersect != null ? SelfIntersect.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RefDirection != null ? RefDirection.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12876,6 +17223,19 @@ public IfcPcurve(IfcSurface basisSurface,IfcCurve referenceCurve):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(BasisSurface != null ? BasisSurface.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ReferenceCurve != null ? ReferenceCurve.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12911,6 +17271,21 @@ public IfcCurveStyle(IfcLabel name,IfcCurveFontOrScaledCurveFontSelect curveFont { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(CurveFont != null ? CurveFont.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CurveWidth != null ? CurveWidth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CurveColour != null ? CurveColour.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ModelOrDraughting.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12940,6 +17315,18 @@ public static IfcPresentationStyle FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -12972,6 +17359,19 @@ public IfcCurveStyleFont(IfcLabel name,List patternLis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PatternList != null ? PatternList.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13007,6 +17407,20 @@ public IfcCurveStyleFontAndScaling(IfcLabel name,IfcCurveStyleFontSelect curveFo { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CurveFont != null ? CurveFont.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CurveFontScaling != null ? CurveFontScaling.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13031,6 +17445,19 @@ public IfcCurveStyleFontPattern(IfcLengthMeasure visibleSegmentLength,IfcPositiv { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(VisibleSegmentLength != null ? VisibleSegmentLength.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(InvisibleSegmentLength != null ? InvisibleSegmentLength.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13053,6 +17480,18 @@ public IfcCylindricalSurface(IfcAxis2Placement3D position,IfcPositiveLengthMeasu { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Radius != null ? Radius.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13075,6 +17514,18 @@ public IfcElementarySurface(IfcAxis2Placement3D position):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Position != null ? Position.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13104,6 +17555,18 @@ public IfcDamper(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLa { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13134,6 +17597,18 @@ public IfcDamperType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13169,6 +17644,20 @@ public IfcDerivedProfileDef(IfcProfileTypeEnum profileType,IfcLabel profileName, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ParentProfile != null ? ParentProfile.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Operator != null ? Operator.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Label != null ? Label.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13195,6 +17684,16 @@ public IfcMirroredProfileDef(IfcProfileTypeEnum profileType,IfcLabel profileName { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13230,6 +17729,20 @@ public static IfcDerivedUnit FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Elements != null ? Elements.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(UnitType.STEPValue(ref indexDictionnary)); + parameters.Add(UserDefinedType != null ? UserDefinedType.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13254,6 +17767,19 @@ public static IfcDerivedUnitElement FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Unit != null ? Unit.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Exponent.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13288,6 +17814,24 @@ public static IfcDimensionalExponents FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(LengthExponent.STEPValue(ref indexDictionnary)); + parameters.Add(MassExponent.STEPValue(ref indexDictionnary)); + parameters.Add(TimeExponent.STEPValue(ref indexDictionnary)); + parameters.Add(ElectricCurrentExponent.STEPValue(ref indexDictionnary)); + parameters.Add(ThermodynamicTemperatureExponent.STEPValue(ref indexDictionnary)); + parameters.Add(AmountOfSubstanceExponent.STEPValue(ref indexDictionnary)); + parameters.Add(LuminousIntensityExponent.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13310,6 +17854,18 @@ public IfcDirection(List directionRatios):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(DirectionRatios != null ? DirectionRatios.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13339,6 +17895,18 @@ public IfcDiscreteAccessory(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13369,6 +17937,18 @@ public IfcDiscreteAccessoryType(IfcGloballyUniqueId globalId,IfcOwnerHistory own { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13398,6 +17978,18 @@ public IfcDistributionChamberElement(IfcGloballyUniqueId globalId,IfcOwnerHistor { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13424,6 +18016,16 @@ public IfcDistributionFlowElement(IfcGloballyUniqueId globalId,IfcOwnerHistory o { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13454,6 +18056,18 @@ public IfcDistributionChamberElementType(IfcGloballyUniqueId globalId,IfcOwnerHi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13480,6 +18094,16 @@ public IfcDistributionFlowElementType(IfcGloballyUniqueId globalId,IfcOwnerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13506,6 +18130,16 @@ public IfcDistributionCircuit(IfcGloballyUniqueId globalId,IfcOwnerHistory owner { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13537,6 +18171,19 @@ public IfcDistributionSystem(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerH { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(LongName != null ? LongName.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13566,6 +18213,18 @@ public IfcFlowInstrument(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13595,6 +18254,18 @@ public IfcProtectiveDeviceTrippingUnit(IfcGloballyUniqueId globalId,IfcOwnerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13624,6 +18295,18 @@ public IfcSensor(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLa { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13653,6 +18336,18 @@ public IfcUnitaryControlElement(IfcGloballyUniqueId globalId,IfcOwnerHistory own { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13679,6 +18374,16 @@ public IfcDistributionElement(IfcGloballyUniqueId globalId,IfcOwnerHistory owner { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13709,6 +18414,18 @@ public IfcFlowInstrumentType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerH { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13739,6 +18456,18 @@ public IfcProtectiveDeviceTrippingUnitType(IfcGloballyUniqueId globalId,IfcOwner { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13769,6 +18498,18 @@ public IfcSensorType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13799,6 +18540,18 @@ public IfcUnitaryControlElementType(IfcGloballyUniqueId globalId,IfcOwnerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13825,6 +18578,16 @@ public IfcDistributionElementType(IfcGloballyUniqueId globalId,IfcOwnerHistory o { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13851,6 +18614,16 @@ public IfcFlowStorageDevice(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13877,6 +18650,16 @@ public IfcFlowTreatmentDevice(IfcGloballyUniqueId globalId,IfcOwnerHistory owner { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13903,6 +18686,16 @@ public IfcFlowStorageDeviceType(IfcGloballyUniqueId globalId,IfcOwnerHistory own { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13929,6 +18722,16 @@ public IfcFlowTreatmentDeviceType(IfcGloballyUniqueId globalId,IfcOwnerHistory o { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13962,6 +18765,20 @@ public IfcDistributionPort(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(FlowDirection.STEPValue(ref indexDictionnary)); + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(SystemType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -13988,6 +18805,16 @@ public IfcPort(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLabe { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14037,7 +18864,15 @@ public IfcDocumentInformation(IfcIdentifier identification,IfcLabel name,IfcText Scope = scope; Revision = revision; DocumentOwner = documentOwner; - Editors = new List(); + + if (editors != null) + { + Editors = editors; + } + else + { + Editors = new List(); + } CreationTime = creationTime; LastRevisionTime = lastRevisionTime; ElectronicFormat = electronicFormat; @@ -14051,6 +18886,34 @@ public IfcDocumentInformation(IfcIdentifier identification,IfcLabel name,IfcText { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Identification != null ? Identification.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Location != null ? Location.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Purpose != null ? Purpose.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(IntendedUse != null ? IntendedUse.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Scope != null ? Scope.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Revision != null ? Revision.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(DocumentOwner != null ? DocumentOwner.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Editors != null ? Editors.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CreationTime != null ? CreationTime.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LastRevisionTime != null ? LastRevisionTime.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ElectronicFormat != null ? ElectronicFormat.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ValidFrom != null ? ValidFrom.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ValidUntil != null ? ValidUntil.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Confidentiality.STEPValue(ref indexDictionnary)); + parameters.Add(Status.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14086,6 +18949,20 @@ public IfcDocumentInformationRelationship(IfcLabel name,IfcText description,IfcD { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingDocument != null ? RelatingDocument.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedDocuments != null ? RelatedDocuments.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelationshipType != null ? RelationshipType.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14117,6 +18994,19 @@ public IfcDocumentReference(IfcURIReference location,IfcIdentifier identificatio { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ReferencedDocument != null ? ReferencedDocument.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14143,6 +19033,16 @@ public IfcDoorStandardCase(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14196,6 +19096,30 @@ public IfcDoorLiningProperties(IfcGloballyUniqueId globalId,IfcOwnerHistory owne { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(LiningDepth != null ? LiningDepth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LiningThickness != null ? LiningThickness.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ThresholdDepth != null ? ThresholdDepth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ThresholdThickness != null ? ThresholdThickness.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TransomThickness != null ? TransomThickness.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TransomOffset != null ? TransomOffset.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LiningOffset != null ? LiningOffset.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ThresholdOffset != null ? ThresholdOffset.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CasingThickness != null ? CasingThickness.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CasingDepth != null ? CasingDepth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ShapeAspectStyle != null ? ShapeAspectStyle.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LiningToPanelOffsetX != null ? LiningToPanelOffsetX.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LiningToPanelOffsetY != null ? LiningToPanelOffsetY.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14222,6 +19146,16 @@ public IfcPreDefinedPropertySet(IfcGloballyUniqueId globalId,IfcOwnerHistory own { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14261,6 +19195,22 @@ public IfcDoorPanelProperties(IfcGloballyUniqueId globalId,IfcOwnerHistory owner { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PanelDepth != null ? PanelDepth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PanelOperation.STEPValue(ref indexDictionnary)); + parameters.Add(PanelWidth != null ? PanelWidth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PanelPosition.STEPValue(ref indexDictionnary)); + parameters.Add(ShapeAspectStyle != null ? ShapeAspectStyle.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14300,6 +19250,21 @@ public IfcDoorStyle(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,If { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(OperationType.STEPValue(ref indexDictionnary)); + parameters.Add(ConstructionType.STEPValue(ref indexDictionnary)); + parameters.Add(ParameterTakesPrecedence.STEPValue(ref indexDictionnary)); + parameters.Add(Sizeable.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14323,7 +19288,15 @@ public IfcTypeProduct(IfcGloballyUniqueId globalId):base(globalId) [JsonConstructor] public IfcTypeProduct(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLabel name,IfcText description,IfcIdentifier applicableOccurrence,List hasPropertySets,List representationMaps,IfcLabel tag):base(globalId,ownerHistory,name,description,applicableOccurrence,hasPropertySets) { - RepresentationMaps = new List(); + + if (representationMaps != null) + { + RepresentationMaps = representationMaps; + } + else + { + RepresentationMaps = new List(); + } Tag = tag; } @@ -14331,6 +19304,19 @@ public IfcTypeProduct(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RepresentationMaps != null ? RepresentationMaps.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Tag != null ? Tag.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14350,6 +19336,16 @@ public IfcDraughtingPreDefinedColour(IfcLabel name):base(name) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14369,6 +19365,16 @@ public IfcPreDefinedColour(IfcLabel name):base(name) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14388,6 +19394,16 @@ public IfcDraughtingPreDefinedCurveFont(IfcLabel name):base(name) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14407,6 +19423,16 @@ public IfcPreDefinedCurveFont(IfcLabel name):base(name) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14436,6 +19462,18 @@ public IfcDuctFitting(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14466,6 +19504,18 @@ public IfcDuctFittingType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14495,6 +19545,18 @@ public IfcDuctSegment(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14525,6 +19587,18 @@ public IfcDuctSegmentType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14554,6 +19628,18 @@ public IfcDuctSilencer(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14584,6 +19670,18 @@ public IfcDuctSilencerType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14608,6 +19706,19 @@ public IfcEdge(IfcVertex edgeStart,IfcVertex edgeEnd):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(EdgeStart != null ? EdgeStart.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(EdgeEnd != null ? EdgeEnd.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14632,6 +19743,19 @@ public IfcEdgeCurve(IfcVertex edgeStart,IfcVertex edgeEnd,IfcCurve edgeGeometry, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(EdgeGeometry != null ? EdgeGeometry.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SameSense.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14656,6 +19780,19 @@ public IfcOrientedEdge(IfcVertex edgeStart,IfcVertex edgeEnd,IfcEdge edgeElement { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(EdgeElement != null ? EdgeElement.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Orientation.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14678,6 +19815,18 @@ public IfcSubedge(IfcVertex edgeStart,IfcVertex edgeEnd,IfcEdge parentEdge):base { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ParentEdge != null ? ParentEdge.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14700,6 +19849,18 @@ public IfcEdgeLoop(List edgeList):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(EdgeList != null ? EdgeList.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14719,6 +19880,16 @@ public IfcLoop():base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14748,6 +19919,18 @@ public IfcElectricAppliance(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14778,6 +19961,18 @@ public IfcElectricApplianceType(IfcGloballyUniqueId globalId,IfcOwnerHistory own { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14807,6 +20002,18 @@ public IfcElectricDistributionBoard(IfcGloballyUniqueId globalId,IfcOwnerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14837,6 +20044,18 @@ public IfcElectricDistributionBoardType(IfcGloballyUniqueId globalId,IfcOwnerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14866,6 +20085,18 @@ public IfcElectricFlowStorageDevice(IfcGloballyUniqueId globalId,IfcOwnerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14896,6 +20127,18 @@ public IfcElectricFlowStorageDeviceType(IfcGloballyUniqueId globalId,IfcOwnerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14925,6 +20168,18 @@ public IfcElectricGenerator(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14955,6 +20210,18 @@ public IfcElectricGeneratorType(IfcGloballyUniqueId globalId,IfcOwnerHistory own { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -14984,6 +20251,18 @@ public IfcElectricMotor(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistor { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15014,6 +20293,18 @@ public IfcElectricMotorType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15043,6 +20334,18 @@ public IfcElectricTimeControl(IfcGloballyUniqueId globalId,IfcOwnerHistory owner { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15073,6 +20376,18 @@ public IfcElectricTimeControlType(IfcGloballyUniqueId globalId,IfcOwnerHistory o { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15104,6 +20419,19 @@ public IfcElementAssembly(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(AssemblyPlace.STEPValue(ref indexDictionnary)); + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15130,6 +20458,16 @@ public IfcFeatureElement(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15156,6 +20494,16 @@ public IfcFurnishingElement(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15185,6 +20533,18 @@ public IfcGeographicElement(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15214,6 +20574,18 @@ public IfcTransportElement(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15240,6 +20612,16 @@ public IfcVirtualElement(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15270,6 +20652,18 @@ public IfcElementAssemblyType(IfcGloballyUniqueId globalId,IfcOwnerHistory owner { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15299,6 +20693,18 @@ public IfcFastener(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15332,6 +20738,20 @@ public IfcMechanicalFastener(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerH { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(NominalDiameter != null ? NominalDiameter.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(NominalLength != null ? NominalLength.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15361,6 +20781,18 @@ public IfcReinforcingElement(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerH { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(SteelGrade != null ? SteelGrade.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15390,6 +20822,18 @@ public IfcVibrationIsolator(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15420,6 +20864,18 @@ public IfcFastenerType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15454,6 +20910,20 @@ public IfcMechanicalFastenerType(IfcGloballyUniqueId globalId,IfcOwnerHistory ow { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(NominalDiameter != null ? NominalDiameter.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(NominalLength != null ? NominalLength.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15480,6 +20950,16 @@ public IfcReinforcingElementType(IfcGloballyUniqueId globalId,IfcOwnerHistory ow { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15510,6 +20990,18 @@ public IfcVibrationIsolatorType(IfcGloballyUniqueId globalId,IfcOwnerHistory own { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15542,6 +21034,19 @@ public IfcElementQuantity(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(MethodOfMeasurement != null ? MethodOfMeasurement.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Quantities != null ? Quantities.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15568,6 +21073,16 @@ public IfcQuantitySet(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15594,6 +21109,16 @@ public IfcFurnishingElementType(IfcGloballyUniqueId globalId,IfcOwnerHistory own { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15624,6 +21149,18 @@ public IfcGeographicElementType(IfcGloballyUniqueId globalId,IfcOwnerHistory own { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15654,6 +21191,18 @@ public IfcTransportElementType(IfcGloballyUniqueId globalId,IfcOwnerHistory owne { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15673,6 +21222,16 @@ public IfcPlane(IfcAxis2Placement3D position):base(position) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15706,6 +21265,19 @@ public IfcEllipseProfileDef(IfcProfileTypeEnum profileType,IfcLabel profileName, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(SemiAxis1 != null ? SemiAxis1.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SemiAxis2 != null ? SemiAxis2.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15735,6 +21307,18 @@ public IfcEngine(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLa { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15764,6 +21348,18 @@ public IfcEvaporativeCooler(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15793,6 +21389,18 @@ public IfcEvaporator(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15822,6 +21430,18 @@ public IfcHeatExchanger(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistor { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15851,6 +21471,18 @@ public IfcHumidifier(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15880,6 +21512,18 @@ public IfcMotorConnection(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15909,6 +21553,18 @@ public IfcSolarDevice(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15938,6 +21594,18 @@ public IfcTransformer(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15967,6 +21635,18 @@ public IfcTubeBundle(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -15996,6 +21676,18 @@ public IfcUnitaryEquipment(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16026,6 +21718,18 @@ public IfcEngineType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16056,6 +21760,18 @@ public IfcEvaporativeCoolerType(IfcGloballyUniqueId globalId,IfcOwnerHistory own { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16086,6 +21802,18 @@ public IfcEvaporatorType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16116,6 +21844,18 @@ public IfcHeatExchangerType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16146,6 +21886,18 @@ public IfcHumidifierType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16176,6 +21928,18 @@ public IfcMotorConnectionType(IfcGloballyUniqueId globalId,IfcOwnerHistory owner { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16206,6 +21970,18 @@ public IfcSolarDeviceType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16236,6 +22012,18 @@ public IfcTransformerType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16266,6 +22054,18 @@ public IfcTubeBundleType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16296,6 +22096,18 @@ public IfcUnitaryEquipmentType(IfcGloballyUniqueId globalId,IfcOwnerHistory owne { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16331,6 +22143,21 @@ public IfcEvent(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLab { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(EventTriggerType.STEPValue(ref indexDictionnary)); + parameters.Add(UserDefinedEventTriggerType != null ? UserDefinedEventTriggerType.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(EventOccurenceTime != null ? EventOccurenceTime.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16362,6 +22189,19 @@ public IfcProcess(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcL { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Identification != null ? Identification.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LongDescription != null ? LongDescription.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16397,6 +22237,21 @@ public IfcEventTime(IfcLabel name,IfcDataOriginEnum dataOrigin,IfcLabel userDefi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ActualDate != null ? ActualDate.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(EarlyDate != null ? EarlyDate.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LateDate != null ? LateDate.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ScheduleDate != null ? ScheduleDate.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16430,6 +22285,20 @@ public static IfcSchedulingTime FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(DataOrigin.STEPValue(ref indexDictionnary)); + parameters.Add(UserDefinedDataOrigin != null ? UserDefinedDataOrigin.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16465,6 +22334,20 @@ public IfcEventType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,If { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(EventTriggerType.STEPValue(ref indexDictionnary)); + parameters.Add(UserDefinedEventTriggerType != null ? UserDefinedEventTriggerType.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16498,6 +22381,20 @@ public IfcTypeProcess(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Identification != null ? Identification.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LongDescription != null ? LongDescription.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ProcessType != null ? ProcessType.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16532,6 +22429,20 @@ public IfcExtendedProperties(IfcIdentifier name,IfcText description,List(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Properties != null ? Properties.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16562,6 +22473,18 @@ public IfcMaterialProperties(IfcIdentifier name,IfcText description,List(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Material != null ? Material.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16592,6 +22515,18 @@ public IfcProfileProperties(IfcIdentifier name,IfcText description,List(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ProfileDefinition != null ? ProfileDefinition.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16611,6 +22546,16 @@ public static IfcPropertyAbstraction FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16651,6 +22596,23 @@ public IfcLibraryInformation(IfcLabel name,IfcLabel version,IfcActorSelect publi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Version != null ? Version.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Publisher != null ? Publisher.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(VersionDate != null ? VersionDate.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Location != null ? Location.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16677,6 +22639,16 @@ public IfcExternallyDefinedHatchStyle(IfcURIReference location,IfcIdentifier ide { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16703,6 +22675,16 @@ public IfcExternallyDefinedSurfaceStyle(IfcURIReference location,IfcIdentifier i { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16729,6 +22711,16 @@ public IfcExternallyDefinedTextFont(IfcURIReference location,IfcIdentifier ident { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16762,6 +22754,20 @@ public IfcLibraryReference(IfcURIReference location,IfcIdentifier identification { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Language != null ? Language.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ReferencedLibrary != null ? ReferencedLibrary.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16795,6 +22801,19 @@ public IfcExternalReferenceRelationship(IfcLabel name,IfcText description,IfcExt { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingReference != null ? RelatingReference.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedResourceObjects != null ? RelatedResourceObjects.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16824,6 +22843,18 @@ public IfcExternalSpatialElement(IfcGloballyUniqueId globalId,IfcOwnerHistory ow { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16850,6 +22881,16 @@ public IfcExternalSpatialStructureElement(IfcGloballyUniqueId globalId,IfcOwnerH { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16879,6 +22920,18 @@ public IfcSpatialElement(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(LongName != null ? LongName.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16912,6 +22965,19 @@ public IfcExtrudedAreaSolid(IfcProfileDef sweptArea,IfcAxis2Placement3D position { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ExtrudedDirection != null ? ExtrudedDirection.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Depth != null ? Depth.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16942,6 +23008,18 @@ public IfcExtrudedAreaSolidTapered(IfcProfileDef sweptArea,IfcAxis2Placement3D p { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(EndSweptArea != null ? EndSweptArea.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16974,6 +23052,19 @@ public IfcSweptAreaSolid(IfcProfileDef sweptArea,IfcAxis2Placement3D position):b { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(SweptArea != null ? SweptArea.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Position != null ? Position.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16996,6 +23087,18 @@ public IfcFace(List bounds):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Bounds != null ? Bounds.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17018,6 +23121,18 @@ public IfcFaceBasedSurfaceModel(List fbsmFaces):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(FbsmFaces != null ? FbsmFaces.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17042,6 +23157,19 @@ public IfcFaceBound(IfcLoop bound,bool orientation):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Bound != null ? Bound.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Orientation.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17061,6 +23189,16 @@ public IfcFaceOuterBound(IfcLoop bound,bool orientation):base(bound,orientation) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17080,6 +23218,16 @@ public IfcFacetedBrep(IfcClosedShell outer):base(outer) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17102,6 +23250,18 @@ public IfcFacetedBrepWithVoids(IfcClosedShell outer,List voids): { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Voids != null ? Voids.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17141,6 +23301,23 @@ public IfcFailureConnectionCondition(IfcLabel name,IfcForceMeasure tensionFailur { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(TensionFailureX != null ? TensionFailureX.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TensionFailureY != null ? TensionFailureY.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TensionFailureZ != null ? TensionFailureZ.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CompressionFailureX != null ? CompressionFailureX.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CompressionFailureY != null ? CompressionFailureY.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CompressionFailureZ != null ? CompressionFailureZ.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17170,6 +23347,18 @@ public static IfcStructuralConnectionCondition FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17199,6 +23388,18 @@ public IfcFan(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLabel { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17229,6 +23430,18 @@ public IfcFanType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcL { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17255,6 +23468,16 @@ public IfcFeatureElementAddition(IfcGloballyUniqueId globalId,IfcOwnerHistory ow { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17281,6 +23504,16 @@ public IfcFeatureElementSubtraction(IfcGloballyUniqueId globalId,IfcOwnerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17310,6 +23543,18 @@ public IfcSurfaceFeature(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17339,6 +23584,18 @@ public IfcProjectionElement(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17368,6 +23625,18 @@ public IfcOpeningElement(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17397,6 +23666,18 @@ public IfcVoidingFeature(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17429,6 +23710,19 @@ public IfcFillAreaStyle(IfcLabel name,List fillStyles,bool m { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(FillStyles != null ? FillStyles.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ModelorDraughting.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17469,6 +23763,22 @@ public IfcFillAreaStyleHatching(IfcCurveStyle hatchLineAppearance,IfcHatchLineDi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(HatchLineAppearance != null ? HatchLineAppearance.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(StartOfNextHatchLine != null ? StartOfNextHatchLine.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PointOfReferenceHatchLine != null ? PointOfReferenceHatchLine.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PatternStart != null ? PatternStart.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(HatchLineAngle != null ? HatchLineAngle.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17495,6 +23805,20 @@ public IfcFillAreaStyleTiles(List tilingPattern,List t { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(TilingPattern != null ? TilingPattern.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Tiles != null ? Tiles.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TilingScale != null ? TilingScale.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17524,6 +23848,18 @@ public IfcFilter(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLa { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17554,6 +23890,18 @@ public IfcFilterType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17583,6 +23931,18 @@ public IfcFireSuppressionTerminal(IfcGloballyUniqueId globalId,IfcOwnerHistory o { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17613,6 +23973,18 @@ public IfcFireSuppressionTerminalType(IfcGloballyUniqueId globalId,IfcOwnerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17650,6 +24022,21 @@ public IfcFixedReferenceSweptAreaSolid(IfcProfileDef sweptArea,IfcAxis2Placement { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Directrix != null ? Directrix.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(StartParam != null ? StartParam.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(EndParam != null ? EndParam.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FixedReference != null ? FixedReference.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17679,6 +24066,18 @@ public IfcFlowMeter(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,If { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17708,6 +24107,18 @@ public IfcProtectiveDevice(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17737,6 +24148,18 @@ public IfcSwitchingDevice(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17766,6 +24189,18 @@ public IfcValve(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLab { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17796,6 +24231,18 @@ public IfcFlowMeterType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistor { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17826,6 +24273,18 @@ public IfcProtectiveDeviceType(IfcGloballyUniqueId globalId,IfcOwnerHistory owne { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17856,6 +24315,18 @@ public IfcSwitchingDeviceType(IfcGloballyUniqueId globalId,IfcOwnerHistory owner { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17886,6 +24357,18 @@ public IfcValveType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,If { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17915,6 +24398,18 @@ public IfcJunctionBox(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17944,6 +24439,18 @@ public IfcPipeFitting(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -17974,6 +24481,18 @@ public IfcJunctionBoxType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18004,6 +24523,18 @@ public IfcPipeFittingType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18033,6 +24564,18 @@ public IfcPump(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLabe { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18063,6 +24606,18 @@ public IfcPumpType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18092,6 +24647,18 @@ public IfcPipeSegment(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18122,6 +24689,18 @@ public IfcPipeSegmentType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18151,6 +24730,18 @@ public IfcTank(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLabe { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18181,6 +24772,18 @@ public IfcTankType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18210,6 +24813,18 @@ public IfcLamp(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLabe { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18239,6 +24854,18 @@ public IfcLightFixture(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18268,6 +24895,18 @@ public IfcMedicalDevice(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistor { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18297,6 +24936,18 @@ public IfcOutlet(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLa { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18326,6 +24977,18 @@ public IfcSanitaryTerminal(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18355,6 +25018,18 @@ public IfcSpaceHeater(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18384,6 +25059,18 @@ public IfcStackTerminal(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistor { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18413,6 +25100,18 @@ public IfcWasteTerminal(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistor { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18443,6 +25142,18 @@ public IfcLampType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18473,6 +25184,18 @@ public IfcLightFixtureType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18503,6 +25226,18 @@ public IfcMedicalDeviceType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18533,6 +25268,18 @@ public IfcOutletType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18563,6 +25310,18 @@ public IfcSanitaryTerminalType(IfcGloballyUniqueId globalId,IfcOwnerHistory owne { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18593,6 +25352,18 @@ public IfcSpaceHeaterType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18623,6 +25394,18 @@ public IfcStackTerminalType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18653,6 +25436,18 @@ public IfcWasteTerminalType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18682,6 +25477,18 @@ public IfcInterceptor(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18712,6 +25519,18 @@ public IfcInterceptorType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18741,6 +25560,18 @@ public IfcFurniture(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,If { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18770,6 +25601,18 @@ public IfcSystemFurnitureElement(IfcGloballyUniqueId globalId,IfcOwnerHistory ow { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18802,6 +25645,19 @@ public IfcFurnitureType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistor { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(AssemblyPlace.STEPValue(ref indexDictionnary)); + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18831,6 +25687,18 @@ public IfcSystemFurnitureElementType(IfcGloballyUniqueId globalId,IfcOwnerHistor { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18850,6 +25718,16 @@ public IfcGeometricCurveSet(List elements):base(elements) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18872,6 +25750,18 @@ public IfcGeometricSet(List elements):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Elements != null ? Elements.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18909,6 +25799,21 @@ public IfcGeometricRepresentationContext(IfcLabel contextIdentifier,IfcLabel con { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(CoordinateSpaceDimension != null ? CoordinateSpaceDimension.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Precision.STEPValue(ref indexDictionnary)); + parameters.Add(WorldCoordinateSystem != null ? WorldCoordinateSystem.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TrueNorth != null ? TrueNorth.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18946,6 +25851,21 @@ public IfcGeometricRepresentationSubContext(IfcLabel contextIdentifier,IfcLabel { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ParentContext != null ? ParentContext.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TargetScale != null ? TargetScale.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TargetView.STEPValue(ref indexDictionnary)); + parameters.Add(UserDefinedTargetView != null ? UserDefinedTargetView.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -18977,6 +25897,19 @@ public static IfcRepresentationContext FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ContextIdentifier != null ? ContextIdentifier.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ContextType != null ? ContextType.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19013,6 +25946,21 @@ public IfcLightSource(IfcLabel name,IfcColourRgb lightColour,IfcNormalisedRatioM { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LightColour != null ? LightColour.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(AmbientIntensity != null ? AmbientIntensity.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Intensity != null ? Intensity.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19037,6 +25985,19 @@ public IfcPlanarExtent(IfcLengthMeasure sizeInX,IfcLengthMeasure sizeInY):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(SizeInX != null ? SizeInX.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SizeInY != null ? SizeInY.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19063,6 +26024,20 @@ public IfcSectionedSpine(IfcCompositeCurve spineCurve,List crossS { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(SpineCurve != null ? SpineCurve.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CrossSections != null ? CrossSections.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CrossSectionPositions != null ? CrossSectionPositions.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19085,6 +26060,18 @@ public IfcShellBasedSurfaceModel(List sbsmBoundary):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(SbsmBoundary != null ? SbsmBoundary.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19104,6 +26091,16 @@ public IfcTessellatedItem():base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19130,6 +26127,20 @@ public IfcTextLiteral(IfcPresentableText literal,IfcAxis2Placement placement,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Literal != null ? Literal.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Placement != null ? Placement.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Path != null ? Path.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19154,6 +26165,19 @@ public IfcVector(IfcDirection orientation,IfcLengthMeasure magnitude):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Orientation != null ? Orientation.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Magnitude != null ? Magnitude.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19173,6 +26197,16 @@ public static IfcRepresentationItem FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19202,7 +26236,15 @@ public IfcGrid(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLabe { UAxes = uAxes; VAxes = vAxes; - WAxes = new List(); + + if (wAxes != null) + { + WAxes = wAxes; + } + else + { + WAxes = new List(); + } PredefinedType = predefinedType; } @@ -19210,6 +26252,21 @@ public IfcGrid(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLabe { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(UAxes != null ? UAxes.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(VAxes != null ? VAxes.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(WAxes != null ? WAxes.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19245,6 +26302,20 @@ public static IfcGridAxis FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(AxisTag != null ? AxisTag.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(AxisCurve != null ? AxisCurve.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SameSense != null ? SameSense.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19277,6 +26348,19 @@ public IfcGridPlacement(IfcVirtualGridIntersection placementLocation,IfcGridPlac { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PlacementLocation != null ? PlacementLocation.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PlacementRefDirection != null ? PlacementRefDirection.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19296,6 +26380,16 @@ public static IfcObjectPlacement FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19325,7 +26419,15 @@ public IfcInventory(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,If { PredefinedType = predefinedType; Jurisdiction = jurisdiction; - ResponsiblePersons = new List(); + + if (responsiblePersons != null) + { + ResponsiblePersons = responsiblePersons; + } + else + { + ResponsiblePersons = new List(); + } LastUpdateDate = lastUpdateDate; CurrentValue = currentValue; OriginalValue = originalValue; @@ -19335,6 +26437,23 @@ public IfcInventory(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,If { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(Jurisdiction != null ? Jurisdiction.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ResponsiblePersons != null ? ResponsiblePersons.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LastUpdateDate != null ? LastUpdateDate.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CurrentValue != null ? CurrentValue.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(OriginalValue != null ? OriginalValue.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19375,6 +26494,22 @@ public IfcStructuralLoadGroup(IfcGloballyUniqueId globalId,IfcOwnerHistory owner { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(ActionType.STEPValue(ref indexDictionnary)); + parameters.Add(ActionSource.STEPValue(ref indexDictionnary)); + parameters.Add(Coefficient != null ? Coefficient.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Purpose != null ? Purpose.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19410,6 +26545,20 @@ public IfcStructuralResultGroup(IfcGloballyUniqueId globalId,IfcOwnerHistory own { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(TheoryType.STEPValue(ref indexDictionnary)); + parameters.Add(ResultForLoadGroup != null ? ResultForLoadGroup.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(IsLinear.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19434,6 +26583,19 @@ public IfcPolygonalBoundedHalfSpace(IfcSurface baseSurface,bool agreementFlag,If { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Position != null ? Position.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PolygonalBoundary != null ? PolygonalBoundary.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19479,6 +26641,24 @@ public IfcIShapeProfileDef(IfcProfileTypeEnum profileType,IfcLabel profileName,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(OverallWidth != null ? OverallWidth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(OverallDepth != null ? OverallDepth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(WebThickness != null ? WebThickness.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FlangeThickness != null ? FlangeThickness.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FilletRadius != null ? FilletRadius.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FlangeEdgeRadius != null ? FlangeEdgeRadius.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FlangeSlope != null ? FlangeSlope.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19509,6 +26689,18 @@ public IfcImageTexture(bool repeatS,bool repeatT,IfcIdentifier mode,IfcCartesian { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(URLReference != null ? URLReference.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19547,6 +26739,21 @@ public IfcIndexedColourMap(IfcTessellatedFaceSet mappedTo,IfcSurfaceStyleShading { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(MappedTo != null ? MappedTo.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Overrides != null ? Overrides.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Colours != null ? Colours.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ColourIndex != null ? ColourIndex.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19571,6 +26778,19 @@ public IfcIndexedTextureMap(List maps,IfcTessellatedFaceSet m { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(MappedTo != null ? MappedTo.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TexCoords != null ? TexCoords.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19593,13 +26813,33 @@ public IfcIndexedTriangleTextureMap(List maps,IfcTessellatedF [JsonConstructor] public IfcIndexedTriangleTextureMap(List maps,IfcTessellatedFaceSet mappedTo,IfcTextureVertexList texCoords,List> texCoordIndex):base(maps,mappedTo,texCoords) { - TexCoordIndex = new List>(); + + if (texCoordIndex != null) + { + TexCoordIndex = texCoordIndex; + } + else + { + TexCoordIndex = new List>(); + } } public static new IfcIndexedTriangleTextureMap FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(TexCoordIndex != null ? TexCoordIndex.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19622,6 +26862,18 @@ public IfcTextureCoordinate(List maps):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Maps != null ? Maps.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19652,6 +26904,18 @@ public IfcIrregularTimeSeries(IfcLabel name,IfcText description,IfcDateTime star { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Values != null ? Values.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19700,6 +26964,25 @@ public static IfcTimeSeries FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(StartTime != null ? StartTime.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(EndTime != null ? EndTime.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TimeSeriesDataType.STEPValue(ref indexDictionnary)); + parameters.Add(DataOrigin.STEPValue(ref indexDictionnary)); + parameters.Add(UserDefinedDataOrigin != null ? UserDefinedDataOrigin.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Unit != null ? Unit.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19724,6 +27007,19 @@ public static IfcIrregularTimeSeriesValue FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(TimeStamp != null ? TimeStamp.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ListValues != null ? ListValues.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19765,6 +27061,23 @@ public IfcLShapeProfileDef(IfcProfileTypeEnum profileType,IfcLabel profileName,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Depth != null ? Depth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Width != null ? Width.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Thickness != null ? Thickness.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FilletRadius != null ? FilletRadius.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(EdgeRadius != null ? EdgeRadius.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LegSlope != null ? LegSlope.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19798,6 +27111,19 @@ public IfcLagTime(IfcLabel name,IfcDataOriginEnum dataOrigin,IfcLabel userDefine { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(LagValue != null ? LagValue.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(DurationType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19824,6 +27150,20 @@ public static IfcLightDistributionData FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(MainPlaneAngle != null ? MainPlaneAngle.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SecondaryPlaneAngle != null ? SecondaryPlaneAngle.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LuminousIntensity != null ? LuminousIntensity.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19848,6 +27188,19 @@ public static IfcLightIntensityDistribution FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(LightDistributionCurve.STEPValue(ref indexDictionnary)); + parameters.Add(DistributionData != null ? DistributionData.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19874,6 +27227,16 @@ public IfcLightSourceAmbient(IfcLabel name,IfcColourRgb lightColour,IfcNormalise { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19904,6 +27267,18 @@ public IfcLightSourceDirectional(IfcLabel name,IfcColourRgb lightColour,IfcNorma { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Orientation != null ? Orientation.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19948,6 +27323,23 @@ public IfcLightSourceGoniometric(IfcLabel name,IfcColourRgb lightColour,IfcNorma { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Position != null ? Position.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ColourAppearance != null ? ColourAppearance.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ColourTemperature != null ? ColourTemperature.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LuminousFlux != null ? LuminousFlux.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LightEmissionSource.STEPValue(ref indexDictionnary)); + parameters.Add(LightDistributionDataSource != null ? LightDistributionDataSource.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -19990,6 +27382,22 @@ public IfcLightSourcePositional(IfcLabel name,IfcColourRgb lightColour,IfcNormal { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Position != null ? Position.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Radius != null ? Radius.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ConstantAttenuation != null ? ConstantAttenuation.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(DistanceAttenuation != null ? DistanceAttenuation.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(QuadricAttenuation != null ? QuadricAttenuation.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20028,6 +27436,21 @@ public IfcLightSourceSpot(IfcLabel name,IfcColourRgb lightColour,IfcNormalisedRa { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Orientation != null ? Orientation.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ConcentrationExponent != null ? ConcentrationExponent.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SpreadAngle != null ? SpreadAngle.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(BeamWidthAngle != null ? BeamWidthAngle.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20060,6 +27483,19 @@ public IfcLocalPlacement(IfcObjectPlacement placementRelTo,IfcAxis2Placement rel { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PlacementRelTo != null ? PlacementRelTo.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelativePlacement != null ? RelativePlacement.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20082,6 +27518,18 @@ public IfcPolyLoop(List polygon):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Polygon != null ? Polygon.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20104,6 +27552,18 @@ public IfcVertexLoop(IfcVertex loopVertex):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(LoopVertex != null ? LoopVertex.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20128,6 +27588,19 @@ public IfcMappedItem(IfcRepresentationMap mappingSource,IfcCartesianTransformati { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(MappingSource != null ? MappingSource.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(MappingTarget != null ? MappingTarget.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20162,6 +27635,20 @@ public IfcMaterial(IfcLabel name,IfcText description,IfcLabel category):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Category != null ? Category.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20181,6 +27668,16 @@ public static IfcMaterialDefinition FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20205,6 +27702,19 @@ public static IfcMaterialClassificationRelationship FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(MaterialClassifications != null ? MaterialClassifications.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ClassifiedMaterial != null ? ClassifiedMaterial.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20243,6 +27753,22 @@ public IfcMaterialConstituent(IfcLabel name,IfcText description,IfcMaterial mate { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Material != null ? Material.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Fraction != null ? Fraction.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Category != null ? Category.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20269,13 +27795,35 @@ public IfcMaterialConstituentSet(IfcLabel name,IfcText description,List(); + + if (materialConstituents != null) + { + MaterialConstituents = materialConstituents; + } + else + { + MaterialConstituents = new List(); + } } public static new IfcMaterialConstituentSet FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(MaterialConstituents != null ? MaterialConstituents.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20318,6 +27866,24 @@ public IfcMaterialLayer(IfcMaterial material,IfcNonNegativeLengthMeasure layerTh { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Material != null ? Material.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LayerThickness != null ? LayerThickness.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(IsVentilated != null ? IsVentilated.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Category != null ? Category.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Priority != null ? Priority.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20352,6 +27918,20 @@ public IfcMaterialLayerSet(List materialLayers,IfcLabel layerS { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(MaterialLayers != null ? MaterialLayers.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LayerSetName != null ? LayerSetName.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20392,6 +27972,23 @@ public IfcMaterialProfile(IfcLabel name,IfcText description,IfcMaterial material { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Material != null ? Material.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Profile != null ? Profile.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Priority != null ? Priority.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Category != null ? Category.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20428,6 +28025,21 @@ public IfcMaterialProfileSet(IfcLabel name,IfcText description,List(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(MaterialProfiles != null ? MaterialProfiles.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CompositeProfile != null ? CompositeProfile.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20458,6 +28070,18 @@ public IfcMaterialDefinitionRepresentation(IfcLabel name,IfcText description,Lis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RepresentedMaterial != null ? RepresentedMaterial.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20492,6 +28116,20 @@ public static IfcProductRepresentation FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Representations != null ? Representations.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20525,6 +28163,19 @@ public IfcMaterialLayerWithOffsets(IfcMaterial material,IfcNonNegativeLengthMeas { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(OffsetDirection.STEPValue(ref indexDictionnary)); + parameters.Add(OffsetValues != null ? OffsetValues.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20566,6 +28217,22 @@ public IfcMaterialLayerSetUsage(IfcMaterialLayerSet forLayerSet,IfcLayerSetDirec { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ForLayerSet != null ? ForLayerSet.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LayerSetDirection.STEPValue(ref indexDictionnary)); + parameters.Add(DirectionSense.STEPValue(ref indexDictionnary)); + parameters.Add(OffsetFromReferenceLine != null ? OffsetFromReferenceLine.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ReferenceExtent != null ? ReferenceExtent.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20585,6 +28252,16 @@ public static IfcMaterialUsageDefinition FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20607,6 +28284,18 @@ public static IfcMaterialList FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Materials != null ? Materials.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20637,6 +28326,18 @@ public IfcMaterialProfileWithOffsets(IfcLabel name,IfcText description,IfcMateri { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(OffsetValues != null ? OffsetValues.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20671,6 +28372,20 @@ public IfcMaterialProfileSetUsage(IfcMaterialProfileSet forProfileSet,IfcCardina { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ForProfileSet != null ? ForProfileSet.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CardinalPoint != null ? CardinalPoint.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ReferenceExtent != null ? ReferenceExtent.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20703,6 +28418,19 @@ public IfcMaterialProfileSetUsageTapering(IfcMaterialProfileSet forProfileSet,If { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ForProfileEndSet != null ? ForProfileEndSet.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CardinalEndPoint != null ? CardinalEndPoint.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20738,6 +28466,20 @@ public IfcMaterialRelationship(IfcLabel name,IfcText description,IfcMaterial rel { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingMaterial != null ? RelatingMaterial.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedMaterials != null ? RelatedMaterials.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Expression != null ? Expression.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20762,6 +28504,19 @@ public static IfcMeasureWithUnit FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ValueComponent != null ? ValueComponent.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(UnitComponent != null ? UnitComponent.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20788,6 +28543,16 @@ public IfcMemberStandardCase(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerH { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20810,6 +28575,18 @@ public static IfcMonetaryUnit FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Currency != null ? Currency.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20842,6 +28619,19 @@ public IfcSIUnit(IfcDimensionalExponents dimensions,IfcUnitEnum unitType,IfcSIPr { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Prefix != null ? Prefix.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20866,13 +28656,34 @@ public IfcTypeObject(IfcGloballyUniqueId globalId):base(globalId) public IfcTypeObject(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLabel name,IfcText description,IfcIdentifier applicableOccurrence,List hasPropertySets):base(globalId,ownerHistory,name,description) { ApplicableOccurrence = applicableOccurrence; - HasPropertySets = new List(); + + if (hasPropertySets != null) + { + HasPropertySets = hasPropertySets; + } + else + { + HasPropertySets = new List(); + } } public static new IfcTypeObject FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ApplicableOccurrence != null ? ApplicableOccurrence.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(HasPropertySets != null ? HasPropertySets.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20909,6 +28720,21 @@ public static IfcRoot FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(GlobalId != null ? GlobalId.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(OwnerHistory != null ? OwnerHistory.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20935,6 +28761,16 @@ public IfcOpeningStandardCase(IfcGloballyUniqueId globalId,IfcOwnerHistory owner { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -20965,14 +28801,46 @@ public IfcOrganization(IfcIdentifier identification,IfcLabel name,IfcText descri Identification = identification; Name = name; Description = description; - Roles = new List(); - Addresses = new List(); + + if (roles != null) + { + Roles = roles; + } + else + { + Roles = new List(); + } + + if (addresses != null) + { + Addresses = addresses; + } + else + { + Addresses = new List(); + } } public static IfcOrganization FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Identification != null ? Identification.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Roles != null ? Roles.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Addresses != null ? Addresses.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21006,6 +28874,19 @@ public IfcOrganizationRelationship(IfcLabel name,IfcText description,IfcOrganiza { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingOrganization != null ? RelatingOrganization.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedOrganizations != null ? RelatedOrganizations.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21052,6 +28933,25 @@ public static IfcOwnerHistory FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(OwningUser != null ? OwningUser.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(OwningApplication != null ? OwningApplication.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(State.STEPValue(ref indexDictionnary)); + parameters.Add(ChangeAction.STEPValue(ref indexDictionnary)); + parameters.Add(LastModifiedDate != null ? LastModifiedDate.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LastModifyingUser != null ? LastModifyingUser.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LastModifyingApplication != null ? LastModifyingApplication.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CreationDate != null ? CreationDate.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21085,6 +28985,19 @@ public IfcRectangleProfileDef(IfcProfileTypeEnum profileType,IfcLabel profileNam { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(XDim != null ? XDim.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(YDim != null ? YDim.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21134,6 +29047,26 @@ public IfcTShapeProfileDef(IfcProfileTypeEnum profileType,IfcLabel profileName,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Depth != null ? Depth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FlangeWidth != null ? FlangeWidth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(WebThickness != null ? WebThickness.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FlangeThickness != null ? FlangeThickness.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FilletRadius != null ? FilletRadius.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FlangeEdgeRadius != null ? FlangeEdgeRadius.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(WebEdgeRadius != null ? WebEdgeRadius.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(WebSlope != null ? WebSlope.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FlangeSlope != null ? FlangeSlope.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21173,6 +29106,21 @@ public IfcTrapeziumProfileDef(IfcProfileTypeEnum profileType,IfcLabel profileNam { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(BottomXDim != null ? BottomXDim.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TopXDim != null ? TopXDim.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(YDim != null ? YDim.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TopXOffset != null ? TopXOffset.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21218,6 +29166,24 @@ public IfcUShapeProfileDef(IfcProfileTypeEnum profileType,IfcLabel profileName,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Depth != null ? Depth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FlangeWidth != null ? FlangeWidth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(WebThickness != null ? WebThickness.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FlangeThickness != null ? FlangeThickness.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FilletRadius != null ? FilletRadius.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(EdgeRadius != null ? EdgeRadius.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FlangeSlope != null ? FlangeSlope.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21261,6 +29227,23 @@ public IfcZShapeProfileDef(IfcProfileTypeEnum profileType,IfcLabel profileName,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Depth != null ? Depth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FlangeWidth != null ? FlangeWidth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(WebThickness != null ? WebThickness.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FlangeThickness != null ? FlangeThickness.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FilletRadius != null ? FilletRadius.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(EdgeRadius != null ? EdgeRadius.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21283,6 +29266,18 @@ public IfcPath(List edgeList):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(EdgeList != null ? EdgeList.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21322,6 +29317,22 @@ public IfcPermeableCoveringProperties(IfcGloballyUniqueId globalId,IfcOwnerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(OperationType.STEPValue(ref indexDictionnary)); + parameters.Add(PanelPosition.STEPValue(ref indexDictionnary)); + parameters.Add(FrameDepth != null ? FrameDepth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FrameThickness != null ? FrameThickness.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ShapeAspectStyle != null ? ShapeAspectStyle.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21354,17 +29365,76 @@ public IfcPerson(IfcIdentifier identification,IfcLabel familyName,IfcLabel given Identification = identification; FamilyName = familyName; GivenName = givenName; - MiddleNames = new List(); - PrefixTitles = new List(); - SuffixTitles = new List(); - Roles = new List(); - Addresses = new List(); + + if (middleNames != null) + { + MiddleNames = middleNames; + } + else + { + MiddleNames = new List(); + } + + if (prefixTitles != null) + { + PrefixTitles = prefixTitles; + } + else + { + PrefixTitles = new List(); + } + + if (suffixTitles != null) + { + SuffixTitles = suffixTitles; + } + else + { + SuffixTitles = new List(); + } + + if (roles != null) + { + Roles = roles; + } + else + { + Roles = new List(); + } + + if (addresses != null) + { + Addresses = addresses; + } + else + { + Addresses = new List(); + } } public static IfcPerson FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Identification != null ? Identification.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FamilyName != null ? FamilyName.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(GivenName != null ? GivenName.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(MiddleNames != null ? MiddleNames.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PrefixTitles != null ? PrefixTitles.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SuffixTitles != null ? SuffixTitles.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Roles != null ? Roles.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Addresses != null ? Addresses.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21393,13 +29463,35 @@ public IfcPersonAndOrganization(IfcPerson thePerson,IfcOrganization theOrganizat { ThePerson = thePerson; TheOrganization = theOrganization; - Roles = new List(); + + if (roles != null) + { + Roles = roles; + } + else + { + Roles = new List(); + } } public static IfcPersonAndOrganization FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ThePerson != null ? ThePerson.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TheOrganization != null ? TheOrganization.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Roles != null ? Roles.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21437,6 +29529,21 @@ public IfcPhysicalComplexQuantity(IfcLabel name,IfcText description,List(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(HasQuantities != null ? HasQuantities.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Discrimination != null ? Discrimination.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Quality != null ? Quality.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Usage != null ? Usage.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21469,6 +29576,19 @@ public static IfcPhysicalQuantity FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21498,6 +29618,18 @@ public IfcPhysicalSimpleQuantity(IfcLabel name,IfcText description,IfcNamedUnit { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Unit != null ? Unit.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21530,6 +29662,19 @@ public IfcQuantityArea(IfcLabel name,IfcText description,IfcNamedUnit unit,IfcAr { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(AreaValue != null ? AreaValue.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Formula != null ? Formula.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21562,6 +29707,19 @@ public IfcQuantityCount(IfcLabel name,IfcText description,IfcNamedUnit unit,IfcC { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(CountValue != null ? CountValue.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Formula != null ? Formula.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21594,6 +29752,19 @@ public IfcQuantityLength(IfcLabel name,IfcText description,IfcNamedUnit unit,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(LengthValue != null ? LengthValue.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Formula != null ? Formula.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21626,6 +29797,19 @@ public IfcQuantityTime(IfcLabel name,IfcText description,IfcNamedUnit unit,IfcTi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(TimeValue != null ? TimeValue.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Formula != null ? Formula.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21658,6 +29842,19 @@ public IfcQuantityVolume(IfcLabel name,IfcText description,IfcNamedUnit unit,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(VolumeValue != null ? VolumeValue.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Formula != null ? Formula.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21690,6 +29887,19 @@ public IfcQuantityWeight(IfcLabel name,IfcText description,IfcNamedUnit unit,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(WeightValue != null ? WeightValue.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Formula != null ? Formula.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21729,6 +29939,21 @@ public IfcPixelTexture(bool repeatS,bool repeatT,IfcIdentifier mode,IfcCartesian { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Width != null ? Width.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Height != null ? Height.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ColourComponents != null ? ColourComponents.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Pixel != null ? Pixel.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21751,6 +29976,18 @@ public IfcPlanarBox(IfcLengthMeasure sizeInX,IfcLengthMeasure sizeInY,IfcAxis2Pl { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Placement != null ? Placement.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21777,6 +30014,16 @@ public IfcPlateStandardCase(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21801,6 +30048,19 @@ public IfcPointOnCurve(IfcCurve basisCurve,IfcParameterValue pointParameter):bas { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(BasisCurve != null ? BasisCurve.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PointParameter != null ? PointParameter.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21827,6 +30087,20 @@ public IfcPointOnSurface(IfcSurface basisSurface,IfcParameterValue pointParamete { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(BasisSurface != null ? BasisSurface.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PointParameterU != null ? PointParameterU.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PointParameterV != null ? PointParameterV.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21849,6 +30123,18 @@ public IfcPreDefinedItem(IfcLabel name):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21868,6 +30154,16 @@ public IfcPreDefinedTextFont(IfcLabel name):base(name) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21887,6 +30183,16 @@ public IfcPreDefinedProperties():base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21928,6 +30234,23 @@ public IfcReinforcementBarProperties(IfcAreaMeasure totalCrossSectionArea,IfcLab { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(TotalCrossSectionArea != null ? TotalCrossSectionArea.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SteelGrade != null ? SteelGrade.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(BarSurface.STEPValue(ref indexDictionnary)); + parameters.Add(EffectiveDepth != null ? EffectiveDepth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(NominalBarDiameter != null ? NominalBarDiameter.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(BarCount != null ? BarCount.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -21963,6 +30286,20 @@ public IfcSectionProperties(IfcSectionTypeEnum sectionType,IfcProfileDef startPr { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(SectionType.STEPValue(ref indexDictionnary)); + parameters.Add(StartProfile != null ? StartProfile.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(EndProfile != null ? EndProfile.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22007,6 +30344,23 @@ public IfcSectionReinforcementProperties(IfcLengthMeasure longitudinalStartPosit { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(LongitudinalStartPosition != null ? LongitudinalStartPosition.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LongitudinalEndPosition != null ? LongitudinalEndPosition.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TransversePosition != null ? TransversePosition.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ReinforcementRole.STEPValue(ref indexDictionnary)); + parameters.Add(SectionDefinition != null ? SectionDefinition.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CrossSectionReinforcementDefinitions != null ? CrossSectionReinforcementDefinitions.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22039,6 +30393,19 @@ public IfcReinforcementDefinitionProperties(IfcGloballyUniqueId globalId,IfcOwne { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(DefinitionType != null ? DefinitionType.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ReinforcementSectionDefinitions != null ? ReinforcementSectionDefinitions.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22090,6 +30457,29 @@ public IfcWindowLiningProperties(IfcGloballyUniqueId globalId,IfcOwnerHistory ow { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(LiningDepth != null ? LiningDepth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LiningThickness != null ? LiningThickness.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TransomThickness != null ? TransomThickness.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(MullionThickness != null ? MullionThickness.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FirstTransomOffset != null ? FirstTransomOffset.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SecondTransomOffset != null ? SecondTransomOffset.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FirstMullionOffset != null ? FirstMullionOffset.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SecondMullionOffset != null ? SecondMullionOffset.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ShapeAspectStyle != null ? ShapeAspectStyle.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LiningOffset != null ? LiningOffset.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LiningToPanelOffsetX != null ? LiningToPanelOffsetX.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LiningToPanelOffsetY != null ? LiningToPanelOffsetY.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22129,6 +30519,22 @@ public IfcWindowPanelProperties(IfcGloballyUniqueId globalId,IfcOwnerHistory own { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(OperationType.STEPValue(ref indexDictionnary)); + parameters.Add(PanelPosition.STEPValue(ref indexDictionnary)); + parameters.Add(FrameDepth != null ? FrameDepth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FrameThickness != null ? FrameThickness.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ShapeAspectStyle != null ? ShapeAspectStyle.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22155,6 +30561,16 @@ public IfcPropertySetDefinition(IfcGloballyUniqueId globalId,IfcOwnerHistory own { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22194,6 +30610,22 @@ public IfcTextStyleFontModel(IfcLabel name,List fontFamily,IfcF { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(FontFamily != null ? FontFamily.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FontStyle != null ? FontStyle.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FontVariant != null ? FontVariant.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FontWeight != null ? FontWeight.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FontSize != null ? FontSize.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22222,6 +30654,21 @@ public IfcSurfaceStyleLighting(IfcColourRgb diffuseTransmissionColour,IfcColourR { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(DiffuseTransmissionColour != null ? DiffuseTransmissionColour.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(DiffuseReflectionColour != null ? DiffuseReflectionColour.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TransmissionColour != null ? TransmissionColour.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ReflectanceColour != null ? ReflectanceColour.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22253,6 +30700,19 @@ public IfcSurfaceStyleRefraction(IfcReal refractionIndex,IfcReal dispersionFacto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RefractionIndex != null ? RefractionIndex.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(DispersionFactor != null ? DispersionFactor.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22275,6 +30735,18 @@ public IfcSurfaceStyleShading(IfcColourRgb surfaceColour):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(SurfaceColour != null ? SurfaceColour.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22297,6 +30769,18 @@ public IfcSurfaceStyleWithTextures(List textures):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Textures != null ? Textures.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22329,6 +30813,19 @@ public IfcTextStyleForDefinedFont(IfcColour colour,IfcColour backgroundColour):b { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Colour != null ? Colour.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(BackgroundColour != null ? BackgroundColour.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22370,6 +30867,24 @@ public IfcTextStyleTextModel(IfcSizeSelect textIndent,IfcTextAlignment textAlign { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(TextIndent != null ? TextIndent.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TextAlign != null ? TextAlign.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TextDecoration != null ? TextDecoration.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LetterSpacing != null ? LetterSpacing.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(WordSpacing != null ? WordSpacing.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TextTransform != null ? TextTransform.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LineHeight != null ? LineHeight.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22392,6 +30907,18 @@ public IfcTextureVertex(List coordinates):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Coordinates != null ? Coordinates.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22414,6 +30941,18 @@ public IfcTextureVertexList(List> texCoordsList):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(TexCoordsList != null ? TexCoordsList.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22451,6 +30990,21 @@ public static IfcPresentationLayerAssignment FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(AssignedItems != null ? AssignedItems.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Identifier != null ? Identifier.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22490,6 +31044,21 @@ public IfcPresentationLayerWithStyle(IfcLabel name,IfcText description,List(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(LayerOn != null ? LayerOn.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LayerFrozen != null ? LayerFrozen.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LayerBlocked != null ? LayerBlocked.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LayerStyles != null ? LayerStyles.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22523,6 +31092,19 @@ public IfcSurfaceStyle(IfcLabel name,IfcSurfaceSide side,List(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Side != null ? Side.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Styles != null ? Styles.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22559,6 +31141,21 @@ public IfcTextStyle(IfcLabel name,IfcTextStyleForDefinedFont textCharacterAppear { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(TextCharacterAppearance != null ? TextCharacterAppearance.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TextStyle != null ? TextStyle.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TextFontStyle != null ? TextFontStyle.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ModelOrDraughting.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22581,6 +31178,18 @@ public static IfcPresentationStyleAssignment FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Styles != null ? Styles.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22610,6 +31219,18 @@ public IfcProcedure(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,If { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22640,6 +31261,18 @@ public IfcProcedureType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistor { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22680,6 +31313,23 @@ public IfcTask(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLabe { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Status != null ? Status.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(WorkMethod != null ? WorkMethod.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(IsMilestone.STEPValue(ref indexDictionnary)); + parameters.Add(Priority.STEPValue(ref indexDictionnary)); + parameters.Add(TaskTime != null ? TaskTime.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22712,6 +31362,19 @@ public IfcProxy(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLab { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ProxyType.STEPValue(ref indexDictionnary)); + parameters.Add(Tag != null ? Tag.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22745,6 +31408,19 @@ public IfcStructuralActivity(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerH { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(AppliedLoad != null ? AppliedLoad.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(GlobalOrLocal.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22771,6 +31447,16 @@ public IfcStructuralItem(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22797,6 +31483,16 @@ public IfcProductDefinitionShape(IfcLabel name,IfcText description,List(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22823,6 +31519,16 @@ public IfcSimpleProperty(IfcIdentifier name,IfcText description):base(name,descr { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22858,6 +31564,20 @@ public IfcPropertyEnumeration(IfcLabel name,List enumerationValues,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(EnumerationValues != null ? EnumerationValues.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Unit != null ? Unit.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22893,6 +31613,21 @@ public IfcPropertyBoundedValue(IfcIdentifier name,IfcText description,IfcValue u { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(UpperBoundValue != null ? UpperBoundValue.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LowerBoundValue != null ? LowerBoundValue.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Unit != null ? Unit.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SetPointValue != null ? SetPointValue.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22919,6 +31654,16 @@ public IfcPropertyDefinition(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerH { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22945,6 +31690,16 @@ public IfcPropertyTemplateDefinition(IfcGloballyUniqueId globalId,IfcOwnerHistor { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -22980,6 +31735,20 @@ public IfcPropertyDependencyRelationship(IfcLabel name,IfcText description,IfcPr { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(DependingProperty != null ? DependingProperty.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(DependantProperty != null ? DependantProperty.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Expression != null ? Expression.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23003,7 +31772,15 @@ public IfcPropertyEnumeratedValue(IfcIdentifier name):base(name) [JsonConstructor] public IfcPropertyEnumeratedValue(IfcIdentifier name,IfcText description,List enumerationValues,IfcPropertyEnumeration enumerationReference):base(name,description) { - EnumerationValues = new List(); + + if (enumerationValues != null) + { + EnumerationValues = enumerationValues; + } + else + { + EnumerationValues = new List(); + } EnumerationReference = enumerationReference; } @@ -23011,6 +31788,19 @@ public IfcPropertyEnumeratedValue(IfcIdentifier name,IfcText description,List(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(EnumerationValues != null ? EnumerationValues.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(EnumerationReference != null ? EnumerationReference.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23034,7 +31824,15 @@ public IfcPropertyListValue(IfcIdentifier name):base(name) [JsonConstructor] public IfcPropertyListValue(IfcIdentifier name,IfcText description,List listValues,IfcUnit unit):base(name,description) { - ListValues = new List(); + + if (listValues != null) + { + ListValues = listValues; + } + else + { + ListValues = new List(); + } Unit = unit; } @@ -23042,6 +31840,19 @@ public IfcPropertyListValue(IfcIdentifier name,IfcText description,List(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ListValues != null ? ListValues.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Unit != null ? Unit.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23073,6 +31884,19 @@ public IfcPropertyReferenceValue(IfcIdentifier name,IfcText description,IfcText { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(UsageName != null ? UsageName.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PropertyReference != null ? PropertyReference.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23103,6 +31927,18 @@ public IfcPropertySet(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(HasProperties != null ? HasProperties.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23137,6 +31973,20 @@ public IfcPropertySetTemplate(IfcGloballyUniqueId globalId,IfcOwnerHistory owner { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(TemplateType.STEPValue(ref indexDictionnary)); + parameters.Add(ApplicableEntity != null ? ApplicableEntity.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(HasPropertyTemplates != null ? HasPropertyTemplates.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23168,6 +32018,19 @@ public IfcPropertySingleValue(IfcIdentifier name,IfcText description,IfcValue no { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(NominalValue != null ? NominalValue.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Unit != null ? Unit.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23195,8 +32058,24 @@ public IfcPropertyTableValue(IfcIdentifier name):base(name) [JsonConstructor] public IfcPropertyTableValue(IfcIdentifier name,IfcText description,List definingValues,List definedValues,IfcText expression,IfcUnit definingUnit,IfcUnit definedUnit,IfcCurveInterpolationEnum curveInterpolation):base(name,description) { - DefiningValues = new List(); - DefinedValues = new List(); + + if (definingValues != null) + { + DefiningValues = definingValues; + } + else + { + DefiningValues = new List(); + } + + if (definedValues != null) + { + DefinedValues = definedValues; + } + else + { + DefinedValues = new List(); + } Expression = expression; DefiningUnit = definingUnit; DefinedUnit = definedUnit; @@ -23207,6 +32086,23 @@ public IfcPropertyTableValue(IfcIdentifier name,IfcText description,List(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(DefiningValues != null ? DefiningValues.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(DefinedValues != null ? DefinedValues.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Expression != null ? Expression.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(DefiningUnit != null ? DefiningUnit.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(DefinedUnit != null ? DefinedUnit.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CurveInterpolation.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23250,6 +32146,25 @@ public IfcSimplePropertyTemplate(IfcGloballyUniqueId globalId,IfcOwnerHistory ow { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(TemplateType.STEPValue(ref indexDictionnary)); + parameters.Add(PrimaryMeasureType != null ? PrimaryMeasureType.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SecondaryMeasureType != null ? SecondaryMeasureType.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Enumerators != null ? Enumerators.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PrimaryUnit != null ? PrimaryUnit.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SecondaryUnit != null ? SecondaryUnit.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Expression != null ? Expression.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(AccessState.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23284,6 +32199,20 @@ public IfcRectangleHollowProfileDef(IfcProfileTypeEnum profileType,IfcLabel prof { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(WallThickness != null ? WallThickness.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(InnerFilletRadius != null ? InnerFilletRadius.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(OuterFilletRadius != null ? OuterFilletRadius.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23314,6 +32243,18 @@ public IfcRoundedRectangleProfileDef(IfcProfileTypeEnum profileType,IfcLabel pro { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RoundingRadius != null ? RoundingRadius.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23345,19 +32286,70 @@ public IfcRecurrencePattern(IfcRecurrenceTypeEnum recurrenceType):base() public IfcRecurrencePattern(IfcRecurrenceTypeEnum recurrenceType,List dayComponent,List weekdayComponent,List monthComponent,IfcInteger position,IfcInteger interval,IfcInteger occurrences,List timePeriods):base() { RecurrenceType = recurrenceType; - DayComponent = new List(); - WeekdayComponent = new List(); - MonthComponent = new List(); + + if (dayComponent != null) + { + DayComponent = dayComponent; + } + else + { + DayComponent = new List(); + } + + if (weekdayComponent != null) + { + WeekdayComponent = weekdayComponent; + } + else + { + WeekdayComponent = new List(); + } + + if (monthComponent != null) + { + MonthComponent = monthComponent; + } + else + { + MonthComponent = new List(); + } Position = position; Interval = interval; Occurrences = occurrences; - TimePeriods = new List(); + + if (timePeriods != null) + { + TimePeriods = timePeriods; + } + else + { + TimePeriods = new List(); + } } public static IfcRecurrencePattern FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RecurrenceType.STEPValue(ref indexDictionnary)); + parameters.Add(DayComponent != null ? DayComponent.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(WeekdayComponent != null ? WeekdayComponent.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(MonthComponent != null ? MonthComponent.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Position != null ? Position.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Interval != null ? Interval.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Occurrences != null ? Occurrences.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TimePeriods != null ? TimePeriods.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23387,7 +32379,15 @@ public IfcReference(IfcIdentifier typeIdentifier,IfcIdentifier attributeIdentifi TypeIdentifier = typeIdentifier; AttributeIdentifier = attributeIdentifier; InstanceName = instanceName; - ListPositions = new List(); + + if (listPositions != null) + { + ListPositions = listPositions; + } + else + { + ListPositions = new List(); + } InnerReference = innerReference; } @@ -23395,6 +32395,22 @@ public static IfcReference FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(TypeIdentifier != null ? TypeIdentifier.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(AttributeIdentifier != null ? AttributeIdentifier.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(InstanceName != null ? InstanceName.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ListPositions != null ? ListPositions.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(InnerReference != null ? InnerReference.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23428,6 +32444,19 @@ public IfcRegularTimeSeries(IfcLabel name,IfcText description,IfcDateTime startT { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(TimeStep != null ? TimeStep.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Values != null ? Values.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23465,6 +32494,22 @@ public IfcReinforcingBar(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(NominalDiameter != null ? NominalDiameter.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CrossSectionArea != null ? CrossSectionArea.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(BarLength != null ? BarLength.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(BarSurface.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23500,13 +32545,39 @@ public IfcReinforcingBarType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerH BarLength = barLength; BarSurface = barSurface; BendingShapeCode = bendingShapeCode; - BendingParameters = new List(); + + if (bendingParameters != null) + { + BendingParameters = bendingParameters; + } + else + { + BendingParameters = new List(); + } } public static new IfcReinforcingBarType FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(NominalDiameter != null ? NominalDiameter.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CrossSectionArea != null ? CrossSectionArea.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(BarLength != null ? BarLength.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(BarSurface.STEPValue(ref indexDictionnary)); + parameters.Add(BendingShapeCode != null ? BendingShapeCode.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(BendingParameters != null ? BendingParameters.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23552,6 +32623,26 @@ public IfcReinforcingMesh(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(MeshLength != null ? MeshLength.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(MeshWidth != null ? MeshWidth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LongitudinalBarNominalDiameter != null ? LongitudinalBarNominalDiameter.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TransverseBarNominalDiameter != null ? TransverseBarNominalDiameter.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LongitudinalBarCrossSectionArea != null ? LongitudinalBarCrossSectionArea.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TransverseBarCrossSectionArea != null ? TransverseBarCrossSectionArea.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LongitudinalBarSpacing != null ? LongitudinalBarSpacing.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TransverseBarSpacing != null ? TransverseBarSpacing.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23595,6 +32686,25 @@ public IfcTendon(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLa { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(NominalDiameter != null ? NominalDiameter.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CrossSectionArea != null ? CrossSectionArea.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TensionForce != null ? TensionForce.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PreStress != null ? PreStress.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FrictionCoefficient != null ? FrictionCoefficient.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(AnchorageSlip != null ? AnchorageSlip.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(MinCurvatureRadius != null ? MinCurvatureRadius.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23624,6 +32734,18 @@ public IfcTendonAnchor(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23667,13 +32789,43 @@ public IfcReinforcingMeshType(IfcGloballyUniqueId globalId,IfcOwnerHistory owner LongitudinalBarSpacing = longitudinalBarSpacing; TransverseBarSpacing = transverseBarSpacing; BendingShapeCode = bendingShapeCode; - BendingParameters = new List(); + + if (bendingParameters != null) + { + BendingParameters = bendingParameters; + } + else + { + BendingParameters = new List(); + } } public static new IfcReinforcingMeshType FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(MeshLength != null ? MeshLength.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(MeshWidth != null ? MeshWidth.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LongitudinalBarNominalDiameter != null ? LongitudinalBarNominalDiameter.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TransverseBarNominalDiameter != null ? TransverseBarNominalDiameter.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LongitudinalBarCrossSectionArea != null ? LongitudinalBarCrossSectionArea.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TransverseBarCrossSectionArea != null ? TransverseBarCrossSectionArea.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LongitudinalBarSpacing != null ? LongitudinalBarSpacing.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TransverseBarSpacing != null ? TransverseBarSpacing.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(BendingShapeCode != null ? BendingShapeCode.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(BendingParameters != null ? BendingParameters.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23704,6 +32856,18 @@ public IfcTendonAnchorType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23740,6 +32904,21 @@ public IfcTendonType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(NominalDiameter != null ? NominalDiameter.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(CrossSectionArea != null ? CrossSectionArea.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SheethDiameter != null ? SheethDiameter.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23773,6 +32952,19 @@ public IfcRelAggregates(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistor { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingObject != null ? RelatingObject.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedObjects != null ? RelatedObjects.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23799,6 +32991,16 @@ public IfcRelDecomposes(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistor { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23831,6 +33033,19 @@ public IfcRelAssigns(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatedObjects != null ? RelatedObjects.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedObjectsType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23863,6 +33078,19 @@ public IfcRelAssignsToActor(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingActor != null ? RelatingActor.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ActingRole != null ? ActingRole.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23893,6 +33121,18 @@ public IfcRelAssignsToControl(IfcGloballyUniqueId globalId,IfcOwnerHistory owner { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingControl != null ? RelatingControl.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23923,6 +33163,18 @@ public IfcRelAssignsToGroup(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingGroup != null ? RelatingGroup.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23955,6 +33207,19 @@ public IfcRelAssignsToProcess(IfcGloballyUniqueId globalId,IfcOwnerHistory owner { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingProcess != null ? RelatingProcess.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(QuantityInProcess != null ? QuantityInProcess.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -23985,6 +33250,18 @@ public IfcRelAssignsToProduct(IfcGloballyUniqueId globalId,IfcOwnerHistory owner { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingProduct != null ? RelatingProduct.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24015,6 +33292,18 @@ public IfcRelAssignsToResource(IfcGloballyUniqueId globalId,IfcOwnerHistory owne { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingResource != null ? RelatingResource.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24041,6 +33330,16 @@ public IfcRelationship(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24071,6 +33370,18 @@ public IfcRelAssignsToGroupByFactor(IfcGloballyUniqueId globalId,IfcOwnerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Factor != null ? Factor.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24101,6 +33412,18 @@ public IfcRelAssociates(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistor { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatedObjects != null ? RelatedObjects.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24131,6 +33454,18 @@ public IfcRelAssociatesApproval(IfcGloballyUniqueId globalId,IfcOwnerHistory own { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingApproval != null ? RelatingApproval.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24161,6 +33496,18 @@ public IfcRelAssociatesClassification(IfcGloballyUniqueId globalId,IfcOwnerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingClassification != null ? RelatingClassification.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24193,6 +33540,19 @@ public IfcRelAssociatesConstraint(IfcGloballyUniqueId globalId,IfcOwnerHistory o { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Intent != null ? Intent.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatingConstraint != null ? RelatingConstraint.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24223,6 +33583,18 @@ public IfcRelAssociatesDocument(IfcGloballyUniqueId globalId,IfcOwnerHistory own { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingDocument != null ? RelatingDocument.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24253,6 +33625,18 @@ public IfcRelAssociatesLibrary(IfcGloballyUniqueId globalId,IfcOwnerHistory owne { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingLibrary != null ? RelatingLibrary.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24283,6 +33667,18 @@ public IfcRelAssociatesMaterial(IfcGloballyUniqueId globalId,IfcOwnerHistory own { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingMaterial != null ? RelatingMaterial.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24309,6 +33705,16 @@ public IfcRelConnects(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24344,6 +33750,20 @@ public IfcRelConnectsElements(IfcGloballyUniqueId globalId,IfcOwnerHistory owner { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ConnectionGeometry != null ? ConnectionGeometry.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatingElement != null ? RelatingElement.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedElement != null ? RelatedElement.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24377,6 +33797,19 @@ public IfcRelConnectsPortToElement(IfcGloballyUniqueId globalId,IfcOwnerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingPort != null ? RelatingPort.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedElement != null ? RelatedElement.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24412,6 +33845,20 @@ public IfcRelConnectsPorts(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingPort != null ? RelatingPort.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedPort != null ? RelatedPort.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RealizingElement != null ? RealizingElement.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24445,6 +33892,19 @@ public IfcRelConnectsStructuralActivity(IfcGloballyUniqueId globalId,IfcOwnerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingElement != null ? RelatingElement.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedStructuralActivity != null ? RelatedStructuralActivity.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24486,6 +33946,23 @@ public IfcRelConnectsStructuralMember(IfcGloballyUniqueId globalId,IfcOwnerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingStructuralMember != null ? RelatingStructuralMember.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedStructuralConnection != null ? RelatedStructuralConnection.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(AppliedCondition != null ? AppliedCondition.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(AdditionalConditions != null ? AdditionalConditions.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SupportedLength != null ? SupportedLength.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ConditionCoordinateSystem != null ? ConditionCoordinateSystem.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24519,6 +33996,19 @@ public IfcRelContainedInSpatialStructure(IfcGloballyUniqueId globalId,IfcOwnerHi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatedElements != null ? RelatedElements.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatingStructure != null ? RelatingStructure.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24552,6 +34042,19 @@ public IfcRelCoversBldgElements(IfcGloballyUniqueId globalId,IfcOwnerHistory own { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingBuildingElement != null ? RelatingBuildingElement.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedCoverings != null ? RelatedCoverings.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24585,6 +34088,19 @@ public IfcRelCoversSpaces(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingSpace != null ? RelatingSpace.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedCoverings != null ? RelatedCoverings.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24618,6 +34134,19 @@ public IfcRelFillsElement(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingOpeningElement != null ? RelatingOpeningElement.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedBuildingElement != null ? RelatedBuildingElement.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24651,6 +34180,19 @@ public IfcRelFlowControlElements(IfcGloballyUniqueId globalId,IfcOwnerHistory ow { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatedControlElements != null ? RelatedControlElements.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatingFlowElement != null ? RelatingFlowElement.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24691,6 +34233,22 @@ public IfcRelInterferesElements(IfcGloballyUniqueId globalId,IfcOwnerHistory own { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingElement != null ? RelatingElement.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedElement != null ? RelatedElement.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(InterferenceGeometry != null ? InterferenceGeometry.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(InterferenceType != null ? InterferenceType.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ImpliedOrder != null ? ImpliedOrder.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24724,6 +34282,19 @@ public IfcRelReferencedInSpatialStructure(IfcGloballyUniqueId globalId,IfcOwnerH { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatedElements != null ? RelatedElements.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatingStructure != null ? RelatingStructure.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24763,6 +34334,22 @@ public IfcRelSequence(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingProcess != null ? RelatingProcess.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedProcess != null ? RelatedProcess.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TimeLag != null ? TimeLag.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SequenceType.STEPValue(ref indexDictionnary)); + parameters.Add(UserDefinedSequenceType != null ? UserDefinedSequenceType.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24796,6 +34383,19 @@ public IfcRelServicesBuildings(IfcGloballyUniqueId globalId,IfcOwnerHistory owne { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingSystem != null ? RelatingSystem.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedBuildings != null ? RelatedBuildings.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24837,6 +34437,22 @@ public IfcRelSpaceBoundary(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingSpace != null ? RelatingSpace.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedBuildingElement != null ? RelatedBuildingElement.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ConnectionGeometry != null ? ConnectionGeometry.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PhysicalOrVirtualBoundary.STEPValue(ref indexDictionnary)); + parameters.Add(InternalOrExternalBoundary.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24876,6 +34492,21 @@ public IfcRelConnectsPathElements(IfcGloballyUniqueId globalId,IfcOwnerHistory o { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingPriorities != null ? RelatingPriorities.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedPriorities != null ? RelatedPriorities.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedConnectionType.STEPValue(ref indexDictionnary)); + parameters.Add(RelatingConnectionType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24908,6 +34539,19 @@ public IfcRelConnectsWithRealizingElements(IfcGloballyUniqueId globalId,IfcOwner { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RealizingElements != null ? RealizingElements.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ConnectionType != null ? ConnectionType.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24938,6 +34582,18 @@ public IfcRelConnectsWithEccentricity(IfcGloballyUniqueId globalId,IfcOwnerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ConnectionConstraint != null ? ConnectionConstraint.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -24971,6 +34627,19 @@ public IfcRelDeclares(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingContext != null ? RelatingContext.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedDefinitions != null ? RelatedDefinitions.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25004,6 +34673,19 @@ public IfcRelNests(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingObject != null ? RelatingObject.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedObjects != null ? RelatedObjects.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25037,6 +34719,19 @@ public IfcRelProjectsElement(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerH { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingElement != null ? RelatingElement.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedFeatureElement != null ? RelatedFeatureElement.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25070,6 +34765,19 @@ public IfcRelVoidsElement(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingBuildingElement != null ? RelatingBuildingElement.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedOpeningElement != null ? RelatedOpeningElement.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25096,6 +34804,16 @@ public IfcRelDefines(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25129,6 +34847,19 @@ public IfcRelDefinesByObject(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerH { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatedObjects != null ? RelatedObjects.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatingObject != null ? RelatingObject.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25162,6 +34893,19 @@ public IfcRelDefinesByProperties(IfcGloballyUniqueId globalId,IfcOwnerHistory ow { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatedObjects != null ? RelatedObjects.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatingPropertyDefinition != null ? RelatingPropertyDefinition.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25195,6 +34939,19 @@ public IfcRelDefinesByTemplate(IfcGloballyUniqueId globalId,IfcOwnerHistory owne { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatedPropertySets != null ? RelatedPropertySets.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatingTemplate != null ? RelatingTemplate.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25228,6 +34985,19 @@ public IfcRelDefinesByType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatedObjects != null ? RelatedObjects.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatingType != null ? RelatingType.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25257,6 +35027,18 @@ public IfcRelSpaceBoundary1stLevel(IfcGloballyUniqueId globalId,IfcOwnerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ParentBoundary != null ? ParentBoundary.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25286,6 +35068,18 @@ public IfcRelSpaceBoundary2ndLevel(IfcGloballyUniqueId globalId,IfcOwnerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(CorrespondingBoundary != null ? CorrespondingBoundary.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25323,6 +35117,21 @@ public static IfcRepresentation FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ContextOfItems != null ? ContextOfItems.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RepresentationIdentifier != null ? RepresentationIdentifier.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RepresentationType != null ? RepresentationType.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Items != null ? Items.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25349,6 +35158,16 @@ public IfcShapeModel(IfcRepresentationContext contextOfItems,IfcLabel representa { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25375,6 +35194,16 @@ public IfcStyleModel(IfcRepresentationContext contextOfItems,IfcLabel representa { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25409,6 +35238,20 @@ public IfcStyledItem(IfcRepresentationItem item,List s { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Item != null ? Item.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Styles != null ? Styles.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25433,6 +35276,19 @@ public static IfcRepresentationMap FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(MappingOrigin != null ? MappingOrigin.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(MappedRepresentation != null ? MappedRepresentation.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25466,6 +35322,19 @@ public IfcResourceApprovalRelationship(IfcLabel name,IfcText description,List(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatedResourceObjects != null ? RelatedResourceObjects.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatingApproval != null ? RelatingApproval.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25499,6 +35368,19 @@ public IfcResourceConstraintRelationship(IfcLabel name,IfcText description,IfcCo { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RelatingConstraint != null ? RelatingConstraint.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RelatedResourceObjects != null ? RelatedResourceObjects.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25556,6 +35438,32 @@ public IfcResourceTime(IfcLabel name,IfcDataOriginEnum dataOrigin,IfcLabel userD { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ScheduleWork != null ? ScheduleWork.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ScheduleUsage != null ? ScheduleUsage.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ScheduleStart != null ? ScheduleStart.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ScheduleFinish != null ? ScheduleFinish.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ScheduleContour != null ? ScheduleContour.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LevelingDelay != null ? LevelingDelay.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(IsOverAllocated.STEPValue(ref indexDictionnary)); + parameters.Add(StatusTime != null ? StatusTime.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ActualWork != null ? ActualWork.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ActualUsage != null ? ActualUsage.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ActualStart != null ? ActualStart.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ActualFinish != null ? ActualFinish.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RemainingWork != null ? RemainingWork.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RemainingUsage != null ? RemainingUsage.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Completion != null ? Completion.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25589,6 +35497,19 @@ public IfcRevolvedAreaSolid(IfcProfileDef sweptArea,IfcAxis2Placement3D position { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Axis != null ? Axis.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Angle != null ? Angle.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25619,6 +35540,18 @@ public IfcRevolvedAreaSolidTapered(IfcProfileDef sweptArea,IfcAxis2Placement3D p { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(EndSweptArea != null ? EndSweptArea.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25680,6 +35613,34 @@ public IfcTaskTime(IfcLabel name,IfcDataOriginEnum dataOrigin,IfcLabel userDefin { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(DurationType.STEPValue(ref indexDictionnary)); + parameters.Add(ScheduleDuration != null ? ScheduleDuration.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ScheduleStart != null ? ScheduleStart.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ScheduleFinish != null ? ScheduleFinish.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(EarlyStart != null ? EarlyStart.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(EarlyFinish != null ? EarlyFinish.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LateStart != null ? LateStart.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LateFinish != null ? LateFinish.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(FreeFloat != null ? FreeFloat.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TotalFloat != null ? TotalFloat.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(IsCritical.STEPValue(ref indexDictionnary)); + parameters.Add(StatusTime != null ? StatusTime.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ActualDuration != null ? ActualDuration.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ActualStart != null ? ActualStart.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ActualFinish != null ? ActualFinish.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RemainingTime != null ? RemainingTime.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Completion != null ? Completion.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25713,6 +35674,20 @@ public IfcWorkTime(IfcLabel name,IfcDataOriginEnum dataOrigin,IfcLabel userDefin { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RecurrencePattern != null ? RecurrencePattern.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Start != null ? Start.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Finish != null ? Finish.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25752,6 +35727,22 @@ public static IfcShapeAspect FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ShapeRepresentations != null ? ShapeRepresentations.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ProductDefinitional != null ? ProductDefinitional.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PartOfProductDefinitionShape != null ? PartOfProductDefinitionShape.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25778,6 +35769,16 @@ public IfcShapeRepresentation(IfcRepresentationContext contextOfItems,IfcLabel r { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25804,6 +35805,16 @@ public IfcTopologyRepresentation(IfcRepresentationContext contextOfItems,IfcLabe { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25841,6 +35852,22 @@ public IfcSite(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLabe { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RefLatitude != null ? RefLatitude.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RefLongitude != null ? RefLongitude.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RefElevation != null ? RefElevation.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LandTitleNumber != null ? LandTitleNumber.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SiteAddress != null ? SiteAddress.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25867,6 +35894,16 @@ public IfcSlabElementedCase(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25893,6 +35930,16 @@ public IfcSlabStandardCase(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25926,6 +35973,20 @@ public IfcSlippageConnectionCondition(IfcLabel name,IfcLengthMeasure slippageX,I { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(SlippageX != null ? SlippageX.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SlippageY != null ? SlippageY.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SlippageZ != null ? SlippageZ.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25965,6 +36026,22 @@ public IfcSweptDiskSolid(IfcCurve directrix,IfcPositiveLengthMeasure radius,IfcP { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Directrix != null ? Directrix.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Radius != null ? Radius.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(InnerRadius != null ? InnerRadius.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(StartParam != null ? StartParam.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(EndParam != null ? EndParam.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -25996,6 +36073,19 @@ public IfcSpace(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLab { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(ElevationWithFlooring != null ? ElevationWithFlooring.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26028,6 +36118,19 @@ public IfcSpaceType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,If { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(LongName != null ? LongName.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26054,6 +36157,16 @@ public IfcSpatialStructureElementType(IfcGloballyUniqueId globalId,IfcOwnerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26083,6 +36196,18 @@ public IfcSpatialZone(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26112,6 +36237,18 @@ public IfcSpatialElementType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerH { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ElementType != null ? ElementType.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26144,6 +36281,19 @@ public IfcSpatialZoneType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(LongName != null ? LongName.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26173,6 +36323,18 @@ public IfcStructuralAction(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(DestabilizingLoad.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26205,6 +36367,19 @@ public IfcStructuralCurveAction(IfcGloballyUniqueId globalId,IfcOwnerHistory own { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ProjectedOrTrue.STEPValue(ref indexDictionnary)); + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26231,6 +36406,16 @@ public IfcStructuralPointAction(IfcGloballyUniqueId globalId,IfcOwnerHistory own { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26263,6 +36448,19 @@ public IfcStructuralSurfaceAction(IfcGloballyUniqueId globalId,IfcOwnerHistory o { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ProjectedOrTrue.STEPValue(ref indexDictionnary)); + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26289,6 +36487,16 @@ public IfcStructuralReaction(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerH { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26318,8 +36526,24 @@ public IfcStructuralAnalysisModel(IfcGloballyUniqueId globalId,IfcOwnerHistory o { PredefinedType = predefinedType; OrientationOf2DPlane = orientationOf2DPlane; - LoadedBy = new List(); - HasResults = new List(); + + if (loadedBy != null) + { + LoadedBy = loadedBy; + } + else + { + LoadedBy = new List(); + } + + if (hasResults != null) + { + HasResults = hasResults; + } + else + { + HasResults = new List(); + } SharedPlacement = sharedPlacement; } @@ -26327,6 +36551,22 @@ public IfcStructuralAnalysisModel(IfcGloballyUniqueId globalId,IfcOwnerHistory o { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(OrientationOf2DPlane != null ? OrientationOf2DPlane.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LoadedBy != null ? LoadedBy.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(HasResults != null ? HasResults.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SharedPlacement != null ? SharedPlacement.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26356,6 +36596,18 @@ public IfcStructuralConnection(IfcGloballyUniqueId globalId,IfcOwnerHistory owne { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(AppliedCondition != null ? AppliedCondition.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26386,6 +36638,18 @@ public IfcStructuralCurveConnection(IfcGloballyUniqueId globalId,IfcOwnerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Axis != null ? Axis.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26415,6 +36679,18 @@ public IfcStructuralPointConnection(IfcGloballyUniqueId globalId,IfcOwnerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ConditionCoordinateSystem != null ? ConditionCoordinateSystem.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26441,6 +36717,16 @@ public IfcStructuralSurfaceConnection(IfcGloballyUniqueId globalId,IfcOwnerHisto { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26467,6 +36753,16 @@ public IfcStructuralLinearAction(IfcGloballyUniqueId globalId,IfcOwnerHistory ow { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26500,6 +36796,19 @@ public IfcStructuralCurveMember(IfcGloballyUniqueId globalId,IfcOwnerHistory own { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(Axis != null ? Axis.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26526,6 +36835,16 @@ public IfcStructuralCurveMemberVarying(IfcGloballyUniqueId globalId,IfcOwnerHist { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26552,6 +36871,16 @@ public IfcStructuralMember(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26582,6 +36911,18 @@ public IfcStructuralCurveReaction(IfcGloballyUniqueId globalId,IfcOwnerHistory o { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26611,6 +36952,18 @@ public static IfcStructuralLoad FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26636,13 +36989,34 @@ public IfcStructuralLoadConfiguration(List values):ba public IfcStructuralLoadConfiguration(IfcLabel name,List values,List> locations):base(name) { Values = values; - Locations = new List>(); + + if (locations != null) + { + Locations = locations; + } + else + { + Locations = new List>(); + } } public static new IfcStructuralLoadConfiguration FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Values != null ? Values.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Locations != null ? Locations.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26669,6 +37043,16 @@ public IfcStructuralLoadOrResult(IfcLabel name):base(name) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26691,13 +37075,33 @@ public IfcStructuralLoadCase(IfcGloballyUniqueId globalId,IfcLoadGroupTypeEnum p [JsonConstructor] public IfcStructuralLoadCase(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLabel name,IfcText description,IfcLabel objectType,IfcLoadGroupTypeEnum predefinedType,IfcActionTypeEnum actionType,IfcActionSourceTypeEnum actionSource,IfcRatioMeasure coefficient,IfcLabel purpose,List selfWeightCoefficients):base(globalId,ownerHistory,name,description,objectType,predefinedType,actionType,actionSource,coefficient,purpose) { - SelfWeightCoefficients = new List(); + + if (selfWeightCoefficients != null) + { + SelfWeightCoefficients = selfWeightCoefficients; + } + else + { + SelfWeightCoefficients = new List(); + } } public static new IfcStructuralLoadCase FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(SelfWeightCoefficients != null ? SelfWeightCoefficients.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26737,6 +37141,23 @@ public IfcStructuralLoadLinearForce(IfcLabel name,IfcLinearForceMeasure linearFo { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(LinearForceX != null ? LinearForceX.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LinearForceY != null ? LinearForceY.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LinearForceZ != null ? LinearForceZ.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LinearMomentX != null ? LinearMomentX.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LinearMomentY != null ? LinearMomentY.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(LinearMomentZ != null ? LinearMomentZ.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26763,6 +37184,16 @@ public IfcStructuralLoadStatic(IfcLabel name):base(name) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26787,8 +37218,24 @@ public IfcSurfaceReinforcementArea():base() [JsonConstructor] public IfcSurfaceReinforcementArea(IfcLabel name,List surfaceReinforcement1,List surfaceReinforcement2,IfcRatioMeasure shearReinforcement):base(name) { - SurfaceReinforcement1 = new List(); - SurfaceReinforcement2 = new List(); + + if (surfaceReinforcement1 != null) + { + SurfaceReinforcement1 = surfaceReinforcement1; + } + else + { + SurfaceReinforcement1 = new List(); + } + + if (surfaceReinforcement2 != null) + { + SurfaceReinforcement2 = surfaceReinforcement2; + } + else + { + SurfaceReinforcement2 = new List(); + } ShearReinforcement = shearReinforcement; } @@ -26796,6 +37243,20 @@ public IfcSurfaceReinforcementArea(IfcLabel name,List surfaceR { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(SurfaceReinforcement1 != null ? SurfaceReinforcement1.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SurfaceReinforcement2 != null ? SurfaceReinforcement2.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ShearReinforcement != null ? ShearReinforcement.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26829,6 +37290,20 @@ public IfcStructuralLoadPlanarForce(IfcLabel name,IfcPlanarForceMeasure planarFo { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PlanarForceX != null ? PlanarForceX.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PlanarForceY != null ? PlanarForceY.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(PlanarForceZ != null ? PlanarForceZ.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26868,6 +37343,23 @@ public IfcStructuralLoadSingleDisplacement(IfcLabel name,IfcLengthMeasure displa { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(DisplacementX != null ? DisplacementX.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(DisplacementY != null ? DisplacementY.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(DisplacementZ != null ? DisplacementZ.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RotationalDisplacementRX != null ? RotationalDisplacementRX.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RotationalDisplacementRY != null ? RotationalDisplacementRY.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(RotationalDisplacementRZ != null ? RotationalDisplacementRZ.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26897,6 +37389,18 @@ public IfcStructuralLoadSingleDisplacementDistortion(IfcLabel name,IfcLengthMeas { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Distortion != null ? Distortion.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26936,6 +37440,23 @@ public IfcStructuralLoadSingleForce(IfcLabel name,IfcForceMeasure forceX,IfcForc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ForceX != null ? ForceX.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ForceY != null ? ForceY.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ForceZ != null ? ForceZ.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(MomentX != null ? MomentX.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(MomentY != null ? MomentY.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(MomentZ != null ? MomentZ.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26965,6 +37486,18 @@ public IfcStructuralLoadSingleForceWarping(IfcLabel name,IfcForceMeasure forceX, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(WarpingMoment != null ? WarpingMoment.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -26998,6 +37531,20 @@ public IfcStructuralLoadTemperature(IfcLabel name,IfcThermodynamicTemperatureMea { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(DeltaTConstant != null ? DeltaTConstant.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(DeltaTY != null ? DeltaTY.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(DeltaTZ != null ? DeltaTZ.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27030,6 +37577,19 @@ public IfcStructuralSurfaceMember(IfcGloballyUniqueId globalId,IfcOwnerHistory o { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(Thickness != null ? Thickness.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27056,6 +37616,16 @@ public IfcStructuralPlanarAction(IfcGloballyUniqueId globalId,IfcOwnerHistory ow { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27082,6 +37652,16 @@ public IfcStructuralPointReaction(IfcGloballyUniqueId globalId,IfcOwnerHistory o { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27112,6 +37692,18 @@ public IfcStructuralSurfaceReaction(IfcGloballyUniqueId globalId,IfcOwnerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27138,6 +37730,16 @@ public IfcStructuralSurfaceMemberVarying(IfcGloballyUniqueId globalId,IfcOwnerHi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27164,6 +37766,16 @@ public IfcStyledRepresentation(IfcRepresentationContext contextOfItems,IfcLabel { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27196,6 +37808,19 @@ public IfcSweptSurface(IfcProfileDef sweptCurve,IfcAxis2Placement3D position):ba { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(SweptCurve != null ? SweptCurve.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Position != null ? Position.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27233,6 +37858,21 @@ public IfcSurfaceCurveSweptAreaSolid(IfcProfileDef sweptArea,IfcAxis2Placement3D { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Directrix != null ? Directrix.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(StartParam != null ? StartParam.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(EndParam != null ? EndParam.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ReferenceSurface != null ? ReferenceSurface.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27266,6 +37906,19 @@ public IfcSurfaceOfLinearExtrusion(IfcProfileDef sweptCurve,IfcAxis2Placement3D { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ExtrudedDirection != null ? ExtrudedDirection.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Depth != null ? Depth.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27296,6 +37949,18 @@ public IfcSurfaceOfRevolution(IfcProfileDef sweptCurve,IfcAxis2Placement3D posit { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(AxisPosition != null ? AxisPosition.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27340,6 +38005,25 @@ public IfcSurfaceStyleRendering(IfcColourRgb surfaceColour,IfcNormalisedRatioMea { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Transparency != null ? Transparency.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(DiffuseColour != null ? DiffuseColour.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(TransmissionColour != null ? TransmissionColour.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(DiffuseTransmissionColour != null ? DiffuseTransmissionColour.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ReflectionColour != null ? ReflectionColour.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SpecularColour != null ? SpecularColour.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(SpecularHighlight != null ? SpecularHighlight.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ReflectanceMethod.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27369,6 +38053,18 @@ public IfcSweptDiskSolidPolygonal(IfcCurve directrix,IfcPositiveLengthMeasure ra { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(FilletRadius != null ? FilletRadius.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27398,6 +38094,18 @@ public IfcZone(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,IfcLabe { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(LongName != null ? LongName.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27423,14 +38131,44 @@ public IfcTable():base() public IfcTable(IfcLabel name,List rows,List columns):base() { Name = name; - Rows = new List(); - Columns = new List(); + + if (rows != null) + { + Rows = rows; + } + else + { + Rows = new List(); + } + + if (columns != null) + { + Columns = columns; + } + else + { + Columns = new List(); + } } public static IfcTable FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Rows != null ? Rows.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Columns != null ? Columns.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27468,6 +38206,22 @@ public static IfcTableColumn FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Identifier != null ? Identifier.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Name != null ? Name.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Description != null ? Description.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Unit != null ? Unit.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(ReferencePath != null ? ReferencePath.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27491,7 +38245,15 @@ public IfcTableRow():base() [JsonConstructor] public IfcTableRow(List rowCells,bool isHeading):base() { - RowCells = new List(); + + if (rowCells != null) + { + RowCells = rowCells; + } + else + { + RowCells = new List(); + } IsHeading = isHeading; } @@ -27499,6 +38261,19 @@ public static IfcTableRow FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(RowCells != null ? RowCells.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(IsHeading.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27529,6 +38304,18 @@ public IfcTaskTimeRecurring(IfcLabel name,IfcDataOriginEnum dataOrigin,IfcLabel { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Recurrance != null ? Recurrance.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27561,6 +38348,19 @@ public IfcTaskType(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + parameters.Add(WorkMethod != null ? WorkMethod.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27587,7 +38387,15 @@ public IfcTessellatedFaceSet(IfcCartesianPointList3D coordinates):base() public IfcTessellatedFaceSet(IfcCartesianPointList3D coordinates,List> normals,bool closed):base() { Coordinates = coordinates; - Normals = new List>(); + + if (normals != null) + { + Normals = normals; + } + else + { + Normals = new List>(); + } Closed = closed; } @@ -27595,6 +38403,20 @@ public IfcTessellatedFaceSet(IfcCartesianPointList3D coordinates,List(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Coordinates != null ? Coordinates.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Normals != null ? Normals.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Closed.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27620,13 +38442,34 @@ public IfcTriangulatedFaceSet(IfcCartesianPointList3D coordinates,List public IfcTriangulatedFaceSet(IfcCartesianPointList3D coordinates,List> normals,bool closed,List> coordIndex,List> normalIndex):base(coordinates,normals,closed) { CoordIndex = coordIndex; - NormalIndex = new List>(); + + if (normalIndex != null) + { + NormalIndex = normalIndex; + } + else + { + NormalIndex = new List>(); + } } public static new IfcTriangulatedFaceSet FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(CoordIndex != null ? CoordIndex.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(NormalIndex != null ? NormalIndex.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27651,6 +38494,19 @@ public IfcTextLiteralWithExtent(IfcPresentableText literal,IfcAxis2Placement pla { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Extent != null ? Extent.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(BoxAlignment != null ? BoxAlignment.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27676,13 +38532,34 @@ public IfcTextureCoordinateGenerator(List maps,IfcLabel mode) public IfcTextureCoordinateGenerator(List maps,IfcLabel mode,List parameter):base(maps) { Mode = mode; - Parameter = new List(); + + if (parameter != null) + { + Parameter = parameter; + } + else + { + Parameter = new List(); + } } public static new IfcTextureCoordinateGenerator FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Mode != null ? Mode.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(Parameter != null ? Parameter.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27707,6 +38584,19 @@ public IfcTextureMap(List maps,List vertice { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Vertices != null ? Vertices.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(MappedTo != null ? MappedTo.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27731,6 +38621,19 @@ public static IfcTimePeriod FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(StartTime != null ? StartTime.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(EndTime != null ? EndTime.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27753,6 +38656,18 @@ public static IfcTimeSeriesValue FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ListValues != null ? ListValues.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27772,6 +38687,16 @@ public IfcVertex():base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27811,6 +38736,21 @@ public IfcWindowStyle(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory, { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(ConstructionType.STEPValue(ref indexDictionnary)); + parameters.Add(OperationType.STEPValue(ref indexDictionnary)); + parameters.Add(ParameterTakesPrecedence.STEPValue(ref indexDictionnary)); + parameters.Add(Sizeable.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27833,6 +38773,18 @@ public static IfcUnitAssignment FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(Units != null ? Units.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27855,6 +38807,18 @@ public IfcVertexPoint(IfcPoint vertexGeometry):base() { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(VertexGeometry != null ? VertexGeometry.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27879,6 +38843,19 @@ public static IfcVirtualGridIntersection FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(IntersectingAxes != null ? IntersectingAxes.STEPValue(ref indexDictionnary) : "$"); + parameters.Add(OffsetDistances != null ? OffsetDistances.STEPValue(ref indexDictionnary) : "$"); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27905,6 +38882,16 @@ public IfcWallElementedCase(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHi { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27931,6 +38918,16 @@ public IfcWallStandardCase(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27957,6 +38954,16 @@ public IfcWindowStandardCase(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerH { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -27986,6 +38993,18 @@ public IfcWorkPlan(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory,Ifc { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -28015,5 +39034,17 @@ public IfcWorkSchedule(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHistory { return JsonConvert.DeserializeObject(json); } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List < string > parameters = new List(); + string baseSTEPParameters = base.STEPParameters(ref indexDictionnary); + if (!string.IsNullOrEmpty(baseSTEPParameters)) { parameters.Add(baseSTEPParameters);} + + parameters.Add(PredefinedType.STEPValue(ref indexDictionnary)); + + + return string.Join(", ", parameters.ToArray()); + } } } diff --git a/src/IFC-dotnet/Model.cs b/src/IFC-dotnet/Model.cs index 5ddd89e..20408b5 100644 --- a/src/IFC-dotnet/Model.cs +++ b/src/IFC-dotnet/Model.cs @@ -186,13 +186,99 @@ public string ToDOT() return graph; } - /// - /// Create a Model given a STEP file. - /// - /// The path to the STEP file. - /// A Model. - /// The specified file path does not exist. - public static Model FromSTEP(string filePath, out IList errors) + + /// + /// Serialize the model to STEP. + /// + /// The path to the resulting STEP file. + /// A string representing the model serialized to STEP. + public string ToSTEP(string filePath) + { + string result = GetHeaderString(filePath) + "\r\n"; + Dictionary indexDictionnary = new Dictionary(); + int stepIndex = 1; + foreach (KeyValuePair instance in this.Instances) + { + indexDictionnary.Add(instance.Value.Id, stepIndex); + stepIndex++; + //Debug.WriteLine(DateTime.Now.ToString("hh:mm:ss.fff") + ";" + " Writing line " + instanceValue.Remove(instanceValue.Length - 2)); + } + + foreach (KeyValuePair instance in this.Instances) + { + string instanceValue = instance.Value.ToSTEP(ref indexDictionnary); + result = result + instanceValue; + Debug.WriteLine(DateTime.Now.ToString("hh:mm:ss.fff") + ";" + " Writing line " + instanceValue.Remove(instanceValue.Length-2)); + } + + return result + GetFooterString(); + } + + private string GetHeaderString(string filePath) + { + + string hdr = "ISO-10303-21;\r\nHEADER;\r\nFILE_DESCRIPTION(('ViewDefinition [" + "CoordinationView" + "]'),'2;1');\r\n"; + + hdr += "FILE_NAME(\r\n"; + hdr += "/* name */ '" + Encode(filePath.Replace("\\", "\\\\")) + "',\r\n"; + DateTime now = DateTime.Now; + hdr += "/* time_stamp */ '" + now.Year + "-" + (now.Month < 10 ? "0" : "") + now.Month + "-" + (now.Day < 10 ? "0" : "") + now.Day + "T" + (now.Hour < 10 ? "0" : "") + now.Hour + ":" + (now.Minute < 10 ? "0" : "") + now.Minute + ":" + (now.Second < 10 ? "0" : "") + now.Second + "',\r\n"; + hdr += "/* author */ ('" + System.Environment.UserName + "'),\r\n"; + hdr += "/* organization */ ('" + this.AllInstancesOfType().FirstOrDefault().OwnerHistory.OwningUser.TheOrganization.Name + "'),\r\n"; + hdr += "/* preprocessor_version */ 'IFC-dotnet',\r\n"; + hdr += "/* originating_system */ '" + typeof(Model).Assembly.GetName().Version + "',\r\n"; + + hdr += "/* authorization */ 'None');\r\n\r\n"; + hdr += "FILE_SCHEMA (('" + "IFC4" + "'));\r\n"; + hdr += "ENDSEC;\r\n"; + hdr += "\r\nDATA;"; + return hdr; + } + + private string GetFooterString() { return "ENDSEC;\r\n\r\nEND-ISO-10303-21;\r\n\r\n"; } + + public static string Encode(string str) + { + string result = ""; + int length = str.Length; + for (int icounter = 0; icounter < length; icounter++) + { + char c = str[icounter]; + if (c == '\r') + { + if (icounter + 1 < length) + { + if (str[icounter + 1] == '\n' && icounter + 2 == length) + return result; + } + continue; + } + if (c == '\n') + { + if (icounter + 1 == length) + return result; + } + if (c == '\'') + result += "''"; + else + { + int i = (int)c; + if (i < 32 || i > 126) + result += "\\X2\\" + string.Format("{0:x4}", i).ToUpper() + "\\X0\\"; + else + result += c; + } + } + return result; + } + + /// + /// Create a Model given a STEP file. + /// + /// The path to the STEP file. + /// A Model. + /// The specified file path does not exist. + public static Model FromSTEP(string filePath, out IList errors) { if(!File.Exists(filePath)) { @@ -246,7 +332,7 @@ public static Model FromSTEP(string filePath, out IList errors) /// private static BaseIfc ConstructRecursive(STEP.InstanceData data, Dictionary instanceDataMap, Model model, int currLine, IList errors) { - Debug.WriteLine($"{currLine},{data.Id} : Constructing type {data.Type.Name} with parameters [{string.Join(",",data.Parameters)}]"); + Debug.WriteLine(DateTime.Now.ToString("hh:mm:ss.fff") + ";" + $"{currLine},{data.Id} : Constructing type {data.Type.Name} with parameters [{string.Join(",",data.Parameters)}]"); for(var i=data.Parameters.Count()-1; i>=0; i--) { @@ -312,14 +398,16 @@ private static BaseIfc ConstructRecursive(STEP.InstanceData data, Dictionary + /// An extention to write lists to STEP + /// + public static class ListExtensions + { + public static string STEPValue(this IEnumerable baseIfcs, ref Dictionary indexDictionnary) + { + List values = new List(); + foreach (BaseIfc baseIfc in baseIfcs) + { + values.Add(baseIfc != null ? baseIfc.STEPValue(ref indexDictionnary) : "$"); + } + if (values.Count == 0) return "$"; + return "(" + string.Join(", ", values.ToArray()) + ")"; + } + } + + /// + /// An extention to write interger lists to STEP + /// + public static class ListIntExtensions + { + public static string STEPValue(this IEnumerable baseIfcs, ref Dictionary indexDictionnary) + { + List values = new List(); + foreach (int baseIfc in baseIfcs) + { + values.Add(baseIfc.STEPValue(ref indexDictionnary)); + } + if (values.Count == 0) return "$"; + return "(" + string.Join(", ", values.ToArray()) + ")"; + } + } + + /// + /// An extention to write double lists to STEP + /// + public static class ListDoubleExtensions + { + public static string STEPValue(this IEnumerable baseIfcs, ref Dictionary indexDictionnary) + { + List values = new List(); + foreach (double baseIfc in baseIfcs) + { + values.Add(baseIfc.STEPValue(ref indexDictionnary)); + } + if (values.Count == 0) return "$"; + return "(" + string.Join(", ", values.ToArray()) + ")"; + } + } + + /// + /// An extention to write byte[] lists to STEP + /// + public static class ListBytesExtensions + { + public static string STEPValue(this IEnumerable baseIfcs, ref Dictionary indexDictionnary) + { + List values = new List(); + foreach (byte[] baseIfc in baseIfcs) + { + values.Add(baseIfc.STEPValue(ref indexDictionnary)); + } + if (values.Count == 0) return "$"; + return "(" + string.Join(", ", values.ToArray()) + ")"; + } + } + + /// + /// An extention to write embedded lists to STEP + /// + public static class ListsExtensions + { + public static string STEPValue(this IEnumerable> baseIfcs, ref Dictionary indexDictionnary) + { + List values = new List(); + foreach (IEnumerable baseIfcList in baseIfcs) + { + List subValues = new List(); + foreach (BaseIfc baseIfc in baseIfcList) + { + subValues.Add(baseIfc.STEPValue(ref indexDictionnary)); + } + values.Add("(" + string.Join(", ", subValues.ToArray()) + ")"); + subValues.Clear(); + } + if (values.Count == 0) return "$"; + return "(" + string.Join(", ", values.ToArray()) + ")"; + } + } + + + /// + /// An extention to write embedded int lists to STEP + /// + public static class ListsIntExtensions + { + public static string STEPValue(this IEnumerable> baseIfcs, ref Dictionary indexDictionnary) + { + List values = new List(); + foreach (IEnumerable baseIfcList in baseIfcs) + { + List subValues = new List(); + foreach (int baseIfc in baseIfcList) + { + subValues.Add(baseIfc.STEPValue(ref indexDictionnary)); + } + values.Add("(" + string.Join(", ", subValues.ToArray()) + ")"); + subValues.Clear(); + } + if (values.Count == 0) return "$"; + return "(" + string.Join(", ", values.ToArray()) + ")"; + } + } + + /// + /// An extention to write embedded double lists to STEP + /// + public static class ListsDoubleExtensions + { + public static string STEPValue(this IEnumerable> baseIfcs, ref Dictionary indexDictionnary) + { + List values = new List(); + foreach (IEnumerable baseIfcList in baseIfcs) + { + List subValues = new List(); + foreach (double baseIfc in baseIfcList) + { + subValues.Add(baseIfc.STEPValue(ref indexDictionnary)); + } + values.Add("(" + string.Join(", ", subValues.ToArray()) + ")"); + subValues.Clear(); + } + if (values.Count == 0) return "$"; + return "(" + string.Join(", ", values.ToArray()) + ")"; + } + } + + /// + /// An extention to write bool to STEP + /// + public static class BoolExtensions + { + public static string STEPValue(this bool value, ref Dictionary indexDictionnary) + { + if (value) + { + return ".TRUE."; + } + else + { + return ".FALSE."; + } + } + } + + /// + /// An extention to write nullable bool to STEP + /// + public static class BoolNullableExtensions + { + public static string STEPValue(this bool? value, ref Dictionary indexDictionnary) + { + if (value == null) + { + return "$"; + } + else if (value == true) + { + return ".TRUE."; + } + else + { + return ".FALSE."; + } + } + } + /// + /// An extention to write int to STEP + /// + public static class IntExtensions + { + public static string STEPValue(this int value, ref Dictionary indexDictionnary) + { + return value.ToString(); + } + } + + /// + /// An extention to write string to STEP + /// + public static class StringExtensions + { + public static string STEPValue(this string value, ref Dictionary indexDictionnary) + { + return "'" + value.ToString() + "'"; + } + } + + /// + /// An extention to write byte to STEP + /// + public static class byteExtensions + { + public static string STEPValue(this byte[] value, ref Dictionary indexDictionnary) + { + return value.ToString(); + } + } + + /// + /// An extention to write double to STEP + /// + public static class DoubleExtensions + { + public static string STEPValue(this double value, ref Dictionary indexDictionnary) + { + return value.ToString("G", new System.Globalization.CultureInfo("en-US")); + } + } + + /// + /// An extention to write enum to STEP + /// + public static class EnumExtensions + { + public static string STEPValue(this Enum value, ref Dictionary indexDictionnary) + { + return "." + value.ToString() + "."; + } + } + +} diff --git a/src/IFC-dotnet/STEPListener.cs b/src/IFC-dotnet/STEPListener.cs index fd79cf0..f685d00 100644 --- a/src/IFC-dotnet/STEPListener.cs +++ b/src/IFC-dotnet/STEPListener.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Linq; using IFC4; +using System.Globalization; namespace STEP { @@ -229,7 +230,7 @@ private dynamic ParseInt(Type t, string value) private dynamic ParseReal(Type t, string value) { double result; - if(!double.TryParse(value, out result)) + if(!double.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out result)) { throw new STEPParserException(typeof(double), value); } diff --git a/tests/IFC-dotnet-test/SerializationTests.cs b/tests/IFC-dotnet-test/SerializationTests.cs index 38a3aa8..1d317d1 100644 --- a/tests/IFC-dotnet-test/SerializationTests.cs +++ b/tests/IFC-dotnet-test/SerializationTests.cs @@ -43,9 +43,23 @@ public void ExampleModel_Serialize_JSON() IList errors; var model = Model.FromSTEP(stepPath, out errors); var json = model.ToJSON(); - } + var jsonpath = "../../../models/example.json"; + File.WriteAllText(jsonpath,json); + } - [Fact] + [Fact] + public void ExampleModel_Serialize_STEP() + { + var stepPath = "../../../models/example.ifc"; + IList errors; + var model = Model.FromSTEP(stepPath, out errors); + string ifcPath = "../../../models/exampleWritten.ifc"; + string step = model.ToSTEP(ifcPath); + File.WriteAllText(ifcPath, step); + + } + + [Fact] public void ExampleModel_Serialize_DOT() { var stepPath = "../../../models/example.ifc";