From 112e02d5f4709e703cd6a6c75b566113512708b2 Mon Sep 17 00:00:00 2001 From: Simon Moreau Date: Tue, 14 Nov 2017 12:06:09 +0100 Subject: [PATCH 1/5] Support for non US CultureInfo --- src/IFC-dotnet/STEPListener.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) 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); } From 82ee3482d1d5e56f864a99abc9c75e4cc1ce46e3 Mon Sep 17 00:00:00 2001 From: Simon Moreau Date: Tue, 14 Nov 2017 12:12:54 +0100 Subject: [PATCH 2/5] Issue with Guid Correcting an issue where newly created instances were not using the previously constructed Guid but a new one. --- src/IFC-dotnet/IFC.cs | 2 +- src/IFC-dotnet/Model.cs | 10 ++++++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/IFC-dotnet/IFC.cs b/src/IFC-dotnet/IFC.cs index fae338c..40f5147 100755 --- a/src/IFC-dotnet/IFC.cs +++ b/src/IFC-dotnet/IFC.cs @@ -11,7 +11,7 @@ namespace IFC4 public abstract class BaseIfc { [JsonProperty("id")] - public Guid Id{get;} + public Guid Id{ get; set; } public BaseIfc() { diff --git a/src/IFC-dotnet/Model.cs b/src/IFC-dotnet/Model.cs index 5ddd89e..e893b5c 100644 --- a/src/IFC-dotnet/Model.cs +++ b/src/IFC-dotnet/Model.cs @@ -351,8 +351,14 @@ private static BaseIfc ConstructRecursive(STEP.InstanceData data, Dictionary Date: Tue, 14 Nov 2017 13:53:13 +0100 Subject: [PATCH 3/5] STEP export First test for the STEP export. To be transfered to the IFC-gen repo --- src/IFC-dotnet/IFC.cs | 66 +++++++++++++++++++++++++----- src/IFC-dotnet/Model.cs | 90 +++++++++++++++++++++++++++++++++++++---- 2 files changed, 140 insertions(+), 16 deletions(-) diff --git a/src/IFC-dotnet/IFC.cs b/src/IFC-dotnet/IFC.cs index 40f5147..13c91c1 100755 --- a/src/IFC-dotnet/IFC.cs +++ b/src/IFC-dotnet/IFC.cs @@ -5,7 +5,9 @@ using System.ComponentModel; using System.Collections.Generic; using Newtonsoft.Json; - +using System.Linq; +using System.Reflection; + namespace IFC4 { public abstract class BaseIfc @@ -28,11 +30,38 @@ 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) + { + 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 { @@ -56,7 +85,13 @@ public static implicit operator IfcType(T value) { return new IfcType(value); } - } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.ToString(); + } + + } /// /// http://www.buildingsmart-tech.org/ifc/IFC4/final/html/link/ifcabsorbeddosemeasure.htm @@ -7553,7 +7588,7 @@ public IfcPolyline(List points):base() { return JsonConvert.DeserializeObject(json); } - } + } /// /// @@ -20909,7 +20944,20 @@ public static IfcRoot FromJSON(string json) { return JsonConvert.DeserializeObject(json); } - } + + public override string STEPParameters(ref Dictionary indexDictionnary) + { + List 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()); + } + } /// /// diff --git a/src/IFC-dotnet/Model.cs b/src/IFC-dotnet/Model.cs index e893b5c..529afdb 100644 --- a/src/IFC-dotnet/Model.cs +++ b/src/IFC-dotnet/Model.cs @@ -186,13 +186,89 @@ 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(); + foreach (KeyValuePair instance in this.Instances) + { + result = result + instance.Value.ToSTEP(ref indexDictionnary); + } + + 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)) { From ca7efbe82b6e13c19b542392ba4218f356a3994c Mon Sep 17 00:00:00 2001 From: Simon Moreau Date: Tue, 14 Nov 2017 18:33:34 +0100 Subject: [PATCH 4/5] STEP export corrected First working test to create an IFC file from a model --- src/IFC-dotnet/IFC.cs | 11224 +++++++++++++++++- src/IFC-dotnet/STEPExtensions.cs | 240 + tests/IFC-dotnet-test/SerializationTests.cs | 18 +- 3 files changed, 11359 insertions(+), 123 deletions(-) create mode 100644 src/IFC-dotnet/STEPExtensions.cs diff --git a/src/IFC-dotnet/IFC.cs b/src/IFC-dotnet/IFC.cs index 13c91c1..e14df5d 100755 --- a/src/IFC-dotnet/IFC.cs +++ b/src/IFC-dotnet/IFC.cs @@ -6,14 +6,14 @@ using System.Collections.Generic; using Newtonsoft.Json; using System.Linq; -using System.Reflection; - +using STEPExtensions; + namespace IFC4 { public abstract class BaseIfc { [JsonProperty("id")] - public Guid Id{ get; set; } + public Guid Id{get;set;} public BaseIfc() { @@ -37,7 +37,7 @@ public virtual string STEPParameters(ref Dictionary indexDictionnary) public virtual string ToSTEP(ref Dictionary indexDictionnary) { - return string.Format("#{0} = {1}({2});\r\n", + return string.Format("{0} = {1}({2});\r\n", STEPValue(ref indexDictionnary), this.GetType().Name.ToUpper(), this.STEPParameters(ref indexDictionnary)); @@ -54,7 +54,7 @@ public virtual string STEPValue(ref Dictionary indexDictionnary) if (indexDictionnary.Count == 0) { indexDictionnary.Add(Id, 1); - return "1"; + return "#1"; } int index = indexDictionnary.Values.Last() + 1; indexDictionnary.Add(Id, index); @@ -85,13 +85,7 @@ public static implicit operator IfcType(T value) { return new IfcType(value); } - - public override string STEPValue(ref Dictionary indexDictionnary) - { - return Value.ToString(); - } - - } + } /// /// http://www.buildingsmart-tech.org/ifc/IFC4/final/html/link/ifcabsorbeddosemeasure.htm @@ -114,6 +108,12 @@ public static IfcAbsorbedDoseMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -137,6 +137,12 @@ public static IfcAccelerationMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -160,6 +166,12 @@ public static IfcAmountOfSubstanceMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -183,6 +195,12 @@ public static IfcAngularVelocityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -206,6 +224,12 @@ public static IfcAreaDensityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -229,6 +253,12 @@ public static IfcAreaMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -252,6 +282,12 @@ public static IfcBoolean FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -275,6 +311,12 @@ public static IfcBoxAlignment FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -298,6 +340,12 @@ public static IfcCardinalPointReference FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -321,6 +369,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()) + ")"; + } + } /// @@ -344,6 +404,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()) + ")"; + } + } /// @@ -367,6 +439,12 @@ public static IfcContextDependentMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -390,6 +468,12 @@ public static IfcCountMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -413,6 +497,12 @@ public static IfcCurvatureMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -436,6 +526,12 @@ public static IfcDate FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -459,6 +555,12 @@ public static IfcDateTime FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -482,6 +584,12 @@ public static IfcDayInMonthNumber FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -505,6 +613,12 @@ public static IfcDayInWeekNumber FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -528,6 +642,12 @@ public static IfcDescriptiveMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -551,6 +671,12 @@ public static IfcDimensionCount FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -574,6 +700,12 @@ public static IfcDoseEquivalentMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -597,6 +729,12 @@ public static IfcDuration FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -620,6 +758,12 @@ public static IfcDynamicViscosityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -643,6 +787,12 @@ public static IfcElectricCapacitanceMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -666,6 +816,12 @@ public static IfcElectricChargeMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -689,6 +845,12 @@ public static IfcElectricConductanceMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -712,6 +874,12 @@ public static IfcElectricCurrentMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -735,6 +903,12 @@ public static IfcElectricResistanceMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -758,6 +932,12 @@ public static IfcElectricVoltageMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -781,6 +961,12 @@ public static IfcEnergyMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -804,6 +990,12 @@ public static IfcFontStyle FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -827,6 +1019,12 @@ public static IfcFontVariant FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -850,6 +1048,12 @@ public static IfcFontWeight FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -873,6 +1077,12 @@ public static IfcForceMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -896,6 +1106,12 @@ public static IfcFrequencyMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -919,6 +1135,12 @@ public static IfcGloballyUniqueId FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -942,6 +1164,12 @@ public static IfcHeatFluxDensityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -965,6 +1193,12 @@ public static IfcHeatingValueMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -988,6 +1222,12 @@ public static IfcIdentifier FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1011,6 +1251,12 @@ public static IfcIlluminanceMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1034,6 +1280,12 @@ public static IfcInductanceMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1057,6 +1309,12 @@ public static IfcInteger FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1080,6 +1338,12 @@ public static IfcIntegerCountRateMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1103,6 +1367,12 @@ public static IfcIonConcentrationMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1126,6 +1396,12 @@ public static IfcIsothermalMoistureCapacityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1149,6 +1425,12 @@ public static IfcKinematicViscosityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1172,6 +1454,12 @@ public static IfcLabel FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1195,6 +1483,12 @@ public static IfcLanguageId FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1218,10 +1512,16 @@ public static IfcLengthMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } - } - /// - /// http://www.buildingsmart-tech.org/ifc/IFC4/final/html/link/ifclinearforcemeasure.htm + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + + } + + /// + /// http://www.buildingsmart-tech.org/ifc/IFC4/final/html/link/ifclinearforcemeasure.htm /// public class IfcLinearForceMeasure : IfcType { @@ -1241,6 +1541,12 @@ public static IfcLinearForceMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1264,6 +1570,12 @@ public static IfcLinearMomentMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1287,6 +1599,12 @@ public static IfcLinearStiffnessMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1310,6 +1628,12 @@ public static IfcLinearVelocityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1333,6 +1657,12 @@ public static IfcLogical FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1356,6 +1686,12 @@ public static IfcLuminousFluxMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1379,6 +1715,12 @@ public static IfcLuminousIntensityDistributionMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1402,6 +1744,12 @@ public static IfcLuminousIntensityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1425,6 +1773,12 @@ public static IfcMagneticFluxDensityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1448,6 +1802,12 @@ public static IfcMagneticFluxMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1471,6 +1831,12 @@ public static IfcMassDensityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1494,6 +1860,12 @@ public static IfcMassFlowRateMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1517,6 +1889,12 @@ public static IfcMassMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1540,6 +1918,12 @@ public static IfcMassPerLengthMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1563,6 +1947,12 @@ public static IfcModulusOfElasticityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1586,6 +1976,12 @@ public static IfcModulusOfLinearSubgradeReactionMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1609,6 +2005,12 @@ public static IfcModulusOfRotationalSubgradeReactionMeasure FromJSON(string json { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1632,6 +2034,12 @@ public static IfcModulusOfSubgradeReactionMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1655,6 +2063,12 @@ public static IfcMoistureDiffusivityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1678,6 +2092,12 @@ public static IfcMolecularWeightMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1701,6 +2121,12 @@ public static IfcMomentOfInertiaMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1724,6 +2150,12 @@ public static IfcMonetaryMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1747,6 +2179,12 @@ public static IfcMonthInYearNumber FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1770,6 +2208,12 @@ public static IfcNonNegativeLengthMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1793,6 +2237,12 @@ public static IfcNormalisedRatioMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1816,6 +2266,12 @@ public static IfcNumericMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1839,6 +2295,12 @@ public static IfcPHMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1862,6 +2324,12 @@ public static IfcParameterValue FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1885,6 +2353,12 @@ public static IfcPlanarForceMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1908,6 +2382,12 @@ public static IfcPlaneAngleMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1931,6 +2411,12 @@ public static IfcPositiveLengthMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1954,6 +2440,12 @@ public static IfcPositivePlaneAngleMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -1977,6 +2469,12 @@ public static IfcPositiveRatioMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2000,6 +2498,12 @@ public static IfcPowerMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2023,6 +2527,12 @@ public static IfcPresentableText FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2046,6 +2556,12 @@ public static IfcPressureMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2069,6 +2585,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()) + ")"; + } + } /// @@ -2092,6 +2620,12 @@ public static IfcRadioActivityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2115,6 +2649,12 @@ public static IfcRatioMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2138,6 +2678,12 @@ public static IfcReal FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2161,6 +2707,12 @@ public static IfcRotationalFrequencyMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2184,6 +2736,12 @@ public static IfcRotationalMassMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2207,6 +2765,12 @@ public static IfcRotationalStiffnessMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2230,6 +2794,12 @@ public static IfcSectionModulusMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2253,6 +2823,12 @@ public static IfcSectionalAreaIntegralMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2276,6 +2852,12 @@ public static IfcShearModulusMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2299,6 +2881,12 @@ public static IfcSolidAngleMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2322,6 +2910,12 @@ public static IfcSoundPowerLevelMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2345,6 +2939,12 @@ public static IfcSoundPowerMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2368,7 +2968,13 @@ public static IfcSoundPressureLevelMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } - } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + + } /// /// http://www.buildingsmart-tech.org/ifc/IFC4/final/html/link/ifcsoundpressuremeasure.htm @@ -2391,6 +2997,12 @@ public static IfcSoundPressureMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2414,6 +3026,12 @@ public static IfcSpecificHeatCapacityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2437,6 +3055,12 @@ public static IfcSpecularExponent FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2460,6 +3084,12 @@ public static IfcSpecularRoughness FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2483,6 +3113,12 @@ public static IfcTemperatureGradientMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2506,6 +3142,12 @@ public static IfcTemperatureRateOfChangeMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2529,6 +3171,12 @@ public static IfcText FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2552,6 +3200,12 @@ public static IfcTextAlignment FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2575,6 +3229,12 @@ public static IfcTextDecoration FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2598,6 +3258,12 @@ public static IfcTextFontName FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2621,6 +3287,12 @@ public static IfcTextTransformation FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2644,6 +3316,12 @@ public static IfcThermalAdmittanceMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2667,6 +3345,12 @@ public static IfcThermalConductivityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2690,6 +3374,12 @@ public static IfcThermalExpansionCoefficientMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2713,6 +3403,12 @@ public static IfcThermalResistanceMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2736,6 +3432,12 @@ public static IfcThermalTransmittanceMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2759,6 +3461,12 @@ public static IfcThermodynamicTemperatureMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2782,6 +3490,12 @@ public static IfcTime FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2805,6 +3519,12 @@ public static IfcTimeMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2828,6 +3548,12 @@ public static IfcTimeStamp FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2851,6 +3577,12 @@ public static IfcTorqueMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2874,6 +3606,12 @@ public static IfcURIReference FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2897,6 +3635,12 @@ public static IfcVaporPermeabilityMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2920,6 +3664,12 @@ public static IfcVolumeMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2943,6 +3693,12 @@ public static IfcVolumetricFlowRateMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2966,6 +3722,12 @@ public static IfcWarpingConstantMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -2989,6 +3751,12 @@ public static IfcWarpingMomentMeasure FromJSON(string json) { return JsonConvert.DeserializeObject(json); } + + public override string STEPValue(ref Dictionary indexDictionnary) + { + return Value.STEPValue(ref indexDictionnary); + } + } /// @@ -5084,6 +5852,20 @@ 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()); + } } /// @@ -5113,6 +5895,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()); + } } /// @@ -5143,6 +5937,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()); + } } /// @@ -5172,6 +5978,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()); + } } /// @@ -5201,6 +6019,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()); + } } /// @@ -5235,6 +6065,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()); + } } /// @@ -5264,6 +6108,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()); + } } /// @@ -5290,6 +6146,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()); + } } /// @@ -5320,6 +6186,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()); + } } /// @@ -5346,6 +6224,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()); + } } /// @@ -5379,6 +6267,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()); + } } /// @@ -5408,7 +6310,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; @@ -5420,6 +6330,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()); + } } /// @@ -5447,24 +6375,73 @@ 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 partial class IfcAdvancedBrep : IfcManifoldSolidBrep + public override string 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()); + } + } + + /// + /// + /// + public partial class IfcAdvancedBrep : IfcManifoldSolidBrep { /// /// Construct a IfcAdvancedBrep with all required attributes. @@ -5478,6 +6455,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()); + } } /// @@ -5500,6 +6487,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()); + } } /// @@ -5522,6 +6521,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()); + } } /// @@ -5541,6 +6552,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()); + } } /// @@ -5565,6 +6586,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()); + } } /// @@ -5594,6 +6628,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()); + } } /// @@ -5620,6 +6666,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()); + } } /// @@ -5649,6 +6705,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()); + } } /// @@ -5675,6 +6743,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()); + } } /// @@ -5705,6 +6783,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()); + } } /// @@ -5731,6 +6821,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()); + } } /// @@ -5761,6 +6861,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()); + } } /// @@ -5787,6 +6899,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()); + } } /// @@ -5816,6 +6938,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()); + } } /// @@ -5842,6 +6976,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()); + } } /// @@ -5872,6 +7016,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()); + } } /// @@ -5898,6 +7054,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()); + } } /// @@ -5927,6 +7093,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()); + } } /// @@ -5957,6 +7135,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()); + } } /// @@ -5983,6 +7173,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()); + } } /// @@ -6014,6 +7214,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()); + } } /// @@ -6039,13 +7252,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()); + } } /// @@ -6065,6 +7299,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()); + } } /// @@ -6093,6 +7337,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()); + } } /// @@ -6133,13 +7392,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()); + } } /// @@ -6166,6 +7454,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()); + } } /// @@ -6211,6 +7509,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()); + } } /// @@ -6244,6 +7562,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()); + } } /// @@ -6275,6 +7606,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()); + } } /// @@ -6305,6 +7649,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()); + } } /// @@ -6335,6 +7691,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()); + } } /// @@ -6367,6 +7735,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()); + } } /// @@ -6397,6 +7778,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()); + } } /// @@ -6427,6 +7820,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()); + } } /// @@ -6472,6 +7877,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()); + } } /// @@ -6498,11 +7923,21 @@ 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()); + } + } + + /// + /// + /// public partial class IfcAsymmetricIShapeProfileDef : IfcParameterizedProfileDef { public IfcPositiveLengthMeasure BottomFlangeWidth{get;set;} @@ -6554,6 +7989,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()); + } } /// @@ -6583,6 +8041,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()); + } } /// @@ -6612,6 +8082,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()); + } } /// @@ -6642,6 +8124,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()); + } } /// @@ -6671,6 +8165,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()); + } } /// @@ -6693,6 +8199,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()); + } } /// @@ -6722,6 +8240,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()); + } } /// @@ -6753,6 +8283,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()); + } } /// @@ -6783,6 +8326,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()); + } } /// @@ -6809,6 +8368,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()); + } } /// @@ -6828,6 +8401,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()); + } } /// @@ -6850,6 +8433,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()); + } } /// @@ -6884,6 +8479,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()); + } } /// @@ -6914,6 +8527,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()); + } } /// @@ -6933,6 +8562,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()); + } } /// @@ -6955,6 +8594,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()); + } } /// @@ -6984,6 +8635,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()); + } } /// @@ -7010,6 +8673,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()); + } } /// @@ -7036,6 +8709,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()); + } } /// @@ -7066,6 +8749,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()); + } } /// @@ -7092,6 +8787,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()); + } } /// @@ -7125,6 +8830,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()); + } } /// @@ -7157,13 +8875,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()); + } } /// @@ -7190,6 +8932,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()); + } } /// @@ -7212,6 +8968,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()); + } } /// @@ -7241,6 +9009,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()); + } } /// @@ -7271,6 +9051,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()); + } } /// @@ -7290,6 +9082,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()); + } } /// @@ -7316,6 +9118,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()); + } } /// @@ -7345,6 +9161,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()); + } } /// @@ -7384,6 +9212,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()); + } } /// @@ -7417,6 +9262,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()); + } } /// @@ -7456,6 +9315,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()); + } } /// @@ -7475,6 +9351,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()); + } } /// @@ -7494,6 +9380,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()); + } } /// @@ -7513,6 +9409,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()); + } } /// @@ -7542,7 +9448,19 @@ 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()); + } + } /// /// @@ -7566,6 +9484,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()); + } } /// @@ -7588,7 +9519,19 @@ 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()); + } + } /// /// @@ -7618,6 +9561,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()); + } } /// @@ -7637,6 +9596,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()); + } } /// @@ -7663,6 +9632,20 @@ 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()); + } } /// @@ -7689,6 +9672,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()); + } } /// @@ -7723,6 +9720,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()); + } } /// @@ -7742,6 +9757,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()); + } } /// @@ -7770,6 +9795,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()); + } } /// @@ -7792,6 +9832,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()); + } } /// @@ -7816,6 +9868,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()); + } } /// @@ -7849,6 +9914,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()); + } } /// @@ -7878,6 +9957,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()); + } } /// @@ -7907,6 +9998,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()); + } } /// @@ -7936,6 +10039,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()); + } } /// @@ -7965,6 +10080,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()); + } } /// @@ -7994,6 +10121,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()); + } } /// @@ -8023,6 +10162,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()); + } } /// @@ -8060,6 +10211,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()); + } } /// @@ -8089,6 +10256,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()); + } } /// @@ -8118,6 +10297,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()); + } } /// @@ -8149,6 +10340,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()); + } } /// @@ -8178,6 +10382,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()); + } } /// @@ -8207,6 +10423,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()); + } } /// @@ -8236,6 +10464,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()); + } } /// @@ -8265,6 +10505,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()); + } } /// @@ -8294,6 +10546,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()); + } } /// @@ -8323,6 +10587,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()); + } } /// @@ -8352,6 +10628,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()); + } } /// @@ -8381,6 +10669,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()); + } } /// @@ -8418,6 +10718,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()); + } } /// @@ -8447,6 +10763,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()); + } } /// @@ -8484,6 +10812,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()); + } } /// @@ -8513,6 +10857,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()); + } } /// @@ -8542,6 +10898,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()); + } } /// @@ -8568,12 +10936,22 @@ public IfcElementComponent(IfcGloballyUniqueId globalId,IfcOwnerHistory ownerHis { return JsonConvert.DeserializeObject(json); } - } - /// - /// - /// - public partial class IfcBuildingElementPartType : IfcElementComponentType + public 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()); + } + } + + /// + /// + /// + public partial class IfcBuildingElementPartType : IfcElementComponentType { public IfcBuildingElementPartTypeEnum PredefinedType{get;set;} @@ -8598,6 +10976,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()); + } } /// @@ -8624,6 +11014,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()); + } } /// @@ -8654,6 +11054,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()); + } } /// @@ -8684,6 +11096,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()); + } } /// @@ -8714,6 +11138,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()); + } } /// @@ -8744,6 +11180,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()); + } } /// @@ -8774,6 +11222,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()); + } } /// @@ -8811,6 +11271,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()); + } } /// @@ -8841,6 +11316,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()); + } } /// @@ -8871,6 +11358,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()); + } } /// @@ -8901,6 +11400,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()); + } } /// @@ -8931,6 +11442,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()); + } } /// @@ -8961,6 +11484,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()); + } } /// @@ -8991,6 +11526,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()); + } } /// @@ -9021,6 +11568,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()); + } } /// @@ -9051,6 +11610,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()); + } } /// @@ -9081,6 +11652,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()); + } } /// @@ -9111,6 +11694,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()); + } } /// @@ -9141,6 +11736,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()); + } } /// @@ -9171,6 +11778,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()); + } } /// @@ -9201,6 +11820,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()); + } } /// @@ -9238,6 +11869,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()); + } } /// @@ -9267,6 +11913,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()); + } } /// @@ -9296,6 +11954,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()); + } } /// @@ -9325,6 +11995,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()); + } } /// @@ -9351,6 +12033,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()); + } } /// @@ -9380,6 +12072,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()); + } } /// @@ -9410,6 +12114,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()); + } } /// @@ -9451,6 +12167,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()); + } } /// @@ -9480,6 +12212,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()); + } } /// @@ -9506,6 +12250,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()); + } } /// @@ -9536,6 +12290,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()); + } } /// @@ -9562,6 +12328,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()); + } } /// @@ -9591,6 +12367,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()); + } } /// @@ -9617,6 +12405,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()); + } } /// @@ -9647,12 +12445,24 @@ public IfcCableCarrierSegmentType(IfcGloballyUniqueId globalId,IfcOwnerHistory o { return JsonConvert.DeserializeObject(json); } - } - /// - /// - /// - public abstract partial class IfcFlowSegmentType : IfcDistributionFlowElementType + public override string 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()); + } + } + + /// + /// + /// + public abstract partial class IfcFlowSegmentType : IfcDistributionFlowElementType { /// /// Construct a IfcFlowSegmentType with all required attributes. @@ -9673,6 +12483,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()); + } } /// @@ -9702,6 +12522,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()); + } } /// @@ -9732,6 +12564,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()); + } } /// @@ -9761,6 +12605,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()); + } } /// @@ -9791,6 +12647,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()); + } } /// @@ -9813,6 +12681,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()); + } } /// @@ -9832,6 +12712,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()); + } } /// @@ -9851,6 +12741,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()); + } } /// @@ -9873,6 +12773,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()); + } } /// @@ -9909,6 +12821,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()); + } } /// @@ -9935,6 +12862,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()); + } } /// @@ -9964,6 +12901,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()); + } } /// @@ -9993,6 +12942,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()); + } } /// @@ -10024,6 +12985,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()); + } } /// @@ -10053,6 +13027,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()); + } } /// @@ -10083,6 +13069,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()); + } } /// @@ -10105,6 +13103,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()); + } } /// @@ -10127,6 +13137,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()); + } } /// @@ -10157,6 +13179,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()); + } } /// @@ -10187,6 +13221,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()); + } } /// @@ -10213,6 +13259,16 @@ 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()); + } } /// @@ -10239,6 +13295,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()); + } } /// @@ -10274,13 +13340,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()); + } } /// @@ -10300,6 +13392,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()); + } } /// @@ -10333,6 +13435,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()); + } } /// @@ -10366,6 +13482,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()); + } } /// @@ -10385,6 +13515,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()); + } } /// @@ -10407,6 +13547,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()); + } } /// @@ -10436,6 +13588,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()); + } } /// @@ -10466,6 +13630,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()); + } } /// @@ -10502,6 +13678,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()); + } } /// @@ -10531,6 +13721,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()); + } } /// @@ -10553,6 +13755,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()); + } } /// @@ -10572,6 +13786,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()); + } } /// @@ -10598,6 +13822,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()); + } } /// @@ -10627,12 +13861,24 @@ public IfcCommunicationsAppliance(IfcGloballyUniqueId globalId,IfcOwnerHistory o { return JsonConvert.DeserializeObject(json); } - } - /// - /// - /// - public partial class IfcCommunicationsApplianceType : IfcFlowTerminalType + public override string 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()); + } + } + + /// + /// + /// + public partial class IfcCommunicationsApplianceType : IfcFlowTerminalType { public IfcCommunicationsApplianceTypeEnum PredefinedType{get;set;} @@ -10657,6 +13903,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()); + } } /// @@ -10690,6 +13948,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()); + } } /// @@ -10722,6 +13993,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()); + } } /// @@ -10748,13 +14032,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()); + } } /// @@ -10781,6 +14087,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()); + } } /// @@ -10807,6 +14123,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()); + } } /// @@ -10829,6 +14159,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()); + } } /// @@ -10861,6 +14203,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()); + } } /// @@ -10890,6 +14245,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()); + } } /// @@ -10916,6 +14283,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()); + } } /// @@ -10946,6 +14323,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()); + } } /// @@ -10972,6 +14361,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()); + } } /// @@ -11001,6 +14400,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()); + } } /// @@ -11031,6 +14442,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()); + } } /// @@ -11055,6 +14478,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()); + } } /// @@ -11074,6 +14510,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()); + } } /// @@ -11093,6 +14539,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()); + } } /// @@ -11125,6 +14581,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()); + } } /// @@ -11144,6 +14613,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()); + } } /// @@ -11176,6 +14655,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()); + } } /// @@ -11208,6 +14700,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()); + } } /// @@ -11240,6 +14745,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()); + } } /// @@ -11273,6 +14791,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()); + } } /// @@ -11316,6 +14848,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()); + } } /// @@ -11353,6 +14903,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()); + } } /// @@ -11379,7 +14944,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; @@ -11389,6 +14962,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()); + } } /// @@ -11418,6 +15006,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()); + } } /// @@ -11443,7 +15043,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; } @@ -11451,6 +15059,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()); + } } /// @@ -11481,6 +15103,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()); + } } /// @@ -11504,7 +15138,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; } @@ -11512,6 +15154,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()); + } } /// @@ -11541,6 +15196,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()); + } } /// @@ -11571,6 +15238,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()); + } } /// @@ -11600,11 +15279,23 @@ 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()); + } + } + + /// + /// + /// public partial class IfcConstructionProductResourceType : IfcConstructionResourceType { public IfcConstructionProductResourceTypeEnum PredefinedType{get;set;} @@ -11630,6 +15321,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()); + } } /// @@ -11659,6 +15362,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()); + } } /// @@ -11688,6 +15403,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()); + } } /// @@ -11717,6 +15444,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()); + } } /// @@ -11748,6 +15487,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()); + } } /// @@ -11778,6 +15530,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()); + } } /// @@ -11808,6 +15572,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()); + } } /// @@ -11838,6 +15614,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()); + } } /// @@ -11871,6 +15659,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()); + } } /// @@ -11900,7 +15702,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; } @@ -11908,6 +15718,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()); + } } /// @@ -11934,6 +15760,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()); + } } /// @@ -11960,6 +15796,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()); + } } /// @@ -11986,6 +15832,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()); + } } /// @@ -12008,6 +15864,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()); + } } /// @@ -12032,6 +15900,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()); + } } /// @@ -12057,14 +15938,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()); + } } /// @@ -12100,6 +16011,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()); + } } /// @@ -12132,6 +16058,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()); + } } /// @@ -12165,6 +16104,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()); + } } /// @@ -12198,6 +16151,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()); + } } /// @@ -12222,8 +16189,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; } @@ -12231,6 +16214,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()); + } } /// @@ -12262,7 +16259,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; @@ -12274,6 +16279,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()); + } } /// @@ -12303,6 +16326,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()); + } } /// @@ -12333,6 +16368,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()); + } } /// @@ -12357,6 +16404,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()); + } } /// @@ -12379,6 +16439,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()); + } } /// @@ -12408,6 +16480,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()); + } } /// @@ -12438,6 +16522,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()); + } } /// @@ -12467,6 +16563,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()); + } } /// @@ -12497,6 +16605,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()); + } } /// @@ -12521,6 +16641,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()); + } } /// @@ -12563,6 +16696,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()); + } } /// @@ -12599,6 +16749,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()); + } } /// @@ -12632,6 +16797,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()); + } } /// @@ -12658,6 +16837,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()); + } } /// @@ -12682,6 +16875,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()); + } } /// @@ -12706,6 +16912,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()); + } } /// @@ -12728,6 +16947,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()); + } } /// @@ -12750,6 +16981,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()); + } } /// @@ -12769,6 +17012,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()); + } } /// @@ -12809,6 +17062,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()); + } } /// @@ -12833,6 +17102,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()); + } } /// @@ -12859,6 +17141,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()); + } } /// @@ -12882,11 +17178,26 @@ public IfcOffsetCurve3D(IfcCurve basisCurve,IfcLengthMeasure distance,bool? self SelfIntersect = selfIntersect; RefDirection = refDirection; - } - public static new IfcOffsetCurve3D FromJSON(string json) - { - return JsonConvert.DeserializeObject(json); - } + } + public static new IfcOffsetCurve3D 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(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()); + } } /// @@ -12911,6 +17222,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()); + } } /// @@ -12946,6 +17270,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()); + } } /// @@ -12975,6 +17314,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()); + } } /// @@ -13007,6 +17358,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()); + } } /// @@ -13042,6 +17406,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()); + } } /// @@ -13066,6 +17444,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()); + } } /// @@ -13088,6 +17479,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()); + } } /// @@ -13110,6 +17513,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()); + } } /// @@ -13139,6 +17554,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()); + } } /// @@ -13169,6 +17596,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()); + } } /// @@ -13204,6 +17643,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()); + } } /// @@ -13230,6 +17683,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()); + } } /// @@ -13265,6 +17728,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()); + } } /// @@ -13289,6 +17766,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()); + } } /// @@ -13323,6 +17813,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()); + } } /// @@ -13345,6 +17853,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()); + } } /// @@ -13374,6 +17894,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()); + } } /// @@ -13404,6 +17936,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()); + } } /// @@ -13433,6 +17977,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()); + } } /// @@ -13459,6 +18015,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()); + } } /// @@ -13489,6 +18055,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()); + } } /// @@ -13515,6 +18093,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()); + } } /// @@ -13541,6 +18129,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()); + } } /// @@ -13572,6 +18170,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()); + } } /// @@ -13601,6 +18212,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()); + } } /// @@ -13630,6 +18253,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()); + } } /// @@ -13659,6 +18294,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()); + } } /// @@ -13688,6 +18335,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()); + } } /// @@ -13714,6 +18373,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()); + } } /// @@ -13744,6 +18413,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()); + } } /// @@ -13774,6 +18455,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()); + } } /// @@ -13804,6 +18497,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()); + } } /// @@ -13834,6 +18539,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()); + } } /// @@ -13860,6 +18577,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()); + } } /// @@ -13886,6 +18613,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()); + } } /// @@ -13912,6 +18649,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()); + } } /// @@ -13938,6 +18685,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()); + } } /// @@ -13964,6 +18721,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()); + } } /// @@ -13997,6 +18764,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()); + } } /// @@ -14023,6 +18804,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()); + } } /// @@ -14072,7 +18863,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; @@ -14086,6 +18885,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()); + } } /// @@ -14121,6 +18948,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()); + } } /// @@ -14152,6 +18993,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()); + } } /// @@ -14178,6 +19032,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()); + } } /// @@ -14231,6 +19095,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()); + } } /// @@ -14257,6 +19145,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()); + } } /// @@ -14296,6 +19194,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()); + } } /// @@ -14335,6 +19249,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()); + } } /// @@ -14358,7 +19287,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; } @@ -14366,6 +19303,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()); + } } /// @@ -14385,6 +19335,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()); + } } /// @@ -14404,6 +19364,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()); + } } /// @@ -14423,6 +19393,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()); + } } /// @@ -14442,6 +19422,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()); + } } /// @@ -14471,6 +19461,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()); + } } /// @@ -14501,6 +19503,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()); + } } /// @@ -14530,6 +19544,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()); + } } /// @@ -14560,6 +19586,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()); + } } /// @@ -14589,6 +19627,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()); + } } /// @@ -14619,6 +19669,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()); + } } /// @@ -14643,6 +19705,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()); + } } /// @@ -14667,6 +19742,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()); + } } /// @@ -14691,6 +19779,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()); + } } /// @@ -14713,6 +19814,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()); + } } /// @@ -14735,6 +19848,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()); + } } /// @@ -14754,6 +19879,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()); + } } /// @@ -14783,6 +19918,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()); + } } /// @@ -14813,6 +19960,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()); + } } /// @@ -14842,6 +20001,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()); + } } /// @@ -14872,6 +20043,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()); + } } /// @@ -14901,6 +20084,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()); + } } /// @@ -14931,6 +20126,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()); + } } /// @@ -14960,6 +20167,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()); + } } /// @@ -14990,6 +20209,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()); + } } /// @@ -15019,6 +20250,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()); + } } /// @@ -15049,6 +20292,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()); + } } /// @@ -15078,6 +20333,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()); + } } /// @@ -15108,6 +20375,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()); + } } /// @@ -15139,6 +20418,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()); + } } /// @@ -15165,6 +20457,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()); + } } /// @@ -15191,6 +20493,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()); + } } /// @@ -15220,6 +20532,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()); + } } /// @@ -15249,6 +20573,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()); + } } /// @@ -15275,6 +20611,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()); + } } /// @@ -15305,6 +20651,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()); + } } /// @@ -15334,6 +20692,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()); + } } /// @@ -15367,6 +20737,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()); + } } /// @@ -15396,6 +20780,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()); + } } /// @@ -15425,6 +20821,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()); + } } /// @@ -15455,6 +20863,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()); + } } /// @@ -15489,6 +20909,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()); + } } /// @@ -15515,6 +20949,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()); + } } /// @@ -15545,6 +20989,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()); + } } /// @@ -15577,6 +21033,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()); + } } /// @@ -15603,6 +21072,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()); + } } /// @@ -15629,6 +21108,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()); + } } /// @@ -15659,6 +21148,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()); + } } /// @@ -15689,6 +21190,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()); + } } /// @@ -15708,6 +21221,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()); + } } /// @@ -15741,6 +21264,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()); + } } /// @@ -15770,6 +21306,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()); + } } /// @@ -15799,6 +21347,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()); + } } /// @@ -15828,6 +21388,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()); + } } /// @@ -15857,6 +21429,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()); + } } /// @@ -15886,6 +21470,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()); + } } /// @@ -15915,6 +21511,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()); + } } /// @@ -15944,6 +21552,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()); + } } /// @@ -15973,6 +21593,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()); + } } /// @@ -16002,6 +21634,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()); + } } /// @@ -16031,6 +21675,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()); + } } /// @@ -16061,6 +21717,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()); + } } /// @@ -16086,11 +21754,23 @@ public IfcEvaporativeCoolerType(IfcGloballyUniqueId globalId,IfcOwnerHistory own { PredefinedType = predefinedType; - } - public static new IfcEvaporativeCoolerType FromJSON(string json) - { - return JsonConvert.DeserializeObject(json); - } + } + public static new IfcEvaporativeCoolerType 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)); + + + return string.Join(", ", parameters.ToArray()); + } } /// @@ -16121,6 +21801,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()); + } } /// @@ -16151,6 +21843,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()); + } } /// @@ -16181,6 +21885,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()); + } } /// @@ -16211,6 +21927,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()); + } } /// @@ -16241,6 +21969,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()); + } } /// @@ -16271,6 +22011,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()); + } } /// @@ -16301,6 +22053,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()); + } } /// @@ -16331,6 +22095,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()); + } } /// @@ -16366,6 +22142,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()); + } } /// @@ -16397,6 +22188,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()); + } } /// @@ -16432,6 +22236,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()); + } } /// @@ -16465,6 +22284,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()); + } } /// @@ -16500,6 +22333,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()); + } } /// @@ -16533,6 +22380,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()); + } } /// @@ -16567,6 +22428,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()); + } } /// @@ -16597,6 +22472,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()); + } } /// @@ -16627,6 +22514,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()); + } } /// @@ -16646,6 +22545,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()); + } } /// @@ -16686,6 +22595,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()); + } } /// @@ -16712,6 +22638,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()); + } } /// @@ -16738,6 +22674,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()); + } } /// @@ -16764,6 +22710,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()); + } } /// @@ -16797,6 +22753,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()); + } } /// @@ -16830,6 +22800,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()); + } } /// @@ -16859,6 +22842,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()); + } } /// @@ -16885,6 +22880,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()); + } } /// @@ -16914,6 +22919,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()); + } } /// @@ -16947,6 +22964,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()); + } } /// @@ -16977,6 +23007,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()); + } } /// @@ -17009,6 +23051,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()); + } } /// @@ -17031,6 +23086,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()); + } } /// @@ -17053,6 +23120,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()); + } } /// @@ -17077,6 +23156,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()); + } } /// @@ -17096,6 +23188,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()); + } } /// @@ -17115,6 +23217,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()); + } } /// @@ -17137,6 +23249,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()); + } } /// @@ -17176,6 +23300,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()); + } } /// @@ -17205,6 +23346,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()); + } } /// @@ -17234,6 +23387,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()); + } } /// @@ -17264,6 +23429,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()); + } } /// @@ -17290,6 +23467,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()); + } } /// @@ -17316,6 +23503,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()); + } } /// @@ -17345,6 +23542,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()); + } } /// @@ -17374,6 +23583,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()); + } } /// @@ -17403,6 +23624,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()); + } } /// @@ -17432,6 +23665,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()); + } } /// @@ -17464,6 +23709,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()); + } } /// @@ -17504,6 +23762,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()); + } } /// @@ -17530,6 +23804,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()); + } } /// @@ -17559,6 +23847,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()); + } } /// @@ -17589,6 +23889,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()); + } } /// @@ -17618,6 +23930,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()); + } } /// @@ -17648,6 +23972,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()); + } } /// @@ -17685,6 +24021,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()); + } } /// @@ -17714,6 +24065,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()); + } } /// @@ -17743,6 +24106,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()); + } } /// @@ -17772,6 +24147,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()); + } } /// @@ -17801,6 +24188,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()); + } } /// @@ -17831,6 +24230,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()); + } } /// @@ -17861,6 +24272,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()); + } } /// @@ -17891,6 +24314,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()); + } } /// @@ -17921,6 +24356,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()); + } } /// @@ -17950,6 +24397,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()); + } } /// @@ -17979,6 +24438,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()); + } } /// @@ -18009,6 +24480,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()); + } } /// @@ -18039,6 +24522,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()); + } } /// @@ -18068,6 +24563,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()); + } } /// @@ -18098,6 +24605,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()); + } } /// @@ -18127,6 +24646,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()); + } } /// @@ -18157,6 +24688,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()); + } } /// @@ -18186,6 +24729,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()); + } } /// @@ -18216,6 +24771,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()); + } } /// @@ -18245,6 +24812,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()); + } } /// @@ -18274,6 +24853,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()); + } } /// @@ -18303,6 +24894,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()); + } } /// @@ -18332,6 +24935,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()); + } } /// @@ -18361,6 +24976,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()); + } } /// @@ -18390,6 +25017,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()); + } } /// @@ -18419,6 +25058,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()); + } } /// @@ -18448,6 +25099,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()); + } } /// @@ -18478,6 +25141,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()); + } } /// @@ -18508,6 +25183,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()); + } } /// @@ -18538,6 +25225,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()); + } } /// @@ -18568,6 +25267,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()); + } } /// @@ -18598,6 +25309,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()); + } } /// @@ -18628,6 +25351,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()); + } } /// @@ -18658,6 +25393,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()); + } } /// @@ -18688,6 +25435,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()); + } } /// @@ -18717,6 +25476,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()); + } } /// @@ -18747,6 +25518,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()); + } } /// @@ -18776,6 +25559,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()); + } } /// @@ -18805,6 +25600,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()); + } } /// @@ -18837,6 +25644,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()); + } } /// @@ -18866,6 +25686,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()); + } } /// @@ -18885,6 +25717,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()); + } } /// @@ -18907,6 +25749,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()); + } } /// @@ -18944,6 +25798,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()); + } } /// @@ -18981,6 +25850,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()); + } } /// @@ -19012,6 +25896,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()); + } } /// @@ -19048,6 +25945,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()); + } } /// @@ -19072,6 +25984,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()); + } } /// @@ -19098,6 +26023,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()); + } } /// @@ -19120,6 +26059,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()); + } } /// @@ -19139,6 +26090,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()); + } } /// @@ -19165,6 +26126,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()); + } } /// @@ -19189,6 +26164,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()); + } } /// @@ -19208,6 +26196,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()); + } } /// @@ -19237,7 +26235,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; } @@ -19245,6 +26251,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()); + } } /// @@ -19280,6 +26301,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()); + } } /// @@ -19312,6 +26347,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()); + } } /// @@ -19331,6 +26379,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()); + } } /// @@ -19360,7 +26418,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; @@ -19370,6 +26436,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()); + } } /// @@ -19410,6 +26493,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()); + } } /// @@ -19445,6 +26544,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()); + } } /// @@ -19469,6 +26582,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()); + } } /// @@ -19514,6 +26640,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()); + } } /// @@ -19544,6 +26688,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()); + } } /// @@ -19582,6 +26738,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()); + } } /// @@ -19606,6 +26777,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()); + } } /// @@ -19628,13 +26812,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()); + } } /// @@ -19657,6 +26861,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()); + } } /// @@ -19687,6 +26903,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()); + } } /// @@ -19735,6 +26963,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()); + } } /// @@ -19759,6 +27006,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()); + } } /// @@ -19800,6 +27060,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()); + } } /// @@ -19833,6 +27110,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()); + } } /// @@ -19859,6 +27149,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()); + } } /// @@ -19883,6 +27187,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()); + } } /// @@ -19909,6 +27226,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()); + } } /// @@ -19939,6 +27266,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()); + } } /// @@ -19983,6 +27322,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()); + } } /// @@ -20025,6 +27381,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()); + } } /// @@ -20063,6 +27435,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()); + } } /// @@ -20095,6 +27482,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()); + } } /// @@ -20117,6 +27517,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()); + } } /// @@ -20139,6 +27551,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()); + } } /// @@ -20163,6 +27587,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()); + } } /// @@ -20197,6 +27634,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()); + } } /// @@ -20216,6 +27667,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()); + } } /// @@ -20240,6 +27701,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()); + } } /// @@ -20278,6 +27752,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()); + } } /// @@ -20304,13 +27794,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()); + } } /// @@ -20353,6 +27865,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()); + } } /// @@ -20387,6 +27917,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()); + } } /// @@ -20427,6 +27971,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()); + } } /// @@ -20463,6 +28024,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()); + } } /// @@ -20493,6 +28069,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()); + } } /// @@ -20527,6 +28115,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()); + } } /// @@ -20560,6 +28162,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()); + } } /// @@ -20601,6 +28216,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()); + } } /// @@ -20620,6 +28251,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()); + } } /// @@ -20642,6 +28283,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()); + } } /// @@ -20672,6 +28325,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()); + } } /// @@ -20706,6 +28371,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()); + } } /// @@ -20738,6 +28417,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()); + } } /// @@ -20773,6 +28465,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()); + } } /// @@ -20797,6 +28503,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()); + } } /// @@ -20823,6 +28542,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()); + } } /// @@ -20845,6 +28574,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()); + } } /// @@ -20877,6 +28618,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()); + } } /// @@ -20901,13 +28655,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()); + } } /// @@ -20947,17 +28722,19 @@ public static IfcRoot FromJSON(string json) public override string STEPParameters(ref Dictionary indexDictionnary) { - List parameters = new List(); + 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) : "$"); + 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()); + + return string.Join(", ", parameters.ToArray()); } - } + } /// /// @@ -20983,6 +28760,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()); + } } /// @@ -21013,14 +28800,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()); + } } /// @@ -21054,6 +28873,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()); + } } /// @@ -21100,6 +28932,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()); + } } /// @@ -21133,6 +28984,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()); + } } /// @@ -21182,6 +29046,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()); + } } /// @@ -21221,6 +29105,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()); + } } /// @@ -21266,6 +29165,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()); + } } /// @@ -21309,6 +29226,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()); + } } /// @@ -21331,6 +29265,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()); + } } /// @@ -21370,6 +29316,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()); + } } /// @@ -21402,17 +29364,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()); + } } /// @@ -21441,13 +29462,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()); + } } /// @@ -21485,6 +29528,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()); + } } /// @@ -21517,6 +29575,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()); + } } /// @@ -21546,6 +29617,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()); + } } /// @@ -21578,6 +29661,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()); + } } /// @@ -21610,6 +29706,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()); + } } /// @@ -21642,6 +29751,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()); + } } /// @@ -21674,6 +29796,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()); + } } /// @@ -21706,6 +29841,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()); + } } /// @@ -21738,6 +29886,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()); + } } /// @@ -21777,6 +29938,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()); + } } /// @@ -21799,6 +29975,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()); + } } /// @@ -21825,6 +30013,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()); + } } /// @@ -21849,6 +30047,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()); + } } /// @@ -21875,6 +30086,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()); + } } /// @@ -21897,6 +30122,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()); + } } /// @@ -21916,6 +30153,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()); + } } /// @@ -21935,6 +30182,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()); + } } /// @@ -21976,6 +30233,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()); + } } /// @@ -22011,6 +30285,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()); + } } /// @@ -22055,6 +30343,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()); + } } /// @@ -22087,6 +30392,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()); + } } /// @@ -22138,6 +30456,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()); + } } /// @@ -22177,6 +30518,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()); + } } /// @@ -22203,6 +30560,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()); + } } /// @@ -22242,6 +30609,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()); + } } /// @@ -22270,6 +30653,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()); + } } /// @@ -22301,6 +30699,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()); + } } /// @@ -22323,6 +30734,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()); + } } /// @@ -22345,6 +30768,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()); + } } /// @@ -22377,6 +30812,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()); + } } /// @@ -22418,6 +30866,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()); + } } /// @@ -22440,6 +30906,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()); + } } /// @@ -22462,6 +30940,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()); + } } /// @@ -22499,6 +30989,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()); + } } /// @@ -22538,6 +31043,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()); + } } /// @@ -22571,6 +31091,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()); + } } /// @@ -22607,6 +31140,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()); + } } /// @@ -22629,6 +31177,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()); + } } /// @@ -22658,6 +31218,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()); + } } /// @@ -22688,6 +31260,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()); + } } /// @@ -22728,6 +31312,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()); + } } /// @@ -22760,6 +31361,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()); + } } /// @@ -22793,6 +31407,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()); + } } /// @@ -22819,6 +31446,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()); + } } /// @@ -22845,6 +31482,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()); + } } /// @@ -22871,6 +31518,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()); + } } /// @@ -22906,6 +31563,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()); + } } /// @@ -22941,6 +31612,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()); + } } /// @@ -22967,6 +31653,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()); + } } /// @@ -22993,6 +31689,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()); + } } /// @@ -23028,6 +31734,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()); + } } /// @@ -23051,7 +31771,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; } @@ -23059,6 +31787,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()); + } } /// @@ -23082,7 +31823,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; } @@ -23090,6 +31839,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()); + } } /// @@ -23121,6 +31883,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()); + } } /// @@ -23151,6 +31926,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()); + } } /// @@ -23185,6 +31972,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()); + } } /// @@ -23216,6 +32017,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()); + } } /// @@ -23243,8 +32057,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; @@ -23255,6 +32085,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()); + } } /// @@ -23298,6 +32145,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()); + } } /// @@ -23332,6 +32198,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()); + } } /// @@ -23362,6 +32242,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()); + } } /// @@ -23393,19 +32285,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()); + } } /// @@ -23435,7 +32378,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; } @@ -23443,6 +32394,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()); + } } /// @@ -23476,6 +32443,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()); + } } /// @@ -23513,6 +32493,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()); + } } /// @@ -23548,13 +32544,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()); + } } /// @@ -23600,6 +32622,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()); + } } /// @@ -23643,6 +32685,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()); + } } /// @@ -23672,6 +32733,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()); + } } /// @@ -23715,13 +32788,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()); + } } /// @@ -23752,6 +32855,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()); + } } /// @@ -23788,6 +32903,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()); + } } /// @@ -23821,6 +32951,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()); + } } /// @@ -23847,6 +32990,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()); + } } /// @@ -23879,6 +33032,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()); + } } /// @@ -23911,6 +33077,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()); + } } /// @@ -23941,6 +33120,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()); + } } /// @@ -23971,6 +33162,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()); + } } /// @@ -24003,6 +33206,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()); + } } /// @@ -24033,6 +33249,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()); + } } /// @@ -24063,6 +33291,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()); + } } /// @@ -24089,6 +33329,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()); + } } /// @@ -24119,6 +33369,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()); + } } /// @@ -24149,6 +33411,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()); + } } /// @@ -24179,6 +33453,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()); + } } /// @@ -24209,6 +33495,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()); + } } /// @@ -24241,6 +33539,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()); + } } /// @@ -24271,6 +33582,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()); + } } /// @@ -24301,6 +33624,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()); + } } /// @@ -24331,6 +33666,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()); + } } /// @@ -24357,6 +33704,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()); + } } /// @@ -24392,6 +33749,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()); + } } /// @@ -24425,6 +33796,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()); + } } /// @@ -24460,6 +33844,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()); + } } /// @@ -24493,6 +33891,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()); + } } /// @@ -24534,6 +33945,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()); + } } /// @@ -24567,6 +33995,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()); + } } /// @@ -24600,6 +34041,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()); + } } /// @@ -24633,6 +34087,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()); + } } /// @@ -24666,6 +34133,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()); + } } /// @@ -24699,6 +34179,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()); + } } /// @@ -24739,6 +34232,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()); + } } /// @@ -24772,6 +34281,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()); + } } /// @@ -24811,6 +34333,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()); + } } /// @@ -24844,6 +34382,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()); + } } /// @@ -24885,6 +34436,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()); + } } /// @@ -24924,6 +34491,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()); + } } /// @@ -24956,6 +34538,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()); + } } /// @@ -24986,6 +34581,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()); + } } /// @@ -25019,6 +34626,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()); + } } /// @@ -25052,6 +34672,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()); + } } /// @@ -25085,6 +34718,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()); + } } /// @@ -25118,6 +34764,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()); + } } /// @@ -25144,6 +34803,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()); + } } /// @@ -25177,6 +34846,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()); + } } /// @@ -25210,6 +34892,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()); + } } /// @@ -25243,6 +34938,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()); + } } /// @@ -25276,6 +34984,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()); + } } /// @@ -25305,6 +35026,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()); + } } /// @@ -25334,6 +35067,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()); + } } /// @@ -25371,6 +35116,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()); + } } /// @@ -25397,6 +35157,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()); + } } /// @@ -25423,6 +35193,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()); + } } /// @@ -25457,6 +35237,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()); + } } /// @@ -25481,6 +35275,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()); + } } /// @@ -25514,6 +35321,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()); + } } /// @@ -25547,6 +35367,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()); + } } /// @@ -25604,6 +35437,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()); + } } /// @@ -25637,6 +35496,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()); + } } /// @@ -25667,6 +35539,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()); + } } /// @@ -25728,6 +35612,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()); + } } /// @@ -25761,6 +35673,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()); + } } /// @@ -25800,6 +35726,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()); + } } /// @@ -25826,6 +35768,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()); + } } /// @@ -25852,6 +35804,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()); + } } /// @@ -25889,6 +35851,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()); + } } /// @@ -25915,6 +35893,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()); + } } /// @@ -25941,6 +35929,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()); + } } /// @@ -25974,6 +35972,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()); + } } /// @@ -26013,6 +36025,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()); + } } /// @@ -26044,6 +36072,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()); + } } /// @@ -26076,6 +36117,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()); + } } /// @@ -26102,6 +36156,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()); + } } /// @@ -26131,6 +36195,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()); + } } /// @@ -26160,6 +36236,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()); + } } /// @@ -26192,6 +36280,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()); + } } /// @@ -26221,6 +36322,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()); + } } /// @@ -26253,6 +36366,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()); + } } /// @@ -26279,6 +36405,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()); + } } /// @@ -26311,6 +36447,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()); + } } /// @@ -26337,6 +36486,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()); + } } /// @@ -26366,8 +36525,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; } @@ -26375,6 +36550,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()); + } } /// @@ -26404,6 +36595,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()); + } } /// @@ -26434,6 +36637,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()); + } } /// @@ -26463,6 +36678,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()); + } } /// @@ -26489,6 +36716,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()); + } } /// @@ -26515,6 +36752,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()); + } } /// @@ -26548,6 +36795,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()); + } } /// @@ -26574,6 +36834,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()); + } } /// @@ -26600,6 +36870,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()); + } } /// @@ -26630,6 +36910,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()); + } } /// @@ -26659,6 +36951,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()); + } } /// @@ -26684,13 +36988,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()); + } } /// @@ -26717,6 +37042,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()); + } } /// @@ -26739,13 +37074,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()); + } } /// @@ -26785,6 +37140,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()); + } } /// @@ -26811,6 +37183,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()); + } } /// @@ -26835,8 +37217,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; } @@ -26844,6 +37242,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()); + } } /// @@ -26877,6 +37289,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()); + } } /// @@ -26916,6 +37342,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()); + } } /// @@ -26945,6 +37388,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()); + } } /// @@ -26984,6 +37439,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()); + } } /// @@ -27013,6 +37485,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()); + } } /// @@ -27046,6 +37530,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()); + } } /// @@ -27078,6 +37576,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()); + } } /// @@ -27104,6 +37615,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()); + } } /// @@ -27130,6 +37651,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()); + } } /// @@ -27160,6 +37691,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()); + } } /// @@ -27186,6 +37729,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()); + } } /// @@ -27212,6 +37765,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()); + } } /// @@ -27244,6 +37807,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()); + } } /// @@ -27281,6 +37857,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()); + } } /// @@ -27314,6 +37905,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()); + } } /// @@ -27344,6 +37948,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()); + } } /// @@ -27388,6 +38004,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()); + } } /// @@ -27417,6 +38052,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()); + } } /// @@ -27446,6 +38093,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()); + } } /// @@ -27471,14 +38130,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()); + } } /// @@ -27516,6 +38205,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()); + } } /// @@ -27539,7 +38244,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; } @@ -27547,6 +38260,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()); + } } /// @@ -27577,6 +38303,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()); + } } /// @@ -27609,6 +38347,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()); + } } /// @@ -27635,7 +38386,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; } @@ -27643,6 +38402,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()); + } } /// @@ -27668,13 +38441,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()); + } } /// @@ -27699,6 +38493,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()); + } } /// @@ -27724,13 +38531,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()); + } } /// @@ -27755,6 +38583,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()); + } } /// @@ -27779,6 +38620,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()); + } } /// @@ -27801,6 +38655,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()); + } } /// @@ -27820,6 +38686,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()); + } } /// @@ -27859,6 +38735,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()); + } } /// @@ -27881,6 +38772,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()); + } } /// @@ -27903,6 +38806,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()); + } } /// @@ -27927,6 +38842,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()); + } } /// @@ -27953,6 +38881,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()); + } } /// @@ -27979,6 +38917,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()); + } } /// @@ -28005,6 +38953,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()); + } } /// @@ -28034,6 +38992,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()); + } } /// @@ -28063,5 +39033,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/STEPExtensions.cs b/src/IFC-dotnet/STEPExtensions.cs new file mode 100644 index 0000000..7849e82 --- /dev/null +++ b/src/IFC-dotnet/STEPExtensions.cs @@ -0,0 +1,240 @@ +using System; +using System.Collections.Generic; +using System.Text; +using IFC4; + +namespace STEPExtensions +{ + /// + /// 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 (int 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(); + } + } + + /// + /// 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/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"; From aa052546e7423f414f03c553052d49d32c008ad0 Mon Sep 17 00:00:00 2001 From: Simon Moreau Date: Sat, 18 Nov 2017 23:04:40 +0100 Subject: [PATCH 5/5] Debug GUID Make sure that Guids reflects STEP index --- src/IFC-dotnet/IFC.cs | 33 +++++++++---------- src/IFC-dotnet/Model.cs | 54 +++++++++++++++++++++++++------- src/IFC-dotnet/STEPExtensions.cs | 4 +-- 3 files changed, 61 insertions(+), 30 deletions(-) diff --git a/src/IFC-dotnet/IFC.cs b/src/IFC-dotnet/IFC.cs index e14df5d..5fe19a6 100755 --- a/src/IFC-dotnet/IFC.cs +++ b/src/IFC-dotnet/IFC.cs @@ -13,7 +13,7 @@ namespace IFC4 public abstract class BaseIfc { [JsonProperty("id")] - public Guid Id{get;set;} + public Guid Id{ get; set; } public BaseIfc() { @@ -45,21 +45,22 @@ public virtual string ToSTEP(ref Dictionary indexDictionnary) public virtual string STEPValue(ref Dictionary indexDictionnary) { - 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(); - } + 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(); + //} } } diff --git a/src/IFC-dotnet/Model.cs b/src/IFC-dotnet/Model.cs index 529afdb..20408b5 100644 --- a/src/IFC-dotnet/Model.cs +++ b/src/IFC-dotnet/Model.cs @@ -196,9 +196,19 @@ public string ToSTEP(string filePath) { string result = GetHeaderString(filePath) + "\r\n"; Dictionary indexDictionnary = new Dictionary(); + int stepIndex = 1; foreach (KeyValuePair instance in this.Instances) { - result = result + instance.Value.ToSTEP(ref indexDictionnary); + 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(); @@ -322,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--) { @@ -388,14 +398,16 @@ private static BaseIfc ConstructRecursive(STEP.InstanceData data, Dictionary baseIfcs, ref Dictionary indexDictionnary) { List values = new List(); - foreach (int baseIfc in baseIfcs) + foreach (double baseIfc in baseIfcs) { values.Add(baseIfc.STEPValue(ref indexDictionnary)); } @@ -222,7 +222,7 @@ public static class DoubleExtensions { public static string STEPValue(this double value, ref Dictionary indexDictionnary) { - return value.ToString(); + return value.ToString("G", new System.Globalization.CultureInfo("en-US")); } }