Serialization Improvements
This commit is contained in:
Родитель
27b0c3b962
Коммит
8b6a02b3d0
|
@ -53,24 +53,17 @@ namespace GeometryGym.Ifc
|
|||
public DatabaseIfc Database { get { return mDatabase; } private set { mDatabase = value; } }
|
||||
|
||||
#if (NOIFCJSON)
|
||||
public BaseClassIfc() : base() { }// this(new DatabaseIfc(false, ModelView.Ifc4NotAssigned)) { }
|
||||
public BaseClassIfc() : base() { }
|
||||
#else
|
||||
public BaseClassIfc() : base() { } // this(new DatabaseIfc(false, ModelView.Ifc4NotAssigned) { Format = FormatIfcSerialization.JSON }) { }
|
||||
public BaseClassIfc() : base() { }
|
||||
#endif
|
||||
protected BaseClassIfc(BaseClassIfc basis, bool replace) : base()
|
||||
{
|
||||
if (replace)
|
||||
basis.ReplaceDatabase(this);
|
||||
else
|
||||
basis.Database.appendObject(this);
|
||||
}
|
||||
protected BaseClassIfc(DatabaseIfc db, BaseClassIfc e) : base()
|
||||
{
|
||||
mGlobalId = e.mGlobalId;
|
||||
if (db != null)
|
||||
{
|
||||
db.appendObject(this);
|
||||
db.Factory.mDuplicateMapping.AddObject(e, mIndex);
|
||||
db.Factory.mDuplicateMapping.AddObject(e, mStepId);
|
||||
}
|
||||
}
|
||||
protected BaseClassIfc(DatabaseIfc db) : base()
|
||||
|
@ -315,9 +308,9 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
}
|
||||
}
|
||||
mDatabase[revised.mIndex] = null;
|
||||
revised.mIndex = mIndex;
|
||||
mDatabase[mIndex] = revised;
|
||||
mDatabase[revised.mStepId] = null;
|
||||
revised.mStepId = StepId;
|
||||
mDatabase[StepId] = revised;
|
||||
}
|
||||
|
||||
public bool Dispose(bool children)
|
||||
|
@ -330,7 +323,7 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
protected virtual bool DisposeWorker(bool children)
|
||||
{
|
||||
mDatabase[mIndex] = null;
|
||||
mDatabase[mStepId] = null;
|
||||
return true;
|
||||
}
|
||||
internal virtual List<IBaseClassIfc> retrieveReference(IfcReference reference) { return (reference.InnerReference != null ? null : new List<IBaseClassIfc>() { }); }
|
||||
|
@ -350,7 +343,9 @@ namespace GeometryGym.Ifc
|
|||
else if (string.Compare(className, "IfcOpeningStandardCase", true) == 0)
|
||||
className = "IfcOpeningElement";
|
||||
else
|
||||
{
|
||||
return null;
|
||||
}
|
||||
return STEPEntity.GetType(className, "Ifc");
|
||||
}
|
||||
public static BaseClassIfc Construct(string ifcClassName)
|
||||
|
@ -410,10 +405,9 @@ namespace GeometryGym.Ifc
|
|||
return constructor.Invoke(new object[] { }) as BaseClassIfc;
|
||||
}
|
||||
|
||||
internal static string identifyIfcClass(string className, out string predefinedConstant, out string enumName)
|
||||
internal static string identifyIfcClass(string className, out string predefinedConstant)
|
||||
{
|
||||
predefinedConstant = "";
|
||||
enumName = "";
|
||||
if (string.IsNullOrEmpty(className))
|
||||
return "";
|
||||
int index = className.IndexOf('.');
|
||||
|
@ -423,7 +417,6 @@ namespace GeometryGym.Ifc
|
|||
index = className.IndexOf('/');
|
||||
|
||||
string result = className;
|
||||
enumName = className;
|
||||
if (index > 0)
|
||||
{
|
||||
result = className.Substring(0, index);
|
||||
|
@ -431,7 +424,6 @@ namespace GeometryGym.Ifc
|
|||
index = remainder.IndexOf('(');
|
||||
if (index > 0)
|
||||
{
|
||||
enumName = remainder.Substring(0, index).Trim();
|
||||
int startIndex = remainder.IndexOf('.'), endIndex = remainder.IndexOf(')');
|
||||
if (startIndex < index)
|
||||
startIndex = index;
|
||||
|
@ -440,8 +432,6 @@ namespace GeometryGym.Ifc
|
|||
|
||||
predefinedConstant = remainder.Substring(startIndex + 1, endIndex - startIndex - 1).Trim();
|
||||
}
|
||||
else
|
||||
enumName = result;
|
||||
}
|
||||
|
||||
if (result.EndsWith("Type"))
|
||||
|
@ -449,11 +439,6 @@ namespace GeometryGym.Ifc
|
|||
else if (result.EndsWith("TypeEnum"))
|
||||
result = result.Substring(0, result.Length - 8);
|
||||
|
||||
string lowerEnumName = enumName.ToLower();
|
||||
if (lowerEnumName.EndsWith("type"))
|
||||
enumName = enumName + "Enum";
|
||||
else if (!lowerEnumName.EndsWith("typeenum"))
|
||||
enumName = enumName + "TypeEnum";
|
||||
return result;
|
||||
}
|
||||
|
||||
|
@ -476,7 +461,7 @@ namespace GeometryGym.Ifc
|
|||
return result;
|
||||
}
|
||||
|
||||
internal virtual bool isDuplicate(BaseClassIfc e) { return isDuplicate(e, mDatabase == null ? 1e-5 : mDatabase.Tolerance); }
|
||||
internal bool isDuplicate(BaseClassIfc e) { return isDuplicate(e, mDatabase == null ? 1e-5 : mDatabase.Tolerance); }
|
||||
// This method has only partial implementation within opensource project and
|
||||
// any use of it should be carefully checked.
|
||||
internal virtual bool isDuplicate(BaseClassIfc e, double tol) { return true; }
|
||||
|
|
|
@ -37,7 +37,7 @@ using System.Diagnostics;
|
|||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace GeometryGym.Ifc
|
||||
{
|
||||
{
|
||||
public enum ReleaseVersion
|
||||
{
|
||||
[Obsolete("Retired", false)] IFC2X,
|
||||
|
@ -125,19 +125,29 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
set
|
||||
{
|
||||
IfcRoot root = this[index] as IfcRoot;
|
||||
if (root != null)
|
||||
BaseClassIfc existing = this[index];
|
||||
if (existing != null)
|
||||
{
|
||||
BaseClassIfc obj = null;
|
||||
mDictionary.TryRemove(root.GlobalId, out obj);
|
||||
if (existing is IfcRoot existingRoot)
|
||||
{
|
||||
BaseClassIfc obj = null;
|
||||
mDictionary.TryRemove(existingRoot.GlobalId, out obj);
|
||||
}
|
||||
else if (existing is IfcClassificationReference existingClassificationReference)
|
||||
mClassificationReferences.Remove(existingClassificationReference);
|
||||
else if (existing is IfcClassification existingClassification)
|
||||
mClassifications.Add(existingClassification);
|
||||
}
|
||||
root = value as IfcRoot;
|
||||
if(root != null && !string.IsNullOrEmpty(root.GlobalId))
|
||||
if (value is IfcRoot root)
|
||||
{
|
||||
if (mDictionary.ContainsKey(root.GlobalId))
|
||||
root.Guid = Guid.NewGuid();
|
||||
mDictionary[root.GlobalId] = value;
|
||||
}
|
||||
else if (value is IfcClassificationReference classificationReference)
|
||||
mClassificationReferences.Add(classificationReference);
|
||||
else if (value is IfcClassification classification)
|
||||
mClassifications.Add(classification);
|
||||
|
||||
|
||||
base[index] = value;
|
||||
if(value != null)
|
||||
value.mDatabase = this;
|
||||
|
@ -239,6 +249,8 @@ namespace GeometryGym.Ifc
|
|||
internal IfcContext mContext = null;
|
||||
|
||||
internal ConcurrentDictionary<string, BaseClassIfc> mDictionary = new ConcurrentDictionary<string, BaseClassIfc>();
|
||||
internal HashSet<IfcClassificationReference> mClassificationReferences = new HashSet<IfcClassificationReference>();
|
||||
internal HashSet<IfcClassification> mClassifications = new HashSet<IfcClassification>();
|
||||
|
||||
private string viewDefinition { get { return (mModelView == ModelView.Ifc2x3Coordination ? "CoordinationView_V2" : (mModelView == ModelView.Ifc4Reference ? "ReferenceView_V1" : (mModelView == ModelView.Ifc4DesignTransfer ? "DesignTransferView_V1" : "notYetAssigned"))); } }
|
||||
|
||||
|
@ -456,7 +468,7 @@ namespace GeometryGym.Ifc
|
|||
|
||||
private string key(BaseClassIfc obj)
|
||||
{
|
||||
return (obj.mDatabase == null ? "" : obj.mDatabase.id + "|") + obj.mIndex;
|
||||
return (obj.mDatabase == null ? "" : obj.mDatabase.id + "|") + obj.mStepId;
|
||||
}
|
||||
internal bool Remove(BaseClassIfc obj)
|
||||
{
|
||||
|
@ -499,42 +511,31 @@ namespace GeometryGym.Ifc
|
|||
|
||||
internal IfcProduct ConstructProduct(string className, IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system)
|
||||
{
|
||||
string str = className, predefinedTypeConstant = "", enumName = "";
|
||||
string str = className, predefinedTypeConstant = "";
|
||||
ReleaseVersion release = mDatabase.Release;
|
||||
if (string.IsNullOrEmpty(str))
|
||||
return null;
|
||||
str = BaseClassIfc.identifyIfcClass(str, out predefinedTypeConstant, out enumName);
|
||||
str = BaseClassIfc.identifyIfcClass(str, out predefinedTypeConstant);
|
||||
Type type = BaseClassIfc.GetType(str);
|
||||
if (type == null)
|
||||
throw new Exception("XXX Unrecognized Ifc Type for " + className);
|
||||
if (release < ReleaseVersion.IFC4X3_RC1)
|
||||
VersionAddedAttribute versionAdded = type.GetCustomAttribute(typeof(VersionAddedAttribute)) as VersionAddedAttribute;
|
||||
if(versionAdded != null && (versionAdded.Release > release) && release != ReleaseVersion.IFC4X3_RC4)
|
||||
type = typeof(IfcBuildingElementProxy);
|
||||
else if (release < ReleaseVersion.IFC4X3_RC1)
|
||||
{
|
||||
if (string.Compare(str, "IfcBuiltElement", true) == 0)
|
||||
type = typeof(IfcBuildingElementProxy);
|
||||
else if (typeof(IfcCourse).IsAssignableFrom(type) || typeof(IfcEarthworksElement).IsAssignableFrom(type))
|
||||
type = typeof(IfcBuildingElementProxy);
|
||||
else if (typeof(IfcEarthworksCut).IsAssignableFrom(type) || typeof(IfcGeotechnicalStratum).IsAssignableFrom(type))
|
||||
type = typeof(IfcBuildingElementProxy);
|
||||
else if (typeof(IfcPavement).IsAssignableFrom(type))
|
||||
type = typeof(IfcBuildingElementProxy);
|
||||
else if (release < ReleaseVersion.IFC4X2)
|
||||
{
|
||||
if(typeof(IfcFacility).IsAssignableFrom(type) && !typeof(IfcBuilding).IsAssignableFrom(type))
|
||||
type = typeof(IfcSite);
|
||||
if (typeof(IfcFacilityPart).IsAssignableFrom(type))
|
||||
type = typeof(IfcSpace);
|
||||
else if (typeof(IfcBearing).IsAssignableFrom(type))
|
||||
type = typeof(IfcBuildingElementProxy);
|
||||
else if (typeof(IfcFacilityPart).IsAssignableFrom(type))
|
||||
type = host is IfcBuilding ? typeof(IfcSpace) : typeof(IfcSite);
|
||||
else if (release < ReleaseVersion.IFC4X1)
|
||||
{
|
||||
if (type != typeof(IfcBuilding) && typeof(IfcFacility).IsAssignableFrom(type))
|
||||
type = host is IfcBuilding ? typeof(IfcBuilding) : typeof(IfcSite);
|
||||
else if (release < ReleaseVersion.IFC4)
|
||||
{
|
||||
if (typeof(IfcShadingDevice).IsAssignableFrom(type) || typeof(IfcGeographicElement).IsAssignableFrom(type) ||
|
||||
typeof(IfcCivilElement).IsAssignableFrom(type))
|
||||
type = typeof(IfcBuildingElementProxy);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -551,17 +552,17 @@ namespace GeometryGym.Ifc
|
|||
product.ObjectType = className;
|
||||
else if (!string.IsNullOrEmpty(predefinedTypeConstant))
|
||||
{
|
||||
product.SetPredefinedType(predefinedTypeConstant, enumName);
|
||||
product.SetPredefinedType(predefinedTypeConstant);
|
||||
}
|
||||
return product;
|
||||
}
|
||||
internal IfcConstructionResource ConstructResource(string className)
|
||||
{
|
||||
string str = className, predefinedTypeConstant = "", enumName = "";
|
||||
string str = className, predefinedTypeConstant = "";
|
||||
ReleaseVersion release = mDatabase.Release;
|
||||
if (string.IsNullOrEmpty(str))
|
||||
return null;
|
||||
str = BaseClassIfc.identifyIfcClass(str, out predefinedTypeConstant, out enumName);
|
||||
str = BaseClassIfc.identifyIfcClass(str, out predefinedTypeConstant);
|
||||
Type type = BaseClassIfc.GetType(str);
|
||||
if (type == null)
|
||||
throw new Exception("XXX Unrecognized Ifc Type for " + className);
|
||||
|
@ -571,7 +572,7 @@ namespace GeometryGym.Ifc
|
|||
throw new Exception("XXX Unrecognized Ifc Constructor for " + className);
|
||||
if (!string.IsNullOrEmpty(predefinedTypeConstant))
|
||||
{
|
||||
resource.SetPredefinedType(predefinedTypeConstant, enumName);
|
||||
resource.SetPredefinedType(predefinedTypeConstant);
|
||||
}
|
||||
return resource;
|
||||
}
|
||||
|
@ -581,16 +582,16 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
IfcProduct product = null;
|
||||
ConstructorInfo constructor = getConstructor(type, new[] { typeof(DatabaseIfc) });
|
||||
if(constructor == null)
|
||||
{
|
||||
if(constructor != null)
|
||||
product = constructor.Invoke(new object[] { mDatabase }) as IfcProduct;
|
||||
else
|
||||
{
|
||||
constructor = getConstructor(type, new Type[] { });
|
||||
if (constructor == null)
|
||||
return null;
|
||||
product = constructor.Invoke(new object[] { }) as IfcProduct;
|
||||
mDatabase.appendObject(product);
|
||||
}
|
||||
else
|
||||
product = constructor.Invoke(new object[] { mDatabase }) as IfcProduct;
|
||||
|
||||
product.ObjectPlacement = placement;
|
||||
product.Representation = representation;
|
||||
|
@ -646,7 +647,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
return Duplicate<T>(entity, new DuplicateOptions(mDatabase.Tolerance) { DuplicateDownstream = true });
|
||||
}
|
||||
public void NominateDuplicate(IBaseClassIfc entity, IBaseClassIfc existingDuplicate) { mDuplicateMapping.AddObject(entity as BaseClassIfc, existingDuplicate.Index); }
|
||||
public void NominateDuplicate(IBaseClassIfc entity, IBaseClassIfc existingDuplicate) { mDuplicateMapping.AddObject(entity as BaseClassIfc, existingDuplicate.StepId); }
|
||||
public IfcAxis2Placement3D DuplicateAxis(IfcAxis2Placement3D placement, DuplicateOptions options)
|
||||
{
|
||||
if (placement == null)
|
||||
|
@ -662,21 +663,12 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
if (entity == null)
|
||||
return null;
|
||||
|
||||
BaseClassIfc obj = entity as BaseClassIfc;
|
||||
if (obj.Database != null && obj.Database.id == mDatabase.id)
|
||||
return entity;
|
||||
|
||||
T result = null;
|
||||
IfcClassification classification = entity as IfcClassification;
|
||||
if(classification != null)
|
||||
result = findExisting<IfcClassification>(classification) as T;
|
||||
else
|
||||
{
|
||||
IfcClassificationReference classificationReference = entity as IfcClassificationReference;
|
||||
if (classificationReference != null)
|
||||
result = findExisting<IfcClassificationReference>(classificationReference) as T;
|
||||
}
|
||||
if (result != null)
|
||||
return result;
|
||||
int index = mDuplicateMapping.FindExisting(obj);
|
||||
if (index > 0)
|
||||
{
|
||||
|
@ -684,6 +676,52 @@ namespace GeometryGym.Ifc
|
|||
if (result != null)
|
||||
return result;
|
||||
}
|
||||
|
||||
if(entity is IfcClassification classification)
|
||||
result = findExistingClassification(classification) as T;
|
||||
else if(entity is IfcClassificationReference classificationReference)
|
||||
result = findExistingClassificationReference(classificationReference) as T;
|
||||
else if (entity is IfcRelAssociatesClassification associatesClassification)
|
||||
{
|
||||
if(associatesClassification.RelatingClassification is IfcClassification ifcClassification)
|
||||
{
|
||||
IfcClassification existing = findExistingClassification(ifcClassification);
|
||||
if(existing != null)
|
||||
{
|
||||
result = existing.HasReferences.OfType<T>().FirstOrDefault();
|
||||
if (result != null)
|
||||
return result;
|
||||
}
|
||||
}
|
||||
else if (associatesClassification.RelatingClassification is IfcClassificationReference ifcClassificationReference)
|
||||
{
|
||||
IfcClassificationReference existing = findExistingClassificationReference(ifcClassificationReference);
|
||||
if(existing != null)
|
||||
{
|
||||
result = existing.HasReferences.OfType<T>().FirstOrDefault();
|
||||
if (result != null)
|
||||
return result;
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (entity is IfcRelAssignsToGroup assignsToGroup && assignsToGroup as IfcRelAssignsToGroupByFactor == null)
|
||||
{
|
||||
IfcGroup group = assignsToGroup.RelatingGroup;
|
||||
if(group != null)
|
||||
{
|
||||
IfcGroup existing = mDatabase[group.GlobalId] as IfcGroup;
|
||||
if(existing != null)
|
||||
{
|
||||
result = existing.IsGroupedBy.OfType<T>().FirstOrDefault();
|
||||
if (result != null)
|
||||
return result;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (result != null)
|
||||
return result;
|
||||
|
||||
if (!string.IsNullOrEmpty(obj.mGlobalId))
|
||||
{
|
||||
if (mDatabase.mDictionary.TryGetValue(obj.mGlobalId, out BaseClassIfc existing))
|
||||
|
@ -703,11 +741,29 @@ namespace GeometryGym.Ifc
|
|||
NominateDuplicate(entity, result);
|
||||
return result;
|
||||
}
|
||||
private IfcClassification findExistingClassification(IfcClassification classification)
|
||||
{
|
||||
foreach (IfcClassification c in mDatabase.mClassifications)
|
||||
{
|
||||
if (c.isDuplicate(classification, 1e-5))
|
||||
return c;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
private IfcClassificationReference findExistingClassificationReference(IfcClassificationReference classificationReference)
|
||||
{
|
||||
foreach(IfcClassificationReference r in mDatabase.mClassificationReferences)
|
||||
{
|
||||
if (r.isDuplicate(classificationReference, 1e-5))
|
||||
return r;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
private T findExisting<T>(T obj) where T : BaseClassIfc
|
||||
{
|
||||
foreach (T existing in mDatabase.OfType<T>())
|
||||
{
|
||||
if (existing.isDuplicate(obj, 1e-3))
|
||||
if (existing.isDuplicate(obj, 1e-5))
|
||||
{
|
||||
NominateDuplicate(obj, existing);
|
||||
return existing;
|
||||
|
@ -1390,7 +1446,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
if (mPerson == null)
|
||||
{
|
||||
mPerson = new IfcPerson(mDatabase, PersonName(), "", "");
|
||||
mPerson = new IfcPerson(mDatabase) { Identification = PersonName() };
|
||||
#if (IFCMODEL && !IFCIMPORTONLY && (RHINO || GH))
|
||||
string str = ggAssembly.mOptions.OwnerRole;
|
||||
if (!string.IsNullOrEmpty(str))
|
||||
|
@ -1488,14 +1544,28 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
if (revised.OwningUser.mDatabase == mDatabase)
|
||||
modifier = revised.OwningUser;
|
||||
else if (ownerHistory != null)
|
||||
{
|
||||
if (revised.OwningUser.isDuplicate(ownerHistory.OwningUser))
|
||||
modifier = Duplicate(ownerHistory.OwningUser);
|
||||
else
|
||||
modifier = Duplicate(revised.OwningUser);
|
||||
}
|
||||
else
|
||||
modifier = Duplicate(revised.OwningUser) as IfcPersonAndOrganization;
|
||||
modifier = Duplicate(revised.OwningUser);
|
||||
}
|
||||
IfcApplication application = null;
|
||||
if (revised == null)
|
||||
application = (action == IfcChangeActionEnum.ADDED ? null : Application);
|
||||
else if (ownerHistory != null)
|
||||
{
|
||||
if (revised.OwningApplication.isDuplicate(ownerHistory.OwningApplication))
|
||||
application = Duplicate(ownerHistory.OwningApplication);
|
||||
else
|
||||
application = Duplicate(revised.OwningApplication);
|
||||
}
|
||||
else
|
||||
application = revised.OwningApplication.mDatabase == mDatabase ? revised.OwningApplication : Duplicate(revised.OwningApplication) as IfcApplication;
|
||||
application = Duplicate(revised.OwningApplication);
|
||||
DateTime modified = (revised == null ? (action == IfcChangeActionEnum.ADDED ? DateTime.MinValue : DateTime.Now) : revised.CreationDate);
|
||||
return OwnerHistory(action, owner, owningApplication, modifier, application, modified, created);
|
||||
}
|
||||
|
@ -2240,7 +2310,7 @@ namespace GeometryGym.Ifc
|
|||
else
|
||||
firstPass.Add(obj);
|
||||
}
|
||||
catch (Exception x) { mDatabase.logParseError("XXX Error in line #" + obj.Object.Index + " " + obj.Object.StepClassName + " " + x.Message); }
|
||||
catch (Exception x) { mDatabase.logParseError("XXX Error in line #" + obj.Object.StepId + " " + obj.Object.StepClassName + " " + x.Message); }
|
||||
}
|
||||
Debug.WriteLine(DateTime.Now.ToString("HH:mm:ss:ffff") + " - Started Executing Constructors");
|
||||
Task taskThreadSafe = Task.Run(() =>
|
||||
|
@ -2255,7 +2325,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
parseDefinition(obj, release);
|
||||
}
|
||||
catch (Exception x) { mDatabase.logParseError("XXX Error in line #" + obj.Object.Index + " " + obj.Object.StepClassName + " " + x.Message); }
|
||||
catch (Exception x) { mDatabase.logParseError("XXX Error in line #" + obj.Object.StepId + " " + obj.Object.StepClassName + " " + x.Message); }
|
||||
}
|
||||
Debug.WriteLine(DateTime.Now.ToString("HH:mm:ss:ffff") + " - Completed FirstPass");
|
||||
firstPass.Clear();
|
||||
|
@ -2265,7 +2335,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
parseDefinition(obj, release);
|
||||
}
|
||||
catch (Exception x) { mDatabase.logParseError("XXX Error in line #" + obj.Object.Index + " " + obj.Object.StepClassName + " " + x.Message); }
|
||||
catch (Exception x) { mDatabase.logParseError("XXX Error in line #" + obj.Object.StepId + " " + obj.Object.StepClassName + " " + x.Message); }
|
||||
}
|
||||
Debug.WriteLine(DateTime.Now.ToString("HH:mm:ss:ffff") + " - Completed SecondPass");
|
||||
secondPass.Clear();
|
||||
|
@ -2291,7 +2361,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
if (string.Compare(ea.mApplicationIdentifier, application.mApplicationIdentifier) == 0)
|
||||
{
|
||||
mDatabase[ea.mIndex] = null;
|
||||
mDatabase[ea.StepId] = null;
|
||||
mDatabase.Factory.mApplication = application;
|
||||
}
|
||||
}
|
||||
|
@ -2329,7 +2399,7 @@ namespace GeometryGym.Ifc
|
|||
BaseClassIfc obj = BaseClassIfc.Construct(kw);
|
||||
if (obj != null)
|
||||
{
|
||||
obj.mIndex = stepID;
|
||||
obj.mStepId = stepID;
|
||||
mDictionary[stepID] = obj;
|
||||
ConstructorClass constructorClass = new ConstructorClass(obj, def);
|
||||
//Todo add more primitive classes
|
||||
|
|
|
@ -43,7 +43,7 @@ namespace GeometryGym.Ifc
|
|||
public enum IfcAirTerminalBoxTypeEnum { NOTDEFINED, USERDEFINED, CONSTANTFLOW, VARIABLEFLOWPRESSUREDEPENDANT, VARIABLEFLOWPRESSUREINDEPENDANT };
|
||||
public enum IfcAirTerminalTypeEnum { NOTDEFINED, USERDEFINED, GRILLE, REGISTER, DIFFUSER, LOUVRE, EYEBALL, IRIS, LINEARGRILLE, LINEARDIFFUSER }; //IFC4 DELETED
|
||||
public enum IfcAirToAirHeatRecoveryTypeEnum { NOTDEFINED, USERDEFINED, FIXEDPLATECOUNTERFLOWEXCHANGER, FIXEDPLATECROSSFLOWEXCHANGER, FIXEDPLATEPARALLELFLOWEXCHANGER, ROTARYWHEEL, RUNAROUNDCOILLOOP, HEATPIPE, TWINTOWERENTHALPYRECOVERYLOOPS, THERMOSIPHONSEALEDTUBEHEATEXCHANGERS, THERMOSIPHONCOILTYPEHEATEXCHANGERS };
|
||||
public enum IfcAlarmTypeEnum { NOTDEFINED, USERDEFINED, BELL, BREAKGLASSBUTTON, LIGHT, MANUALPULLBOX, SIREN, WHISTLE, RAILWAYCROCODILE, RAILWAYDETONATOR };
|
||||
public enum IfcAlarmTypeEnum { NOTDEFINED, USERDEFINED, BELL, BREAKGLASSBUTTON, LIGHT, MANUALPULLBOX, SIREN, WHISTLE, [VersionAdded(ReleaseVersion.IFC4X3)] RAILWAYCROCODILE, [VersionAdded(ReleaseVersion.IFC4X3)] RAILWAYDETONATOR };
|
||||
public enum IfcAlignmentCantSegmentTypeEnum { CONSTANTCANT, LINEARTRANSITION, HELMERTCURVE, BLOSSCURVE, COSINECURVE, SINECURVE, VIENNESEBEND };
|
||||
public enum IfcAlignmentHorizontalSegmentTypeEnum { LINE, CIRCULARARC, CLOTHOID, CUBIC, HELMERTCURVE, BLOSSCURVE, COSINECURVE, SINECURVE, VIENNESEBEND };
|
||||
public enum IfcAlignmentTypeEnum { NOTDEFINED, USERDEFINED };
|
||||
|
@ -53,10 +53,10 @@ namespace GeometryGym.Ifc
|
|||
public enum IfcAnnotationTypeEnum { NOTDEFINED, USERDEFINED, ASSUMEDPOINT, ASBUILTAREA, ASBUILTLINE, NON_PHYSICAL_SIGNAL, ASSUMEDLINE, WIDTHEVENT, ASSUMEDAREA, SUPERELEVATIONEVENT, ASBUILTPOINT };
|
||||
public enum IfcArithmeticOperatorEnum { NONE, ADD, DIVIDE, MULTIPLY, SUBTRACT }; //GG ADDED NONE
|
||||
public enum IfcAssemblyPlaceEnum { NOTDEFINED, SITE, FACTORY };
|
||||
public enum IfcAudioVisualApplianceTypeEnum { NOTDEFINED, USERDEFINED, AMPLIFIER, CAMERA, DISPLAY, MICROPHONE, PLAYER, PROJECTOR, RECEIVER, SPEAKER, SWITCHER, TELEPHONE, TUNER, COMMUNICATIONTERMINAL, RECORDINGEQUIPMENT };
|
||||
public enum IfcBeamTypeEnum { NOTDEFINED, USERDEFINED, BEAM, HOLLOWCORE, JOIST, LINTEL, SPANDREL, T_BEAM, GIRDER_SEGMENT, DIAPHRAGM, PIERCAP, HATSTONE, CORNICE, EDGEBEAM };
|
||||
public enum IfcAudioVisualApplianceTypeEnum { NOTDEFINED, USERDEFINED, AMPLIFIER, CAMERA, DISPLAY, MICROPHONE, PLAYER, PROJECTOR, RECEIVER, SPEAKER, SWITCHER, TELEPHONE, TUNER, [VersionAdded(ReleaseVersion.IFC4X3)] COMMUNICATIONTERMINAL, [VersionAdded(ReleaseVersion.IFC4X3)] RECORDINGEQUIPMENT };
|
||||
public enum IfcBeamTypeEnum { NOTDEFINED, USERDEFINED, BEAM, HOLLOWCORE, JOIST, LINTEL, SPANDREL, T_BEAM, [VersionAdded(ReleaseVersion.IFC4X2)] GIRDER_SEGMENT, [VersionAdded(ReleaseVersion.IFC4X2)] DIAPHRAGM, [VersionAdded(ReleaseVersion.IFC4X2)] PIERCAP, [VersionAdded(ReleaseVersion.IFC4X2)] HATSTONE, [VersionAdded(ReleaseVersion.IFC4X2)] CORNICE, [VersionAdded(ReleaseVersion.IFC4X2)] EDGEBEAM };
|
||||
public enum IfcBearingTypeDisplacementEnum { NOTDEFINED, FIXED_MOVEMENT, GUIDED_LONGITUDINAL, GUIDED_TRANSVERSAL, FREE_MOVEMENT };
|
||||
public enum IfcBearingTypeEnum { NOTDEFINED, USERDEFINED, CYLINDRICAL, SPHERICAL, ELASTOMERIC, POT, GUIDE, ROCKER, ROLLER, DISK };
|
||||
public enum IfcBearingTypeEnum { NOTDEFINED, USERDEFINED, CYLINDRICAL, SPHERICAL, ELASTOMERIC, POT, GUIDE, ROCKER, ROLLER, [VersionAdded(ReleaseVersion.IFC4X2)] DISK };
|
||||
public enum IfcBenchmarkEnum { GREATERTHAN, GREATERTHANOREQUALTO, LESSTHAN, LESSTHANOREQUALTO, EQUALTO, NOTEQUALTO, INCLUDES, NOTINCLUDES, INCLUDEDIN, NOTINCLUDEDIN };
|
||||
public enum IfcBoilerTypeEnum { NOTDEFINED, USERDEFINED, WATER, STEAM };
|
||||
public enum IfcBooleanOperator { UNION, INTERSECTION, DIFFERENCE };
|
||||
|
@ -64,22 +64,22 @@ namespace GeometryGym.Ifc
|
|||
public enum IfcBridgeTypeEnum { NOTDEFINED, USERDEFINED, ARCHED, CABLE_STAYED, CANTILEVER, CULVERT, FRAMEWORK, GIRDER, SUSPENSION, TRUSS };
|
||||
public enum IfcBSplineCurveForm { UNSPECIFIED, POLYLINE_FORM, CIRCULAR_ARC, ELLIPTIC_ARC, PARABOLIC_ARC, HYPERBOLIC_ARC };
|
||||
public enum IfcBSplineSurfaceForm { UNSPECIFIED, PLANE_SURF, CYLINDRICAL_SURF, CONICAL_SURF, SPHERICAL_SURF, TOROIDAL_SURF, SURF_OF_REVOLUTION, RULED_SURF, GENERALISED_CONE, QUADRIC_SURF, SURF_OF_LINEAR_EXTRUSION };
|
||||
public enum IfcBuildingElementPartTypeEnum { NOTDEFINED, USERDEFINED, INSULATION, PRECASTPANEL, APRON, ARMOURUNIT, SAFETYCAGE };
|
||||
public enum IfcBuildingElementPartTypeEnum { NOTDEFINED, USERDEFINED, INSULATION, PRECASTPANEL, [VersionAdded(ReleaseVersion.IFC4X2)] APRON, [VersionAdded(ReleaseVersion.IFC4X3)] ARMOURUNIT, [VersionAdded(ReleaseVersion.IFC4X3)] SAFETYCAGE };
|
||||
public enum IfcBuildingElementProxyTypeEnum { NOTDEFINED, USERDEFINED, COMPLEX, ELEMENT, PARTIAL, PROVISIONFORVOID, PROVISIONFORSPACE }; // 1st 3 not used
|
||||
public enum IfcBuiltSystemTypeEnum { NOTDEFINED, USERDEFINED, REINFORCING, MOORING, OUTERSHELL, TRACKCIRCUIT, EROSIONPREVENTION, FOUNDATION, LOADBEARING, SHADING, FENESTRATION, TRANSPORT, PRESTRESSING };
|
||||
public enum IfcBuiltSystemTypeEnum { NOTDEFINED, USERDEFINED, [VersionAdded(ReleaseVersion.IFC4X2)] REINFORCING, MOORING, OUTERSHELL, TRACKCIRCUIT, [VersionAdded(ReleaseVersion.IFC4X3)] EROSIONPREVENTION, FOUNDATION, LOADBEARING, SHADING, FENESTRATION, TRANSPORT, [VersionAdded(ReleaseVersion.IFC4X2)] PRESTRESSING };
|
||||
public enum IfcBurnerTypeEnum { NOTDEFINED, USERDEFINED };
|
||||
public enum IfcCableCarrierFittingTypeEnum { NOTDEFINED, USERDEFINED, BEND, CROSS, REDUCER, TEE };
|
||||
public enum IfcCableCarrierSegmentTypeEnum { NOTDEFINED, USERDEFINED, CABLELADDERSEGMENT, CABLETRAYSEGMENT, CABLETRUNKINGSEGMENT, CONDUITSEGMENT, CABLEBRACKET, CATENARYWIRE, DROPPER };
|
||||
public enum IfcCableFittingTypeEnum { NOTDEFINED, USERDEFINED, CONNECTOR, ENTRY, EXIT, JUNCTION, TRANSITION, FANOUT };
|
||||
public enum IfcCableSegmentTypeEnum { NOTDEFINED, USERDEFINED, CABLESEGMENT, CONDUCTORSEGMENT, BUSBARSEGMENT, CORESEGMENT, CONTACTWIRESEGMENT, FIBERSEGMENT, FIBERTUBE, OPTICALCABLESEGMENT, STITCHWIRE, WIREPAIRSEGMENT };
|
||||
public enum IfcCableCarrierSegmentTypeEnum { NOTDEFINED, USERDEFINED, CABLELADDERSEGMENT, CABLETRAYSEGMENT, CABLETRUNKINGSEGMENT, CONDUITSEGMENT, [VersionAdded(ReleaseVersion.IFC4X3)] CABLEBRACKET, [VersionAdded(ReleaseVersion.IFC4X3)] CATENARYWIRE, [VersionAdded(ReleaseVersion.IFC4X3)] DROPPER };
|
||||
public enum IfcCableFittingTypeEnum { NOTDEFINED, USERDEFINED, CONNECTOR, ENTRY, EXIT, JUNCTION, TRANSITION, [VersionAdded(ReleaseVersion.IFC4X3)] FANOUT };
|
||||
public enum IfcCableSegmentTypeEnum { NOTDEFINED, USERDEFINED, CABLESEGMENT, CONDUCTORSEGMENT, BUSBARSEGMENT, CORESEGMENT, [VersionAdded(ReleaseVersion.IFC4X3)] CONTACTWIRESEGMENT, [VersionAdded(ReleaseVersion.IFC4X3)] FIBERSEGMENT, [VersionAdded(ReleaseVersion.IFC4X3)] FIBERTUBE, [VersionAdded(ReleaseVersion.IFC4X3)] OPTICALCABLESEGMENT, [VersionAdded(ReleaseVersion.IFC4X3)] STITCHWIRE, [VersionAdded(ReleaseVersion.IFC4X3)] WIREPAIRSEGMENT };
|
||||
public enum IfcCaissonFoundationTypeEnum { NOTDEFINED, USERDEFINED, WELL, CAISSON };
|
||||
public enum IfcCardinalPointReference { DEFAULT = 0, BOTLEFT = 1, BOTMID = 2, BOTRIGHT = 3, MIDLEFT = 4, MID = 5, MIDRIGHT = 6, TOPLEFT = 7, TOPMID = 8, TOPRIGHT = 9, CENTROID = 10, BOTCENT = 11, LEFTCENT = 12, RIGHTCENT = 13, TOPCENT = 14, SHEARCENT = 15, BOTSHEAR = 16, LEFTSHEAR = 17, RIGHTSHEAR = 18, TOPSHEAR = 19 };
|
||||
public enum IfcChangeActionEnum { NOCHANGE, MODIFIED, ADDED, DELETED, NOTDEFINED, MODIFIEDADDED, MODIFIEDDELETED }; //IFC4 MODIFIED DELETED
|
||||
public enum IfcChillerTypeEnum { NOTDEFINED, USERDEFINED, AIRCOOLED, WATERCOOLED, HEATRECOVERY };
|
||||
public enum IfcChimneyTypeEnum { NOTDEFINED, USERDEFINED };
|
||||
public enum IfcCoilTypeEnum { NOTDEFINED, USERDEFINED, DXCOOLINGCOIL, WATERCOOLINGCOIL, STEAMHEATINGCOIL, WATERHEATINGCOIL, ELECTRICHEATINGCOIL, GASHEATINGCOIL, HYDRONICCOIL };
|
||||
public enum IfcColumnTypeEnum { NOTDEFINED, USERDEFINED, COLUMN, PILASTER, PIERSTEM, PIERSTEM_SEGMENT, STANDCOLUMN };
|
||||
public enum IfcCommunicationsApplianceTypeEnum { NOTDEFINED, USERDEFINED, ANTENNA, COMPUTER, FAX, GATEWAY, MODEM, NETWORKAPPLIANCE, NETWORKBRIDGE, NETWORKHUB, PRINTER, REPEATER, ROUTER, SCANNER, AUTOMATON, INTELLIGENTPERIPHERAL, IPNETWORKEQUIPMENT, OPTICALNETWORKUNIT, TELECOMMAND, TELEPHONYEXCHANGE, TRANSITIONCOMPONENT, TRANSPONDER, TRANSPORTEQUIPMENT, OPTICALLINETERMINAL, LINESIDEELECTRONICUNIT, RADIOBLOCKCENTER };
|
||||
public enum IfcColumnTypeEnum { NOTDEFINED, USERDEFINED, COLUMN, PILASTER, [VersionAdded(ReleaseVersion.IFC4X2)] PIERSTEM, [VersionAdded(ReleaseVersion.IFC4X2)] PIERSTEM_SEGMENT, [VersionAdded(ReleaseVersion.IFC4X2)] STANDCOLUMN };
|
||||
public enum IfcCommunicationsApplianceTypeEnum { NOTDEFINED, USERDEFINED, ANTENNA, COMPUTER, FAX, GATEWAY, MODEM, NETWORKAPPLIANCE, NETWORKBRIDGE, NETWORKHUB, PRINTER, REPEATER, ROUTER, SCANNER, [VersionAdded(ReleaseVersion.IFC4X3)] AUTOMATON, [VersionAdded(ReleaseVersion.IFC4X3)] INTELLIGENTPERIPHERAL, [VersionAdded(ReleaseVersion.IFC4X3)] IPNETWORKEQUIPMENT, [VersionAdded(ReleaseVersion.IFC4X3)] OPTICALNETWORKUNIT, [VersionAdded(ReleaseVersion.IFC4X3)] TELECOMMAND, [VersionAdded(ReleaseVersion.IFC4X3)] TELEPHONYEXCHANGE, [VersionAdded(ReleaseVersion.IFC4X3)] TRANSITIONCOMPONENT, [VersionAdded(ReleaseVersion.IFC4X3)] TRANSPONDER, [VersionAdded(ReleaseVersion.IFC4X3)] TRANSPORTEQUIPMENT, [VersionAdded(ReleaseVersion.IFC4X3)] OPTICALLINETERMINAL, [VersionAdded(ReleaseVersion.IFC4X3)] LINESIDEELECTRONICUNIT, [VersionAdded(ReleaseVersion.IFC4X3)] RADIOBLOCKCENTER };
|
||||
public enum IfcComplexPropertyTemplateTypeEnum { NOTDEFINED, P_COMPLEX, Q_COMPLEX };
|
||||
public enum IfcCompressorTypeEnum { NOTDEFINED, USERDEFINED, DYNAMIC, RECIPROCATING, ROTARY, SCROLL, TROCHOIDAL, SINGLESTAGE, BOOSTER, OPENTYPE, HERMETIC, SEMIHERMETIC, WELDEDSHELLHERMETIC, ROLLINGPISTON, ROTARYVANE, SINGLESCREW, TWINSCREW };
|
||||
public enum IfcCondenserTypeEnum { NOTDEFINED, USERDEFINED, WATERCOOLEDSHELLTUBE, WATERCOOLEDSHELLCOIL, WATERCOOLEDTUBEINTUBE, WATERCOOLEDBRAZEDPLATE, AIRCOOLED, EVAPORATIVECOOLED, WATERCOOLED };
|
||||
|
@ -95,7 +95,7 @@ namespace GeometryGym.Ifc
|
|||
public enum IfcCostItemTypeEnum { NOTDEFINED, USERDEFINED, };
|
||||
public enum IfcCostScheduleTypeEnum { NOTDEFINED, USERDEFINED, BUDGET, COSTPLAN, ESTIMATE, TENDER, PRICEDBILLOFQUANTITIES, UNPRICEDBILLOFQUANTITIES, SCHEDULEOFRATES };
|
||||
public enum IfcCourseTypeEnum { NOTDEFINED, USERDEFINED, ARMOUR, FILTER, BALLASTBED, CORE, PAVEMENT, PROTECTION };
|
||||
public enum IfcCoveringTypeEnum { NOTDEFINED, USERDEFINED, CEILING, CLADDING, FLOORING, MOLDING, ROOFING, SKIRTINGBOARD, INSULATION, MEMBRANE, SLEEVING, WRAPPING, COPING }; //IFC4 DELETED
|
||||
public enum IfcCoveringTypeEnum { NOTDEFINED, USERDEFINED, CEILING, CLADDING, FLOORING, MOLDING, ROOFING, SKIRTINGBOARD, INSULATION, MEMBRANE, SLEEVING, WRAPPING, [VersionAdded(ReleaseVersion.IFC4X2)] COPING };
|
||||
public enum IfcCrewResourceTypeEnum { NOTDEFINED, USERDEFINED, OFFICE, SITE };
|
||||
public enum IfcCurrencyEnum { NOTDEFINED, AED, AES, ATS, AUD, BBD, BEG, BGL, BHD, BMD, BND, BRL, BSD, BWP, BZD, CAD, CBD, CHF, CLP, CNY, CYS, CZK, DDP, DEM, DKK, EGL, EST, EUR, FAK, FIM, FJD, FKP, FRF, GBP, GIP, GMD, GRX, HKD, HUF, ICK, IDR, ILS, INR, IRP, ITL, JMD, JOD, JPY, KES, KRW, KWD, KYD, LKR, LUF, MTL, MUR, MXN, MYR, NLG, NZD, OMR, PGK, PHP, PKR, PLN, PTN, QAR, RUR, SAR, SCR, SEK, SGD, SKP, THB, TRL, TTD, TWD, USD, VEB, VND, XEU, ZAR, ZWD, NOK };
|
||||
public enum IfcCurtainWallTypeEnum { NOTDEFINED, USERDEFINED, };
|
||||
|
@ -117,14 +117,26 @@ namespace GeometryGym.Ifc
|
|||
};
|
||||
public enum IfcDimensionExtentUsage { ORIGIN, TARGET };
|
||||
public enum IfcDirectionSenseEnum { POSITIVE, NEGATIVE };
|
||||
public enum IfcDiscreteAccessoryTypeEnum { NOTDEFINED, USERDEFINED, ANCHORPLATE, BRACKET, SHOE, EXPANSION_JOINT_DEVICE, BIRDPROTECTION, CABLEARRANGER, INSULATOR, LOCK, TENSIONINGEQUIPMENT, RAILPAD, SLIDINGCHAIR, RAIL_LUBRICATION, PANEL_STRENGTHENING, RAILBRACE, ELASTIC_CUSHION, SOUNDABSORPTION,POINTMACHINEMOUNTINGDEVICE, POINT_MACHINE_LOCKING_DEVICE, RAIL_MECHANICAL_EQUIPMENT };
|
||||
public enum IfcDiscreteAccessoryTypeEnum { NOTDEFINED, USERDEFINED, ANCHORPLATE, BRACKET, SHOE, [VersionAdded(ReleaseVersion.IFC4X2)] EXPANSION_JOINT_DEVICE,
|
||||
[VersionAdded(ReleaseVersion.IFC4X3)] BIRDPROTECTION, [VersionAdded(ReleaseVersion.IFC4X3)] CABLEARRANGER,
|
||||
[VersionAdded(ReleaseVersion.IFC4X3)] INSULATOR, [VersionAdded(ReleaseVersion.IFC4X3)] LOCK,
|
||||
[VersionAdded(ReleaseVersion.IFC4X3)] TENSIONINGEQUIPMENT, [VersionAdded(ReleaseVersion.IFC4X3)] RAILPAD,
|
||||
[VersionAdded(ReleaseVersion.IFC4X3)] SLIDINGCHAIR, [VersionAdded(ReleaseVersion.IFC4X3)] RAIL_LUBRICATION,
|
||||
[VersionAdded(ReleaseVersion.IFC4X3)] PANEL_STRENGTHENING, [VersionAdded(ReleaseVersion.IFC4X3)] RAILBRACE,
|
||||
[VersionAdded(ReleaseVersion.IFC4X3)] ELASTIC_CUSHION, [VersionAdded(ReleaseVersion.IFC4X3)] SOUNDABSORPTION,
|
||||
[VersionAdded(ReleaseVersion.IFC4X3)] POINTMACHINEMOUNTINGDEVICE, [VersionAdded(ReleaseVersion.IFC4X3)] POINT_MACHINE_LOCKING_DEVICE,
|
||||
[VersionAdded(ReleaseVersion.IFC4X3)] RAIL_MECHANICAL_EQUIPMENT
|
||||
};
|
||||
public enum IfcDistributionBoardTypeEnum { NOTDEFINED, USERDEFINED, SWITCHBOARD, CONSUMERUNIT, MOTORCONTROLCENTRE, DISTRIBUTIONFRAME, DISTRIBUTIONBOARD, DISPATCHINGBOARD };
|
||||
public enum IfcDistributionChamberElementTypeEnum { NOTDEFINED, USERDEFINED, FORMEDDUCT, INSPECTIONCHAMBER, INSPECTIONPIT, MANHOLE, METERCHAMBER, SUMP, TRENCH, VALVECHAMBER };
|
||||
public enum IfcDistributionPortTypeEnum { NOTDEFINED, USERDEFINED, CABLE, CABLECARRIER, DUCT, PIPE, WIRELESS }
|
||||
public enum IfcDistributionSystemEnum { NOTDEFINED, USERDEFINED, AIRCONDITIONING, AUDIOVISUAL, CHEMICAL, CHILLEDWATER, COMMUNICATION, COMPRESSEDAIR, CONDENSERWATER,
|
||||
CONTROL, CONVEYING, DATA, DISPOSAL, DOMESTICCOLDWATER, DOMESTICHOTWATER, DRAINAGE, EARTHING, ELECTRICAL, ELECTROACOUSTIC, EXHAUST,
|
||||
FIREPROTECTION, FUEL, GAS, HAZARDOUS, HEATING, LIGHTING, LIGHTNINGPROTECTION, MUNICIPALSOLIDWASTE, OIL, OPERATIONAL, POWERGENERATION,
|
||||
RAINWATER, REFRIGERATION, SECURITY, SEWAGE, SIGNAL, STORMWATER, TELEPHONE, TV, VACUUM, VENT, VENTILATION, WASTEWATER, WATERSUPPLY, CATENARY_SYSTEM, OVERHEAD_CONTACTLINE_SYSTEM, RETURN_CIRCUIT, FIXEDTRANSMISSIONNETWORK, OPERATIONALTELEPHONYSYSTEM, MOBILENETWORK, MONITORINGSYSTEM };
|
||||
public enum IfcDistributionSystemEnum { NOTDEFINED, USERDEFINED, AIRCONDITIONING, AUDIOVISUAL, CHEMICAL, CHILLEDWATER, COMMUNICATION,
|
||||
COMPRESSEDAIR, CONDENSERWATER, CONTROL, CONVEYING, DATA, DISPOSAL, DOMESTICCOLDWATER, DOMESTICHOTWATER, DRAINAGE, EARTHING, ELECTRICAL,
|
||||
ELECTROACOUSTIC, EXHAUST, FIREPROTECTION, FUEL, GAS, HAZARDOUS, HEATING, LIGHTING, LIGHTNINGPROTECTION, MUNICIPALSOLIDWASTE, OIL,
|
||||
OPERATIONAL, POWERGENERATION, RAINWATER, REFRIGERATION, SECURITY, SEWAGE, SIGNAL, STORMWATER, TELEPHONE, TV, VACUUM, VENT, VENTILATION,
|
||||
WASTEWATER, WATERSUPPLY, CATENARY_SYSTEM, OVERHEAD_CONTACTLINE_SYSTEM, RETURN_CIRCUIT,
|
||||
[VersionAdded(ReleaseVersion.IFC4X3)] FIXEDTRANSMISSIONNETWORK, [VersionAdded(ReleaseVersion.IFC4X3)] OPERATIONALTELEPHONYSYSTEM,
|
||||
[VersionAdded(ReleaseVersion.IFC4X3)] MOBILENETWORK, [VersionAdded(ReleaseVersion.IFC4X3)] MONITORINGSYSTEM };
|
||||
public enum IfcDistributionSystemEnumPipe { NOTDEFINED, USERDEFINED, CHEMICAL, CHILLEDWATER, COMPRESSEDAIR, CONDENSERWATER, CONVEYING, DISPOSAL, DOMESTICCOLDWATER,
|
||||
DOMESTICHOTWATER, DRAINAGE, FIREPROTECTION, FUEL, GAS, HAZARDOUS, HEATING, MUNICIPALSOLIDWASTE, OIL, OPERATIONAL, RAINWATER,
|
||||
REFRIGERATION, SEWAGE, STORMWATER, VACUUM, VENT, WASTEWATER, WATERSUPPLY };
|
||||
|
@ -140,7 +152,7 @@ namespace GeometryGym.Ifc
|
|||
public enum IfcDoorStyleConstructionEnum { NOTDEFINED, USERDEFINED, ALUMINIUM, HIGH_GRADE_STEEL, STEEL, WOOD, ALUMINIUM_WOOD, ALUMINIUM_PLASTIC, PLASTIC };
|
||||
public enum IfcDoorStyleOperationEnum { NOTDEFINED, USERDEFINED, SINGLE_SWING_LEFT, SINGLE_SWING_RIGHT, DOUBLE_DOOR_SINGLE_SWING, DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT, DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT, DOUBLE_SWING_LEFT, DOUBLE_SWING_RIGHT, DOUBLE_DOOR_DOUBLE_SWING, SLIDING_TO_LEFT, SLIDING_TO_RIGHT, DOUBLE_DOOR_SLIDING, FOLDING_TO_LEFT, FOLDING_TO_RIGHT, DOUBLE_DOOR_FOLDING, REVOLVING, ROLLINGUP };
|
||||
public enum IfcDoorTypeOperationEnum { NOTDEFINED, USERDEFINED, SINGLE_SWING_LEFT, SINGLE_SWING_RIGHT, DOUBLE_PANEL_SINGLE_SWING, DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_LEFT, DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_RIGHT, DOUBLE_SWING_LEFT, DOUBLE_SWING_RIGHT, DOUBLE_PANEL_DOUBLE_SWING, SLIDING_TO_LEFT, SLIDING_TO_RIGHT, DOUBLE_PANEL_SLIDING, FOLDING_TO_LEFT, FOLDING_TO_RIGHT, DOUBLE_PANEL_FOLDING, REVOLVING_HORIZONTAL, ROLLINGUP, SWING_FIXED_LEFT, SWING_FIXED_RIGHT, DOUBLE_PANEL_LIFTING_VERTICAL, LIFTING_HORIZONTAL, LIFTING_VERTICAL_LEFT, LIFTING_VERTICAL_RIGHT, REVOLVING_VERTICAL };
|
||||
public enum IfcDoorTypeEnum { NOTDEFINED, USERDEFINED, DOOR, GATE, TRAPDOOR, BOOM_BARRIER, TURNSTILE };
|
||||
public enum IfcDoorTypeEnum { NOTDEFINED, USERDEFINED, DOOR, GATE, TRAPDOOR, [VersionAdded(ReleaseVersion.IFC4X3)] BOOM_BARRIER, [VersionAdded(ReleaseVersion.IFC4X3)] TURNSTILE };
|
||||
public enum IfcDuctFittingTypeEnum { NOTDEFINED, USERDEFINED, BEND, CONNECTOR, ENTRY, EXIT, JUNCTION, OBSTRUCTION, TRANSITION };
|
||||
public enum IfcDuctSegmentTypeEnum { NOTDEFINED, USERDEFINED, RIGIDSEGMENT, FLEXIBLESEGMENT };
|
||||
public enum IfcDuctSilencerTypeEnum { NOTDEFINED, USERDEFINED, FLATOVAL, RECTANGULAR, ROUND };
|
||||
|
@ -150,13 +162,13 @@ namespace GeometryGym.Ifc
|
|||
public enum IfcElectricCurrentEnum { NOTDEFINED, ALTERNATING, DIRECT };
|
||||
public enum IfcElectricDistributionBoardTypeEnum { NOTDEFINED, USERDEFINED, CONSUMERUNIT, DISTRIBUTIONBOARD, MOTORCONTROLCENTRE, SWITCHBOARD };
|
||||
public enum IfcElectricDistributionPointFunctionEnum { NOTDEFINED, USERDEFINED, ALARMPANEL, CONSUMERUNIT, CONTROLPANEL, DISTRIBUTIONBOARD, GASDETECTORPANEL, INDICATORPANEL, MIMICPANEL, MOTORCONTROLCENTRE, SWITCHBOARD };
|
||||
public enum IfcElectricFlowStorageDeviceTypeEnum { NOTDEFINED, USERDEFINED, BATTERY, CAPACITORBANK, HARMONICFILTER, INDUCTORBANK, UPS, CAPACITOR, COMPENSATOR, INDUCTOR, RECHARGER };
|
||||
public enum IfcElectricFlowStorageDeviceTypeEnum { NOTDEFINED, USERDEFINED, BATTERY, CAPACITORBANK, HARMONICFILTER, INDUCTORBANK, UPS, [VersionAdded(ReleaseVersion.IFC4X3)] CAPACITOR, [VersionAdded(ReleaseVersion.IFC4X3)] COMPENSATOR, [VersionAdded(ReleaseVersion.IFC4X3)] INDUCTOR, [VersionAdded(ReleaseVersion.IFC4X3)] RECHARGER };
|
||||
public enum IfcElectricFlowTreatmentDeviceTypeEnum { NOTDEFINED, USERDEFINED, ELECTRONICFILTER };
|
||||
public enum IfcElectricGeneratorTypeEnum { NOTDEFINED, USERDEFINED, CHP, ENGINEGENERATOR, STANDALONE };
|
||||
public enum IfcElectricHeaterTypeEnum { NOTDEFINED, USERDEFINED, ELECTRICPOINTHEATER, ELECTRICCABLEHEATER };
|
||||
public enum IfcElectricMotorTypeEnum { NOTDEFINED, USERDEFINED, DC, INDUCTION, POLYPHASE, RELUCTANCESYNCHRONOUS, SYNCHRONOUS };
|
||||
public enum IfcElectricTimeControlTypeEnum { NOTDEFINED, USERDEFINED, TIMECLOCK, TIMEDELAY, RELAY };
|
||||
public enum IfcElementAssemblyTypeEnum { NOTDEFINED, USERDEFINED, ACCESSORY_ASSEMBLY, ARCH, BEAM_GRID, BRACED_FRAME, GIRDER, REINFORCEMENT_UNIT, RIGID_FRAME, SLAB_FIELD, TRUSS, ABUTMENT, PIER, PYLON, CROSS_BRACING, DECK, MAST, SIGNALASSEMBLY, GRID, SHELTER, SUPPORTINGASSEMBLY, SUSPENSIONASSEMBLY, TRACTION_SWITCHING_ASSEMBLY, TRACKPANEL, TURNOUTPANEL, DILATATIONPANEL, RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY, ENTRANCEWORKS, SUMPBUSTER, TRAFFIC_CALMING_DEVICE };
|
||||
public enum IfcElementAssemblyTypeEnum { NOTDEFINED, USERDEFINED, ACCESSORY_ASSEMBLY, ARCH, BEAM_GRID, BRACED_FRAME, GIRDER, REINFORCEMENT_UNIT, RIGID_FRAME, SLAB_FIELD, TRUSS, [VersionAdded(ReleaseVersion.IFC4X2)] ABUTMENT, [VersionAdded(ReleaseVersion.IFC4X2)] PIER, [VersionAdded(ReleaseVersion.IFC4X2)] PYLON, [VersionAdded(ReleaseVersion.IFC4X2)] CROSS_BRACING, [VersionAdded(ReleaseVersion.IFC4X2)] DECK, [VersionAdded(ReleaseVersion.IFC4X3)] MAST, [VersionAdded(ReleaseVersion.IFC4X3)] SIGNALASSEMBLY, [VersionAdded(ReleaseVersion.IFC4X3)] GRID, [VersionAdded(ReleaseVersion.IFC4X3)] SHELTER, [VersionAdded(ReleaseVersion.IFC4X3)] SUPPORTINGASSEMBLY, [VersionAdded(ReleaseVersion.IFC4X3)] SUSPENSIONASSEMBLY, [VersionAdded(ReleaseVersion.IFC4X3)] TRACTION_SWITCHING_ASSEMBLY, [VersionAdded(ReleaseVersion.IFC4X3)] TRACKPANEL, [VersionAdded(ReleaseVersion.IFC4X3)] TURNOUTPANEL, [VersionAdded(ReleaseVersion.IFC4X3)] DILATATIONPANEL, [VersionAdded(ReleaseVersion.IFC4X3)] RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY, [VersionAdded(ReleaseVersion.IFC4X3)] ENTRANCEWORKS, [VersionAdded(ReleaseVersion.IFC4X3)] SUMPBUSTER, [VersionAdded(ReleaseVersion.IFC4X3)] TRAFFIC_CALMING_DEVICE };
|
||||
public enum IfcElementCompositionEnum { NOTDEFINED, COMPLEX, ELEMENT, PARTIAL };
|
||||
public enum IfcEnergySequenceEnum { NOTDEFINED, USERDEFINED, PRIMARY, SECONDARY, TERTIARY, AUXILIARY };
|
||||
public enum IfcEngineTypeEnum { NOTDEFINED, USERDEFINED, EXTERNALCOMBUSTION, INTERNALCOMBUSTION };
|
||||
|
@ -173,17 +185,17 @@ namespace GeometryGym.Ifc
|
|||
public enum IfcFilterTypeEnum { NOTDEFINED, USERDEFINED, AIRPARTICLEFILTER, ODORFILTER, OILFILTER, STRAINER, WATERFILTER, COMPRESSEDAIRFILTER };
|
||||
public enum IfcFireSuppressionTerminalTypeEnum { NOTDEFINED, USERDEFINED, BREECHINGINLET, FIREHYDRANT, HOSEREEL, SPRINKLER, SPRINKLERDEFLECTOR, FIREMONITOR };
|
||||
public enum IfcFlowDirectionEnum { NOTDEFINED, SOURCE, SINK, SOURCEANDSINK };
|
||||
public enum IfcFlowInstrumentTypeEnum { NOTDEFINED, USERDEFINED, PRESSUREGAUGE, THERMOMETER, AMMETER, FREQUENCYMETER, POWERFACTORMETER, PHASEANGLEMETER, VOLTMETER_PEAK, VOLTMETER_RMS, COMBINED, VOLTMETER };
|
||||
public enum IfcFlowInstrumentTypeEnum { NOTDEFINED, USERDEFINED, PRESSUREGAUGE, THERMOMETER, AMMETER, FREQUENCYMETER, POWERFACTORMETER, PHASEANGLEMETER, VOLTMETER_PEAK, VOLTMETER_RMS, [VersionAdded(ReleaseVersion.IFC4X3)] COMBINED, [VersionAdded(ReleaseVersion.IFC4X3)] VOLTMETER };
|
||||
public enum IfcFlowMeterTypeEnum { NOTDEFINED, USERDEFINED, ENERGYMETER, GASMETER, OILMETER, WATERMETER, ELECTRICMETER, FLOWMETER }; // IFC4 DELETED
|
||||
public enum IfcFootingTypeEnum { NOTDEFINED, USERDEFINED, CAISSON_FOUNDATION, FOOTING_BEAM, PAD_FOOTING, PILE_CAP, STRIP_FOOTING };
|
||||
public enum IfcFurnitureTypeEnum { NOTDEFINED, USERDEFINED, CHAIR, TABLE, DESK, BED, FILECABINET, SHELF, SOFA, TECHNICALCABINET };
|
||||
public enum IfcFurnitureTypeEnum { NOTDEFINED, USERDEFINED, CHAIR, TABLE, DESK, BED, FILECABINET, SHELF, SOFA, [VersionAdded(ReleaseVersion.IFC4X3)] TECHNICALCABINET };
|
||||
public enum IfcGasTerminalTypeEnum { NOTDEFINED, USERDEFINED, GASAPPLIANCE, GASBOOSTER, GASBURNER };
|
||||
public enum IfcGeographicElementTypeEnum { NOTDEFINED, USERDEFINED, TERRAIN, SOIL_BORING_POINT };
|
||||
public enum IfcGeographicElementTypeEnum { NOTDEFINED, USERDEFINED, [VersionAdded(ReleaseVersion.IFC4X2)] SOIL_BORING_POINT, TERRAIN, [VersionAdded(ReleaseVersion.IFC4X3)] VEGETATION };
|
||||
public enum IfcGeometricProjectionEnum { NOTDEFINED, USERDEFINED, GRAPH_VIEW, SKETCH_VIEW, MODEL_VIEW, PLAN_VIEW, REFLECTED_PLAN_VIEW, SECTION_VIEW, ELEVATION_VIEW };
|
||||
public enum IfcGeotechnicalStratumTypeEnum { NOTDEFINED, USERDEFINED, SOLID, VOID, WATER };
|
||||
public enum IfcGlobalOrLocalEnum { GLOBAL_COORDS, LOCAL_COORDS };
|
||||
public enum IfcGridTypeEnum { NOTDEFINED, USERDEFINED, RECTANGULAR, RADIAL, TRIANGULAR, IRREGULAR };
|
||||
public enum IfcHeatExchangerTypeEnum { NOTDEFINED, USERDEFINED, PLATE, SHELLANDTUBE, TURNOUTHEATING };
|
||||
public enum IfcHeatExchangerTypeEnum { NOTDEFINED, USERDEFINED, PLATE, SHELLANDTUBE, [VersionAdded(ReleaseVersion.IFC4X3)] TURNOUTHEATING };
|
||||
public enum IfcHumidifierTypeEnum { NOTDEFINED, USERDEFINED, STEAMINJECTION, ADIABATICAIRWASHER, ADIABATICPAN, ADIABATICWETTEDELEMENT, ADIABATICATOMIZING, ADIABATICULTRASONIC, ADIABATICRIGIDMEDIA, ADIABATICCOMPRESSEDAIRNOZZLE, ASSISTEDELECTRIC, ASSISTEDNATURALGAS, ASSISTEDPROPANE, ASSISTEDBUTANE, ASSISTEDSTEAM };
|
||||
public enum IfcImpactProtectionDeviceTypeEnum { NOTDEFINED, USERDEFINED, CRASHCUSHION, DAMPINGSYSTEM, FENDER, BUMPER };
|
||||
public enum IfcInternalOrExternalEnum { NOTDEFINED, INTERNAL, EXTERNAL, EXTERNAL_EARTH, EXTERNAL_WATER, EXTERNAL_FIRE };
|
||||
|
@ -203,9 +215,9 @@ namespace GeometryGym.Ifc
|
|||
public enum IfcLogicalOperatorEnum { NONE, LOGICALAND, LOGICALOR, LOGICALXOR, LOGICALNOTAND, LOGICALNOTOR };
|
||||
public enum IfcMarineFacilityTypeEnum { NOTDEFINED, USERDEFINED, CANAL, WATERWAYSHIPLIFT, REVETMENT, LAUNCHRECOVERY, MARINEDEFENCE, HYDROLIFT, SHIPYARD, SHIPLIFT, PORT, QUAY, FLOATINGDOCK, NAVIGATIONALCHANNEL, BREAKWATER, DRYDOCK, JETTY, SHIPLOCK, BARRIERBEACH, SLIPWAY, WATERWAY };
|
||||
public enum IfcMarinePartTypeEnum { NOTDEFINED, USERDEFINED, CREST, MANUFACTURING, LOWWATERLINE, CORE, WATERFIELD, CILL_LEVEL, BERTHINGSTRUCTURE, COPELEVEL, CHAMBER, STORAGEAREA, APPROACHCHANNEL, VEHICLESERVICING, SHIPTRANSFER, GATEHEAD, GUDINGSTRUCTURE, BELOWWATERLINE, WEATHERSIDE, LANDFIELD, PROTECTION, LEEWARDSIDE, ABOVEWATERLINE, ANCHORAGE, NAVIGATIONALAREA, HIGHWATERLINE };
|
||||
public enum IfcMechanicalFastenerTypeEnum { NOTDEFINED, USERDEFINED, ANCHORBOLT, BOLT, DOWEL, NAIL, NAILPLATE, RIVET, SCREW, SHEARCONNECTOR, STAPLE, STUDSHEARCONNECTOR, COUPLER, RAILJOINT, RAILFASTENING, CHAIN, ROPE }
|
||||
public enum IfcMechanicalFastenerTypeEnum { NOTDEFINED, USERDEFINED, ANCHORBOLT, BOLT, DOWEL, NAIL, NAILPLATE, RIVET, SCREW, SHEARCONNECTOR, STAPLE, STUDSHEARCONNECTOR, [VersionAdded(ReleaseVersion.IFC4X2)] COUPLER, [VersionAdded(ReleaseVersion.IFC4X3)] RAILJOINT, [VersionAdded(ReleaseVersion.IFC4X3)] RAILFASTENING, [VersionAdded(ReleaseVersion.IFC4X3)] CHAIN, [VersionAdded(ReleaseVersion.IFC4X3)] ROPE }
|
||||
public enum IfcMedicalDeviceTypeEnum { NOTDEFINED, USERDEFINED, AIRSTATION, FEEDAIRUNIT, OXYGENGENERATOR, OXYGENPLANT, VACUUMSTATION };
|
||||
public enum IfcMemberTypeEnum { NOTDEFINED, USERDEFINED, BRACE, CHORD, COLLAR, MEMBER, MULLION, PLATE, POST, PURLIN, RAFTER, STRINGER, STRUT, STUD, STIFFENING_RIB, ARCH_SEGMENT, SUSPENSION_CABLE, SUSPENDER, STAY_CABLE, STRUCTURALCABLE, TIEBAR };
|
||||
public enum IfcMemberTypeEnum { NOTDEFINED, USERDEFINED, BRACE, CHORD, COLLAR, MEMBER, MULLION, PLATE, POST, PURLIN, RAFTER, STRINGER, STRUT, STUD, [VersionAdded(ReleaseVersion.IFC4X2)] STIFFENING_RIB, [VersionAdded(ReleaseVersion.IFC4X2)] ARCH_SEGMENT, [VersionAdded(ReleaseVersion.IFC4X2)] SUSPENSION_CABLE, [VersionAdded(ReleaseVersion.IFC4X2)] SUSPENDER, [VersionAdded(ReleaseVersion.IFC4X2)] STAY_CABLE, [VersionAdded(ReleaseVersion.IFC4X3)] STRUCTURALCABLE, [VersionAdded(ReleaseVersion.IFC4X3)] TIEBAR };
|
||||
public enum IfcMobileTelecommunicationsApplianceTypeEnum { NOTDEFINED, USERDEFINED, E_UTRAN_NODE_B, REMOTERADIOUNIT, ACCESSPOINT, BASETRANSCEIVERSTATION, REMOTEUNIT, BASEBANDUNIT, MASTERUNIT, GATEWAY_GPRS_SUPPORT_NODE, SUBSCRIBERSERVER, MOBILESWITCHINGCENTER, MSCSERVER, PACKETCONTROLUNIT, SERVICE_GPRS_SUPPORT_NODE };
|
||||
public enum IfcMooringDeviceTypeEnum { NOTDEFINED, USERDEFINED, LINETENSIONER, MAGNETICDEVICE, MOORINGHOOKS, VACUUMDEVICE, BOLLARD };
|
||||
public enum IfcMotorConnectionTypeEnum { NOTDEFINED, USERDEFINED, BELTDRIVE, COUPLING, DIRECTDRIVE };
|
||||
|
@ -226,32 +238,32 @@ namespace GeometryGym.Ifc
|
|||
public enum IfcPileTypeEnum { NOTDEFINED, USERDEFINED, COHESION, FRICTION, SUPPORT, BORED, DRIVEN, JETGROUTING };
|
||||
public enum IfcPipeFittingTypeEnum { NOTDEFINED, USERDEFINED, BEND, CONNECTOR, ENTRY, EXIT, JUNCTION, OBSTRUCTION, TRANSITION };
|
||||
public enum IfcPipeSegmentTypeEnum { NOTDEFINED, USERDEFINED, FLEXIBLESEGMENT, RIGIDSEGMENT, GUTTER, SPOOL, CULVERT };
|
||||
public enum IfcPlateTypeEnum { NOTDEFINED, USERDEFINED, CURTAIN_PANEL, SHEET, FLANGE_PLATE, WEB_PLATE, STIFFENER_PLATE, GUSSET_PLATE, COVER_PLATE, SPLICE_PLATE, BASE_PLATE };
|
||||
public enum IfcPlateTypeEnum { NOTDEFINED, USERDEFINED, CURTAIN_PANEL, SHEET, [VersionAdded(ReleaseVersion.IFC4X2)] FLANGE_PLATE, [VersionAdded(ReleaseVersion.IFC4X2)] WEB_PLATE, [VersionAdded(ReleaseVersion.IFC4X2)] STIFFENER_PLATE, [VersionAdded(ReleaseVersion.IFC4X2)] GUSSET_PLATE, [VersionAdded(ReleaseVersion.IFC4X2)] COVER_PLATE, [VersionAdded(ReleaseVersion.IFC4X2)] SPLICE_PLATE, [VersionAdded(ReleaseVersion.IFC4X2)] BASE_PLATE };
|
||||
public enum IfcPreferredSurfaceCurveRepresentation { CURVE3D, PCURVE_S1, PCURVE_S2 };
|
||||
public enum IfcProcedureTypeEnum { NOTDEFINED, USERDEFINED, ADVICE_CAUTION, ADVICE_NOTE, ADVICE_WARNING, CALIBRATION, DIAGNOSTIC, SHUTDOWN, STARTUP };
|
||||
public enum IfcProfileTypeEnum { CURVE, AREA };
|
||||
public enum IfcProjectedOrTrueLengthEnum { PROJECTED_LENGTH, TRUE_LENGTH };
|
||||
public enum IfcProjectOrderRecordTypeEnum { NOTDEFINED, USERDEFINED, CHANGE, MAINTENANCE, MOVE, PURCHASE, WORK };
|
||||
public enum IfcProjectOrderTypeEnum { NOTDEFINED, USERDEFINED, CHANGEORDER, MAINTENANCEWORKORDER, MOVEORDER, PURCHASEORDER, WORKORDER };
|
||||
public enum IfcProjectionElementTypeEnum { NOTDEFINED, USERDEFINED, BLISTER, DEVIATOR }
|
||||
public enum IfcProjectionElementTypeEnum { NOTDEFINED, USERDEFINED, [VersionAdded(ReleaseVersion.IFC4X2)] BLISTER, [VersionAdded(ReleaseVersion.IFC4X2)] DEVIATOR }
|
||||
public enum IfcPropertySetTemplateTypeEnum { NOTDEFINED, PSET_TYPEDRIVENONLY, PSET_TYPEDRIVENOVERRIDE, PSET_OCCURRENCEDRIVEN, PSET_PERFORMANCEDRIVEN, QTO_TYPEDRIVENONLY, QTO_TYPEDRIVENOVERRIDE, QTO_OCCURRENCEDRIVEN };
|
||||
public enum IfcPropertySourceEnum { NOTDEFINED, USERDEFINED, DESIGN, DESIGNMAXIMUM, DESIGNMINIMUM, SIMULATED, ASBUILT, COMMISSIONING, MEASURED };
|
||||
public enum IfcProtectiveDeviceTrippingUnitTypeEnum { NOTDEFINED, USERDEFINED, ELECTRONIC, ELECTROMAGNETIC, RESIDUALCURRENT, THERMAL };
|
||||
public enum IfcProtectiveDeviceTypeEnum { NOTDEFINED, USERDEFINED, FUSEDISCONNECTOR, CIRCUITBREAKER, EARTHFAILUREDEVICE, RESIDUALCURRENTCIRCUITBREAKER, RESIDUALCURRENTSWITCH, VARISTOR, EARTHLEAKAGECIRCUITBREAKER, EARTHINGSWITCH, ANTI_ARCING_DEVICE, SPARKGAP, VOLTAGELIMITER };
|
||||
public enum IfcProtectiveDeviceTypeEnum { NOTDEFINED, USERDEFINED, FUSEDISCONNECTOR, CIRCUITBREAKER, EARTHFAILUREDEVICE, RESIDUALCURRENTCIRCUITBREAKER, RESIDUALCURRENTSWITCH, VARISTOR, EARTHLEAKAGECIRCUITBREAKER, EARTHINGSWITCH, [VersionAdded(ReleaseVersion.IFC4X3)] ANTI_ARCING_DEVICE, [VersionAdded(ReleaseVersion.IFC4X3)] SPARKGAP, [VersionAdded(ReleaseVersion.IFC4X3)] VOLTAGELIMITER };
|
||||
public enum IfcPumpTypeEnum { NOTDEFINED, USERDEFINED, CIRCULATOR, ENDSUCTION, SPLITCASE, VERTICALINLINE, VERTICALTURBINE, SUBMERSIBLEPUMP, SUMPPUMP };
|
||||
public enum IfcRailingTypeEnum { NOTDEFINED, USERDEFINED, HANDRAIL, GUARDRAIL, BALUSTRADE, [VersionAdded(ReleaseVersion.IFC4X3)] FENCE };
|
||||
public enum IfcRailTypeEnum { NOTDEFINED, USERDEFINED, RACKRAIL, BLADE, GUARDRAIL, STOCKRAIL, CHECKRAIL, RAIL };
|
||||
public enum IfcRailwayTypeEnum { NOTDEFINED, USERDEFINED };
|
||||
public enum IfcRailwayPartTypeEnum { NOTDEFINED, USERDEFINED, TRACKSTRUCTURE, TRACKSTRUCTUREPART, LINESIDESTRUCTUREPART, DILATATIONSUPERSTRUCTURE, PLAINTRACKSUPESTRUCTURE, LINESIDESTRUCTURE, SUPERSTRUCTURE, TURNOUTSUPERSTRUCTURE };
|
||||
public enum IfcRailingTypeEnum { NOTDEFINED, USERDEFINED, HANDRAIL, GUARDRAIL, BALUSTRADE, FENCE };
|
||||
public enum IfcRailwayPartTypeEnum { NOTDEFINED, USERDEFINED, TRACKSTRUCTURE, TRACKSTRUCTUREPART, LINESIDESTRUCTUREPART, DILATATIONSUPERSTRUCTURE, PLAINTRACKSUPERSTRUCTURE, LINESIDESTRUCTURE, SUPERSTRUCTURE, TURNOUTSUPERSTRUCTURE };
|
||||
public enum IfcRampFlightTypeEnum { NOTDEFINED, USERDEFINED, STRAIGHT, SPIRAL };
|
||||
public enum IfcRampTypeEnum { NOTDEFINED, USERDEFINED, STRAIGHT_RUN_RAMP, TWO_STRAIGHT_RUN_RAMP, QUARTER_TURN_RAMP, TWO_QUARTER_TURN_RAMP, HALF_TURN_RAMP, SPIRAL_RAMP };
|
||||
public enum IfcRecurrenceTypeEnum { DAILY, WEEKLY, MONTHLY_BY_DAY_OF_MONTH, MONTHLY_BY_POSITION, BY_DAY_COUNT, BY_WEEKDAY_COUNT, YEARLY_BY_DAY_OF_MONTH, YEARLY_BY_POSITION };
|
||||
public enum IfcReferentTypeEnum { NOTDEFINED, USERDEFINED, KILOPOINT, MILEPOINT, STATION, REFERENCEMARKER, LANDMARK, BOUNDARY, INTERSECTION, POSITION };
|
||||
public enum IfcReferentTypeEnum { NOTDEFINED, USERDEFINED, KILOPOINT, MILEPOINT, STATION, [VersionAdded(ReleaseVersion.IFC4X3)] REFERENCEMARKER, [VersionAdded(ReleaseVersion.IFC4X3)] LANDMARK, [VersionAdded(ReleaseVersion.IFC4X3)] BOUNDARY, [VersionAdded(ReleaseVersion.IFC4X3)] INTERSECTION, [VersionAdded(ReleaseVersion.IFC4X3)] POSITION };
|
||||
public enum IfcReflectanceMethodEnum { NOTDEFINED, BLINN, FLAT, GLASS, MATT, METAL, MIRROR, PHONG, PLASTIC, STRAUSS };
|
||||
public enum IfcReinforcedSoilTypeEnum { NOTDEFINED, USERDEFINED, SURCHARGEPRELOADED, VERTICALLYDRAINED, DYNAMICALLYCOMPACTED, REPLACED, ROLLERCOMPACTED, GROUTED };
|
||||
public enum IfcReinforcingBarSurfaceEnum { NOTDEFINED, PLAIN, TEXTURED };
|
||||
public enum IfcReinforcingBarRoleEnum { NOTDEFINED, USERDEFINED, MAIN, SHEAR, LIGATURE, STUD, PUNCHING, EDGE, RING, ANCHORING };
|
||||
public enum IfcReinforcingBarTypeEnum { NOTDEFINED, USERDEFINED, MAIN, SHEAR, LIGATURE, STUD, PUNCHING, EDGE, RING, ANCHORING, SPACEBAR };
|
||||
public enum IfcReinforcingBarTypeEnum { NOTDEFINED, USERDEFINED, MAIN, SHEAR, LIGATURE, STUD, PUNCHING, EDGE, RING, ANCHORING, [VersionAdded(ReleaseVersion.IFC4X2)] SPACEBAR };
|
||||
public enum IfcReinforcingMeshTypeEnum { NOTDEFINED, USERDEFINED };
|
||||
public enum IfcResourceConsumptionEnum { NOTDEFINED, USERDEFINED, CONSUMED, PARTIALLYCONSUMED, NOTCONSUMED, OCCUPIED, PARTIALLYOCCUPIED, NOTOCCUPIED };
|
||||
public enum IfcRibPlateDirectionEnum { DIRECTION_X, DIRECTION_Y };
|
||||
|
@ -261,7 +273,7 @@ namespace GeometryGym.Ifc
|
|||
public enum IfcRoofTypeEnum { NOTDEFINED, USERDEFINED, FLAT_ROOF, SHED_ROOF, GABLE_ROOF, HIP_ROOF, HIPPED_GABLE_ROOF, GAMBREL_ROOF, MANSARD_ROOF, BARREL_ROOF, RAINBOW_ROOF, BUTTERFLY_ROOF, PAVILION_ROOF, DOME_ROOF, FREEFORM };
|
||||
public enum IfcSanitaryTerminalTypeEnum { NOTDEFINED, USERDEFINED, BATH, BIDET, CISTERN, SHOWER, SINK, SANITARYFOUNTAIN, TOILETPAN, URINAL, WASHHANDBASIN, WCSEAT };
|
||||
public enum IfcSectionTypeEnum { UNIFORM, TAPERED };
|
||||
public enum IfcSensorTypeEnum { NOTDEFINED, USERDEFINED, COSENSOR, CO2SENSOR, FIRESENSOR, FLOWSENSOR, GASSENSOR, HEATSENSOR, HUMIDITYSENSOR, LIGHTSENSOR, MOISTURESENSOR, MOVEMENTSENSOR, PRESSURESENSOR, SMOKESENSOR, SOUNDSENSOR, TEMPERATURESENSOR, CONDUCTANCESENSOR, CONTACTSENSOR, FROSTSENSOR, IDENTIFIERSENSOR, IONCONCENTRATIONSENSOR, LEVELSENSOR, PHSENSOR, RADIATIONSENSOR, RADIOACTIVITYSENSOR, WINDSENSOR, EARTHQUAKESENSOR, FOREIGNOBJECTDETECTIONSENSOR, OBSTACLESENSOR, RAINSENSOR, SNOWDEPTHSENSOR, TRAINSENSOR, TURNOUTCLOSURESENSOR, WHEELSENSOR };
|
||||
public enum IfcSensorTypeEnum { NOTDEFINED, USERDEFINED, COSENSOR, CO2SENSOR, FIRESENSOR, FLOWSENSOR, GASSENSOR, HEATSENSOR, HUMIDITYSENSOR, LIGHTSENSOR, MOISTURESENSOR, MOVEMENTSENSOR, PRESSURESENSOR, SMOKESENSOR, SOUNDSENSOR, TEMPERATURESENSOR, CONDUCTANCESENSOR, CONTACTSENSOR, FROSTSENSOR, IDENTIFIERSENSOR, IONCONCENTRATIONSENSOR, LEVELSENSOR, PHSENSOR, RADIATIONSENSOR, RADIOACTIVITYSENSOR, WINDSENSOR, [VersionAdded(ReleaseVersion.IFC4X3)] EARTHQUAKESENSOR, [VersionAdded(ReleaseVersion.IFC4X3)] FOREIGNOBJECTDETECTIONSENSOR, [VersionAdded(ReleaseVersion.IFC4X3)] OBSTACLESENSOR, [VersionAdded(ReleaseVersion.IFC4X3)] RAINSENSOR, [VersionAdded(ReleaseVersion.IFC4X3)] SNOWDEPTHSENSOR, [VersionAdded(ReleaseVersion.IFC4X3)] TRAINSENSOR, [VersionAdded(ReleaseVersion.IFC4X3)] TURNOUTCLOSURESENSOR, [VersionAdded(ReleaseVersion.IFC4X3)] WHEELSENSOR };
|
||||
public enum IfcSequenceEnum { NOTDEFINED, USERDEFINED, START_START, START_FINISH, FINISH_START, FINISH_FINISH };
|
||||
public enum IfcServiceLifeTypeEnum { ACTUALSERVICELIFE, EXPECTEDSERVICELIFE, OPTIMISTICREFERENCESERVICELIFE, PESSIMISTICREFERENCESERVICELIFE, REFERENCESERVICELIFE };
|
||||
public enum IfcServiceLifeFactorTypeEnum { NOTDEFINED, USERDEFINED, A_QUALITYOFCOMPONENTS, B_DESIGNLEVEL, C_WORKEXECUTIONLEVEL, D_INDOORENVIRONMENT, E_OUTDOORENVIRONMENT, F_INUSECONDITIONS, G_MAINTENANCELEVEL };
|
||||
|
@ -271,13 +283,13 @@ namespace GeometryGym.Ifc
|
|||
public enum IfcSimplePropertyTemplateTypeEnum { NOTDEFINED, P_SINGLEVALUE, P_ENUMERATEDVALUE, P_BOUNDEDVALUE, P_LISTVALUE, P_TABLEVALUE, P_REFERENCEVALUE, Q_LENGTH, Q_AREA, Q_VOLUME, Q_COUNT, Q_WEIGHT, Q_TIME };
|
||||
public enum IfcSIPrefix { NONE, EXA, PETA, TERA, GIGA, MEGA, KILO, HECTO, DECA, DECI, CENTI, MILLI, MICRO, NANO, PICO, FEMTO, ATTO };
|
||||
public enum IfcSIUnitName { AMPERE, BECQUEREL, CANDELA, COULOMB, CUBIC_METRE, DEGREE_CELSIUS, FARAD, GRAM, GRAY, HENRY, HERTZ, JOULE, KELVIN, LUMEN, LUX, METRE, MOLE, NEWTON, OHM, PASCAL, RADIAN, SECOND, SIEMENS, SIEVERT, SQUARE_METRE, STERADIAN, TESLA, VOLT, WATT, WEBER };
|
||||
public enum IfcSlabTypeEnum { NOTDEFINED, USERDEFINED, FLOOR, ROOF, LANDING, BASESLAB, APPROACH_SLAB, PAVING, WEARING, SIDEWALK, TRACKSLAB };
|
||||
public enum IfcSlabTypeEnum { NOTDEFINED, USERDEFINED, FLOOR, ROOF, LANDING, BASESLAB, [VersionAdded(ReleaseVersion.IFC4X2)] APPROACH_SLAB, [VersionAdded(ReleaseVersion.IFC4X2)] PAVING, [VersionAdded(ReleaseVersion.IFC4X2)] WEARING, [VersionAdded(ReleaseVersion.IFC4X2)] SIDEWALK, [VersionAdded(ReleaseVersion.IFC4X3)] TRACKSLAB };
|
||||
public enum IfcSolarDeviceTypeEnum { NOTDEFINED, USERDEFINED, SOLARCOLLECTOR, SOLARPANEL };
|
||||
public enum IfcSoundScaleEnum { NOTDEFINED, USERDEFINED, DBA, DBB, DBC, NC, NR };
|
||||
public enum IfcSpaceHeaterTypeEnum { NOTDEFINED, USERDEFINED, SECTIONALRADIATOR, PANELRADIATOR, TUBULARRADIATOR, CONVECTOR, BASEBOARDHEATER, FINNEDTUBEUNIT, UNITHEATER, RADIATOR };
|
||||
public enum IfcSpaceTypeEnum { NOTDEFINED, USERDEFINED, SPACE, PARKING, GFA, INTERNAL, EXTERNAL, BERTH };
|
||||
public enum IfcSpatialZoneTypeEnum { NOTDEFINED, USERDEFINED, CONSTRUCTION, FIRESAFETY, LIGHTING, OCCUPANCY, SECURITY, THERMAL, VENTILATION, TRANSPORT, RESERVATION, INTERFERENCE };
|
||||
public enum IfcStairTypeEnum { NOTDEFINED, USERDEFINED, STRAIGHT_RUN_STAIR, TWO_STRAIGHT_RUN_STAIR, QUARTER_WINDING_STAIR, QUARTER_TURN_STAIR, HALF_WINDING_STAIR, HALF_TURN_STAIR, TWO_QUARTER_WINDING_STAIR, TWO_QUARTER_TURN_STAIR, THREE_QUARTER_WINDING_STAIR, THREE_QUARTER_TURN_STAIR, SPIRAL_STAIR, DOUBLE_RETURN_STAIR, CURVED_RUN_STAIR, TWO_CURVED_RUN_STAIR, LADDER };
|
||||
public enum IfcSpaceTypeEnum { NOTDEFINED, USERDEFINED, [VersionAdded(ReleaseVersion.IFC4)] SPACE, [VersionAdded(ReleaseVersion.IFC4)] PARKING, [VersionAdded(ReleaseVersion.IFC4)] GFA, INTERNAL, EXTERNAL, [VersionAdded(ReleaseVersion.IFC4X2)] BERTH };
|
||||
public enum IfcSpatialZoneTypeEnum { NOTDEFINED, USERDEFINED, CONSTRUCTION, FIRESAFETY, LIGHTING, OCCUPANCY, SECURITY, THERMAL, VENTILATION, TRANSPORT, [VersionAdded(ReleaseVersion.IFC4X3)] RESERVATION, [VersionAdded(ReleaseVersion.IFC4X3)] INTERFERENCE };
|
||||
public enum IfcStairTypeEnum { NOTDEFINED, USERDEFINED, STRAIGHT_RUN_STAIR, TWO_STRAIGHT_RUN_STAIR, QUARTER_WINDING_STAIR, QUARTER_TURN_STAIR, HALF_WINDING_STAIR, HALF_TURN_STAIR, TWO_QUARTER_WINDING_STAIR, TWO_QUARTER_TURN_STAIR, THREE_QUARTER_WINDING_STAIR, THREE_QUARTER_TURN_STAIR, SPIRAL_STAIR, DOUBLE_RETURN_STAIR, CURVED_RUN_STAIR, TWO_CURVED_RUN_STAIR, [VersionAdded(ReleaseVersion.IFC4X3)] LADDER };
|
||||
public enum IfcStackTerminalTypeEnum { NOTDEFINED, USERDEFINED, BIRDCAGE, COWL, RAINWATERHOPPER };
|
||||
public enum IfcStairFlightTypeEnum { NOTDEFINED, USERDEFINED, STRAIGHT, WINDER, SPIRAL, CURVED, FREEFORM };
|
||||
public enum IfcStateEnum { NOTDEFINED, READWRITE, READONLY, LOCKED, READWRITELOCKED, READONLYLOCKED };
|
||||
|
@ -286,12 +298,12 @@ namespace GeometryGym.Ifc
|
|||
public enum IfcStructuralSurfaceActivityTypeEnum { NOTDEFINED, USERDEFINED, CONST, BILINEAR, DISCRETE, ISOCONTOUR }
|
||||
public enum IfcStructuralSurfaceMemberTypeEnum { NOTDEFINED, USERDEFINED, BENDING_ELEMENT, MEMBRANE_ELEMENT, SHELL };
|
||||
public enum IfcSubContractResourceTypeEnum { NOTDEFINED, USERDEFINED, PURCHASE, WORK };
|
||||
public enum IfcSurfaceFeatureTypeEnum { NOTDEFINED, USERDEFINED, MARK, TAG, TREATMENT, DEFECT, HATCHMARKING, LINEMARKING, PAVEMENTSURFACEMARKING, SYMBOLMARKING, NONSKIDSURFACING, RUMBLESTRIP, TRANSVERSERUMBLESTRIP };
|
||||
public enum IfcSurfaceFeatureTypeEnum { NOTDEFINED, USERDEFINED, MARK, TAG, TREATMENT, [VersionAdded(ReleaseVersion.IFC4X2)] DEFECT, [VersionAdded(ReleaseVersion.IFC4X3)] HATCHMARKING, [VersionAdded(ReleaseVersion.IFC4X3)] LINEMARKING, [VersionAdded(ReleaseVersion.IFC4X3)] PAVEMENTSURFACEMARKING, [VersionAdded(ReleaseVersion.IFC4X3)] SYMBOLMARKING, [VersionAdded(ReleaseVersion.IFC4X3)] NONSKIDSURFACING, [VersionAdded(ReleaseVersion.IFC4X3)] RUMBLESTRIP, [VersionAdded(ReleaseVersion.IFC4X3)] TRANSVERSERUMBLESTRIP };
|
||||
public enum IfcSurfaceSide { POSITIVE, NEGATIVE, BOTH };
|
||||
public enum IfcSurfaceTextureEnum { NOTDEFINED, BUMP, OPACITY, REFLECTION, SELFILLUMINATION, SHININESS, SPECULAR, TEXTURE, TRANSPARENCYMAP };
|
||||
public enum IfcSwitchingDeviceTypeEnum { NOTDEFINED, USERDEFINED, CONTACTOR, EMERGENCYSTOP, STARTER, SWITCHDISCONNECTOR, TOGGLESWITCH, DIMMERSWITCH, KEYPAD, MOMENTARYSWITCH, SELECTORSWITCH, RELAY, START_AND_STOP_EQUIPMENT };
|
||||
public enum IfcSystemFurnitureElementTypeEnum { NOTDEFINED, USERDEFINED, PANEL, WORKSURFACE, SUBRACK };
|
||||
public enum IfcTankTypeEnum { NOTDEFINED, USERDEFINED, EXPANSION, PRESSUREVESSEL, PREFORMED, SECTIONAL, BASIN, BREAKPRESSURE, FEEDANDEXPANSION, STORAGE, VESSEL, OILRETENTIONTRAY }; //IFC4 DELETED
|
||||
public enum IfcSwitchingDeviceTypeEnum { NOTDEFINED, USERDEFINED, CONTACTOR, EMERGENCYSTOP, STARTER, SWITCHDISCONNECTOR, TOGGLESWITCH, DIMMERSWITCH, KEYPAD, MOMENTARYSWITCH, SELECTORSWITCH, [VersionAdded(ReleaseVersion.IFC4X3)] RELAY, [VersionAdded(ReleaseVersion.IFC4X3)] START_AND_STOP_EQUIPMENT };
|
||||
public enum IfcSystemFurnitureElementTypeEnum { NOTDEFINED, USERDEFINED, PANEL, WORKSURFACE, [VersionAdded(ReleaseVersion.IFC4X3)] SUBRACK };
|
||||
public enum IfcTankTypeEnum { NOTDEFINED, USERDEFINED, EXPANSION, PRESSUREVESSEL, PREFORMED, SECTIONAL, BASIN, BREAKPRESSURE, FEEDANDEXPANSION, STORAGE, VESSEL, [VersionAdded(ReleaseVersion.IFC4X3)] OILRETENTIONTRAY };
|
||||
public enum IfcTaskTypeEnum { NOTDEFINED, USERDEFINED, ATTENDANCE, CONSTRUCTION, DEMOLITION, DISMANTLE, DISPOSAL, INSTALLATION, LOGISTIC, MAINTENANCE, MOVE, OPERATION, REMOVAL, RENOVATION }; //IFC4
|
||||
public enum IfcTaskDurationEnum { NOTDEFINED, ELAPSEDTIME, WORKTIME };
|
||||
public enum IfcTendonTypeEnum { NOTDEFINED, USERDEFINED, STRAND, WIRE, BAR, COATED };
|
||||
|
@ -303,22 +315,22 @@ namespace GeometryGym.Ifc
|
|||
public enum IfcTimeSeriesDataTypeEnum { NOTDEFINED, CONTINUOUS, DISCRETE, DISCRETEBINARY, PIECEWISEBINARY, PIECEWISECONSTANT, PIECEWISECONTINUOUS };
|
||||
public enum IfcTimeSeriesScheduleTypeEnum { NOTDEFINED, USERDEFINED, ANNUAL, MONTHLY, WEEKLY, DAILY };
|
||||
public enum IfcTrackElementTypeEnum { NOTDEFINED, USERDEFINED, TRACKENDOFALIGNMENT, BLOCKINGDEVICE, VEHICLESTOP, SLEEPER, HALF_SET_OF_BLADES, SPEEDREGULATOR, DERAILER, FROG };
|
||||
public enum IfcTransformerTypeEnum { NOTDEFINED, USERDEFINED, CURRENT, FREQUENCY, VOLTAGE, INVERTER, RECTIFIER, CHOPPER, COMBINED };
|
||||
public enum IfcTransformerTypeEnum { NOTDEFINED, USERDEFINED, CURRENT, FREQUENCY, VOLTAGE, INVERTER, RECTIFIER, [VersionAdded(ReleaseVersion.IFC4X3)] CHOPPER, [VersionAdded(ReleaseVersion.IFC4X3)] COMBINED };
|
||||
public enum IfcTransitionCode { DISCONTINUOUS, CONTINUOUS, CONTSAMEGRADIENT, CONTSAMEGRADIENTSAMECURVATURE };
|
||||
public enum IfcTransitionCurveType { BIQUADRATICPARABOLA, BLOSSCURVE, CLOTHOIDCURVE, COSINECURVE, CUBICPARABOLA, SINECURVE };
|
||||
public enum IfcTransportElementTypeEnum { NOTDEFINED, USERDEFINED, ELEVATOR, ESCALATOR, MOVINGWALKWAY, CRANEWAY, LIFTINGGEAR, HAULINGGEAR };
|
||||
public enum IfcTrimmingPreference { UNSPECIFIED, CARTESIAN, PARAMETER };
|
||||
public enum IfcTubeBundleTypeEnum { NOTDEFINED, USERDEFINED, FINNED };
|
||||
public enum IfcUnitaryControlElementTypeEnum { NOTDEFINED, USERDEFINED, ALARMPANEL, CONTROLPANEL, GASDETECTIONPANEL, INDICATORPANEL, MIMICPANEL, HUMIDISTAT, THERMOSTAT, WEATHERSTATION, COMBINED, BASESTATIONCONTROLLER };
|
||||
public enum IfcUnitaryControlElementTypeEnum { NOTDEFINED, USERDEFINED, ALARMPANEL, CONTROLPANEL, GASDETECTIONPANEL, INDICATORPANEL, MIMICPANEL, HUMIDISTAT, THERMOSTAT, WEATHERSTATION, [VersionAdded(ReleaseVersion.IFC4X3)] COMBINED, [VersionAdded(ReleaseVersion.IFC4X3)] BASESTATIONCONTROLLER };
|
||||
public enum IfcUnitaryEquipmentTypeEnum { NOTDEFINED, USERDEFINED, AIRHANDLER, AIRCONDITIONINGUNIT, SPLITSYSTEM, ROOFTOPUNIT, DEHUMIDIFIER };
|
||||
public enum IfcUnitEnum { USERDEFINED, ABSORBEDDOSEUNIT, AMOUNTOFSUBSTANCEUNIT, AREAUNIT, DOSEEQUIVALENTUNIT, ELECTRICCAPACITANCEUNIT, ELECTRICCHARGEUNIT, ELECTRICCONDUCTANCEUNIT, ELECTRICCURRENTUNIT, ELECTRICRESISTANCEUNIT, ELECTRICVOLTAGEUNIT, ENERGYUNIT, FORCEUNIT, FREQUENCYUNIT, ILLUMINANCEUNIT, INDUCTANCEUNIT, LENGTHUNIT, LUMINOUSFLUXUNIT, LUMINOUSINTENSITYUNIT, MAGNETICFLUXDENSITYUNIT, MAGNETICFLUXUNIT, MASSUNIT, PLANEANGLEUNIT, POWERUNIT, PRESSUREUNIT, RADIOACTIVITYUNIT, SOLIDANGLEUNIT, THERMODYNAMICTEMPERATUREUNIT, TIMEUNIT, VOLUMEUNIT };
|
||||
public enum IfcValveTypeEnum { NOTDEFINED, USERDEFINED, AIRRELEASE, ANTIVACUUM, CHANGEOVER, CHECK, COMMISSIONING, DIVERTING, DRAWOFFCOCK, DOUBLECHECK, DOUBLEREGULATING, FAUCET, FLUSHING, GASCOCK, GASTAP, ISOLATING, MIXING, PRESSUREREDUCING, PRESSURERELIEF, REGULATING, SAFETYCUTOFF, STEAMTRAP, STOPCOCK };
|
||||
public enum IfcVehicleTypeEnum { NOTDEFINED, USERDEFINED, CARGO, ROLLINGSTOCK, VEHICLE, VEHICLEAIR, VEHICLEMARINE, VEHICLETRACKED, VEHICLEWHEELED };
|
||||
public enum IfcVibrationDamperTypeEnum { NOTDEFINED, USERDEFINED, BENDING_YIELD, SHEAR_YIELD, AXIAL_YIELD, FRICTION, VISCOUS, RUBBER };
|
||||
public enum IfcVibrationIsolatorTypeEnum { NOTDEFINED, USERDEFINED, COMPRESSION, SPRING, BASE };
|
||||
public enum IfcVibrationIsolatorTypeEnum { NOTDEFINED, USERDEFINED, COMPRESSION, SPRING, [VersionAdded(ReleaseVersion.IFC4X2)] BASE };
|
||||
public enum IfcVirtualElementTypeEnum { NOTDEFINED, USERDEFINED, BOUNDARY, CLEARANCE, PROVISIONFORVOID };
|
||||
public enum IfcVoidingFeatureTypeEnum { NOTDEFINED, USERDEFINED, CUTOUT, NOTCH, HOLE, MITER, CHAMFER, EDGE };
|
||||
public enum IfcWallTypeEnum { NOTDEFINED, USERDEFINED, STANDARD, ELEMENTEDWALL, MOVABLE, PARAPET, PARTITIONING, PLUMBINGWALL, POLYGONAL, SHEAR, SOLIDWALL, RETAININGWALL, WAVEWALL }; //IFC4 change STANDARD, POLYGONAL, ELEMENTEDWALL
|
||||
public enum IfcWallTypeEnum { NOTDEFINED, USERDEFINED, [VersionAdded(ReleaseVersion.IFC4)] STANDARD, [VersionAdded(ReleaseVersion.IFC4)] ELEMENTEDWALL, MOVABLE, PARAPET, PARTITIONING, PLUMBINGWALL, [VersionAdded(ReleaseVersion.IFC4)] POLYGONAL, SHEAR, SOLIDWALL, [VersionAdded(ReleaseVersion.IFC4X2)] RETAININGWALL, [VersionAdded(ReleaseVersion.IFC4X3)] WAVEWALL }; //IFC4 change STANDARD, POLYGONAL, ELEMENTEDWALL
|
||||
public enum IfcWasteTerminalTypeEnum { NOTDEFINED, USERDEFINED, FLOORTRAP, FLOORWASTE, GULLYSUMP, GULLYTRAP, GREASEINTERCEPTOR, OILINTERCEPTOR, PETROLINTERCEPTOR, ROOFDRAIN, WASTEDISPOSALUNIT, WASTETRAP }; // IFC4
|
||||
public enum IfcWindowPanelOperationEnum { NOTDEFINED, SIDEHUNGRIGHTHAND, SIDEHUNGLEFTHAND, TILTANDTURNRIGHTHAND, TILTANDTURNLEFTHAND, TOPHUNG, BOTTOMHUNG, PIVOTHORIZONTAL, PIVOTVERTICAL, SLIDINGHORIZONTAL, SLIDINGVERTICAL, REMOVABLECASEMENT, FIXEDCASEMENT, OTHEROPERATION };
|
||||
public enum IfcWindowPanelPositionEnum { NOTDEFINED, LEFT, MIDDLE, RIGHT, BOTTOM, TOP };
|
||||
|
|
|
@ -101,22 +101,22 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcActuator : IfcDistributionControlElement //IFC4
|
||||
{
|
||||
internal IfcActuatorTypeEnum mPredefinedType = IfcActuatorTypeEnum.NOTDEFINED;
|
||||
public IfcActuatorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcActuatorTypeEnum mPredefinedType = IfcActuatorTypeEnum.NOTDEFINED;
|
||||
public IfcActuatorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcActuatorTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcActuator() : base() { }
|
||||
internal IfcActuator(DatabaseIfc db, IfcActuator a, DuplicateOptions options) : base(db,a, options) { mPredefinedType = a.mPredefinedType; }
|
||||
internal IfcActuator(DatabaseIfc db, IfcActuator a, DuplicateOptions options) : base(db,a, options) { PredefinedType = a.mPredefinedType; }
|
||||
public IfcActuator(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement,representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcActuatorType : IfcDistributionControlElementType
|
||||
{
|
||||
internal IfcActuatorTypeEnum mPredefinedType = IfcActuatorTypeEnum.NOTDEFINED;// : IfcActuatorTypeEnum;
|
||||
public IfcActuatorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcActuatorTypeEnum mPredefinedType = IfcActuatorTypeEnum.NOTDEFINED;// : IfcActuatorTypeEnum;
|
||||
public IfcActuatorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcActuatorTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcActuatorType() : base() { }
|
||||
internal IfcActuatorType(DatabaseIfc db, IfcActuatorType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcActuatorType(DatabaseIfc m, string name, IfcActuatorTypeEnum t) : base(m) { Name = name; mPredefinedType = t; }
|
||||
internal IfcActuatorType(DatabaseIfc db, IfcActuatorType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.mPredefinedType; }
|
||||
public IfcActuatorType(DatabaseIfc db, string name, IfcActuatorTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Serializable]
|
||||
public abstract partial class IfcAddress : BaseClassIfc, IfcObjectReferenceSelect //ABSTRACT SUPERTYPE OF(ONEOF(IfcPostalAddress, IfcTelecomAddress));
|
||||
|
@ -168,88 +168,88 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcAirTerminal : IfcFlowTerminal //IFC4
|
||||
{
|
||||
internal IfcAirTerminalTypeEnum mPredefinedType = IfcAirTerminalTypeEnum.NOTDEFINED;// OPTIONAL : IfcAirTerminalTypeEnum;
|
||||
public IfcAirTerminalTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcAirTerminalTypeEnum mPredefinedType = IfcAirTerminalTypeEnum.NOTDEFINED;// OPTIONAL : IfcAirTerminalTypeEnum;
|
||||
public IfcAirTerminalTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcAirTerminalTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcAirTerminal() : base() { }
|
||||
internal IfcAirTerminal(DatabaseIfc db, IfcAirTerminal t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
internal IfcAirTerminal(DatabaseIfc db, IfcAirTerminal t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcAirTerminal(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcAirTerminalBox : IfcFlowController //IFC4
|
||||
{
|
||||
internal IfcAirTerminalBoxTypeEnum mPredefinedType = IfcAirTerminalBoxTypeEnum.NOTDEFINED;// OPTIONAL : IfcAirTerminalBoxTypeEnum;
|
||||
public IfcAirTerminalBoxTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcAirTerminalBoxTypeEnum mPredefinedType = IfcAirTerminalBoxTypeEnum.NOTDEFINED;// OPTIONAL : IfcAirTerminalBoxTypeEnum;
|
||||
public IfcAirTerminalBoxTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcAirTerminalBoxTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcAirTerminalBox() : base() { }
|
||||
internal IfcAirTerminalBox(DatabaseIfc db, IfcAirTerminalBox b, DuplicateOptions options) : base(db, b, options) { mPredefinedType = b.mPredefinedType; }
|
||||
internal IfcAirTerminalBox(DatabaseIfc db, IfcAirTerminalBox b, DuplicateOptions options) : base(db, b, options) { PredefinedType = b.PredefinedType; }
|
||||
public IfcAirTerminalBox(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcAirTerminalBoxType : IfcFlowControllerType
|
||||
{
|
||||
internal IfcAirTerminalBoxTypeEnum mPredefinedType = IfcAirTerminalBoxTypeEnum.NOTDEFINED;// : IfcAirTerminalBoxTypeEnum;
|
||||
public IfcAirTerminalBoxTypeEnum PredefinedType { get { return mPredefinedType;} set { mPredefinedType = value; } }
|
||||
private IfcAirTerminalBoxTypeEnum mPredefinedType = IfcAirTerminalBoxTypeEnum.NOTDEFINED;// : IfcAirTerminalBoxTypeEnum;
|
||||
public IfcAirTerminalBoxTypeEnum PredefinedType { get { return mPredefinedType;} set { mPredefinedType = validPredefinedType<IfcAirTerminalBoxTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcAirTerminalBoxType() : base() { }
|
||||
internal IfcAirTerminalBoxType(DatabaseIfc db, IfcAirTerminalBoxType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcAirTerminalBoxType(DatabaseIfc m, string name, IfcAirTerminalBoxTypeEnum type) : base(m) { Name = name; mPredefinedType = type; }
|
||||
internal IfcAirTerminalBoxType(DatabaseIfc db, IfcAirTerminalBoxType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.mPredefinedType; }
|
||||
public IfcAirTerminalBoxType(DatabaseIfc db, string name, IfcAirTerminalBoxTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcAirTerminalType : IfcFlowTerminalType
|
||||
{
|
||||
internal IfcAirTerminalTypeEnum mPredefinedType = IfcAirTerminalTypeEnum.NOTDEFINED;// : IfcAirTerminalBoxTypeEnum;
|
||||
public IfcAirTerminalTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcAirTerminalTypeEnum mPredefinedType = IfcAirTerminalTypeEnum.NOTDEFINED;// : IfcAirTerminalBoxTypeEnum;
|
||||
public IfcAirTerminalTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcAirTerminalTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcAirTerminalType() : base() { }
|
||||
internal IfcAirTerminalType(DatabaseIfc db, IfcAirTerminalType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcAirTerminalType(DatabaseIfc m, string name, IfcAirTerminalTypeEnum type) : base(m) { Name = name; mPredefinedType = type; }
|
||||
internal IfcAirTerminalType(DatabaseIfc db, IfcAirTerminalType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.mPredefinedType; }
|
||||
public IfcAirTerminalType(DatabaseIfc db, string name, IfcAirTerminalTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcAirToAirHeatRecovery : IfcEnergyConversionDevice //IFC4
|
||||
{
|
||||
internal IfcAirToAirHeatRecoveryTypeEnum mPredefinedType = IfcAirToAirHeatRecoveryTypeEnum.NOTDEFINED;
|
||||
public IfcAirToAirHeatRecoveryTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcAirToAirHeatRecoveryTypeEnum mPredefinedType = IfcAirToAirHeatRecoveryTypeEnum.NOTDEFINED;
|
||||
public IfcAirToAirHeatRecoveryTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcAirToAirHeatRecoveryTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcAirToAirHeatRecovery() : base() { }
|
||||
internal IfcAirToAirHeatRecovery(DatabaseIfc db, IfcAirToAirHeatRecovery a, DuplicateOptions options) : base(db, a, options) { mPredefinedType = a.mPredefinedType; }
|
||||
internal IfcAirToAirHeatRecovery(DatabaseIfc db, IfcAirToAirHeatRecovery a, DuplicateOptions options) : base(db, a, options) { PredefinedType = a.mPredefinedType; }
|
||||
public IfcAirToAirHeatRecovery(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcAirToAirHeatRecoveryType : IfcEnergyConversionDeviceType
|
||||
{
|
||||
internal IfcAirToAirHeatRecoveryTypeEnum mPredefinedType = IfcAirToAirHeatRecoveryTypeEnum.NOTDEFINED;// : IfcAirToAirHeatRecoveryTypeEnum;
|
||||
public IfcAirToAirHeatRecoveryTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcAirToAirHeatRecoveryTypeEnum mPredefinedType = IfcAirToAirHeatRecoveryTypeEnum.NOTDEFINED;// : IfcAirToAirHeatRecoveryTypeEnum;
|
||||
public IfcAirToAirHeatRecoveryTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcAirToAirHeatRecoveryTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcAirToAirHeatRecoveryType() : base() { }
|
||||
internal IfcAirToAirHeatRecoveryType(DatabaseIfc db, IfcAirToAirHeatRecoveryType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcAirToAirHeatRecoveryType(DatabaseIfc m, string name, IfcAirToAirHeatRecoveryTypeEnum type) : base(m) { Name = name; mPredefinedType = type; }
|
||||
internal IfcAirToAirHeatRecoveryType(DatabaseIfc db, IfcAirToAirHeatRecoveryType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.mPredefinedType; }
|
||||
public IfcAirToAirHeatRecoveryType(DatabaseIfc db, string name, IfcAirToAirHeatRecoveryTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcAlarm : IfcDistributionControlElement //IFC4
|
||||
{
|
||||
internal IfcAlarmTypeEnum mPredefinedType = IfcAlarmTypeEnum.NOTDEFINED;
|
||||
public IfcAlarmTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcAlarmTypeEnum mPredefinedType = IfcAlarmTypeEnum.NOTDEFINED;
|
||||
public IfcAlarmTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcAlarmTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcAlarm() : base() { }
|
||||
internal IfcAlarm(DatabaseIfc db, IfcAlarm a, DuplicateOptions options) : base(db, a, options) { mPredefinedType = a.mPredefinedType; }
|
||||
internal IfcAlarm(DatabaseIfc db, IfcAlarm a, DuplicateOptions options) : base(db, a, options) { PredefinedType = a.PredefinedType; }
|
||||
public IfcAlarm(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcAlarmType : IfcDistributionControlElementType
|
||||
{
|
||||
internal IfcAlarmTypeEnum mPredefinedType = IfcAlarmTypeEnum.NOTDEFINED;// : IfcAlarmTypeEnum;
|
||||
public IfcAlarmTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcAlarmTypeEnum mPredefinedType = IfcAlarmTypeEnum.NOTDEFINED;// : IfcAlarmTypeEnum;
|
||||
public IfcAlarmTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcAlarmTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcAlarmType() : base() { }
|
||||
internal IfcAlarmType(DatabaseIfc db, IfcAlarmType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcAlarmType(DatabaseIfc db, string name, IfcAlarmTypeEnum t) : base(db) { Name = name; mPredefinedType = t; }
|
||||
internal IfcAlarmType(DatabaseIfc db, IfcAlarmType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcAlarmType(DatabaseIfc db, string name, IfcAlarmTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcAlignment : IfcLinearPositioningElement //IFC4.1
|
||||
{
|
||||
internal IfcAlignmentTypeEnum mPredefinedType = IfcAlignmentTypeEnum.NOTDEFINED;// : OPTIONAL IfcAlignmentTypeEnum;
|
||||
public IfcAlignmentTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcAlignmentTypeEnum mPredefinedType = IfcAlignmentTypeEnum.NOTDEFINED;// : OPTIONAL IfcAlignmentTypeEnum;
|
||||
public IfcAlignmentTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcAlignmentTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcAlignment() : base() { }
|
||||
internal IfcAlignment(DatabaseIfc db, IfcAlignment alignment, DuplicateOptions options)
|
||||
|
@ -283,14 +283,14 @@ namespace GeometryGym.Ifc
|
|||
public IfcAlignment(IfcSite host, IfcObjectPlacement placement, IfcAlignmentHorizontal horizontal, IfcAlignmentVertical vertical, IfcAlignmentCant cant, IfcCurve axis)
|
||||
: this(placement, horizontal, vertical, cant, host, axis) { }
|
||||
|
||||
internal override bool isDuplicate(BaseClassIfc e, bool includeAggregated, double tol)
|
||||
internal override bool isDuplicate(BaseClassIfc e, OptionsTestDuplicate options)
|
||||
{
|
||||
IfcAlignment alignment = e as IfcAlignment;
|
||||
if (alignment == null)
|
||||
return false;
|
||||
if (PredefinedType != alignment.PredefinedType)
|
||||
return false;
|
||||
return base.isDuplicate(e, includeAggregated, tol);
|
||||
return base.isDuplicate(e, options);
|
||||
}
|
||||
}
|
||||
[Obsolete("DEPRECATED IFC4X3", false)]
|
||||
|
@ -875,7 +875,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
return isDuplicate(horizontal, tol);
|
||||
}
|
||||
internal override bool isDuplicate(BaseClassIfc e, bool includeAggregated, double tol)
|
||||
internal override bool isDuplicate(BaseClassIfc e, OptionsTestDuplicate options)
|
||||
{
|
||||
IfcAlignmentHorizontal horizontal = e as IfcAlignmentHorizontal;
|
||||
if (horizontal == null)
|
||||
|
@ -887,7 +887,7 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
else if (double.IsNaN(horizontal.mStartDistAlong))
|
||||
return false;
|
||||
else if (Math.Abs(mStartDistAlong - horizontal.mStartDistAlong) > tol)
|
||||
else if (Math.Abs(mStartDistAlong - horizontal.mStartDistAlong) > options.Tolerance)
|
||||
return false;
|
||||
|
||||
if (mHorizontalSegments.Count != horizontal.mHorizontalSegments.Count)
|
||||
|
@ -897,11 +897,11 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
IfcAlignmentHorizontalSegment segment1 = mHorizontalSegments[icounter];
|
||||
IfcAlignmentHorizontalSegment segment2 = horizontal.mHorizontalSegments[icounter];
|
||||
if (!segment1.isDuplicate(segment2, tol))
|
||||
if (!segment1.isDuplicate(segment2, options.Tolerance))
|
||||
return false;
|
||||
}
|
||||
|
||||
return base.isDuplicate(e, includeAggregated, tol);
|
||||
return base.isDuplicate(e, options);
|
||||
}
|
||||
}
|
||||
[Serializable]
|
||||
|
@ -1173,14 +1173,14 @@ namespace GeometryGym.Ifc
|
|||
DesignParameters = design;
|
||||
}
|
||||
|
||||
internal override bool isDuplicate(BaseClassIfc e, bool includeAggregated, double tol)
|
||||
internal override bool isDuplicate(BaseClassIfc e, OptionsTestDuplicate options)
|
||||
{
|
||||
IfcAlignmentSegment segment = e as IfcAlignmentSegment;
|
||||
if (segment == null)
|
||||
return false;
|
||||
if (!mDesignParameters.isDuplicate(segment.mDesignParameters, tol))
|
||||
if (!mDesignParameters.isDuplicate(segment.mDesignParameters, options.Tolerance))
|
||||
return false;
|
||||
return base.isDuplicate(e, includeAggregated, tol);
|
||||
return base.isDuplicate(e, options);
|
||||
}
|
||||
}
|
||||
[Serializable]
|
||||
|
@ -1358,19 +1358,31 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcAnnotation : IfcProduct
|
||||
{
|
||||
internal IfcAnnotationTypeEnum mPredefinedType = IfcAnnotationTypeEnum.NOTDEFINED;//: OPTIONAL IfcBeamTypeEnum; IFC4
|
||||
public IfcAnnotationTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcAnnotationTypeEnum mPredefinedType = IfcAnnotationTypeEnum.NOTDEFINED;//: OPTIONAL IfcBeamTypeEnum; IFC4
|
||||
public IfcAnnotationTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcAnnotationTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcAnnotation() : base() { }
|
||||
public IfcAnnotation(DatabaseIfc db) : base(db) { }
|
||||
internal IfcAnnotation(DatabaseIfc db, IfcAnnotation a, DuplicateOptions options) : base(db, a, options) { }
|
||||
public IfcAnnotation(IfcProduct host) : base(host.mDatabase) { host.AddElement(this); }
|
||||
public IfcAnnotation(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation)
|
||||
: base(host.Database)
|
||||
{
|
||||
if (host is IfcSpatialElement spatialElement)
|
||||
spatialElement.AddElement(this);
|
||||
else
|
||||
host.AddAggregated(this);
|
||||
ObjectPlacement = placement;
|
||||
Representation = representation;
|
||||
}
|
||||
|
||||
}
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
[Serializable]
|
||||
public abstract partial class IfcAnnotationCurveOccurrence : IfcAnnotationOccurrence //IFC4 DEPRECATED
|
||||
{
|
||||
protected IfcAnnotationCurveOccurrence() : base() { }
|
||||
protected IfcAnnotationCurveOccurrence(DatabaseIfc db) : base(db) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcAnnotationFillArea : IfcGeometricRepresentationItem
|
||||
|
@ -1402,6 +1414,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected IfcAnnotationOccurrence(DatabaseIfc db, IfcAnnotationOccurrence o, DuplicateOptions options) : base(db, o, options) { }
|
||||
protected IfcAnnotationOccurrence() : base() { }
|
||||
protected IfcAnnotationOccurrence(DatabaseIfc db) : base(db) { }
|
||||
}
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
[Serializable]
|
||||
|
@ -1428,6 +1441,8 @@ namespace GeometryGym.Ifc
|
|||
public partial class IfcAnnotationSymbolOccurrence : IfcAnnotationOccurrence //IFC4 DEPRECATED
|
||||
{
|
||||
internal IfcAnnotationSymbolOccurrence() : base() { }
|
||||
internal IfcAnnotationSymbolOccurrence(DatabaseIfc db) : base(db) { }
|
||||
internal IfcAnnotationSymbolOccurrence(DatabaseIfc db, IfcAnnotationSymbolOccurrence o, DuplicateOptions options) : base(db, o, options) { }
|
||||
}
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
[Serializable]
|
||||
|
@ -1519,7 +1534,7 @@ namespace GeometryGym.Ifc
|
|||
internal string mName = "";// : OPTIONAL IfcLabel;
|
||||
internal string mDescription = "";// : OPTIONAL IfcText;
|
||||
internal IfcAppliedValueSelect mAppliedValue = null;// : OPTIONAL IfcAppliedValueSelect;
|
||||
internal int mUnitBasis;// : OPTIONAL IfcMeasureWithUnit;
|
||||
internal IfcMeasureWithUnit mUnitBasis = null;// : OPTIONAL IfcMeasureWithUnit;
|
||||
internal DateTime mApplicableDate = DateTime.MinValue;// : OPTIONAL IfcDateTimeSelect; 4 IfcDate
|
||||
internal DateTime mFixedUntilDate = DateTime.MinValue;// : OPTIONAL IfcDateTimeSelect; 4 IfcDate
|
||||
private IfcDateTimeSelect mSSApplicableDate = null;
|
||||
|
@ -1536,7 +1551,7 @@ namespace GeometryGym.Ifc
|
|||
public string Name { get { return mName; } set { mName = value; } }
|
||||
public string Description { get { return mDescription; } set { mDescription = value; } }
|
||||
public IfcAppliedValueSelect AppliedValue { get { return mAppliedValue; } set { mAppliedValue = value; } }
|
||||
public IfcMeasureWithUnit UnitBasis { get { return mDatabase[mUnitBasis] as IfcMeasureWithUnit; } set { mUnitBasis = (value == null ? 0 : value.mIndex); } }
|
||||
public IfcMeasureWithUnit UnitBasis { get { return mUnitBasis; } set { mUnitBasis = value; } }
|
||||
public DateTime ApplicableDate { get { return mApplicableDate; } set { mApplicableDate = value; } }
|
||||
public DateTime FixedUntilDate { get { return mFixedUntilDate; } set { mFixedUntilDate = value; } }
|
||||
public string Category { get { return mCategory; } set { mCategory = value; } }
|
||||
|
@ -1725,53 +1740,61 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public void AddConstraintRelationShip(IfcResourceConstraintRelationship constraintRelationship) { mHasConstraintRelationships.Add(constraintRelationship); }
|
||||
}
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
[Obsolete("DELETED IFC4", false)]
|
||||
[Serializable]
|
||||
public partial class IfcApprovalActorRelationship : BaseClassIfc //DEPRECATED IFC4
|
||||
{
|
||||
internal int mActor;// : IfcActorSelect;
|
||||
internal int mApproval;// : IfcApproval;
|
||||
internal int mRole;// : IfcActorRole;
|
||||
internal IfcActorSelect mActor;// : IfcActorSelect;
|
||||
internal IfcApproval mApproval;// : IfcApproval;
|
||||
internal IfcActorRole mRole;// : IfcActorRole;
|
||||
internal IfcApprovalActorRelationship() : base() { }
|
||||
//internal IfcApprovalActorRelationship(IfcApprovalActorRelationship o) : base() { mActor = o.mActor; mApproval = o.mApproval; mRole = o.mRole; }
|
||||
internal IfcApprovalActorRelationship(DatabaseIfc db) : base(db) { }
|
||||
internal IfcApprovalActorRelationship(IfcActorSelect actor, IfcApproval approval, IfcActorRole role)
|
||||
: base(actor.Database) { mActor = actor; mApproval = approval; mRole = role; }
|
||||
}
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
[Obsolete("DELETED IFC4", false)]
|
||||
[Serializable]
|
||||
public partial class IfcApprovalPropertyRelationship : BaseClassIfc //DEPRECATED IFC4
|
||||
{
|
||||
internal List<int> mApprovedProperties = new List<int>();// : SET [1:?] OF IfcProperty;
|
||||
internal int mApproval;// : IfcApproval;
|
||||
internal SET<IfcProperty> mApprovedProperties = new SET<IfcProperty>();// : SET [1:?] OF IfcProperty;
|
||||
internal IfcApproval mApproval;// : IfcApproval;
|
||||
internal IfcApprovalPropertyRelationship() : base() { }
|
||||
//internal IfcApprovalPropertyRelationship(IfcApprovalPropertyRelationship o) : base() { mApprovedProperties = new List<int>(o.mApprovedProperties.ToArray()); mApproval = o.mApproval; }
|
||||
internal IfcApprovalPropertyRelationship(DatabaseIfc db) : base(db) { }
|
||||
internal IfcApprovalPropertyRelationship(IEnumerable<IfcProperty> properties, IfcApproval approval)
|
||||
: base(approval.Database) { mApprovedProperties.AddRange(properties); mApproval = approval; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcApprovalRelationship : IfcResourceLevelRelationship //IFC4Change
|
||||
{
|
||||
internal int mRelatedApproval;// : IfcApproval;
|
||||
internal int mRelatingApproval;// : IfcApproval;
|
||||
internal IfcApproval mRelatedApproval;// : IfcApproval;
|
||||
internal IfcApproval mRelatingApproval;// : IfcApproval;
|
||||
internal IfcApprovalRelationship() : base() { }
|
||||
// internal IfcApprovalRelationship(IfcApprovalRelationship o) : base(o) { mRelatedApproval = o.mRelatedApproval; mRelatingApproval = o.mRelatingApproval; }
|
||||
internal IfcApprovalRelationship(DatabaseIfc db) : base(db) { }
|
||||
internal IfcApprovalRelationship(IfcApproval related, IfcApproval relating)
|
||||
: base(related.Database) { mRelatedApproval = related; mRelatingApproval = relating; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcArbitraryClosedProfileDef : IfcProfileDef //SUPERTYPE OF(IfcArbitraryProfileDefWithVoids)
|
||||
{
|
||||
private int mOuterCurve;//: IfcCurve;
|
||||
public IfcCurve OuterCurve { get { return mDatabase[mOuterCurve] as IfcCurve; } set { mOuterCurve = value.mIndex; } }
|
||||
private IfcCurve mOuterCurve;//: IfcCurve;
|
||||
public IfcCurve OuterCurve { get { return mOuterCurve; } set { mOuterCurve = value; } }
|
||||
|
||||
internal IfcArbitraryClosedProfileDef() : base() { }
|
||||
internal IfcArbitraryClosedProfileDef(DatabaseIfc db, IfcArbitraryClosedProfileDef p, DuplicateOptions options)
|
||||
: base(db, p, options) { OuterCurve = p.OuterCurve.Duplicate(db, options) as IfcCurve; }
|
||||
public IfcArbitraryClosedProfileDef(string name, IfcCurve boundedCurve) : base(boundedCurve.mDatabase,name) { mOuterCurve = boundedCurve.mIndex; }//if (string.Compare(getKW, mKW) == 0) mModel.mArbProfiles.Add(this); }
|
||||
public IfcArbitraryClosedProfileDef(string name, IfcCurve boundedCurve)
|
||||
: base(boundedCurve.mDatabase,name) { mOuterCurve = boundedCurve; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcArbitraryOpenProfileDef : IfcProfileDef // SUPERTYPE OF(IfcCenterLineProfileDef)
|
||||
{
|
||||
private int mCurve;// : IfcBoundedCurve
|
||||
public IfcBoundedCurve Curve { get { return mDatabase[mCurve] as IfcBoundedCurve; } set { mCurve = value.mIndex; } }
|
||||
private IfcBoundedCurve mCurve;// : IfcBoundedCurve
|
||||
public IfcBoundedCurve Curve { get { return mCurve; } set { mCurve = value; } }
|
||||
|
||||
internal IfcArbitraryOpenProfileDef() : base() { }
|
||||
internal IfcArbitraryOpenProfileDef(DatabaseIfc db, IfcArbitraryOpenProfileDef p, DuplicateOptions options) : base(db, p, options) { Curve = p.Curve.Duplicate(db, options) as IfcBoundedCurve; }
|
||||
public IfcArbitraryOpenProfileDef(string name, IfcBoundedCurve boundedCurve) : base(boundedCurve.mDatabase,name) { mCurve = boundedCurve.mIndex; mProfileType = IfcProfileTypeEnum.CURVE; }
|
||||
public IfcArbitraryOpenProfileDef(string name, IfcBoundedCurve boundedCurve)
|
||||
: base(boundedCurve.mDatabase,name) { mCurve = boundedCurve; mProfileType = IfcProfileTypeEnum.CURVE; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcArbitraryProfileDefWithVoids : IfcArbitraryClosedProfileDef
|
||||
|
@ -1797,44 +1820,44 @@ namespace GeometryGym.Ifc
|
|||
public partial class IfcAsset : IfcGroup
|
||||
{
|
||||
internal string mIdentification = "";// ifc2x3 AssetID; : OPTIONAL IfcIdentifier;
|
||||
internal int mOriginalValue;// : OPTIONAL IfcCostValue;
|
||||
internal int mCurrentValue;// : OPTIONAL IfcCostValue;
|
||||
internal int mTotalReplacementCost;// : OPTIONAL IfcCostValue;
|
||||
internal int mOwner;// : IfcActorSelect;
|
||||
internal int mUser;// : IfcActorSelect;
|
||||
internal int mResponsiblePerson;// : IfcPerson;
|
||||
internal IfcCostValue mOriginalValue = null;// : OPTIONAL IfcCostValue;
|
||||
internal IfcCostValue mCurrentValue = null;// : OPTIONAL IfcCostValue;
|
||||
internal IfcCostValue mTotalReplacementCost = null;// : OPTIONAL IfcCostValue;
|
||||
internal IfcActorSelect mOwner;// : IfcActorSelect;
|
||||
internal IfcActorSelect mUser;// : IfcActorSelect;
|
||||
internal IfcPerson mResponsiblePerson;// : IfcPerson;
|
||||
internal DateTime mIncorporationDate = DateTime.MinValue; // : IfcDate
|
||||
internal int mIncorporationDateSS;// : IfcDate Ifc2x3 IfcCalendarDate;
|
||||
internal int mDepreciatedValue;// : IfcCostValue;
|
||||
internal IfcCalendarDate mIncorporationDateSS;// : IfcDate Ifc2x3 IfcCalendarDate;
|
||||
internal IfcCostValue mDepreciatedValue;// : IfcCostValue;
|
||||
|
||||
public string Identification { get { return mIdentification; } set { mIdentification = value; } }
|
||||
public IfcCostValue OriginalValue { get { return mDatabase[mOriginalValue] as IfcCostValue; } set { mOriginalValue = value.mIndex; } }
|
||||
public IfcCostValue CurrentValue { get { return mDatabase[mCurrentValue] as IfcCostValue; } set { mCurrentValue = value.mIndex; } }
|
||||
public IfcCostValue TotalReplacementCost { get { return mDatabase[mTotalReplacementCost] as IfcCostValue; } set { mTotalReplacementCost = value.mIndex; } }
|
||||
public IfcActorSelect Owner { get { return mDatabase[mOwner] as IfcActorSelect; } set { mOwner = value.Index; } }
|
||||
public IfcActorSelect User { get { return mDatabase[mUser] as IfcActorSelect; } set { mUser = value.Index; } }
|
||||
public IfcPerson ResponsiblePerson { get { return mDatabase[mResponsiblePerson] as IfcPerson; } set { mResponsiblePerson = value.mIndex; } }
|
||||
public IfcCostValue OriginalValue { get { return mOriginalValue; } set { mOriginalValue = value; } }
|
||||
public IfcCostValue CurrentValue { get { return mCurrentValue; } set { mCurrentValue = value; } }
|
||||
public IfcCostValue TotalReplacementCost { get { return mTotalReplacementCost; } set { mTotalReplacementCost = value; } }
|
||||
public IfcActorSelect Owner { get { return mOwner; } set { mOwner = value; } }
|
||||
public IfcActorSelect User { get { return mUser; } set { mUser = value; } }
|
||||
public IfcPerson ResponsiblePerson { get { return mResponsiblePerson; } set { mResponsiblePerson = value; } }
|
||||
//public IncorporationDate
|
||||
public IfcCostValue DepreciatedValue { get { return mDatabase[mDepreciatedValue] as IfcCostValue; } set { mDepreciatedValue = value.mIndex; } }
|
||||
public IfcCostValue DepreciatedValue { get { return mDepreciatedValue; } set { mDepreciatedValue = value; } }
|
||||
|
||||
|
||||
internal IfcAsset() : base() { }
|
||||
internal IfcAsset(DatabaseIfc db, IfcAsset a, DuplicateOptions options) : base(db, a, options)
|
||||
{
|
||||
mIdentification = a.mIdentification;
|
||||
OriginalValue = db.Factory.Duplicate(a.OriginalValue) as IfcCostValue;
|
||||
CurrentValue = db.Factory.Duplicate(a.CurrentValue) as IfcCostValue;
|
||||
TotalReplacementCost = db.Factory.Duplicate(a.TotalReplacementCost) as IfcCostValue;
|
||||
Owner = db.Factory.Duplicate(a.mDatabase[a.mOwner]) as IfcActorSelect;
|
||||
User = db.Factory.Duplicate(a.mDatabase[a.mUser]) as IfcActorSelect;
|
||||
ResponsiblePerson = db.Factory.Duplicate(a.ResponsiblePerson) as IfcPerson;
|
||||
OriginalValue = db.Factory.Duplicate(a.OriginalValue);
|
||||
CurrentValue = db.Factory.Duplicate(a.CurrentValue);
|
||||
TotalReplacementCost = db.Factory.Duplicate(a.TotalReplacementCost);
|
||||
Owner = db.Factory.Duplicate(a.mOwner);
|
||||
User = db.Factory.Duplicate(a.mUser);
|
||||
ResponsiblePerson = db.Factory.Duplicate(a.ResponsiblePerson);
|
||||
mIncorporationDate = a.mIncorporationDate;
|
||||
if(a.mIncorporationDateSS > 0)
|
||||
mIncorporationDateSS = db.Factory.Duplicate(a.mDatabase[ a.mIncorporationDateSS]).mIndex;
|
||||
if(a.mIncorporationDateSS != null)
|
||||
mIncorporationDateSS = db.Factory.Duplicate(a.mIncorporationDateSS);
|
||||
|
||||
DepreciatedValue = db.Factory.Duplicate(a.DepreciatedValue) as IfcCostValue;
|
||||
}
|
||||
public IfcAsset(DatabaseIfc m, string name) : base(m,name) { }
|
||||
public IfcAsset(DatabaseIfc db, string name) : base(db, name) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcAsymmetricIShapeProfileDef : IfcParameterizedProfileDef // Ifc2x3 IfcIShapeProfileDef
|
||||
|
@ -1893,33 +1916,34 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcAudioVisualAppliance : IfcFlowTerminal //IFC4
|
||||
{
|
||||
internal IfcAudioVisualApplianceTypeEnum mPredefinedType = IfcAudioVisualApplianceTypeEnum.NOTDEFINED;// OPTIONAL : IfcAudioVisualApplianceTypeEnum;
|
||||
public IfcAudioVisualApplianceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcAudioVisualApplianceTypeEnum mPredefinedType = IfcAudioVisualApplianceTypeEnum.NOTDEFINED;// OPTIONAL : IfcAudioVisualApplianceTypeEnum;
|
||||
public IfcAudioVisualApplianceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcAudioVisualApplianceTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcAudioVisualAppliance() : base() { }
|
||||
internal IfcAudioVisualAppliance(DatabaseIfc db, IfcAudioVisualAppliance a, DuplicateOptions options) : base(db,a, options) { mPredefinedType = a.mPredefinedType; }
|
||||
internal IfcAudioVisualAppliance(DatabaseIfc db, IfcAudioVisualAppliance a, DuplicateOptions options) : base(db,a, options) { PredefinedType = a.PredefinedType; }
|
||||
public IfcAudioVisualAppliance(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcAudioVisualApplianceType : IfcFlowTerminalType
|
||||
{
|
||||
internal IfcAudioVisualApplianceTypeEnum mPredefinedType = IfcAudioVisualApplianceTypeEnum.NOTDEFINED;// : IfcAudioVisualApplianceBoxTypeEnum;
|
||||
public IfcAudioVisualApplianceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcAudioVisualApplianceTypeEnum mPredefinedType = IfcAudioVisualApplianceTypeEnum.NOTDEFINED;// : IfcAudioVisualApplianceBoxTypeEnum;
|
||||
public IfcAudioVisualApplianceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcAudioVisualApplianceTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcAudioVisualApplianceType() : base() { }
|
||||
internal IfcAudioVisualApplianceType(DatabaseIfc db, IfcAudioVisualApplianceType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcAudioVisualApplianceType(DatabaseIfc m, string name, IfcAudioVisualApplianceTypeEnum t) : base(m) { Name = name; mPredefinedType = t; }
|
||||
internal IfcAudioVisualApplianceType(DatabaseIfc db, IfcAudioVisualApplianceType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcAudioVisualApplianceType(DatabaseIfc db, string name, IfcAudioVisualApplianceTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcAxis1Placement : IfcPlacement
|
||||
{
|
||||
private int mAxis;// : OPTIONAL IfcDirection
|
||||
private IfcDirection mAxis;// : OPTIONAL IfcDirection
|
||||
|
||||
public IfcCartesianPoint Location { get { return mLocation as IfcCartesianPoint; } set { mLocation = value; } }
|
||||
public IfcDirection Axis { get { return (mAxis > 0 ? mDatabase[mAxis] as IfcDirection : null); } set { mAxis = (value == null ? 0 : value.mIndex); } }
|
||||
public IfcDirection Axis { get { return mAxis; } set { mAxis = value; } }
|
||||
|
||||
internal IfcAxis1Placement() : base() { }
|
||||
internal IfcAxis1Placement(DatabaseIfc db, IfcAxis1Placement p, DuplicateOptions options) : base(db, p, options) { if(p.mAxis > 0) Axis = db.Factory.Duplicate( p.Axis) as IfcDirection; }
|
||||
internal IfcAxis1Placement(DatabaseIfc db, IfcAxis1Placement p, DuplicateOptions options)
|
||||
: base(db, p, options) { if(p.mAxis != null) Axis = db.Factory.Duplicate( p.Axis) as IfcDirection; }
|
||||
public IfcAxis1Placement(DatabaseIfc db) : base(db) { }
|
||||
public IfcAxis1Placement(IfcCartesianPoint location) : base(location) { }
|
||||
public IfcAxis1Placement(IfcDirection axis) : base(axis.mDatabase) { Axis = axis; }
|
||||
|
|
|
@ -32,11 +32,11 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcBeam : IfcBuiltElement
|
||||
{
|
||||
internal IfcBeamTypeEnum mPredefinedType = IfcBeamTypeEnum.NOTDEFINED;//: OPTIONAL IfcBeamTypeEnum; IFC4
|
||||
public IfcBeamTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcBeamTypeEnum mPredefinedType = IfcBeamTypeEnum.NOTDEFINED;//: OPTIONAL IfcBeamTypeEnum; IFC4
|
||||
public IfcBeamTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcBeamTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcBeam() : base() { }
|
||||
internal IfcBeam(DatabaseIfc db, IfcBeam b, DuplicateOptions options) : base(db, b, options) { mPredefinedType = b.mPredefinedType; }
|
||||
internal IfcBeam(DatabaseIfc db, IfcBeam b, DuplicateOptions options) : base(db, b, options) { PredefinedType = b.PredefinedType; }
|
||||
public IfcBeam(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape shape) : base(host, placement, shape) { }
|
||||
public IfcBeam(IfcProduct host, IfcMaterialProfileSetUsage profile, IfcAxis2Placement3D placement, double length) : base(host, profile, placement,length) { }
|
||||
public IfcBeam(IfcProduct host, IfcMaterialProfileSetUsage profile, IfcAxis2Placement3D placement, Tuple<double, double> arcOrigin, double arcAngle) : base(host, profile, placement, arcOrigin,arcAngle) { }
|
||||
|
@ -54,38 +54,38 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcBeamType : IfcBuiltElementType
|
||||
{
|
||||
internal IfcBeamTypeEnum mPredefinedType = IfcBeamTypeEnum.NOTDEFINED;
|
||||
public IfcBeamTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcBeamTypeEnum mPredefinedType = IfcBeamTypeEnum.NOTDEFINED;
|
||||
public IfcBeamTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcBeamTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcBeamType() : base() { }
|
||||
internal IfcBeamType(DatabaseIfc db, IfcBeamType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcBeamType(DatabaseIfc db, string name, IfcBeamTypeEnum type) : base(db) { Name = name; mPredefinedType = type; }
|
||||
internal IfcBeamType(DatabaseIfc db, IfcBeamType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcBeamType(DatabaseIfc db, string name, IfcBeamTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
public IfcBeamType(string name, IfcMaterialProfile mp, IfcBeamTypeEnum type) : this(name, new IfcMaterialProfileSet(name, mp), type) { }
|
||||
public IfcBeamType(string name, IfcMaterialProfileSet ps, IfcBeamTypeEnum type) : base(ps.mDatabase)
|
||||
{
|
||||
Name = name;
|
||||
mPredefinedType = type;
|
||||
PredefinedType = type;
|
||||
if(ps.mTaperEnd != null)
|
||||
mTapering = ps;
|
||||
else
|
||||
MaterialSelect = ps;
|
||||
}
|
||||
}
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X2)]
|
||||
public partial class IfcBearing : IfcBuiltElement
|
||||
{
|
||||
private IfcBearingTypeEnum mPredefinedType = IfcBearingTypeEnum.NOTDEFINED; //: OPTIONAL IfcBearingTypeEnum;
|
||||
public IfcBearingTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcBearingTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcBearingTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcBearing() : base() { }
|
||||
public IfcBearing(DatabaseIfc db) : base(db) { }
|
||||
public IfcBearing(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
}
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X2)]
|
||||
public partial class IfcBearingType : IfcBuiltElementType
|
||||
{
|
||||
private IfcBearingTypeEnum mPredefinedType = IfcBearingTypeEnum.NOTDEFINED; //: IfcBearingTypeEnum;
|
||||
public IfcBearingTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcBearingTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcBearingTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcBearingType() : base() { }
|
||||
public IfcBearingType(DatabaseIfc db, string name, IfcBearingTypeEnum predefinedType)
|
||||
|
@ -127,21 +127,21 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcBoiler : IfcEnergyConversionDevice //IFC4
|
||||
{
|
||||
internal IfcBoilerTypeEnum mPredefinedType = IfcBoilerTypeEnum.NOTDEFINED;
|
||||
public IfcBoilerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcBoilerTypeEnum mPredefinedType = IfcBoilerTypeEnum.NOTDEFINED;
|
||||
public IfcBoilerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcBoilerTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcBoiler() : base() { }
|
||||
internal IfcBoiler(DatabaseIfc db, IfcBoiler b, DuplicateOptions options) : base(db, b, options) { mPredefinedType = b.mPredefinedType; }
|
||||
internal IfcBoiler(DatabaseIfc db, IfcBoiler b, DuplicateOptions options) : base(db, b, options) { PredefinedType = b.PredefinedType; }
|
||||
public IfcBoiler(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcBoilerType : IfcEnergyConversionDeviceType
|
||||
{
|
||||
internal IfcBoilerTypeEnum mPredefinedType = IfcBoilerTypeEnum.NOTDEFINED;// : IfcBoilerypeEnum;
|
||||
public IfcBoilerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcBoilerTypeEnum mPredefinedType = IfcBoilerTypeEnum.NOTDEFINED;// : IfcBoilerypeEnum;
|
||||
public IfcBoilerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcBoilerTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
internal IfcBoilerType() : base() { }
|
||||
internal IfcBoilerType(DatabaseIfc db, IfcBoilerType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcBoilerType(DatabaseIfc db, string name, IfcBoilerTypeEnum type) : base(db) { Name = name; mPredefinedType = type; }
|
||||
internal IfcBoilerType(DatabaseIfc db, IfcBoilerType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcBoilerType(DatabaseIfc db, string name, IfcBoilerTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcBooleanClippingResult : IfcBooleanResult
|
||||
|
@ -192,7 +192,7 @@ namespace GeometryGym.Ifc
|
|||
return null;
|
||||
}
|
||||
}
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X3)]
|
||||
public partial class IfcBorehole : IfcGeotechnicalAssembly
|
||||
{
|
||||
public IfcBorehole() : base() { }
|
||||
|
@ -316,8 +316,8 @@ namespace GeometryGym.Ifc
|
|||
internal IfcWarpingStiffnessSelect mWarpingStiffness;// : OPTIONAL IfcWarpingStiffnessSelect;
|
||||
internal IfcBoundaryNodeConditionWarping() : base() { }
|
||||
internal IfcBoundaryNodeConditionWarping(DatabaseIfc db, IfcBoundaryNodeConditionWarping b) : base(db, b) { mWarpingStiffness = b.mWarpingStiffness; }
|
||||
public IfcBoundaryNodeConditionWarping(DatabaseIfc m, string name, IfcTranslationalStiffnessSelect x, IfcTranslationalStiffnessSelect y, IfcTranslationalStiffnessSelect z, IfcRotationalStiffnessSelect xx, IfcRotationalStiffnessSelect yy, IfcRotationalStiffnessSelect zz, IfcWarpingStiffnessSelect w)
|
||||
: base(m, name, x, y, z, xx, yy, zz) { mWarpingStiffness = w; }
|
||||
public IfcBoundaryNodeConditionWarping(DatabaseIfc db, string name, IfcTranslationalStiffnessSelect x, IfcTranslationalStiffnessSelect y, IfcTranslationalStiffnessSelect z, IfcRotationalStiffnessSelect xx, IfcRotationalStiffnessSelect yy, IfcRotationalStiffnessSelect zz, IfcWarpingStiffnessSelect w)
|
||||
: base(db, name, x, y, z, xx, yy, zz) { mWarpingStiffness = w; }
|
||||
}
|
||||
[Serializable]
|
||||
public abstract partial class IfcBoundedCurve : IfcCurve, IfcCurveOrEdgeCurve //ABSTRACT SUPERTYPE OF (ONEOF (IfcBSplineCurve ,IfcCompositeCurve ,IfcPolyline ,IfcTrimmedCurve)) IFC4 IfcIndexedPolyCurve IFC4x1 IfcCurveSegment2D IfcAlignment2DHorizontal
|
||||
|
@ -364,10 +364,10 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcBoundingBox : IfcGeometricRepresentationItem
|
||||
{
|
||||
private int mCorner;// : IfcCartesianPoint;
|
||||
private IfcCartesianPoint mCorner;// : IfcCartesianPoint;
|
||||
private double mXDim, mYDim, mZDim;// : IfcPositiveLengthMeasure
|
||||
|
||||
public IfcCartesianPoint Corner { get { return mDatabase[mCorner] as IfcCartesianPoint; } set { mCorner = value.mIndex; } }
|
||||
public IfcCartesianPoint Corner { get { return mCorner; } set { mCorner = value; } }
|
||||
public double XDim { get { return mXDim; } set { mXDim = value; } }
|
||||
public double YDim { get { return mYDim; } set { mYDim = value; } }
|
||||
public double ZDim { get { return mZDim; } set { mZDim = value; } }
|
||||
|
@ -376,9 +376,7 @@ namespace GeometryGym.Ifc
|
|||
internal IfcBoundingBox(DatabaseIfc db, IfcBoundingBox b, DuplicateOptions options) : base(db, b, options) { Corner = db.Factory.Duplicate(b.Corner) as IfcCartesianPoint; mXDim = b.mXDim; mYDim = b.mYDim; mZDim = b.mZDim; }
|
||||
public IfcBoundingBox(IfcCartesianPoint pt, double xdim, double ydim, double zdim) : base(pt.mDatabase)
|
||||
{
|
||||
//if (mModel.mModelView != ModelView.NotAssigned && mModel.mModelView != ModelView.IFC2x3Coordination)
|
||||
// throw new Exception("Invalid Model View for IfcBoundingBox : " + m.ModelView.ToString());
|
||||
mCorner = pt.mIndex;
|
||||
mCorner = pt;
|
||||
mXDim = xdim;
|
||||
mYDim = ydim;
|
||||
mZDim = zdim;
|
||||
|
@ -387,8 +385,8 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcBoxedHalfSpace : IfcHalfSpaceSolid
|
||||
{
|
||||
private int mEnclosure;// : IfcBoundingBox;
|
||||
public IfcBoundingBox Enclosure { get { return mDatabase[mEnclosure] as IfcBoundingBox; } set { mEnclosure = value.mIndex; } }
|
||||
private IfcBoundingBox mEnclosure;// : IfcBoundingBox;
|
||||
public IfcBoundingBox Enclosure { get { return mEnclosure; } set { mEnclosure = value; } }
|
||||
|
||||
internal IfcBoxedHalfSpace() : base() { }
|
||||
internal IfcBoxedHalfSpace(DatabaseIfc db, IfcBoxedHalfSpace s, DuplicateOptions options) : base(db, s, options) { Enclosure = db.Factory.Duplicate(s.Enclosure) as IfcBoundingBox; }
|
||||
|
@ -397,19 +395,20 @@ namespace GeometryGym.Ifc
|
|||
public partial class IfcBridge : IfcFacility
|
||||
{
|
||||
private IfcBridgeTypeEnum mPredefinedType = IfcBridgeTypeEnum.NOTDEFINED; //: OPTIONAL IfcBridgeTypeEnum;
|
||||
public IfcBridgeTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcBridgeTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcBridgeTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcBridge() : base() { }
|
||||
public IfcBridge(DatabaseIfc db) : base(db) { }
|
||||
public IfcBridge(DatabaseIfc db, IfcBridge bridge, DuplicateOptions options) : base(db, bridge, options) { }
|
||||
public IfcBridge(DatabaseIfc db, string name) : base(db, name) { }
|
||||
public IfcBridge(IfcFacility host, string name, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { Name = name; }
|
||||
public IfcBridge(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
internal IfcBridge(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcBridgePart : IfcFacilityPart
|
||||
{
|
||||
private IfcBridgePartTypeEnum mPredefinedType = IfcBridgePartTypeEnum.NOTDEFINED; //: OPTIONAL IfcBridgeTypeEnum;
|
||||
public IfcBridgePartTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcBridgePartTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcBridgePartTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
public override string StepClassName { get { if (mDatabase != null && mDatabase.Release > ReleaseVersion.IFC4X2 && mDatabase.Release < ReleaseVersion.IFC4X3) return "IfcFacilityPart"; return base.StepClassName; } }
|
||||
public IfcBridgePart() : base() { }
|
||||
public IfcBridgePart(DatabaseIfc db) : base(db) { }
|
||||
|
@ -523,10 +522,10 @@ namespace GeometryGym.Ifc
|
|||
internal List<double> mVKnots = new List<double>();// : LIST [2:?] OF IfcParameterValue;
|
||||
internal IfcKnotType mKnotSpec = IfcKnotType.UNSPECIFIED;//: IfcKnotType;
|
||||
|
||||
public ReadOnlyCollection<int> UMultiplicities { get { return new ReadOnlyCollection<int>(mUMultiplicities); } }
|
||||
public ReadOnlyCollection<int> VMultiplicities { get { return new ReadOnlyCollection<int>(mVMultiplicities); } }
|
||||
public ReadOnlyCollection<double> UKnots { get { return new ReadOnlyCollection<double>(mUKnots); } }
|
||||
public ReadOnlyCollection<double> VKnots { get { return new ReadOnlyCollection<double>(mVKnots); } }
|
||||
public List<int> UMultiplicities { get { return mUMultiplicities; } }
|
||||
public List<int> VMultiplicities { get { return mVMultiplicities; } }
|
||||
public List<double> UKnots { get { return mUKnots; } }
|
||||
public List<double> VKnots { get { return mVKnots; } }
|
||||
public IfcKnotType KnotSpec { get { return mKnotSpec; } }
|
||||
|
||||
internal IfcBSplineSurfaceWithKnots() : base() { }
|
||||
|
@ -602,59 +601,47 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcBuildingElementPart : IfcElementComponent
|
||||
{
|
||||
internal IfcBuildingElementPartTypeEnum mPredefinedType = IfcBuildingElementPartTypeEnum.NOTDEFINED;//: OPTIONAL IfcBuildingElementPartTypeEnum; IFC4 added
|
||||
public IfcBuildingElementPartTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcBuildingElementPartTypeEnum mPredefinedType = IfcBuildingElementPartTypeEnum.NOTDEFINED;//: OPTIONAL IfcBuildingElementPartTypeEnum; IFC4 added
|
||||
public IfcBuildingElementPartTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcBuildingElementPartTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcBuildingElementPart() : base() { }
|
||||
internal IfcBuildingElementPart(DatabaseIfc db, IfcBuildingElementPart p, DuplicateOptions options) : base(db, p, options) { mPredefinedType = p.mPredefinedType; }
|
||||
internal IfcBuildingElementPart(DatabaseIfc db, IfcBuildingElementPart p, DuplicateOptions options) : base(db, p, options) { PredefinedType = p.PredefinedType; }
|
||||
public IfcBuildingElementPart(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcBuildingElementPartType : IfcElementComponentType
|
||||
{
|
||||
internal IfcBuildingElementPartTypeEnum mPredefinedType = IfcBuildingElementPartTypeEnum.NOTDEFINED;// : IfcBuildingElementPartTypeEnum;
|
||||
public IfcBuildingElementPartTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcBuildingElementPartTypeEnum mPredefinedType = IfcBuildingElementPartTypeEnum.NOTDEFINED;// : IfcBuildingElementPartTypeEnum;
|
||||
public IfcBuildingElementPartTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcBuildingElementPartTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcBuildingElementPartType() : base() { }
|
||||
internal IfcBuildingElementPartType(DatabaseIfc db, IfcBuildingElementPartType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcBuildingElementPartType(DatabaseIfc m, string name, IfcBuildingElementPartTypeEnum type) : base(m) { Name = name; if (mDatabase.mRelease < ReleaseVersion.IFC4) throw new Exception("XXX Only valid in IFC4 or newer!"); mPredefinedType = type; }
|
||||
internal IfcBuildingElementPartType(DatabaseIfc db, IfcBuildingElementPartType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcBuildingElementPartType(DatabaseIfc db, string name, IfcBuildingElementPartTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcBuildingElementProxy : IfcBuiltElement
|
||||
{
|
||||
internal IfcBuildingElementProxyTypeEnum mPredefinedType = IfcBuildingElementProxyTypeEnum.NOTDEFINED; // : OPTIONAL IfcBuildingElementProxyTypeEnum;
|
||||
private IfcBuildingElementProxyTypeEnum mPredefinedType = IfcBuildingElementProxyTypeEnum.NOTDEFINED; // : OPTIONAL IfcBuildingElementProxyTypeEnum;
|
||||
//Ifc2x3 internal IfcElementCompositionEnum mCompositionType = IfcElementCompositionEnum.NA;// : OPTIONAL IfcElementCompositionEnum;
|
||||
|
||||
public IfcBuildingElementProxyTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcBuildingElementProxyTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcBuildingElementProxyTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
public override string Name { get { return base.Name; } set { base.Name = (string.IsNullOrEmpty(value) ? "NOTDEFINED" : value); } }
|
||||
|
||||
internal IfcBuildingElementProxy() : base() { }
|
||||
internal IfcBuildingElementProxy(DatabaseIfc db, IfcBuildingElementProxy p, DuplicateOptions options) : base(db, p, options) { mPredefinedType = p.mPredefinedType; }
|
||||
internal IfcBuildingElementProxy(DatabaseIfc db, IfcBuildingElementProxy p, DuplicateOptions options) : base(db, p, options) { PredefinedType = p.PredefinedType; }
|
||||
public IfcBuildingElementProxy(IfcObjectDefinition host, IfcObjectPlacement p, IfcProductDefinitionShape r) : base(host, p, r) { Name = "NOTDEFINED"; }
|
||||
public IfcBuildingElementProxy(IfcProduct host, IfcMaterialProfileSetUsage profile, IfcAxis2Placement3D placement, double length) : base(host, profile, placement,length) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcBuildingElementProxyType : IfcBuiltElementType
|
||||
{
|
||||
internal IfcBuildingElementProxyTypeEnum mPredefinedType = IfcBuildingElementProxyTypeEnum.NOTDEFINED;// : IfcBuildingElementProxyTypeEnum;
|
||||
public IfcBuildingElementProxyTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcBuildingElementProxyTypeEnum mPredefinedType = IfcBuildingElementProxyTypeEnum.NOTDEFINED;// : IfcBuildingElementProxyTypeEnum;
|
||||
public IfcBuildingElementProxyTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcBuildingElementProxyTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcBuildingElementProxyType() : base() { }
|
||||
internal IfcBuildingElementProxyType(DatabaseIfc db, IfcBuildingElementProxyType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcBuildingElementProxyType(DatabaseIfc m, string name, IfcBuildingElementProxyTypeEnum type) : base(m)
|
||||
{
|
||||
Name = name;
|
||||
mPredefinedType = type;
|
||||
if (m.mRelease < ReleaseVersion.IFC4)
|
||||
{
|
||||
if (type != IfcBuildingElementProxyTypeEnum.USERDEFINED && type != IfcBuildingElementProxyTypeEnum.NOTDEFINED)
|
||||
{
|
||||
if (string.IsNullOrEmpty(ElementType))
|
||||
ElementType = type.ToString();
|
||||
mPredefinedType = IfcBuildingElementProxyTypeEnum.USERDEFINED;
|
||||
}
|
||||
}
|
||||
}
|
||||
internal IfcBuildingElementProxyType(DatabaseIfc db, IfcBuildingElementProxyType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcBuildingElementProxyType(DatabaseIfc db, string name, IfcBuildingElementProxyTypeEnum type)
|
||||
: base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcBuiltElementType : IfcElementType //ABSTRACT SUPERTYPE OF (ONEOF (IfcBeamType, IfcBuildingElementProxyType, IfcChimneyType, IfcColumnType,
|
||||
|
@ -662,7 +649,7 @@ namespace GeometryGym.Ifc
|
|||
//IfcRoofType, IfcShadingDeviceType, IfcSlabType, IfcStairFlightType, IfcStairType, IfcWallType, IfcWindowType))
|
||||
protected IfcBuiltElementType() : base() { }
|
||||
protected IfcBuiltElementType(DatabaseIfc db) : base(db) { }
|
||||
protected IfcBuiltElementType(DatabaseIfc db, string name) : base(db) { Name = name; }
|
||||
public IfcBuiltElementType(DatabaseIfc db, string name) : base(db) { Name = name; }
|
||||
protected IfcBuiltElementType(DatabaseIfc db, IfcBuiltElementType t, DuplicateOptions options) : base(db, t, options) { }
|
||||
}
|
||||
[Serializable]
|
||||
|
@ -700,34 +687,34 @@ namespace GeometryGym.Ifc
|
|||
return base.StepClassName;
|
||||
}
|
||||
}
|
||||
internal IfcBuiltSystemTypeEnum mPredefinedType = IfcBuiltSystemTypeEnum.NOTDEFINED;// : OPTIONAL IfcBuildingSystemTypeEnum;
|
||||
private IfcBuiltSystemTypeEnum mPredefinedType = IfcBuiltSystemTypeEnum.NOTDEFINED;// : OPTIONAL IfcBuildingSystemTypeEnum;
|
||||
internal string mLongName = ""; // OPTIONAL IfcLabel IFC4ADD1
|
||||
|
||||
public IfcBuiltSystemTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcBuiltSystemTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcBuiltSystemTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
public string LongName { get { return mLongName; } set { mLongName = value; } }
|
||||
|
||||
internal IfcBuiltSystem() : base() { }
|
||||
internal IfcBuiltSystem(DatabaseIfc db, IfcBuiltSystem s, DuplicateOptions options) : base(db, s, options) { mLongName = s.mLongName; mPredefinedType = s.mPredefinedType; }
|
||||
public IfcBuiltSystem(IfcSpatialElement bldg, string name, IfcBuiltSystemTypeEnum type) : base(bldg, name) { mPredefinedType = type; }
|
||||
internal IfcBuiltSystem(DatabaseIfc db, IfcBuiltSystem s, DuplicateOptions options) : base(db, s, options) { mLongName = s.mLongName; PredefinedType = s.mPredefinedType; }
|
||||
public IfcBuiltSystem(IfcSpatialElement bldg, string name, IfcBuiltSystemTypeEnum type) : base(bldg, name) { PredefinedType = type; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcBurner : IfcEnergyConversionDevice //IFC4
|
||||
{
|
||||
internal IfcBurnerTypeEnum mPredefinedType = IfcBurnerTypeEnum.NOTDEFINED;// OPTIONAL : IfctypeEnum;
|
||||
public IfcBurnerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcBurnerTypeEnum mPredefinedType = IfcBurnerTypeEnum.NOTDEFINED;// OPTIONAL : IfctypeEnum;
|
||||
public IfcBurnerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcBurnerTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcBurner() : base() { }
|
||||
internal IfcBurner(DatabaseIfc db, IfcBurner b, DuplicateOptions options) : base(db, b, options) { mPredefinedType = b.mPredefinedType; }
|
||||
internal IfcBurner(DatabaseIfc db, IfcBurner b, DuplicateOptions options) : base(db, b, options) { PredefinedType = b.mPredefinedType; }
|
||||
public IfcBurner(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcBurnerType : IfcEnergyConversionDeviceType
|
||||
{
|
||||
internal IfcBurnerTypeEnum mPredefinedType = IfcBurnerTypeEnum.NOTDEFINED;// : IfcBurnerTypeEnum
|
||||
public IfcBurnerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcBurnerTypeEnum mPredefinedType = IfcBurnerTypeEnum.NOTDEFINED;// : IfcBurnerTypeEnum
|
||||
public IfcBurnerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcBurnerTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
internal IfcBurnerType() : base() { }
|
||||
internal IfcBurnerType(DatabaseIfc db, IfcBurnerType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcBurnerType(DatabaseIfc m, string name, IfcBurnerTypeEnum type) : base(m) { Name = name; mPredefinedType = type; }
|
||||
internal IfcBurnerType(DatabaseIfc db, IfcBurnerType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcBurnerType(DatabaseIfc db, string name, IfcBurnerTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
|
||||
}
|
||||
}
|
||||
|
|
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
|
@ -31,22 +31,22 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcDamper : IfcFlowController //IFC4
|
||||
{
|
||||
internal IfcDamperTypeEnum mPredefinedType = IfcDamperTypeEnum.NOTDEFINED;// OPTIONAL : IfcDamperTypeEnum;
|
||||
public IfcDamperTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcDamperTypeEnum mPredefinedType = IfcDamperTypeEnum.NOTDEFINED;// OPTIONAL : IfcDamperTypeEnum;
|
||||
public IfcDamperTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcDamperTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcDamper() : base() { }
|
||||
internal IfcDamper(DatabaseIfc db, IfcDamper d, DuplicateOptions options) : base(db, d, options) { mPredefinedType = d.mPredefinedType; }
|
||||
internal IfcDamper(DatabaseIfc db, IfcDamper d, DuplicateOptions options) : base(db, d, options) { PredefinedType = d.PredefinedType; }
|
||||
public IfcDamper(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcDamperType : IfcFlowControllerType
|
||||
{
|
||||
internal IfcDamperTypeEnum mPredefinedType = IfcDamperTypeEnum.NOTDEFINED;// : IfcDamperTypeEnum;
|
||||
public IfcDamperTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcDamperTypeEnum mPredefinedType = IfcDamperTypeEnum.NOTDEFINED;// : IfcDamperTypeEnum;
|
||||
public IfcDamperTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcDamperTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcDamperType() : base() { }
|
||||
internal IfcDamperType(DatabaseIfc db, IfcDamperType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcDamperType(DatabaseIfc m, string name, IfcDamperTypeEnum t) : base(m) { Name = name; mPredefinedType = t; }
|
||||
internal IfcDamperType(DatabaseIfc db, IfcDamperType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcDamperType(DatabaseIfc db, string name, IfcDamperTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Obsolete("DELETED IFC4", false)]
|
||||
[Serializable]
|
||||
|
@ -82,7 +82,7 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
}
|
||||
public interface IfcDateTimeSelect : IBaseClassIfc { DateTime DateTime { get; } } // IFC2x3 IfcCalenderDate, IfcDateAndTime, IfcLocalTime
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X2)]
|
||||
public partial class IfcDeepFoundation : IfcBuiltElement
|
||||
{
|
||||
public IfcDeepFoundation() : base() { }
|
||||
|
@ -90,7 +90,7 @@ namespace GeometryGym.Ifc
|
|||
public IfcDeepFoundation(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
internal IfcDeepFoundation(DatabaseIfc db, IfcDeepFoundation f, DuplicateOptions options) : base(db, f, options) { }
|
||||
}
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X2)]
|
||||
public partial class IfcDeepFoundationType : IfcBuiltElementType
|
||||
{
|
||||
public IfcDeepFoundationType() : base() { }
|
||||
|
@ -230,16 +230,19 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcDimensionCurve : IfcAnnotationCurveOccurrence // DEPRECATED IFC4
|
||||
{
|
||||
internal List<int> mAnnotatedBySymbols = new List<int>();// SET [0:2] OF IfcTerminatorSymbol FOR AnnotatedCurve;
|
||||
internal SET<IfcTerminatorSymbol> mAnnotatedBySymbols = new SET<IfcTerminatorSymbol>();// SET [0:2] OF IfcTerminatorSymbol FOR AnnotatedCurve;
|
||||
public SET<IfcTerminatorSymbol> AnnotatedBySymbols { get { return mAnnotatedBySymbols; } }
|
||||
internal IfcDimensionCurve() : base() { }
|
||||
//internal IfcDimensionCurve(DatabaseIfc db, IfcDimensionCurve p) : base(p) { mAnnotatedBySymbols = new List<int>(p.mAnnotatedBySymbols.ToArray()); }
|
||||
public IfcDimensionCurve(DatabaseIfc db) : base(db) { }
|
||||
public IfcDimensionCurve(IfcTerminatorSymbol symbol) : base(symbol.Database) { mAnnotatedBySymbols.Add(symbol); }
|
||||
public IfcDimensionCurve(IfcTerminatorSymbol symbol1, IfcTerminatorSymbol symbol2) : this(symbol1) { mAnnotatedBySymbols.Add(symbol2); }
|
||||
}
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
[Serializable]
|
||||
public partial class IfcDimensionCurveDirectedCallout : IfcDraughtingCallout // DEPRECATED IFC4 SUPERTYPE OF (ONEOF (IfcAngularDimension ,IfcDiameterDimension ,IfcLinearDimension ,IfcRadiusDimension))
|
||||
{
|
||||
internal IfcDimensionCurveDirectedCallout() : base() { }
|
||||
// internal IfcDimensionCurveDirectedCallout(DatabaseIfc db, IfcDimensionCurveDirectedCallout c) : base(db,c) { }
|
||||
internal IfcDimensionCurveDirectedCallout(DatabaseIfc db, IfcDimensionCurveDirectedCallout c, DuplicateOptions options) : base(db, c, options) { }
|
||||
}
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
[Serializable]
|
||||
|
@ -257,7 +260,7 @@ namespace GeometryGym.Ifc
|
|||
//internal IfcDimensionPair(IfcDimensionPair i) : base((IfcDraughtingCalloutRelationship)i) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcDirection : IfcGeometricRepresentationItem, IfcGridPlacementDirectionSelect, IfcVectorOrDirection
|
||||
public partial class IfcDirection : IfcGeometricRepresentationItem, IfcGridPlacementDirectionSelect, IfcOrientationSelect, IfcVectorOrDirection
|
||||
{
|
||||
[NonSerialized] private double mDirectionRatioX = 0, mDirectionRatioY = 0, mDirectionRatioZ = double.NaN; // DirectionRatios : LIST [2:3] OF IfcReal;
|
||||
|
||||
|
@ -319,50 +322,40 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcDiscreteAccessory : IfcElementComponent
|
||||
{
|
||||
internal IfcDiscreteAccessoryTypeEnum mPredefinedType = IfcDiscreteAccessoryTypeEnum.NOTDEFINED;// : OPTIONAL IfcDiscreteAccessoryTypeEnum;
|
||||
public IfcDiscreteAccessoryTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcDiscreteAccessoryTypeEnum mPredefinedType = IfcDiscreteAccessoryTypeEnum.NOTDEFINED;// : OPTIONAL IfcDiscreteAccessoryTypeEnum;
|
||||
public IfcDiscreteAccessoryTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcDiscreteAccessoryTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcDiscreteAccessory() : base() { }
|
||||
internal IfcDiscreteAccessory(DatabaseIfc db, IfcDiscreteAccessory a, DuplicateOptions options) : base(db, a, options) { mPredefinedType = a.mPredefinedType; }
|
||||
internal IfcDiscreteAccessory(DatabaseIfc db, IfcDiscreteAccessory a, DuplicateOptions options) : base(db, a, options) { PredefinedType = a.PredefinedType; }
|
||||
public IfcDiscreteAccessory(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
public IfcDiscreteAccessory(IfcProduct host, IfcMaterialProfileSetUsage profile, IfcAxis2Placement3D placement, double length) : base(host, profile, placement,length) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcDiscreteAccessoryType : IfcElementComponentType
|
||||
{
|
||||
internal IfcDiscreteAccessoryTypeEnum mPredefinedType = IfcDiscreteAccessoryTypeEnum.NOTDEFINED;//: OPTIONAL IfcDiscreteAccessoryTypeEnum; IFC4
|
||||
public IfcDiscreteAccessoryTypeEnum PredefinedType
|
||||
{
|
||||
get { return mPredefinedType; }
|
||||
set
|
||||
{
|
||||
mPredefinedType = value;
|
||||
if (mDatabase.Release < ReleaseVersion.IFC4 && string.IsNullOrEmpty(ElementType))
|
||||
ElementType = value.ToString();
|
||||
|
||||
}
|
||||
}
|
||||
private IfcDiscreteAccessoryTypeEnum mPredefinedType = IfcDiscreteAccessoryTypeEnum.NOTDEFINED;//: OPTIONAL IfcDiscreteAccessoryTypeEnum; IFC4
|
||||
public IfcDiscreteAccessoryTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcDiscreteAccessoryTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcDiscreteAccessoryType() : base() { }
|
||||
internal IfcDiscreteAccessoryType(DatabaseIfc db, IfcDiscreteAccessoryType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcDiscreteAccessoryType(DatabaseIfc db, string name, IfcDiscreteAccessoryTypeEnum type) : base(db) { Name = name; mPredefinedType = type; }
|
||||
internal IfcDiscreteAccessoryType(DatabaseIfc db, IfcDiscreteAccessoryType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcDiscreteAccessoryType(DatabaseIfc db, string name, IfcDiscreteAccessoryTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X3)]
|
||||
public partial class IfcDistributionBoard : IfcFlowController
|
||||
{
|
||||
private IfcDistributionBoardTypeEnum mPredefinedType = IfcDistributionBoardTypeEnum.NOTDEFINED; //: OPTIONAL IfcDistributionBoardTypeEnum;
|
||||
public IfcDistributionBoardTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcDistributionBoardTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcDistributionBoardTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcDistributionBoard() : base() { }
|
||||
public IfcDistributionBoard(DatabaseIfc db) : base(db) { }
|
||||
public IfcDistributionBoard(DatabaseIfc db, IfcDistributionBoard distributionBoard, DuplicateOptions options) : base(db, distributionBoard, options) { PredefinedType = distributionBoard.PredefinedType; }
|
||||
public IfcDistributionBoard(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X3)]
|
||||
public partial class IfcDistributionBoardType : IfcFlowControllerType
|
||||
{
|
||||
private IfcDistributionBoardTypeEnum mPredefinedType = IfcDistributionBoardTypeEnum.NOTDEFINED; //: IfcDistributionBoardTypeEnum;
|
||||
public IfcDistributionBoardTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcDistributionBoardTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcDistributionBoardTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcDistributionBoardType() : base() { }
|
||||
public IfcDistributionBoardType(DatabaseIfc db, IfcDistributionBoardType distributionBoardType, DuplicateOptions options) : base(db, distributionBoardType, options) { PredefinedType = distributionBoardType.PredefinedType; }
|
||||
|
@ -372,22 +365,22 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcDistributionChamberElement : IfcDistributionFlowElement
|
||||
{
|
||||
internal IfcDistributionChamberElementTypeEnum mPredefinedType = IfcDistributionChamberElementTypeEnum.NOTDEFINED;// : OPTIONAL IfcDistributionChamberElementTypeEnum;
|
||||
public IfcDistributionChamberElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcDistributionChamberElementTypeEnum mPredefinedType = IfcDistributionChamberElementTypeEnum.NOTDEFINED;// : OPTIONAL IfcDistributionChamberElementTypeEnum;
|
||||
public IfcDistributionChamberElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcDistributionChamberElementTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcDistributionChamberElement() : base() { }
|
||||
internal IfcDistributionChamberElement(DatabaseIfc db, IfcDistributionChamberElement e, DuplicateOptions options) : base(db, e, options) { mPredefinedType = e.mPredefinedType; }
|
||||
internal IfcDistributionChamberElement(DatabaseIfc db, IfcDistributionChamberElement e, DuplicateOptions options) : base(db, e, options) { PredefinedType = e.PredefinedType; }
|
||||
public IfcDistributionChamberElement(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcDistributionChamberElementType : IfcDistributionFlowElementType
|
||||
{
|
||||
internal IfcDistributionChamberElementTypeEnum mPredefinedType = IfcDistributionChamberElementTypeEnum.NOTDEFINED;
|
||||
public IfcDistributionChamberElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcDistributionChamberElementTypeEnum mPredefinedType = IfcDistributionChamberElementTypeEnum.NOTDEFINED;
|
||||
public IfcDistributionChamberElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcDistributionChamberElementTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcDistributionChamberElementType() : base() { }
|
||||
internal IfcDistributionChamberElementType(DatabaseIfc db, IfcDistributionChamberElementType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcDistributionChamberElementType(DatabaseIfc db, string name, IfcDistributionChamberElementTypeEnum type) : base(db) { Name = name; mPredefinedType = type; }
|
||||
internal IfcDistributionChamberElementType(DatabaseIfc db, IfcDistributionChamberElementType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcDistributionChamberElementType(DatabaseIfc db, string name, IfcDistributionChamberElementTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcDistributionCircuit : IfcDistributionSystem
|
||||
|
@ -423,7 +416,6 @@ namespace GeometryGym.Ifc
|
|||
|
||||
internal IfcDistributionElement() : base() { }
|
||||
internal IfcDistributionElement(DatabaseIfc db) : base(db) { }
|
||||
protected IfcDistributionElement(IfcDistributionElement distributionElement, bool replace) : base(distributionElement, replace) { }
|
||||
protected IfcDistributionElement(DatabaseIfc db, IfcDistributionElement e, DuplicateOptions options) : base(db, e, options) { }
|
||||
public IfcDistributionElement(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
public IfcDistributionElement(IfcObjectDefinition host, IfcObjectPlacement p, IfcProductDefinitionShape r, IfcDistributionSystem system) : this(host,p,r) { if (system != null) system.AddRelated(this); }
|
||||
|
@ -432,7 +424,6 @@ namespace GeometryGym.Ifc
|
|||
public partial class IfcDistributionElementType : IfcElementType //SUPERTYPE OF(ONEOF(IfcDistributionControlElementType, IfcDistributionFlowElementType))
|
||||
{
|
||||
internal IfcDistributionElementType() : base() { }
|
||||
internal IfcDistributionElementType(IfcDistributionElementType basis) : base(basis) { }
|
||||
public IfcDistributionElementType(DatabaseIfc db) : base(db) { }
|
||||
protected IfcDistributionElementType(DatabaseIfc db, IfcDistributionElementType t, DuplicateOptions options) : base(db, t, options) { }
|
||||
}
|
||||
|
@ -447,7 +438,6 @@ namespace GeometryGym.Ifc
|
|||
|
||||
internal IfcDistributionFlowElement() : base() { }
|
||||
internal IfcDistributionFlowElement(DatabaseIfc db) : base(db) { }
|
||||
protected IfcDistributionFlowElement(IfcDistributionFlowElement basis, bool replace) : base(basis, replace) { mSourcePort = basis.mSourcePort; mSinkPort = basis.mSinkPort; }
|
||||
internal IfcDistributionFlowElement(DatabaseIfc db, IfcDistributionFlowElement e, DuplicateOptions options) : base(db, e, options) { }
|
||||
public IfcDistributionFlowElement(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
|
@ -455,7 +445,6 @@ namespace GeometryGym.Ifc
|
|||
public abstract partial class IfcDistributionFlowElementType : IfcDistributionElementType //IfcDistributionChamberElementType, IfcEnergyConversionDeviceType, IfcFlowControllerType,
|
||||
{ // IfcFlowFittingType, IfcFlowMovingDeviceType, IfcFlowSegmentType, IfcFlowStorageDeviceType, IfcFlowTerminalType, IfcFlowTreatmentDeviceType))
|
||||
protected IfcDistributionFlowElementType() : base() { }
|
||||
protected IfcDistributionFlowElementType(IfcDistributionFlowElementType basis) : base(basis) { }
|
||||
protected IfcDistributionFlowElementType(DatabaseIfc db) : base(db) { }
|
||||
protected IfcDistributionFlowElementType(DatabaseIfc db, IfcDistributionFlowElementType t, DuplicateOptions options) : base(db, t, options) { }
|
||||
}
|
||||
|
@ -463,15 +452,15 @@ namespace GeometryGym.Ifc
|
|||
public partial class IfcDistributionPort : IfcPort
|
||||
{
|
||||
internal IfcFlowDirectionEnum mFlowDirection = IfcFlowDirectionEnum.NOTDEFINED; //: OPTIONAL IfcFlowDirectionEnum;
|
||||
internal IfcDistributionPortTypeEnum mPredefinedType = IfcDistributionPortTypeEnum.NOTDEFINED; // IFC4 : OPTIONAL IfcDistributionPortTypeEnum;
|
||||
private IfcDistributionPortTypeEnum mPredefinedType = IfcDistributionPortTypeEnum.NOTDEFINED; // IFC4 : OPTIONAL IfcDistributionPortTypeEnum;
|
||||
internal IfcDistributionSystemEnum mSystemType = IfcDistributionSystemEnum.NOTDEFINED;// IFC4 : OPTIONAL IfcDistributionSystemEnum;
|
||||
|
||||
public IfcFlowDirectionEnum FlowDirection { get { return mFlowDirection; } set { mFlowDirection = value; } }
|
||||
public IfcDistributionPortTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcDistributionPortTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcDistributionPortTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
public IfcDistributionSystemEnum SystemType { get { return mSystemType; } set { mSystemType = value; } }
|
||||
|
||||
internal IfcDistributionPort() : base() { }
|
||||
internal IfcDistributionPort(DatabaseIfc db, IfcDistributionPort p, DuplicateOptions options) : base(db, p, options) { mFlowDirection = p.mFlowDirection; mPredefinedType = p.mPredefinedType; mSystemType = p.mSystemType; }
|
||||
internal IfcDistributionPort(DatabaseIfc db, IfcDistributionPort p, DuplicateOptions options) : base(db, p, options) { mFlowDirection = p.mFlowDirection; PredefinedType = p.PredefinedType; mSystemType = p.mSystemType; }
|
||||
public IfcDistributionPort(IfcElement host) : base(host) { }
|
||||
public IfcDistributionPort(IfcElementType host) : base(host) { }
|
||||
public IfcDistributionPort(DatabaseIfc db) : base(db) { }
|
||||
|
@ -481,14 +470,14 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
public override string StepClassName { get { return (mDatabase != null && mDatabase.Release <= ReleaseVersion.IFC2x3 ? "IfcSystem" : base.StepClassName); } }
|
||||
internal string mLongName = ""; // OPTIONAL IfcLabel
|
||||
internal IfcDistributionSystemEnum mPredefinedType = IfcDistributionSystemEnum.NOTDEFINED;// : OPTIONAL IfcDistributionSystemEnum
|
||||
private IfcDistributionSystemEnum mPredefinedType = IfcDistributionSystemEnum.NOTDEFINED;// : OPTIONAL IfcDistributionSystemEnum
|
||||
|
||||
public string LongName { get { return mLongName; } set { mLongName = value; } }
|
||||
public IfcDistributionSystemEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcDistributionSystemEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcDistributionSystemEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcDistributionSystem() : base() { }
|
||||
internal IfcDistributionSystem(DatabaseIfc db, IfcDistributionSystem s, DuplicateOptions options) : base(db, s, options) { mLongName = s.mLongName; mPredefinedType = s.mPredefinedType; }
|
||||
public IfcDistributionSystem(IfcSpatialElement bldg, string name, IfcDistributionSystemEnum type) : base(bldg, name) { mPredefinedType = type; }
|
||||
internal IfcDistributionSystem(DatabaseIfc db, IfcDistributionSystem s, DuplicateOptions options) : base(db, s, options) { mLongName = s.mLongName; PredefinedType = s.PredefinedType; }
|
||||
public IfcDistributionSystem(IfcSpatialElement bldg, string name, IfcDistributionSystemEnum type) : base(bldg, name) { PredefinedType = type; }
|
||||
}
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
[Serializable]
|
||||
|
@ -520,13 +509,13 @@ namespace GeometryGym.Ifc
|
|||
internal string mLocation = "";// : IFC4 OPTIONAL IfcURIReference;
|
||||
internal string mPurpose = "", mIntendedUse = "", mScope = "";// : OPTIONAL IfcText;
|
||||
internal string mRevision = "";// : OPTIONAL IfcLabel;
|
||||
internal int mDocumentOwner;// : OPTIONAL IfcActorSelect;
|
||||
internal IfcActorSelect mDocumentOwner;// : OPTIONAL IfcActorSelect;
|
||||
internal SET<IfcActorSelect> mEditors = new SET<IfcActorSelect>();// : OPTIONAL SET [1:?] OF IfcActorSelect;
|
||||
internal DateTime mCreationTime = DateTime.MinValue, mLastRevisionTime = DateTime.MinValue;// : OPTIONAL IFC4 IfcDateTime;
|
||||
internal string mElectronicFormat = "";// IFC4 : OPTIONAL IfcIdentifier; IFC4
|
||||
internal int mSSElectronicFormat;// IFC2x3 : OPTIONAL IfcDocumentElectronicFormat;
|
||||
internal IfcDocumentElectronicFormat mSSElectronicFormat;// IFC2x3 : OPTIONAL IfcDocumentElectronicFormat;
|
||||
internal DateTime mValidFrom = DateTime.MinValue, mValidUntil = DateTime.MinValue;// : OPTIONAL Ifc2x3 IfcCalendarDate; IFC4 IfcDate
|
||||
internal int mSSValidFrom = 0, mSSVAlidUntil = 0;
|
||||
internal IfcCalendarDate mSSValidFrom = null, mSSVAlidUntil = null;
|
||||
internal IfcDocumentConfidentialityEnum mConfidentiality = IfcDocumentConfidentialityEnum.NOTDEFINED;// : OPTIONAL IfcDocumentConfidentialityEnum;
|
||||
internal IfcDocumentStatusEnum mStatus = IfcDocumentStatusEnum.NOTDEFINED;// : OPTIONAL IfcDocumentStatusEnum;
|
||||
//INVERSE
|
||||
|
@ -545,7 +534,7 @@ namespace GeometryGym.Ifc
|
|||
public string IntendedUse { get { return mIntendedUse; } set { mIntendedUse = value; } }
|
||||
public string Scope { get { return mScope; } set { mScope = value; } }
|
||||
public string Revision { get { return mRevision; } set { mRevision = value; } }
|
||||
public IfcActorSelect DocumentOwner { get { return mDatabase[mDocumentOwner] as IfcActorSelect; } set { mDocumentOwner = (value == null ? 0 : value.Index); } }
|
||||
public IfcActorSelect DocumentOwner { get { return mDocumentOwner; } set { mDocumentOwner = value; } }
|
||||
public SET<IfcActorSelect> Editors { get { return mEditors; } }
|
||||
public DateTime CreationTime { get { return mCreationTime; } set { mCreationTime = value; } }
|
||||
public DateTime LastRevisionTime { get { return mLastRevisionTime; } set { mLastRevisionTime = value; } }
|
||||
|
@ -568,7 +557,7 @@ namespace GeometryGym.Ifc
|
|||
mIdentification = i.mIdentification;
|
||||
mName = i.mName;
|
||||
mDescription = i.mDescription;
|
||||
DocumentReferences.AddRange(i.DocumentReferences.Select(x=> db.Factory.Duplicate(x) as IfcDocumentReference));
|
||||
DocumentReferences.AddRange(i.DocumentReferences.Select(x=> db.Factory.Duplicate(x)));
|
||||
mPurpose = i.mPurpose;
|
||||
mIntendedUse = i.mIntendedUse;
|
||||
mScope = i.mScope;
|
||||
|
@ -578,13 +567,10 @@ namespace GeometryGym.Ifc
|
|||
mCreationTime = i.mCreationTime;
|
||||
mLastRevisionTime = i.mLastRevisionTime;
|
||||
mElectronicFormat = i.mElectronicFormat;
|
||||
if(i.mSSElectronicFormat > 0)
|
||||
mSSElectronicFormat = db.Factory.Duplicate(i.mDatabase[i.mSSElectronicFormat]).mIndex;
|
||||
//if(i.mValidFrom > 0)
|
||||
// ValidFrom = db.Factory.Duplicate( i.ValidFrom) as IfcCalendarDate;
|
||||
//if(i.mValidUntil > 0)
|
||||
// ValidUntil = db.Factory.Duplicate( i.ValidUntil) as IfcCalendarDate;
|
||||
#warning todo
|
||||
if(i.mSSElectronicFormat != null)
|
||||
mSSElectronicFormat = db.Factory.Duplicate(i.mSSElectronicFormat);
|
||||
ValidFrom = i.ValidFrom;
|
||||
ValidUntil = i.ValidUntil;
|
||||
mConfidentiality = i.mConfidentiality;
|
||||
mStatus = i.mStatus;
|
||||
}
|
||||
|
@ -639,18 +625,18 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
internal double mOverallHeight = double.NaN;// : OPTIONAL IfcPositiveLengthMeasure;
|
||||
internal double mOverallWidth = double.NaN;// : OPTIONAL IfcPositiveLengthMeasure;
|
||||
internal IfcDoorTypeEnum mPredefinedType = IfcDoorTypeEnum.NOTDEFINED;//: OPTIONAL IfcDoorTypeEnum; //IFC4
|
||||
private IfcDoorTypeEnum mPredefinedType = IfcDoorTypeEnum.NOTDEFINED;//: OPTIONAL IfcDoorTypeEnum; //IFC4
|
||||
internal IfcDoorTypeOperationEnum mOperationType = IfcDoorTypeOperationEnum.NOTDEFINED;// : OPTIONAL IfcDoorTypeOperationEnum; //IFC4
|
||||
internal string mUserDefinedOperationType = "";// : OPTIONAL IfcLabel;
|
||||
|
||||
public double OverallHeight { get { return mOverallHeight; } set { mOverallHeight = (value > 0 ? value : double.NaN); } }
|
||||
public double OverallWidth { get { return mOverallWidth; } set { mOverallWidth = (value > 0 ? value : double.NaN); } }
|
||||
public IfcDoorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcDoorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcDoorTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
public IfcDoorTypeOperationEnum OperationType { get { return mOperationType; } set { mOperationType = value; } }
|
||||
public string UserDefinedOperationType { get { return mUserDefinedOperationType; } set { mUserDefinedOperationType = value; } }
|
||||
|
||||
internal IfcDoor() : base() { }
|
||||
internal IfcDoor(DatabaseIfc db, IfcDoor d, DuplicateOptions options) : base(db, d, options) { mOverallHeight = d.mOverallHeight; mOverallWidth = d.mOverallWidth; mPredefinedType = d.mPredefinedType; mOperationType = d.mOperationType; mUserDefinedOperationType = d.mUserDefinedOperationType; }
|
||||
internal IfcDoor(DatabaseIfc db, IfcDoor d, DuplicateOptions options) : base(db, d, options) { mOverallHeight = d.mOverallHeight; mOverallWidth = d.mOverallWidth; PredefinedType = d.PredefinedType; mOperationType = d.mOperationType; mUserDefinedOperationType = d.mUserDefinedOperationType; }
|
||||
public IfcDoor(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
|
||||
internal static IfcDoorTypeOperationEnum ParseDoorTypeOperation(string constant)
|
||||
|
@ -675,10 +661,10 @@ namespace GeometryGym.Ifc
|
|||
internal double mLiningDepth, mLiningThickness, mThresholdDepth, mThresholdThickness, mTransomThickness;// : OPTIONAL IfcPositiveLengthMeasure;
|
||||
internal double mTransomOffset = double.NaN, mLiningOffset = double.NaN, mThresholdOffset = double.NaN;// : OPTIONAL IfcLengthMeasure;
|
||||
internal double mCasingThickness = double.NaN, mCasingDepth = double.NaN;// : OPTIONAL IfcPositiveLengthMeasure;
|
||||
private int mShapeAspectStyle;// : OPTIONAL IfcShapeAspect; // DEPRECATED IFC4
|
||||
private IfcShapeAspect mShapeAspectStyle;// : OPTIONAL IfcShapeAspect; // DEPRECATED IFC4
|
||||
internal double mLiningToPanelOffsetX = double.NaN, mLiningToPanelOffsetY = double.NaN;// : OPTIONAL IfcLengthMeasure; IFC4
|
||||
|
||||
public IfcShapeAspect ShapeAspectStyle { get { return mDatabase[mShapeAspectStyle] as IfcShapeAspect; } set { mShapeAspectStyle = (value == null ? 0 : value.mIndex); } }
|
||||
public IfcShapeAspect ShapeAspectStyle { get { return mShapeAspectStyle; } set { mShapeAspectStyle = value; } }
|
||||
|
||||
internal IfcDoorLiningProperties() : base() { }
|
||||
internal IfcDoorLiningProperties(DatabaseIfc db, IfcDoorLiningProperties p, DuplicateOptions options) : base(db, p, options)
|
||||
|
@ -693,8 +679,8 @@ namespace GeometryGym.Ifc
|
|||
mThresholdOffset = p.mThresholdOffset;
|
||||
mCasingThickness = p.mCasingThickness;
|
||||
mCasingDepth = p.mCasingDepth;
|
||||
if (p.mShapeAspectStyle > 0)
|
||||
ShapeAspectStyle = db.Factory.Duplicate(p.ShapeAspectStyle) as IfcShapeAspect;
|
||||
if (p.mShapeAspectStyle != null)
|
||||
ShapeAspectStyle = db.Factory.Duplicate(p.ShapeAspectStyle);
|
||||
mLiningToPanelOffsetX = p.mLiningToPanelOffsetX;
|
||||
mLiningToPanelOffsetY = p.mLiningToPanelOffsetY;
|
||||
}
|
||||
|
@ -706,7 +692,7 @@ namespace GeometryGym.Ifc
|
|||
internal IfcDoorPanelOperationEnum mOperationType;// : IfcDoorPanelOperationEnum;
|
||||
internal double mPanelWidth = double.NaN;// : OPTIONAL IfcNormalisedRatioMeasure;
|
||||
internal IfcDoorPanelPositionEnum mPanelPosition;// :IfcDoorPanelPositionEnum;
|
||||
private int mShapeAspectStyle;// : OPTIONAL IfcShapeAspect; // DEPRECATED IFC4
|
||||
private IfcShapeAspect mShapeAspectStyle;// : OPTIONAL IfcShapeAspect; // DEPRECATED IFC4
|
||||
|
||||
public double PanelDepth { get { return mPanelDepth; } set { mPanelDepth = value; } }
|
||||
public IfcDoorPanelOperationEnum OperationType { get { return mOperationType; } set { mOperationType = value; } }
|
||||
|
@ -715,15 +701,15 @@ namespace GeometryGym.Ifc
|
|||
|
||||
internal IfcDoorPanelProperties() : base() { }
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
public IfcShapeAspect ShapeAspectStyle { get { return mDatabase[mShapeAspectStyle] as IfcShapeAspect; } set { mShapeAspectStyle = (value == null ? 0 : value.mIndex); } }
|
||||
public IfcShapeAspect ShapeAspectStyle { get { return mShapeAspectStyle; } set { mShapeAspectStyle = value; } }
|
||||
internal IfcDoorPanelProperties(DatabaseIfc db, IfcDoorPanelProperties p, DuplicateOptions options) : base(db, p, options)
|
||||
{
|
||||
mPanelDepth = p.mPanelDepth;
|
||||
mOperationType = p.mOperationType;
|
||||
mPanelWidth = p.mPanelWidth;
|
||||
mPanelPosition = p.mPanelPosition;
|
||||
if (p.mShapeAspectStyle > 0)
|
||||
ShapeAspectStyle = db.Factory.Duplicate(p.ShapeAspectStyle) as IfcShapeAspect;
|
||||
if (p.mShapeAspectStyle != null)
|
||||
ShapeAspectStyle = db.Factory.Duplicate(p.ShapeAspectStyle);
|
||||
}
|
||||
}
|
||||
[Serializable]
|
||||
|
@ -753,33 +739,33 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
public override string StepClassName { get { return (mDatabase.mRelease < ReleaseVersion.IFC4 ? "IfcDoorStyle" : base.StepClassName); } }
|
||||
|
||||
internal IfcDoorTypeEnum mPredefinedType = IfcDoorTypeEnum.NOTDEFINED;
|
||||
private IfcDoorTypeEnum mPredefinedType = IfcDoorTypeEnum.NOTDEFINED;
|
||||
internal IfcDoorTypeOperationEnum mOperationType;// : IfcDoorStyleOperationEnum;
|
||||
internal bool mParameterTakesPrecedence = false;// : BOOLEAN;
|
||||
internal string mUserDefinedOperationType = "";// : OPTIONAL IfcLabel;
|
||||
|
||||
public IfcDoorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcDoorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcDoorTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
public string UserDefinedOperationType { get { return mUserDefinedOperationType; } set { mUserDefinedOperationType = value; } }
|
||||
|
||||
internal IfcDoorType() : base() { }
|
||||
internal IfcDoorType(DatabaseIfc db, IfcDoorType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; mOperationType = t.mOperationType; mParameterTakesPrecedence = t.mParameterTakesPrecedence; mUserDefinedOperationType = t.mUserDefinedOperationType; }
|
||||
public IfcDoorType(DatabaseIfc m, string name, IfcDoorTypeEnum type) : this(m, name, type, IfcDoorTypeOperationEnum.NOTDEFINED, false) { }
|
||||
internal IfcDoorType(DatabaseIfc m, string name, IfcDoorTypeEnum type, IfcDoorTypeOperationEnum operation, IfcDoorLiningProperties lp, List<IfcDoorPanelProperties> pps)
|
||||
: base(m)
|
||||
internal IfcDoorType(DatabaseIfc db, IfcDoorType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; mOperationType = t.mOperationType; mParameterTakesPrecedence = t.mParameterTakesPrecedence; mUserDefinedOperationType = t.mUserDefinedOperationType; }
|
||||
public IfcDoorType(DatabaseIfc db, string name, IfcDoorTypeEnum type) : this(db, name, type, IfcDoorTypeOperationEnum.NOTDEFINED, false) { }
|
||||
internal IfcDoorType(DatabaseIfc db, string name, IfcDoorTypeEnum type, IfcDoorTypeOperationEnum operation, IfcDoorLiningProperties lp, List<IfcDoorPanelProperties> pps)
|
||||
: base(db)
|
||||
{
|
||||
Name = name;
|
||||
if (lp != null) mHasPropertySets.Add(lp);
|
||||
if (pps != null && pps.Count > 0) mHasPropertySets.AddRange(pps);
|
||||
mPredefinedType = type;
|
||||
PredefinedType = type;
|
||||
mOperationType = operation;
|
||||
mParameterTakesPrecedence = true;
|
||||
|
||||
}
|
||||
internal IfcDoorType(DatabaseIfc m, string name, IfcDoorTypeEnum type, IfcDoorTypeOperationEnum operation, bool parameterTakesPrecendence)
|
||||
: base(m)
|
||||
internal IfcDoorType(DatabaseIfc db, string name, IfcDoorTypeEnum type, IfcDoorTypeOperationEnum operation, bool parameterTakesPrecendence)
|
||||
: base(db)
|
||||
{
|
||||
Name = name;
|
||||
mPredefinedType = type;
|
||||
PredefinedType = type;
|
||||
mOperationType = operation;
|
||||
mParameterTakesPrecedence = parameterTakesPrecendence;
|
||||
}
|
||||
|
@ -788,9 +774,12 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcDraughtingCallout : IfcGeometricRepresentationItem // DEPRECATED IFC4 SUPERTYPE OF (ONEOF (IfcDimensionCurveDirectedCallout ,IfcStructuredDimensionCallout))
|
||||
{
|
||||
internal List<int> mContents = new List<int>(); //: SET [1:?] OF IfcDraughtingCalloutElement
|
||||
internal SET<IfcDraughtingCalloutElement> mContents = new SET<IfcDraughtingCalloutElement>(); //: SET [1:?] OF IfcDraughtingCalloutElement
|
||||
internal IfcDraughtingCallout() : base() { }
|
||||
//internal IfcDraughtingCallout(IfcDraughtingCallout el) : base(el) { mContents = new List<int>(el.mContents.ToArray()); }
|
||||
internal IfcDraughtingCallout(DatabaseIfc db, IfcDraughtingCallout el, DuplicateOptions options) : base(db, el, options)
|
||||
{
|
||||
mContents.AddRange(el.mContents.Select(x => db.Factory.Duplicate(x)));
|
||||
}
|
||||
}
|
||||
public interface IfcDraughtingCalloutElement : IBaseClassIfc { } //SELECT (IfcAnnotationCurveOccurrence ,IfcAnnotationTextOccurrence ,IfcAnnotationSymbolOccurrence);
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
|
@ -824,61 +813,61 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcDuctFitting : IfcFlowFitting //IFC4
|
||||
{
|
||||
internal IfcDuctFittingTypeEnum mPredefinedType = IfcDuctFittingTypeEnum.NOTDEFINED;// OPTIONAL : IfcDuctFittingTypeEnum;
|
||||
public IfcDuctFittingTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcDuctFittingTypeEnum mPredefinedType = IfcDuctFittingTypeEnum.NOTDEFINED;// OPTIONAL : IfcDuctFittingTypeEnum;
|
||||
public IfcDuctFittingTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcDuctFittingTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcDuctFitting() : base() { }
|
||||
internal IfcDuctFitting(DatabaseIfc db, IfcDuctFitting f, DuplicateOptions options) : base(db, f, options) { mPredefinedType = f.mPredefinedType; }
|
||||
internal IfcDuctFitting(DatabaseIfc db, IfcDuctFitting f, DuplicateOptions options) : base(db, f, options) { PredefinedType = f.PredefinedType; }
|
||||
public IfcDuctFitting(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcDuctFittingType : IfcFlowFittingType
|
||||
{
|
||||
internal IfcDuctFittingTypeEnum mPredefinedType = IfcDuctFittingTypeEnum.NOTDEFINED;// : IfcDuctFittingTypeEnum;
|
||||
public IfcDuctFittingTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcDuctFittingTypeEnum mPredefinedType = IfcDuctFittingTypeEnum.NOTDEFINED;// : IfcDuctFittingTypeEnum;
|
||||
public IfcDuctFittingTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcDuctFittingTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcDuctFittingType() : base() { }
|
||||
internal IfcDuctFittingType(DatabaseIfc db, IfcDuctFittingType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcDuctFittingType(DatabaseIfc m, string name, IfcDuctFittingTypeEnum t) : base(m) { Name = name; PredefinedType = t; }
|
||||
internal IfcDuctFittingType(DatabaseIfc db, IfcDuctFittingType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcDuctFittingType(DatabaseIfc db, string name, IfcDuctFittingTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcDuctSegment : IfcFlowSegment //IFC4
|
||||
{
|
||||
internal IfcDuctSegmentTypeEnum mPredefinedType = IfcDuctSegmentTypeEnum.NOTDEFINED;// OPTIONAL : IfcDuctSegmentTypeEnum;
|
||||
public IfcDuctSegmentTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcDuctSegmentTypeEnum mPredefinedType = IfcDuctSegmentTypeEnum.NOTDEFINED;// OPTIONAL : IfcDuctSegmentTypeEnum;
|
||||
public IfcDuctSegmentTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcDuctSegmentTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcDuctSegment() : base() { }
|
||||
internal IfcDuctSegment(DatabaseIfc db, IfcDuctSegment s, DuplicateOptions options) : base(db, s, options) { mPredefinedType = s.mPredefinedType; }
|
||||
internal IfcDuctSegment(DatabaseIfc db, IfcDuctSegment s, DuplicateOptions options) : base(db, s, options) { PredefinedType = s.PredefinedType; }
|
||||
public IfcDuctSegment(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcDuctSegmentType : IfcFlowSegmentType
|
||||
{
|
||||
internal IfcDuctSegmentTypeEnum mPredefinedType = IfcDuctSegmentTypeEnum.NOTDEFINED;// : IfcDuctSegmentTypeEnum;
|
||||
public IfcDuctSegmentTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcDuctSegmentTypeEnum mPredefinedType = IfcDuctSegmentTypeEnum.NOTDEFINED;// : IfcDuctSegmentTypeEnum;
|
||||
public IfcDuctSegmentTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcDuctSegmentTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcDuctSegmentType() : base() { }
|
||||
internal IfcDuctSegmentType(DatabaseIfc db, IfcDuctSegmentType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcDuctSegmentType(DatabaseIfc db, string name, IfcDuctSegmentTypeEnum t) : base(db) { Name = name; mPredefinedType = t; }
|
||||
internal IfcDuctSegmentType(DatabaseIfc db, IfcDuctSegmentType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcDuctSegmentType(DatabaseIfc db, string name, IfcDuctSegmentTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcDuctSilencer : IfcFlowTreatmentDevice //IFC4
|
||||
{
|
||||
internal IfcDuctSilencerTypeEnum mPredefinedType = IfcDuctSilencerTypeEnum.NOTDEFINED;
|
||||
public IfcDuctSilencerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcDuctSilencerTypeEnum mPredefinedType = IfcDuctSilencerTypeEnum.NOTDEFINED;
|
||||
public IfcDuctSilencerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcDuctSilencerTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcDuctSilencer() : base() { }
|
||||
internal IfcDuctSilencer(DatabaseIfc db, IfcDuctSilencer s, DuplicateOptions options) : base(db, s, options) { mPredefinedType = s.mPredefinedType; }
|
||||
internal IfcDuctSilencer(DatabaseIfc db, IfcDuctSilencer s, DuplicateOptions options) : base(db, s, options) { PredefinedType = s.PredefinedType; }
|
||||
public IfcDuctSilencer(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcDuctSilencerType : IfcFlowTreatmentDeviceType
|
||||
{
|
||||
internal IfcDuctSilencerTypeEnum mPredefinedType = IfcDuctSilencerTypeEnum.NOTDEFINED;// : IfcDuctSilencerTypeEnum;
|
||||
public IfcDuctSilencerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcDuctSilencerTypeEnum mPredefinedType = IfcDuctSilencerTypeEnum.NOTDEFINED;// : IfcDuctSilencerTypeEnum;
|
||||
public IfcDuctSilencerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcDuctSilencerTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcDuctSilencerType() : base() { }
|
||||
internal IfcDuctSilencerType(DatabaseIfc db, IfcDuctSilencerType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcDuctSilencerType(DatabaseIfc db, string name, IfcDuctSilencerTypeEnum t) : base(db) { Name = name; mPredefinedType = t; }
|
||||
internal IfcDuctSilencerType(DatabaseIfc db, IfcDuctSilencerType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcDuctSilencerType(DatabaseIfc db, string name, IfcDuctSilencerTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
}
|
||||
|
|
|
@ -29,18 +29,18 @@ using GeometryGym.STEP;
|
|||
|
||||
namespace GeometryGym.Ifc
|
||||
{
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X3)]
|
||||
public partial class IfcEarthworksCut : IfcFeatureElementSubtraction
|
||||
{
|
||||
private IfcEarthworksCutTypeEnum mPredefinedType = IfcEarthworksCutTypeEnum.NOTDEFINED; //: OPTIONAL IfcEarthworksCutTypeEnum;
|
||||
public IfcEarthworksCutTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcEarthworksCutTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcEarthworksCutTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcEarthworksCut() : base() { }
|
||||
public IfcEarthworksCut(DatabaseIfc db) : base(db) { }
|
||||
public IfcEarthworksCut(DatabaseIfc db, IfcEarthworksCut earthworksCut, DuplicateOptions options) : base(db, earthworksCut, options) { PredefinedType = earthworksCut.PredefinedType; }
|
||||
public IfcEarthworksCut(IfcElement host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
}
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X3)]
|
||||
public partial class IfcEarthworksElement : IfcBuiltElement
|
||||
{
|
||||
public IfcEarthworksElement() : base() { }
|
||||
|
@ -48,11 +48,11 @@ namespace GeometryGym.Ifc
|
|||
public IfcEarthworksElement(DatabaseIfc db, IfcEarthworksElement earthworksElement, DuplicateOptions options) : base(db, earthworksElement, options) { }
|
||||
public IfcEarthworksElement(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
}
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X3)]
|
||||
public partial class IfcEarthworksFill : IfcEarthworksElement
|
||||
{
|
||||
private IfcEarthworksFillTypeEnum mPredefinedType = IfcEarthworksFillTypeEnum.NOTDEFINED; //: OPTIONAL IfcEarthworksFillTypeEnum;
|
||||
public IfcEarthworksFillTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcEarthworksFillTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcEarthworksFillTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcEarthworksFill() : base() { }
|
||||
public IfcEarthworksFill(DatabaseIfc db) : base(db) { }
|
||||
|
@ -173,47 +173,48 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcElectricAppliance : IfcFlowTerminal //IFC4
|
||||
{
|
||||
internal IfcElectricApplianceTypeEnum mPredefinedType = IfcElectricApplianceTypeEnum.NOTDEFINED;// OPTIONAL : IfcElectricApplianceTypeEnum;
|
||||
public IfcElectricApplianceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcElectricApplianceTypeEnum mPredefinedType = IfcElectricApplianceTypeEnum.NOTDEFINED;// OPTIONAL : IfcElectricApplianceTypeEnum;
|
||||
public IfcElectricApplianceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcElectricApplianceTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcElectricAppliance() : base() { }
|
||||
internal IfcElectricAppliance(DatabaseIfc db, IfcElectricAppliance a, DuplicateOptions options) : base(db, a, options) { mPredefinedType = a.mPredefinedType; }
|
||||
internal IfcElectricAppliance(DatabaseIfc db, IfcElectricAppliance a, DuplicateOptions options) : base(db, a, options) { PredefinedType = a.PredefinedType; }
|
||||
public IfcElectricAppliance(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcElectricApplianceType : IfcFlowTerminalType
|
||||
{
|
||||
internal IfcElectricApplianceTypeEnum mPredefinedType = IfcElectricApplianceTypeEnum.NOTDEFINED;// : IfcDuctFittingTypeEnum;
|
||||
public IfcElectricApplianceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcElectricApplianceTypeEnum mPredefinedType = IfcElectricApplianceTypeEnum.NOTDEFINED;// : IfcDuctFittingTypeEnum;
|
||||
public IfcElectricApplianceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcElectricApplianceTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcElectricApplianceType() : base() { }
|
||||
internal IfcElectricApplianceType(DatabaseIfc db, IfcElectricApplianceType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcElectricApplianceType(DatabaseIfc m, string name, IfcElectricApplianceTypeEnum t) : base(m) { Name = name; mPredefinedType = t; }
|
||||
internal IfcElectricApplianceType(DatabaseIfc db, IfcElectricApplianceType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcElectricApplianceType(DatabaseIfc db, string name, IfcElectricApplianceTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcElectricDistributionBoard : IfcFlowController //IFC4
|
||||
{
|
||||
internal IfcElectricDistributionBoardTypeEnum mPredefinedType = IfcElectricDistributionBoardTypeEnum.NOTDEFINED;// OPTIONAL : IfcDamperTypeEnum;
|
||||
public IfcElectricDistributionBoardTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcElectricDistributionBoardTypeEnum mPredefinedType = IfcElectricDistributionBoardTypeEnum.NOTDEFINED;// OPTIONAL : IfcDamperTypeEnum;
|
||||
public IfcElectricDistributionBoardTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcElectricDistributionBoardTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcElectricDistributionBoard() : base() { }
|
||||
internal IfcElectricDistributionBoard(DatabaseIfc db, IfcElectricDistributionBoard b, DuplicateOptions options) : base(db, b, options) { mPredefinedType = b.mPredefinedType; }
|
||||
internal IfcElectricDistributionBoard(DatabaseIfc db, IfcElectricDistributionBoard b, DuplicateOptions options) : base(db, b, options) { PredefinedType = b.PredefinedType; }
|
||||
public IfcElectricDistributionBoard(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcElectricDistributionBoardType : IfcFlowControllerType
|
||||
{
|
||||
internal IfcElectricDistributionBoardTypeEnum mPredefinedType = IfcElectricDistributionBoardTypeEnum.NOTDEFINED;// : IfcElectricDistributionBoardTypeEnum;
|
||||
public IfcElectricDistributionBoardTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcElectricDistributionBoardTypeEnum mPredefinedType = IfcElectricDistributionBoardTypeEnum.NOTDEFINED;// : IfcElectricDistributionBoardTypeEnum;
|
||||
public IfcElectricDistributionBoardTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcElectricDistributionBoardTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcElectricDistributionBoardType() : base() { }
|
||||
internal IfcElectricDistributionBoardType(DatabaseIfc db, IfcElectricDistributionBoardType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcElectricDistributionBoardType(DatabaseIfc m, string name, IfcElectricDistributionBoardTypeEnum t) : base(m) { Name = name; mPredefinedType = t; }
|
||||
internal IfcElectricDistributionBoardType(DatabaseIfc db, IfcElectricDistributionBoardType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcElectricDistributionBoardType(DatabaseIfc db, string name, IfcElectricDistributionBoardTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
[Serializable]
|
||||
public partial class IfcElectricDistributionPoint : IfcFlowController // DEPRECATED IFC4
|
||||
{
|
||||
public override string StepClassName { get { return (mDatabase == null || mDatabase.Release < ReleaseVersion.IFC4 ? base.StepClassName : "IfcFlowController"); } }
|
||||
internal IfcElectricDistributionPointFunctionEnum mDistributionPointFunction;// : IfcElectricDistributionPointFunctionEnum;
|
||||
internal string mUserDefinedFunction = "";// : OPTIONAL IfcLabel;
|
||||
|
||||
|
@ -227,39 +228,39 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcElectricFlowStorageDevice : IfcFlowStorageDevice //IFC4
|
||||
{
|
||||
internal IfcElectricFlowStorageDeviceTypeEnum mPredefinedType = IfcElectricFlowStorageDeviceTypeEnum.NOTDEFINED;// OPTIONAL : IfcElectricFlowStorageDeviceTypeEnum;
|
||||
public IfcElectricFlowStorageDeviceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcElectricFlowStorageDeviceTypeEnum mPredefinedType = IfcElectricFlowStorageDeviceTypeEnum.NOTDEFINED;// OPTIONAL : IfcElectricFlowStorageDeviceTypeEnum;
|
||||
public IfcElectricFlowStorageDeviceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcElectricFlowStorageDeviceTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcElectricFlowStorageDevice() : base() { }
|
||||
internal IfcElectricFlowStorageDevice(DatabaseIfc db, IfcElectricFlowStorageDevice d, DuplicateOptions options) : base(db, d, options) { mPredefinedType = d.mPredefinedType; }
|
||||
internal IfcElectricFlowStorageDevice(DatabaseIfc db, IfcElectricFlowStorageDevice d, DuplicateOptions options) : base(db, d, options) { PredefinedType = d.PredefinedType; }
|
||||
public IfcElectricFlowStorageDevice(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcElectricFlowStorageDeviceType : IfcFlowStorageDeviceType
|
||||
{
|
||||
internal IfcElectricFlowStorageDeviceTypeEnum mPredefinedType = IfcElectricFlowStorageDeviceTypeEnum.NOTDEFINED;// : IfcElectricFlowStorageDeviceTypeEnum;
|
||||
public IfcElectricFlowStorageDeviceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcElectricFlowStorageDeviceTypeEnum mPredefinedType = IfcElectricFlowStorageDeviceTypeEnum.NOTDEFINED;// : IfcElectricFlowStorageDeviceTypeEnum;
|
||||
public IfcElectricFlowStorageDeviceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcElectricFlowStorageDeviceTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcElectricFlowStorageDeviceType() : base() { }
|
||||
internal IfcElectricFlowStorageDeviceType(DatabaseIfc db, IfcElectricFlowStorageDeviceType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcElectricFlowStorageDeviceType(DatabaseIfc db, string name, IfcElectricFlowStorageDeviceTypeEnum t) : base(db) { Name = name; mPredefinedType = t; }
|
||||
internal IfcElectricFlowStorageDeviceType(DatabaseIfc db, IfcElectricFlowStorageDeviceType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcElectricFlowStorageDeviceType(DatabaseIfc db, string name, IfcElectricFlowStorageDeviceTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X3)]
|
||||
public partial class IfcElectricFlowTreatmentDevice : IfcFlowTreatmentDevice
|
||||
{
|
||||
private IfcElectricFlowTreatmentDeviceTypeEnum mPredefinedType = IfcElectricFlowTreatmentDeviceTypeEnum.NOTDEFINED; //: OPTIONAL IfcElectricFlowTreatmentDeviceTypeEnum;
|
||||
public IfcElectricFlowTreatmentDeviceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcElectricFlowTreatmentDeviceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcElectricFlowTreatmentDeviceTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcElectricFlowTreatmentDevice() : base() { }
|
||||
public IfcElectricFlowTreatmentDevice(DatabaseIfc db) : base(db) { }
|
||||
public IfcElectricFlowTreatmentDevice(DatabaseIfc db, IfcElectricFlowTreatmentDevice electricFlowTreatmentDevice, DuplicateOptions options) : base(db, electricFlowTreatmentDevice, options) { PredefinedType = electricFlowTreatmentDevice.PredefinedType; }
|
||||
public IfcElectricFlowTreatmentDevice(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X3)]
|
||||
public partial class IfcElectricFlowTreatmentDeviceType : IfcFlowTreatmentDeviceType
|
||||
{
|
||||
private IfcElectricFlowTreatmentDeviceTypeEnum mPredefinedType = IfcElectricFlowTreatmentDeviceTypeEnum.NOTDEFINED; //: IfcElectricFlowTreatmentDeviceTypeEnum;
|
||||
public IfcElectricFlowTreatmentDeviceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcElectricFlowTreatmentDeviceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcElectricFlowTreatmentDeviceTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcElectricFlowTreatmentDeviceType() : base() { }
|
||||
public IfcElectricFlowTreatmentDeviceType(DatabaseIfc db, string name, IfcElectricFlowTreatmentDeviceTypeEnum predefinedType)
|
||||
|
@ -268,73 +269,74 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcElectricGenerator : IfcEnergyConversionDevice //IFC4
|
||||
{
|
||||
internal IfcElectricGeneratorTypeEnum mPredefinedType = IfcElectricGeneratorTypeEnum.NOTDEFINED;// OPTIONAL : IfcElectricGeneratorTypeEnum;
|
||||
public IfcElectricGeneratorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcElectricGeneratorTypeEnum mPredefinedType = IfcElectricGeneratorTypeEnum.NOTDEFINED;// OPTIONAL : IfcElectricGeneratorTypeEnum;
|
||||
public IfcElectricGeneratorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcElectricGeneratorTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcElectricGenerator() : base() { }
|
||||
internal IfcElectricGenerator(DatabaseIfc db, IfcElectricGenerator g, DuplicateOptions options) : base(db, g, options) { mPredefinedType = g.mPredefinedType; }
|
||||
internal IfcElectricGenerator(DatabaseIfc db, IfcElectricGenerator g, DuplicateOptions options) : base(db, g, options) { PredefinedType = g.PredefinedType; }
|
||||
public IfcElectricGenerator(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcElectricGeneratorType : IfcEnergyConversionDeviceType
|
||||
{
|
||||
internal IfcElectricGeneratorTypeEnum mPredefinedType = IfcElectricGeneratorTypeEnum.NOTDEFINED;// : IfcElectricGeneratorTypeEnum;
|
||||
public IfcElectricGeneratorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcElectricGeneratorTypeEnum mPredefinedType = IfcElectricGeneratorTypeEnum.NOTDEFINED;// : IfcElectricGeneratorTypeEnum;
|
||||
public IfcElectricGeneratorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcElectricGeneratorTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcElectricGeneratorType() : base() { }
|
||||
internal IfcElectricGeneratorType(DatabaseIfc db, IfcElectricGeneratorType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcElectricGeneratorType(DatabaseIfc db, string name, IfcElectricGeneratorTypeEnum t) : base(db) { Name = name; mPredefinedType = t; }
|
||||
internal IfcElectricGeneratorType(DatabaseIfc db, IfcElectricGeneratorType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcElectricGeneratorType(DatabaseIfc db, string name, IfcElectricGeneratorTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
[Serializable]
|
||||
public partial class IfcElectricHeaterType : IfcFlowTerminalType // DEPRECATED IFC4
|
||||
{
|
||||
internal IfcElectricHeaterTypeEnum mPredefinedType = IfcElectricHeaterTypeEnum.NOTDEFINED;// : IfcElectricHeaterTypeEnum
|
||||
public IfcElectricHeaterTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public override string StepClassName { get { return (mDatabase == null || mDatabase.Release < ReleaseVersion.IFC4 ? base.StepClassName : "IfcFlowTerminalType"); } }
|
||||
private IfcElectricHeaterTypeEnum mPredefinedType = IfcElectricHeaterTypeEnum.NOTDEFINED;// : IfcElectricHeaterTypeEnum
|
||||
public IfcElectricHeaterTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcElectricHeaterTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcElectricHeaterType() : base() { }
|
||||
internal IfcElectricHeaterType(DatabaseIfc db, IfcElectricHeaterType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcElectricHeaterType(DatabaseIfc db, string name, IfcElectricHeaterTypeEnum t) : base(db) { Name = name; mPredefinedType = t; }
|
||||
internal IfcElectricHeaterType(DatabaseIfc db, IfcElectricHeaterType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcElectricHeaterType(DatabaseIfc db, string name, IfcElectricHeaterTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcElectricMotor : IfcEnergyConversionDevice //IFC4
|
||||
{
|
||||
internal IfcElectricMotorTypeEnum mPredefinedType = IfcElectricMotorTypeEnum.NOTDEFINED;// OPTIONAL : IfcElectricMotorTypeEnum;
|
||||
public IfcElectricMotorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcElectricMotorTypeEnum mPredefinedType = IfcElectricMotorTypeEnum.NOTDEFINED;// OPTIONAL : IfcElectricMotorTypeEnum;
|
||||
public IfcElectricMotorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcElectricMotorTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcElectricMotor() : base() { }
|
||||
internal IfcElectricMotor(DatabaseIfc db, IfcElectricMotor m, DuplicateOptions options) : base(db, m, options) { mPredefinedType = m.mPredefinedType; }
|
||||
internal IfcElectricMotor(DatabaseIfc db, IfcElectricMotor m, DuplicateOptions options) : base(db, m, options) { PredefinedType = m.PredefinedType; }
|
||||
public IfcElectricMotor(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcElectricMotorType : IfcEnergyConversionDeviceType
|
||||
{
|
||||
internal IfcElectricMotorTypeEnum mPredefinedType = IfcElectricMotorTypeEnum.NOTDEFINED;// : IfcElectricMotorTypeEnum;
|
||||
public IfcElectricMotorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcElectricMotorTypeEnum mPredefinedType = IfcElectricMotorTypeEnum.NOTDEFINED;// : IfcElectricMotorTypeEnum;
|
||||
public IfcElectricMotorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcElectricMotorTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcElectricMotorType() : base() { }
|
||||
internal IfcElectricMotorType(DatabaseIfc db, IfcElectricMotorType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcElectricMotorType(DatabaseIfc db, string name, IfcElectricMotorTypeEnum t) : base(db) { Name = name; mPredefinedType = t; }
|
||||
internal IfcElectricMotorType(DatabaseIfc db, IfcElectricMotorType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcElectricMotorType(DatabaseIfc db, string name, IfcElectricMotorTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcElectricTimeControl : IfcFlowController //IFC4
|
||||
{
|
||||
internal IfcElectricTimeControlTypeEnum mPredefinedType = IfcElectricTimeControlTypeEnum.NOTDEFINED;// OPTIONAL : IfcElectricTimeControlTypeEnum;
|
||||
public IfcElectricTimeControlTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcElectricTimeControlTypeEnum mPredefinedType = IfcElectricTimeControlTypeEnum.NOTDEFINED;// OPTIONAL : IfcElectricTimeControlTypeEnum;
|
||||
public IfcElectricTimeControlTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcElectricTimeControlTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcElectricTimeControl() : base() { }
|
||||
internal IfcElectricTimeControl(DatabaseIfc db, IfcElectricTimeControl c, DuplicateOptions options) : base(db, c, options) { mPredefinedType = c.mPredefinedType; }
|
||||
internal IfcElectricTimeControl(DatabaseIfc db, IfcElectricTimeControl c, DuplicateOptions options) : base(db, c, options) { PredefinedType = c.PredefinedType; }
|
||||
public IfcElectricTimeControl(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcElectricTimeControlType : IfcFlowControllerType
|
||||
{
|
||||
internal IfcElectricTimeControlTypeEnum mPredefinedType = IfcElectricTimeControlTypeEnum.NOTDEFINED;// : IfcElectricTimeControlTypeEnum;
|
||||
public IfcElectricTimeControlTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcElectricTimeControlTypeEnum mPredefinedType = IfcElectricTimeControlTypeEnum.NOTDEFINED;// : IfcElectricTimeControlTypeEnum;
|
||||
public IfcElectricTimeControlTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcElectricTimeControlTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcElectricTimeControlType() : base() { }
|
||||
internal IfcElectricTimeControlType(DatabaseIfc db, IfcElectricTimeControlType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcElectricTimeControlType(DatabaseIfc m, string name, IfcElectricTimeControlTypeEnum type) : base(m) { Name = name; mPredefinedType = type; }
|
||||
internal IfcElectricTimeControlType(DatabaseIfc db, IfcElectricTimeControlType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcElectricTimeControlType(DatabaseIfc db, string name, IfcElectricTimeControlTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
//[Obsolete("DEPRECATED IFC4", false)]
|
||||
//ENTITY IfcElectricalBaseProperties // DEPRECATED IFC4
|
||||
|
@ -342,12 +344,16 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcElectricalCircuit : IfcSystem // DEPRECATED IFC4
|
||||
{
|
||||
public override string StepClassName { get { return (mDatabase == null || mDatabase.Release < ReleaseVersion.IFC4 ? base.StepClassName : "IfcSystem"); } }
|
||||
internal IfcElectricalCircuit() : base() { }
|
||||
internal IfcElectricalCircuit(DatabaseIfc db, IfcElectricalCircuit c, DuplicateOptions options) : base(db, c, options) { }
|
||||
}
|
||||
[Obsolete("DEPRECATED IFC2x2", false)]
|
||||
[Serializable]
|
||||
public partial class IfcElectricalElement : IfcElement /* DEPRECATED IFC2x2*/ { }
|
||||
public partial class IfcElectricalElement : IfcElement /* DEPRECATED IFC2x2*/
|
||||
{
|
||||
public IfcElectricalElement(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape shape) : base(host, placement, shape) { }
|
||||
}
|
||||
[Serializable]
|
||||
public abstract partial class IfcElement : IfcProduct, IfcInterferenceSelect, IfcStructuralActivityAssignmentSelect //ABSTRACT SUPERTYPE OF (ONEOF(IfcBuildingElement, IfcCivilElement
|
||||
{ //,IfcDistributionElement,IfcElementAssembly,IfcElementComponent,IfcFeatureElement,IfcFurnishingElement,IfcGeographicElement,IfcTransportElement ,IfcVirtualElement,IfcElectricalElement SS,IfcEquipmentElement SS))
|
||||
|
@ -388,15 +394,8 @@ namespace GeometryGym.Ifc
|
|||
public SET<IfcRelConnectsStructuralActivity> AssignedStructuralActivity { get { return mAssignedStructuralActivity; } }
|
||||
|
||||
public SET<IfcRelCoversBldgElements> HasCoverings { get { return mHasCoverings; } }
|
||||
//GEOMGYM
|
||||
//List<IfcRelConnectsStructuralActivity> mAssignedStructuralActivity = new List<IfcRelConnectsStructuralActivity>();//: SET OF IfcRelConnectsStructuralActivity FOR RelatingElement;
|
||||
|
||||
protected IfcElement() : base() { }
|
||||
protected IfcElement(IfcElement element, bool replace) : base(element, replace)
|
||||
{
|
||||
mTag = element.mTag;
|
||||
//todo setInverse
|
||||
}
|
||||
protected IfcElement(DatabaseIfc db) : base(db) { }
|
||||
protected IfcElement(DatabaseIfc db, IfcElement e, DuplicateOptions options) : base(db, e, options)
|
||||
{
|
||||
|
@ -409,13 +408,13 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
IfcElement relating = ce.RelatingElement, related = ce.RelatedElement;
|
||||
int relatingIndex = db.Factory.mDuplicateMapping.FindExisting(relating), relatedIndex = db.Factory.mDuplicateMapping.FindExisting(related);
|
||||
if (relating.mIndex != e.mIndex && relatingIndex > 0)
|
||||
if (relating != e && relatingIndex > 0)
|
||||
{
|
||||
IfcRelConnectsElements rce = db.Factory.Duplicate(ce, new DuplicateOptions(options.DeviationTolerance) { DuplicateDownstream = false }) as IfcRelConnectsElements;
|
||||
rce.RelatedElement = this;
|
||||
rce.RelatingElement = db[relatingIndex] as IfcElement;
|
||||
}
|
||||
else if (related.mIndex != e.mIndex && relatedIndex > 0)
|
||||
else if (related != e && relatedIndex > 0)
|
||||
{
|
||||
IfcRelConnectsElements rce = db.Factory.Duplicate(ce, new DuplicateOptions(options.DeviationTolerance) { DuplicateDownstream = false }) as IfcRelConnectsElements;
|
||||
rce.RelatingElement = this;
|
||||
|
@ -614,34 +613,35 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public abstract partial class IfcElementarySurface : IfcSurface // ABSTRACT SUPERTYPE OF(ONEOF(IfcCylindricalSurface, IfcPlane))
|
||||
{
|
||||
private int mPosition;// : IfcAxis2Placement3D;
|
||||
public IfcAxis2Placement3D Position { get { return mDatabase[mPosition] as IfcAxis2Placement3D; } set { mPosition = value.mIndex; } }
|
||||
private IfcAxis2Placement3D mPosition;// : IfcAxis2Placement3D;
|
||||
public IfcAxis2Placement3D Position { get { return mPosition; } set { mPosition = value; } }
|
||||
|
||||
protected IfcElementarySurface() : base() { }
|
||||
protected IfcElementarySurface(DatabaseIfc db, IfcElementarySurface s, DuplicateOptions options) : base(db, s, options) { Position = db.Factory.Duplicate(s.Position) as IfcAxis2Placement3D; }
|
||||
protected IfcElementarySurface(IfcAxis2Placement3D placement) : base(placement.mDatabase) { mPosition = placement.mIndex; }
|
||||
protected IfcElementarySurface(IfcAxis2Placement3D position) : base(position.mDatabase) { mPosition = position; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcElementAssembly : IfcElement
|
||||
{
|
||||
internal IfcAssemblyPlaceEnum mAssemblyPlace = IfcAssemblyPlaceEnum.NOTDEFINED;//: OPTIONAL IfcAssemblyPlaceEnum;
|
||||
internal IfcElementAssemblyTypeEnum mPredefinedType = IfcElementAssemblyTypeEnum.NOTDEFINED;//: OPTIONAL IfcElementAssemblyTypeEnum;
|
||||
private IfcElementAssemblyTypeEnum mPredefinedType = IfcElementAssemblyTypeEnum.NOTDEFINED;//: OPTIONAL IfcElementAssemblyTypeEnum;
|
||||
public IfcAssemblyPlaceEnum AssemblyPlace { get { return mAssemblyPlace; } set { mAssemblyPlace = value; } }
|
||||
public IfcElementAssemblyTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcElementAssemblyTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcElementAssemblyTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcElementAssembly() : base() { }
|
||||
internal IfcElementAssembly(DatabaseIfc db, IfcElementAssembly a, DuplicateOptions options) : base(db, a, options) { mPredefinedType = a.mPredefinedType; }
|
||||
public IfcElementAssembly(IfcObjectDefinition host, IfcAssemblyPlaceEnum place, IfcElementAssemblyTypeEnum type) : base(host, null, null) { AssemblyPlace = place; PredefinedType = type; }
|
||||
internal IfcElementAssembly(DatabaseIfc db, IfcElementAssembly a, DuplicateOptions options) : base(db, a, options) { PredefinedType = a.PredefinedType; }
|
||||
public IfcElementAssembly(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape shape) : base(host, placement, shape) { }
|
||||
public IfcElementAssembly(IfcObjectDefinition host, IfcAssemblyPlaceEnum placement, IfcElementAssemblyTypeEnum type) : base(host, null, null) { AssemblyPlace = placement; PredefinedType = type; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcElementAssemblyType : IfcElementType //IFC4
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4)]
|
||||
public partial class IfcElementAssemblyType : IfcElementType
|
||||
{
|
||||
internal IfcElementAssemblyTypeEnum mPredefinedType = IfcElementAssemblyTypeEnum.NOTDEFINED;// IfcElementAssemblyTypeEnum;
|
||||
public IfcElementAssemblyTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcElementAssemblyTypeEnum mPredefinedType = IfcElementAssemblyTypeEnum.NOTDEFINED;// IfcElementAssemblyTypeEnum;
|
||||
public IfcElementAssemblyTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcElementAssemblyTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcElementAssemblyType() : base() { }
|
||||
internal IfcElementAssemblyType(DatabaseIfc db, IfcElementAssemblyType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcElementAssemblyType(DatabaseIfc m, string name, IfcElementAssemblyTypeEnum type) : base(m) { Name = name; mPredefinedType = type; if (m.mRelease < ReleaseVersion.IFC4) throw new Exception(StepClassName + " only supported in IFC4!"); }
|
||||
internal IfcElementAssemblyType(DatabaseIfc db, IfcElementAssemblyType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcElementAssemblyType(DatabaseIfc db, string name, IfcElementAssemblyTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
[Serializable]
|
||||
public abstract partial class IfcElementComponent : IfcElement // ABSTRACT SUPERTYPE OF(ONEOF(IfcBuildingElementPart, IfcDiscreteAccessory, IfcFastener, IfcMechanicalFastener, IfcReinforcingElement, IfcVibrationIsolator))
|
||||
|
@ -787,7 +787,6 @@ namespace GeometryGym.Ifc
|
|||
public string ElementType { get { return mElementType; } set { mElementType = value; } }
|
||||
|
||||
protected IfcElementType() : base() { }
|
||||
protected IfcElementType(IfcElementType basis) : base(basis) { mElementType = basis.mElementType; }
|
||||
protected IfcElementType(DatabaseIfc db, IfcElementType t, DuplicateOptions options) : base(db, t, options) { mElementType = t.mElementType; }
|
||||
protected IfcElementType(DatabaseIfc db) : base(db) { }
|
||||
|
||||
|
@ -859,22 +858,22 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcEngine : IfcEnergyConversionDevice //IFC4
|
||||
{
|
||||
internal IfcEngineTypeEnum mPredefinedType = IfcEngineTypeEnum.NOTDEFINED;// OPTIONAL : IfcEngineTypeEnum;
|
||||
public IfcEngineTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcEngineTypeEnum mPredefinedType = IfcEngineTypeEnum.NOTDEFINED;// OPTIONAL : IfcEngineTypeEnum;
|
||||
public IfcEngineTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcEngineTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcEngine() : base() { }
|
||||
internal IfcEngine(DatabaseIfc db, IfcEngine e, DuplicateOptions options) : base(db, e, options) { mPredefinedType = e.mPredefinedType; }
|
||||
internal IfcEngine(DatabaseIfc db, IfcEngine e, DuplicateOptions options) : base(db, e, options) { PredefinedType = e.PredefinedType; }
|
||||
public IfcEngine(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcEngineType : IfcEnergyConversionDeviceType
|
||||
{
|
||||
internal IfcEngineTypeEnum mPredefinedType = IfcEngineTypeEnum.NOTDEFINED;// : IfcEngineTypeEnum;
|
||||
public IfcEngineTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcEngineTypeEnum mPredefinedType = IfcEngineTypeEnum.NOTDEFINED;// : IfcEngineTypeEnum;
|
||||
public IfcEngineTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcEngineTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcEngineType() : base() { }
|
||||
internal IfcEngineType(DatabaseIfc db, IfcEngineType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcEngineType(DatabaseIfc db, string name, IfcEngineTypeEnum t) : base(db) { Name = name; mPredefinedType = t; }
|
||||
internal IfcEngineType(DatabaseIfc db, IfcEngineType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcEngineType(DatabaseIfc db, string name, IfcEngineTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
[Serializable]
|
||||
|
@ -903,57 +902,57 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcEvaporativeCooler : IfcEnergyConversionDevice //IFC4
|
||||
{
|
||||
internal IfcEvaporativeCoolerTypeEnum mPredefinedType = IfcEvaporativeCoolerTypeEnum.NOTDEFINED;// OPTIONAL : IfcEvaporativeCoolerTypeEnum;
|
||||
public IfcEvaporativeCoolerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcEvaporativeCoolerTypeEnum mPredefinedType = IfcEvaporativeCoolerTypeEnum.NOTDEFINED;// OPTIONAL : IfcEvaporativeCoolerTypeEnum;
|
||||
public IfcEvaporativeCoolerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcEvaporativeCoolerTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcEvaporativeCooler() : base() { }
|
||||
internal IfcEvaporativeCooler(DatabaseIfc db, IfcEvaporativeCooler c, DuplicateOptions options) : base(db, c, options) { mPredefinedType = c.mPredefinedType; }
|
||||
internal IfcEvaporativeCooler(DatabaseIfc db, IfcEvaporativeCooler c, DuplicateOptions options) : base(db, c, options) { PredefinedType = c.PredefinedType; }
|
||||
public IfcEvaporativeCooler(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcEvaporativeCoolerType : IfcEnergyConversionDeviceType
|
||||
{
|
||||
internal IfcEvaporativeCoolerTypeEnum mPredefinedType = IfcEvaporativeCoolerTypeEnum.NOTDEFINED;// : IfcEvaporativeCoolerTypeEnum;
|
||||
public IfcEvaporativeCoolerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcEvaporativeCoolerTypeEnum mPredefinedType = IfcEvaporativeCoolerTypeEnum.NOTDEFINED;// : IfcEvaporativeCoolerTypeEnum;
|
||||
public IfcEvaporativeCoolerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcEvaporativeCoolerTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcEvaporativeCoolerType() : base() { }
|
||||
internal IfcEvaporativeCoolerType(DatabaseIfc db, IfcEvaporativeCoolerType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcEvaporativeCoolerType(DatabaseIfc db, string name, IfcEvaporativeCoolerTypeEnum t) : base(db) { Name = name; mPredefinedType = t; }
|
||||
internal IfcEvaporativeCoolerType(DatabaseIfc db, IfcEvaporativeCoolerType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcEvaporativeCoolerType(DatabaseIfc db, string name, IfcEvaporativeCoolerTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcEvaporator : IfcEnergyConversionDevice //IFC4
|
||||
{
|
||||
internal IfcEvaporatorTypeEnum mPredefinedType = IfcEvaporatorTypeEnum.NOTDEFINED;// OPTIONAL : IfcEvaporatorTypeEnum;
|
||||
public IfcEvaporatorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcEvaporatorTypeEnum mPredefinedType = IfcEvaporatorTypeEnum.NOTDEFINED;// OPTIONAL : IfcEvaporatorTypeEnum;
|
||||
public IfcEvaporatorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcEvaporatorTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcEvaporator() : base() { }
|
||||
internal IfcEvaporator(DatabaseIfc db, IfcEvaporator e, DuplicateOptions options) : base(db, e, options) { mPredefinedType = e.mPredefinedType; }
|
||||
internal IfcEvaporator(DatabaseIfc db, IfcEvaporator e, DuplicateOptions options) : base(db, e, options) { PredefinedType = e.PredefinedType; }
|
||||
public IfcEvaporator(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcEvaporatorType : IfcEnergyConversionDeviceType
|
||||
{
|
||||
internal IfcEvaporatorTypeEnum mPredefinedType = IfcEvaporatorTypeEnum.NOTDEFINED;// : IfcEvaporatorTypeEnum;
|
||||
public IfcEvaporatorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcEvaporatorTypeEnum mPredefinedType = IfcEvaporatorTypeEnum.NOTDEFINED;// : IfcEvaporatorTypeEnum;
|
||||
public IfcEvaporatorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcEvaporatorTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcEvaporatorType() : base() { }
|
||||
internal IfcEvaporatorType(DatabaseIfc db, IfcEvaporatorType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcEvaporatorType(DatabaseIfc db, string name, IfcEvaporatorTypeEnum t) : base(db) { Name = name; mPredefinedType = t; }
|
||||
internal IfcEvaporatorType(DatabaseIfc db, IfcEvaporatorType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcEvaporatorType(DatabaseIfc db, string name, IfcEvaporatorTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcEvent : IfcProcess //IFC4
|
||||
{
|
||||
internal IfcEventTypeEnum mPredefinedType = IfcEventTypeEnum.NOTDEFINED;// : IfcEventTypeEnum;
|
||||
private IfcEventTypeEnum mPredefinedType = IfcEventTypeEnum.NOTDEFINED;// : IfcEventTypeEnum;
|
||||
internal IfcEventTriggerTypeEnum mEventTriggerType = IfcEventTriggerTypeEnum.NOTDEFINED;// : IfcEventTypeEnum;
|
||||
internal string mUserDefinedEventTriggerType = "";// : OPTIONAL IfcLabel;
|
||||
internal IfcEventTime mEventOccurrenceTime;// : OPTIONAL IfcEventTime;
|
||||
|
||||
public IfcEventTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcEventTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcEventTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
public IfcEventTriggerTypeEnum EventTriggerType { get { return mEventTriggerType; } set { mEventTriggerType = value; } }
|
||||
public string UserDefinedEventTriggerType { get { return mUserDefinedEventTriggerType; } set { mUserDefinedEventTriggerType = value; } }
|
||||
|
||||
internal IfcEvent() : base() { }
|
||||
internal IfcEvent(DatabaseIfc db, IfcEvent e, DuplicateOptions options) : base(db, e, options) { mPredefinedType = e.mPredefinedType; mEventTriggerType = e.mEventTriggerType; mUserDefinedEventTriggerType = e.mUserDefinedEventTriggerType; }
|
||||
internal IfcEvent(DatabaseIfc db, IfcEvent e, DuplicateOptions options) : base(db, e, options) { PredefinedType = e.PredefinedType; mEventTriggerType = e.mEventTriggerType; mUserDefinedEventTriggerType = e.mUserDefinedEventTriggerType; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcEventTime : IfcSchedulingTime
|
||||
|
@ -974,18 +973,18 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcEventType : IfcTypeProcess //IFC4
|
||||
{
|
||||
internal IfcEventTypeEnum mPredefinedType = IfcEventTypeEnum.NOTDEFINED;// : IfcEventTypeEnum;
|
||||
private IfcEventTypeEnum mPredefinedType = IfcEventTypeEnum.NOTDEFINED;// : IfcEventTypeEnum;
|
||||
internal IfcEventTriggerTypeEnum mEventTriggerType = IfcEventTriggerTypeEnum.NOTDEFINED;// : IfcEventTypeEnum;
|
||||
internal string mUserDefinedEventTriggerType = "";// : OPTIONAL IfcLabel;
|
||||
|
||||
public IfcEventTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcEventTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcEventTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
public IfcEventTriggerTypeEnum EventTriggerType { get { return mEventTriggerType; } set { mEventTriggerType = value; } }
|
||||
public string UserDefinedEventTriggerType { get { return mUserDefinedEventTriggerType; } set { mUserDefinedEventTriggerType = value; } }
|
||||
|
||||
internal IfcEventType() : base() { }
|
||||
internal IfcEventType(DatabaseIfc db, IfcEventType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; mEventTriggerType = t.mEventTriggerType; mUserDefinedEventTriggerType = t.mUserDefinedEventTriggerType; }
|
||||
public IfcEventType(DatabaseIfc m, string name, IfcEventTypeEnum t, IfcEventTriggerTypeEnum trigger)
|
||||
: base(m) { Name = name; mPredefinedType = t; mEventTriggerType = trigger; }
|
||||
internal IfcEventType(DatabaseIfc db, IfcEventType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; mEventTriggerType = t.mEventTriggerType; mUserDefinedEventTriggerType = t.mUserDefinedEventTriggerType; }
|
||||
public IfcEventType(DatabaseIfc db, string name, IfcEventTypeEnum t, IfcEventTriggerTypeEnum trigger)
|
||||
: base(db) { Name = name; PredefinedType = t; mEventTriggerType = trigger; }
|
||||
}
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
[Serializable]
|
||||
|
@ -1053,10 +1052,10 @@ namespace GeometryGym.Ifc
|
|||
public abstract partial class IfcExternalInformation : BaseClassIfc, IfcResourceObjectSelect // NEW IFC4 ABSTRACT SUPERTYPE OF(ONEOF(IfcClassification, IfcDocumentInformation, IfcLibraryInformation));
|
||||
{ //INVERSE
|
||||
private SET<IfcExternalReferenceRelationship> mHasExternalReference = new SET<IfcExternalReferenceRelationship>(); //IFC4 SET [0:?] OF IfcExternalReferenceRelationship FOR RelatedResourceObjects;
|
||||
internal List<IfcResourceConstraintRelationship> mHasConstraintRelationships = new List<IfcResourceConstraintRelationship>(); //gg
|
||||
internal SET<IfcResourceConstraintRelationship> mHasConstraintRelationships = new SET<IfcResourceConstraintRelationship>(); //gg
|
||||
|
||||
public SET<IfcExternalReferenceRelationship> HasExternalReference { get { return mHasExternalReference; } }
|
||||
public ReadOnlyCollection<IfcResourceConstraintRelationship> HasConstraintRelationships { get { return new ReadOnlyCollection<IfcResourceConstraintRelationship>(mHasConstraintRelationships); } }
|
||||
public SET<IfcResourceConstraintRelationship> HasConstraintRelationships { get { return mHasConstraintRelationships; } }
|
||||
|
||||
protected IfcExternalInformation() : base() { }
|
||||
protected IfcExternalInformation(DatabaseIfc db) : base(db) { }
|
||||
|
@ -1201,7 +1200,7 @@ namespace GeometryGym.Ifc
|
|||
internal IfcExternalReferenceRelationship(DatabaseIfc db, IfcExternalReferenceRelationship r, DuplicateOptions options) : base(db, r, options)
|
||||
{
|
||||
RelatingReference = db.Factory.Duplicate(r.RelatingReference) as IfcExternalReference;
|
||||
RelatedResourceObjects.AddRange(r.mRelatedResourceObjects.ConvertAll(x=>db.Factory.Duplicate(x.Database[x.Index]) as IfcResourceObjectSelect));
|
||||
RelatedResourceObjects.AddRange(r.mRelatedResourceObjects.ConvertAll(x=>db.Factory.Duplicate<IfcResourceObjectSelect>(x)));
|
||||
}
|
||||
public IfcExternalReferenceRelationship(IfcExternalReference reference, IfcResourceObjectSelect related) : this(reference, new List<IfcResourceObjectSelect>() { related }) { }
|
||||
public IfcExternalReferenceRelationship(IfcExternalReference reference, IEnumerable<IfcResourceObjectSelect> related)
|
||||
|
@ -1234,18 +1233,17 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcExternalSpatialElement : IfcExternalSpatialStructureElement, IfcSpaceBoundarySelect //NEW IFC4
|
||||
{
|
||||
internal IfcExternalSpatialElementTypeEnum mPredefinedType = IfcExternalSpatialElementTypeEnum.NOTDEFINED;
|
||||
private IfcExternalSpatialElementTypeEnum mPredefinedType = IfcExternalSpatialElementTypeEnum.NOTDEFINED;
|
||||
//INVERSE
|
||||
internal List<IfcRelSpaceBoundary> mBoundedBy = new List<IfcRelSpaceBoundary>(); // BoundedBy : SET [0:?] OF IfcRelExternalSpatialElementBoundary FOR RelatingExternalSpatialElement;
|
||||
internal SET<IfcRelSpaceBoundary> mBoundedBy = new SET<IfcRelSpaceBoundary>(); // BoundedBy : SET [0:?] OF IfcRelExternalSpatialElementBoundary FOR RelatingExternalSpatialElement;
|
||||
|
||||
public IfcExternalSpatialElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public ReadOnlyCollection<IfcRelSpaceBoundary> BoundedBy { get { return new ReadOnlyCollection<IfcRelSpaceBoundary>( mBoundedBy); } }
|
||||
public IfcExternalSpatialElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcExternalSpatialElementTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
public SET<IfcRelSpaceBoundary> BoundedBy { get { return mBoundedBy; } }
|
||||
|
||||
internal IfcExternalSpatialElement() : base() { }
|
||||
internal IfcExternalSpatialElement(DatabaseIfc db, IfcExternalSpatialElement e, DuplicateOptions options) : base(db, e, options) { mPredefinedType = e.mPredefinedType; }
|
||||
public IfcExternalSpatialElement(IfcSite host, string name, IfcExternalSpatialElementTypeEnum te)
|
||||
: base(host, name) { mPredefinedType = te; }
|
||||
|
||||
internal IfcExternalSpatialElement(DatabaseIfc db, IfcExternalSpatialElement e, DuplicateOptions options) : base(db, e, options) { PredefinedType = e.PredefinedType; }
|
||||
public IfcExternalSpatialElement(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape shape) : base(host, placement, shape) { }
|
||||
|
||||
public void AddBoundary(IfcRelSpaceBoundary boundary) { mBoundedBy.Add(boundary); }
|
||||
}
|
||||
[Serializable]
|
||||
|
@ -1255,6 +1253,7 @@ namespace GeometryGym.Ifc
|
|||
protected IfcExternalSpatialStructureElement(IfcObjectPlacement pl) : base(pl) { }
|
||||
protected IfcExternalSpatialStructureElement(IfcSite host, string name) : base(host, name) { }
|
||||
protected IfcExternalSpatialStructureElement(DatabaseIfc db, IfcExternalSpatialStructureElement e, DuplicateOptions options) : base(db, e, options) { }
|
||||
protected IfcExternalSpatialStructureElement(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape shape) : base(host, placement, shape) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcExtrudedAreaSolid : IfcSweptAreaSolid // SUPERTYPE OF(IfcExtrudedAreaSolidTapered)
|
||||
|
@ -1275,8 +1274,8 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcExtrudedAreaSolidTapered : IfcExtrudedAreaSolid
|
||||
{
|
||||
private int mEndSweptArea;//: IfcProfileDef
|
||||
public IfcProfileDef EndSweptArea { get { return mDatabase[mEndSweptArea] as IfcProfileDef; } set { mEndSweptArea = value.mIndex; } }
|
||||
private IfcProfileDef mEndSweptArea;//: IfcProfileDef
|
||||
public IfcProfileDef EndSweptArea { get { return mEndSweptArea; } set { mEndSweptArea = value; } }
|
||||
|
||||
internal IfcExtrudedAreaSolidTapered() : base() { }
|
||||
internal IfcExtrudedAreaSolidTapered(DatabaseIfc db, IfcExtrudedAreaSolidTapered e, DuplicateOptions options) : base(db, e, options) { EndSweptArea = db.Factory.Duplicate(e.EndSweptArea, options) as IfcProfileDef; }
|
||||
|
|
|
@ -143,14 +143,15 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcFacetedBrepWithVoids : IfcFacetedBrep
|
||||
{
|
||||
internal List<int> mVoids = new List<int>();// : SET [1:?] OF IfcClosedShell
|
||||
public ReadOnlyCollection<IfcClosedShell> Voids { get { return new ReadOnlyCollection<IfcClosedShell>( mVoids.ConvertAll(x => mDatabase[x] as IfcClosedShell)); } }
|
||||
internal SET<IfcClosedShell> mVoids = new SET<IfcClosedShell>();// : SET [1:?] OF IfcClosedShell
|
||||
public SET<IfcClosedShell> Voids { get { return mVoids; } }
|
||||
|
||||
internal IfcFacetedBrepWithVoids() : base() { }
|
||||
internal IfcFacetedBrepWithVoids(DatabaseIfc db, IfcFacetedBrepWithVoids b, DuplicateOptions options) : base(db, b, options) { b.Voids.ToList().ForEach(x=>addVoid( db.Factory.Duplicate(x) as IfcClosedShell)); }
|
||||
public IfcFacetedBrepWithVoids(IfcClosedShell s, IEnumerable<IfcClosedShell> voids) : base(s) { mVoids.AddRange(voids.Select(x=>x.Index)); }
|
||||
|
||||
internal void addVoid(IfcClosedShell shell) { mVoids.Add(shell.mIndex); }
|
||||
internal IfcFacetedBrepWithVoids(DatabaseIfc db, IfcFacetedBrepWithVoids b, DuplicateOptions options) : base(db, b, options)
|
||||
{
|
||||
Voids.AddRange(b.Voids.Select(x => db.Factory.Duplicate(x) as IfcClosedShell));
|
||||
}
|
||||
public IfcFacetedBrepWithVoids(IfcClosedShell s, IEnumerable<IfcClosedShell> voids) : base(s) { mVoids.AddRange(voids); }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcFacility : IfcSpatialStructureElement //IFC4x2 //SUPERTYPE OF(IfcBridge, IfcBuilding)
|
||||
|
@ -182,7 +183,7 @@ namespace GeometryGym.Ifc
|
|||
public partial class IfcFacilityPartCommon : IfcFacilityPart // IFC4x3
|
||||
{
|
||||
private IfcFacilityPartCommonTypeEnum mPredefinedType = IfcFacilityPartCommonTypeEnum.NOTDEFINED; //: OPTIONAL IfcFacilityPartCommonTypeEnum;
|
||||
public IfcFacilityPartCommonTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcFacilityPartCommonTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcFacilityPartCommonTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
public override string StepClassName { get { if (mDatabase != null && mDatabase.Release > ReleaseVersion.IFC4X2 && mDatabase.Release < ReleaseVersion.IFC4X3) return "IfcFacilityPart"; return base.StepClassName; } }
|
||||
public IfcFacilityPartCommon() : base() { }
|
||||
public IfcFacilityPartCommon(DatabaseIfc db) : base(db) { }
|
||||
|
@ -212,42 +213,42 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcFan : IfcFlowMovingDevice //IFC4
|
||||
{
|
||||
internal IfcFanTypeEnum mPredefinedType = IfcFanTypeEnum.NOTDEFINED;// OPTIONAL : IfcFanTypeEnum;
|
||||
public IfcFanTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcFanTypeEnum mPredefinedType = IfcFanTypeEnum.NOTDEFINED;// OPTIONAL : IfcFanTypeEnum;
|
||||
public IfcFanTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcFanTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcFan() : base() { }
|
||||
internal IfcFan(DatabaseIfc db, IfcFan f, DuplicateOptions options) : base(db, f, options) { mPredefinedType = f.mPredefinedType; }
|
||||
internal IfcFan(DatabaseIfc db, IfcFan f, DuplicateOptions options) : base(db, f, options) { PredefinedType = f.PredefinedType; }
|
||||
public IfcFan(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcFanType : IfcFlowMovingDeviceType
|
||||
{
|
||||
internal IfcFanTypeEnum mPredefinedType = IfcFanTypeEnum.NOTDEFINED;// : IfcFanTypeEnum;
|
||||
public IfcFanTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcFanTypeEnum mPredefinedType = IfcFanTypeEnum.NOTDEFINED;// : IfcFanTypeEnum;
|
||||
public IfcFanTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcFanTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcFanType() : base() { }
|
||||
internal IfcFanType(DatabaseIfc db, IfcFanType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcFanType(DatabaseIfc db, string name, IfcFanTypeEnum t) : base(db) { Name = name; mPredefinedType = t; }
|
||||
internal IfcFanType(DatabaseIfc db, IfcFanType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcFanType(DatabaseIfc db, string name, IfcFanTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcFastener : IfcElementComponent
|
||||
{
|
||||
internal IfcFastenerTypeEnum mPredefinedType = IfcFastenerTypeEnum.NOTDEFINED;// : IfcFastenerTypeEnum; //IFC4
|
||||
public IfcFastenerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcFastenerTypeEnum mPredefinedType = IfcFastenerTypeEnum.NOTDEFINED;// : IfcFastenerTypeEnum; //IFC4
|
||||
public IfcFastenerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcFastenerTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcFastener() : base() { }
|
||||
internal IfcFastener(DatabaseIfc db, IfcFastener f, DuplicateOptions options) : base(db, f, options) { mPredefinedType = f.mPredefinedType; }
|
||||
internal IfcFastener(DatabaseIfc db, IfcFastener f, DuplicateOptions options) : base(db, f, options) { PredefinedType = f.PredefinedType; }
|
||||
public IfcFastener(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcFastenerType : IfcElementComponentType
|
||||
{
|
||||
internal IfcFastenerTypeEnum mPredefinedType = IfcFastenerTypeEnum.NOTDEFINED;// : IfcFastenerTypeEnum; //IFC4
|
||||
public IfcFastenerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcFastenerTypeEnum mPredefinedType = IfcFastenerTypeEnum.NOTDEFINED;// : IfcFastenerTypeEnum; //IFC4
|
||||
public IfcFastenerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcFastenerTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcFastenerType() : base() { }
|
||||
internal IfcFastenerType(DatabaseIfc db, IfcFastenerType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcFastenerType(DatabaseIfc m, string name, IfcFastenerTypeEnum type) : base(m) { Name = name; mPredefinedType = type; }
|
||||
internal IfcFastenerType(DatabaseIfc db, IfcFastenerType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcFastenerType(DatabaseIfc db, string name, IfcFastenerTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
[Serializable]
|
||||
public abstract partial class IfcFeatureElement : IfcElement // ABSTRACT SUPERTYPE OF(ONEOF(IfcFeatureElementAddition, IfcFeatureElementSubtraction, IfcSurfaceFeature))
|
||||
|
@ -260,8 +261,8 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public abstract partial class IfcFeatureElementAddition : IfcFeatureElement //ABSTRACT SUPERTYPE OF(IfcProjectionElement)
|
||||
{ //INVERSE
|
||||
internal List<IfcRelProjectsElement> mProjectsElements = new List<IfcRelProjectsElement>();
|
||||
public ReadOnlyCollection<IfcRelProjectsElement> ProjectsElements { get { return new ReadOnlyCollection<IfcRelProjectsElement>( mProjectsElements); } }
|
||||
internal SET<IfcRelProjectsElement> mProjectsElements = new SET<IfcRelProjectsElement>();
|
||||
public SET<IfcRelProjectsElement> ProjectsElements { get { return mProjectsElements; } }
|
||||
|
||||
protected IfcFeatureElementAddition() : base() { }
|
||||
protected IfcFeatureElementAddition(DatabaseIfc db, IfcFeatureElementAddition e, DuplicateOptions options) : base(db, e, options){ }
|
||||
|
@ -314,24 +315,26 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcFillAreaStyleHatching : IfcGeometricRepresentationItem, IfcFillStyleSelect
|
||||
{
|
||||
internal int mHatchLineAppearance;// : IfcCurveStyle;
|
||||
internal string mStartOfNextHatchLine;// : IfcHatchLineDistanceSelect; IfcOneDirectionRepeatFactor,IfcPositiveLengthMeasure
|
||||
internal int mPointOfReferenceHatchLine;// : OPTIONAL IfcCartesianPoint; //DEPRECATED IFC4
|
||||
internal int mPatternStart;// : OPTIONAL IfcCartesianPoint;
|
||||
internal IfcCurveStyle mHatchLineAppearance;// : IfcCurveStyle;
|
||||
internal IfcHatchLineDistanceSelect mStartOfNextHatchLine;// : IfcHatchLineDistanceSelect; IfcOneDirectionRepeatFactor,IfcPositiveLengthMeasure
|
||||
internal IfcCartesianPoint mPointOfReferenceHatchLine;// : OPTIONAL IfcCartesianPoint; //DEPRECATED IFC4
|
||||
internal IfcCartesianPoint mPatternStart;// : OPTIONAL IfcCartesianPoint;
|
||||
internal double mHatchLineAngle;// : IfcPlaneAngleMeasure;
|
||||
|
||||
public IfcCurveStyle HatchLineAppearance { get { return mDatabase[mHatchLineAppearance] as IfcCurveStyle; } set { mHatchLineAppearance = value.mIndex; } }
|
||||
public IfcCartesianPoint PatternStart { get { return mDatabase[mPatternStart] as IfcCartesianPoint; } set { mPatternStart = (value == null ? 0 : value.mIndex); } }
|
||||
public IfcCurveStyle HatchLineAppearance { get { return mHatchLineAppearance; } set { mHatchLineAppearance = value; } }
|
||||
public IfcHatchLineDistanceSelect StartOfNextHatchLine { get { return mStartOfNextHatchLine; } set { mStartOfNextHatchLine = value; } }
|
||||
public IfcCartesianPoint PointOfReferenceHatchLine { get { return mPointOfReferenceHatchLine; } set { mPointOfReferenceHatchLine = value; } }
|
||||
public IfcCartesianPoint PatternStart { get { return mPatternStart; } set { mPatternStart = value; } }
|
||||
|
||||
internal IfcFillAreaStyleHatching() : base() { }
|
||||
internal IfcFillAreaStyleHatching(DatabaseIfc db, IfcFillAreaStyleHatching h, DuplicateOptions options) : base(db, h, options)
|
||||
{
|
||||
mHatchLineAppearance = db.Factory.Duplicate(h.HatchLineAppearance).mIndex;
|
||||
mHatchLineAppearance = db.Factory.Duplicate(h.HatchLineAppearance);
|
||||
mStartOfNextHatchLine = h.mStartOfNextHatchLine;
|
||||
if (h.mPointOfReferenceHatchLine > 0)
|
||||
mPointOfReferenceHatchLine = db.Factory.Duplicate(h.mDatabase[h.mPointOfReferenceHatchLine]).mIndex;
|
||||
if (h.mPatternStart > 0)
|
||||
PatternStart = db.Factory.Duplicate(h.PatternStart) as IfcCartesianPoint;
|
||||
if (h.mPointOfReferenceHatchLine != null)
|
||||
mPointOfReferenceHatchLine = db.Factory.Duplicate(h.mPointOfReferenceHatchLine);
|
||||
if (h.mPatternStart != null)
|
||||
PatternStart = db.Factory.Duplicate(h.PatternStart);
|
||||
mHatchLineAngle = h.mHatchLineAngle;
|
||||
}
|
||||
}
|
||||
|
@ -362,49 +365,49 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcFilter : IfcFlowTreatmentDevice //IFC4
|
||||
{
|
||||
internal IfcFilterTypeEnum mPredefinedType = IfcFilterTypeEnum.NOTDEFINED;
|
||||
public IfcFilterTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcFilterTypeEnum mPredefinedType = IfcFilterTypeEnum.NOTDEFINED;
|
||||
public IfcFilterTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcFilterTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcFilter() : base() { }
|
||||
internal IfcFilter(DatabaseIfc db, IfcFilter f, DuplicateOptions options) : base(db, f, options) { mPredefinedType = f.mPredefinedType; }
|
||||
internal IfcFilter(DatabaseIfc db, IfcFilter f, DuplicateOptions options) : base(db, f, options) { PredefinedType = f.PredefinedType; }
|
||||
public IfcFilter(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcFilterType : IfcFlowTreatmentDeviceType
|
||||
{
|
||||
internal IfcFilterTypeEnum mPredefinedType = IfcFilterTypeEnum.NOTDEFINED;// : IfcFilterTypeEnum;
|
||||
public IfcFilterTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcFilterTypeEnum mPredefinedType = IfcFilterTypeEnum.NOTDEFINED;// : IfcFilterTypeEnum;
|
||||
public IfcFilterTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcFilterTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcFilterType() : base() { }
|
||||
internal IfcFilterType(DatabaseIfc db, IfcFilterType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcFilterType(DatabaseIfc db, string name, IfcFilterTypeEnum t) : base(db) { Name = name; mPredefinedType = t; }
|
||||
internal IfcFilterType(DatabaseIfc db, IfcFilterType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcFilterType(DatabaseIfc db, string name, IfcFilterTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcFireSuppressionTerminal : IfcFlowTerminal //IFC4
|
||||
{
|
||||
internal IfcFireSuppressionTerminalTypeEnum mPredefinedType = IfcFireSuppressionTerminalTypeEnum.NOTDEFINED;// OPTIONAL : IfcFireSuppressinTerminalTypeEnum;
|
||||
public IfcFireSuppressionTerminalTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcFireSuppressionTerminalTypeEnum mPredefinedType = IfcFireSuppressionTerminalTypeEnum.NOTDEFINED;// OPTIONAL : IfcFireSuppressinTerminalTypeEnum;
|
||||
public IfcFireSuppressionTerminalTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcFireSuppressionTerminalTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcFireSuppressionTerminal() : base() { }
|
||||
internal IfcFireSuppressionTerminal(DatabaseIfc db, IfcFireSuppressionTerminal t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
internal IfcFireSuppressionTerminal(DatabaseIfc db, IfcFireSuppressionTerminal t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcFireSuppressionTerminal(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcFireSuppressionTerminalType : IfcFlowTerminalType
|
||||
{
|
||||
internal IfcFireSuppressionTerminalTypeEnum mPredefinedType = IfcFireSuppressionTerminalTypeEnum.NOTDEFINED;// : IfcFireSuppressionTerminalTypeEnum;
|
||||
public IfcFireSuppressionTerminalTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcFireSuppressionTerminalTypeEnum mPredefinedType = IfcFireSuppressionTerminalTypeEnum.NOTDEFINED;// : IfcFireSuppressionTerminalTypeEnum;
|
||||
public IfcFireSuppressionTerminalTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcFireSuppressionTerminalTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcFireSuppressionTerminalType() : base() { }
|
||||
internal IfcFireSuppressionTerminalType(DatabaseIfc db, IfcFireSuppressionTerminalType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcFireSuppressionTerminalType(DatabaseIfc m, string name, IfcFireSuppressionTerminalTypeEnum t) : base(m) { Name = name; mPredefinedType = t; }
|
||||
internal IfcFireSuppressionTerminalType(DatabaseIfc db, IfcFireSuppressionTerminalType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcFireSuppressionTerminalType(DatabaseIfc db, string name, IfcFireSuppressionTerminalTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcFixedReferenceSweptAreaSolid : IfcDirectrixCurveSweptAreaSolid //IFC4
|
||||
{
|
||||
internal int mFixedReference;// : IfcDirection;
|
||||
internal IfcDirection mFixedReference;// : IfcDirection;
|
||||
|
||||
public IfcDirection FixedReference { get { return mDatabase[mFixedReference] as IfcDirection; } set { mFixedReference = value.mIndex; } }
|
||||
public IfcDirection FixedReference { get { return mFixedReference; } set { mFixedReference = value; } }
|
||||
|
||||
internal IfcFixedReferenceSweptAreaSolid() : base() { }
|
||||
internal IfcFixedReferenceSweptAreaSolid(DatabaseIfc db, IfcFixedReferenceSweptAreaSolid s, DuplicateOptions options) : base(db, s, options)
|
||||
|
@ -450,42 +453,42 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcFlowInstrument : IfcDistributionControlElement //IFC4
|
||||
{
|
||||
internal IfcFlowInstrumentTypeEnum mPredefinedType = IfcFlowInstrumentTypeEnum.NOTDEFINED;
|
||||
public IfcFlowInstrumentTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcFlowInstrumentTypeEnum mPredefinedType = IfcFlowInstrumentTypeEnum.NOTDEFINED;
|
||||
public IfcFlowInstrumentTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcFlowInstrumentTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcFlowInstrument() : base() { }
|
||||
internal IfcFlowInstrument(DatabaseIfc db, IfcFlowInstrument i, DuplicateOptions options) : base(db, i, options) { mPredefinedType = i.mPredefinedType; }
|
||||
internal IfcFlowInstrument(DatabaseIfc db, IfcFlowInstrument i, DuplicateOptions options) : base(db, i, options) { PredefinedType = i.PredefinedType; }
|
||||
public IfcFlowInstrument(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcFlowInstrumentType : IfcDistributionControlElementType
|
||||
{
|
||||
internal IfcFlowInstrumentTypeEnum mPredefinedType = IfcFlowInstrumentTypeEnum.NOTDEFINED;// : IfcFlowInstrumentTypeEnum;
|
||||
public IfcFlowInstrumentTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcFlowInstrumentTypeEnum mPredefinedType = IfcFlowInstrumentTypeEnum.NOTDEFINED;// : IfcFlowInstrumentTypeEnum;
|
||||
public IfcFlowInstrumentTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcFlowInstrumentTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcFlowInstrumentType() : base() { }
|
||||
internal IfcFlowInstrumentType(DatabaseIfc db, IfcFlowInstrumentType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcFlowInstrumentType(DatabaseIfc m, string name, IfcFlowInstrumentTypeEnum t) : base(m) { Name = name; mPredefinedType = t; }
|
||||
internal IfcFlowInstrumentType(DatabaseIfc db, IfcFlowInstrumentType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcFlowInstrumentType(DatabaseIfc db, string name, IfcFlowInstrumentTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcFlowMeter : IfcFlowController //IFC4
|
||||
{
|
||||
internal IfcFlowMeterTypeEnum mPredefinedType = IfcFlowMeterTypeEnum.NOTDEFINED;// OPTIONAL : IfcDamperTypeEnum;
|
||||
public IfcFlowMeterTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcFlowMeterTypeEnum mPredefinedType = IfcFlowMeterTypeEnum.NOTDEFINED;// OPTIONAL : IfcFlowMeterTypeEnum;
|
||||
public IfcFlowMeterTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcFlowMeterTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcFlowMeter() : base() { }
|
||||
internal IfcFlowMeter(DatabaseIfc db, IfcFlowMeter m, DuplicateOptions options) : base(db, m, options) { mPredefinedType = m.mPredefinedType; }
|
||||
internal IfcFlowMeter(DatabaseIfc db, IfcFlowMeter m, DuplicateOptions options) : base(db, m, options) { PredefinedType = m.PredefinedType; }
|
||||
public IfcFlowMeter(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcFlowMeterType : IfcFlowControllerType
|
||||
{
|
||||
internal IfcFlowMeterTypeEnum mPredefinedType = IfcFlowMeterTypeEnum.NOTDEFINED;// : IfcFlowMeterTypeEnum;
|
||||
public IfcFlowMeterTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcFlowMeterTypeEnum mPredefinedType = IfcFlowMeterTypeEnum.NOTDEFINED;// : IfcFlowMeterTypeEnum;
|
||||
public IfcFlowMeterTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcFlowMeterTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcFlowMeterType() : base() { }
|
||||
internal IfcFlowMeterType(DatabaseIfc db, IfcFlowMeterType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcFlowMeterType(DatabaseIfc m, string name, IfcFlowMeterTypeEnum type) : base(m) { Name = name; mPredefinedType = type; }
|
||||
internal IfcFlowMeterType(DatabaseIfc db, IfcFlowMeterType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcFlowMeterType(DatabaseIfc db, string name, IfcFlowMeterTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcFlowMovingDevice : IfcDistributionFlowElement // SUPERTYPE OF(ONEOF(IfcCompressor, IfcFan, IfcPump))
|
||||
|
@ -543,7 +546,6 @@ namespace GeometryGym.Ifc
|
|||
|
||||
internal IfcFlowTerminal() : base() { }
|
||||
internal IfcFlowTerminal(DatabaseIfc db) : base(db) { }
|
||||
protected IfcFlowTerminal(IfcFlowTerminal basis, bool replace) : base(basis, replace) { }
|
||||
internal IfcFlowTerminal(DatabaseIfc db, IfcFlowTerminal t, DuplicateOptions options) : base(db, t, options) { }
|
||||
public IfcFlowTerminal(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
|
@ -552,7 +554,6 @@ namespace GeometryGym.Ifc
|
|||
{ // IfcElectricApplianceType ,IfcElectricHeaterType ,IfcFireSuppressionTerminalType,IfcLampType ,IfcLightFixtureType ,IfcOutletType ,IfcSanitaryTerminalType ,IfcStackTerminalType ,IfcWasteTerminalType))
|
||||
// IFC4 deleted ,IfcGasTerminalType
|
||||
protected IfcFlowTerminalType() : base() { }
|
||||
protected IfcFlowTerminalType(IfcDistributionFlowElementType basis) : base(basis) { }
|
||||
protected IfcFlowTerminalType(DatabaseIfc db) : base(db) { }
|
||||
protected IfcFlowTerminalType(DatabaseIfc db, IfcFlowTerminalType t, DuplicateOptions options) : base(db, t, options) { }
|
||||
}
|
||||
|
@ -578,12 +579,12 @@ namespace GeometryGym.Ifc
|
|||
public partial class IfcFluidFlowProperties : IfcPropertySetDefinition
|
||||
{
|
||||
internal IfcPropertySourceEnum mPropertySource;// : IfcPropertySourceEnum;
|
||||
internal int mFlowConditionTimeSeries, mVelocityTimeSeries, mFlowrateTimeSeries;// : OPTIONAL IfcTimeSeries;
|
||||
internal int mFluid;// : IfcMaterial;
|
||||
internal int mPressureTimeSeries;// : OPTIONAL IfcTimeSeries;
|
||||
internal IfcTimeSeries mFlowConditionTimeSeries, mVelocityTimeSeries, mFlowrateTimeSeries;// : OPTIONAL IfcTimeSeries;
|
||||
internal IfcMaterial mFluid;// : IfcMaterial;
|
||||
internal IfcTimeSeries mPressureTimeSeries;// : OPTIONAL IfcTimeSeries;
|
||||
internal string mUserDefinedPropertySource = "";// : OPTIONAL IfcLabel;
|
||||
internal double mTemperatureSingleValue = double.NaN, mWetBulbTemperatureSingleValue = double.NaN;// : OPTIONAL IfcThermodynamicTemperatureMeasure;
|
||||
internal int mWetBulbTemperatureTimeSeries, mTemperatureTimeSeries;// : OPTIONAL IfcTimeSeries;
|
||||
internal IfcTimeSeries mWetBulbTemperatureTimeSeries, mTemperatureTimeSeries;// : OPTIONAL IfcTimeSeries;
|
||||
internal double mFlowrateSingleValue = double.NaN;// : OPTIONAL IfcDerivedMeasureValue;
|
||||
internal double mFlowConditionSingleValue = double.NaN;// : OPTIONAL IfcPositiveRatioMeasure;
|
||||
internal double mVelocitySingleValue = double.NaN;// : OPTIONAL IfcLinearVelocityMeasure;
|
||||
|
@ -593,18 +594,22 @@ namespace GeometryGym.Ifc
|
|||
internal IfcFluidFlowProperties(DatabaseIfc db, IfcFluidFlowProperties p, DuplicateOptions options) : base(db, p, options)
|
||||
{
|
||||
mPropertySource = p.mPropertySource;
|
||||
//if(p.mFlowConditionTimeSeries > 0)
|
||||
// mFlowConditionTimeSeries = p.mFlowConditionTimeSeries;
|
||||
|
||||
//mVelocityTimeSeries = p.mVelocityTimeSeries;
|
||||
//mFlowrateTimeSeries = p.mFlowrateTimeSeries;
|
||||
//mFluid = p.mFluid;
|
||||
//mPressureTimeSeries = p.mPressureTimeSeries;
|
||||
if(p.mFlowConditionTimeSeries != null)
|
||||
mFlowConditionTimeSeries = db.Factory.Duplicate(p.mFlowConditionTimeSeries, options);
|
||||
if(p.mVelocityTimeSeries != null)
|
||||
mVelocityTimeSeries = db.Factory.Duplicate(p.mVelocityTimeSeries, options);
|
||||
if(p.mFlowrateTimeSeries != null)
|
||||
mFlowrateTimeSeries = db.Factory.Duplicate(p.mFlowrateTimeSeries, options);
|
||||
mFluid = db.Factory.Duplicate(p.mFluid, options);
|
||||
if(p.mPressureTimeSeries != null)
|
||||
mPressureTimeSeries = db.Factory.Duplicate(p.mPressureTimeSeries, options);
|
||||
mUserDefinedPropertySource = p.mUserDefinedPropertySource;
|
||||
mTemperatureSingleValue = p.mTemperatureSingleValue;
|
||||
mWetBulbTemperatureSingleValue = p.mWetBulbTemperatureSingleValue;
|
||||
//mWetBulbTemperatureTimeSeries = p.mWetBulbTemperatureTimeSeries;
|
||||
//mTemperatureTimeSeries = p.mTemperatureTimeSeries;
|
||||
if(p.mWetBulbTemperatureTimeSeries != null)
|
||||
mWetBulbTemperatureTimeSeries = db.Factory.Duplicate(p.mWetBulbTemperatureTimeSeries, options);
|
||||
if(p.mTemperatureTimeSeries != null)
|
||||
mTemperatureTimeSeries = db.Factory.Duplicate(p.mTemperatureTimeSeries, options);
|
||||
mFlowrateSingleValue = p.mFlowrateSingleValue;
|
||||
mFlowConditionSingleValue = p.mFlowConditionSingleValue;
|
||||
mVelocitySingleValue = p.mVelocitySingleValue;
|
||||
|
@ -615,23 +620,23 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcFooting : IfcBuiltElement
|
||||
{
|
||||
internal IfcFootingTypeEnum mPredefinedType = IfcFootingTypeEnum.NOTDEFINED;// OPTIONAL : IfcFootingTypeEnum;
|
||||
public IfcFootingTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcFootingTypeEnum mPredefinedType = IfcFootingTypeEnum.NOTDEFINED;// OPTIONAL : IfcFootingTypeEnum;
|
||||
public IfcFootingTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcFootingTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcFooting() : base() { }
|
||||
internal IfcFooting(DatabaseIfc db, IfcFooting f, DuplicateOptions options) : base(db, f, options) { mPredefinedType = f.mPredefinedType; }
|
||||
internal IfcFooting(DatabaseIfc db, IfcFooting f, DuplicateOptions options) : base(db, f, options) { PredefinedType = f.PredefinedType; }
|
||||
public IfcFooting(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcFootingType : IfcBuiltElementType
|
||||
{
|
||||
internal IfcFootingTypeEnum mPredefinedType = IfcFootingTypeEnum.NOTDEFINED;
|
||||
public IfcFootingTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcFootingTypeEnum mPredefinedType = IfcFootingTypeEnum.NOTDEFINED;
|
||||
public IfcFootingTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcFootingTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcFootingType() : base() { }
|
||||
internal IfcFootingType(DatabaseIfc db, IfcFootingType t, DuplicateOptions options) : base(db,t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcFootingType(DatabaseIfc m, string name, IfcFootingTypeEnum type) : base(m) { Name = name; mPredefinedType = type; }
|
||||
public IfcFootingType(string name, IfcMaterialProfileSet mps, IfcFootingTypeEnum type) : base(mps.mDatabase) { Name = name; mPredefinedType = type; MaterialSelect = mps; }
|
||||
internal IfcFootingType(DatabaseIfc db, IfcFootingType t, DuplicateOptions options) : base(db,t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcFootingType(DatabaseIfc db, string name, IfcFootingTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
public IfcFootingType(string name, IfcMaterialProfileSet mps, IfcFootingTypeEnum type) : base(mps.mDatabase) { Name = name; PredefinedType = type; MaterialSelect = mps; }
|
||||
}
|
||||
//[Obsolete("DEPRECATED IFC4", false)]
|
||||
//ENTITY IfcFuelProperties
|
||||
|
@ -654,11 +659,11 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
public override string StepClassName { get { return (mDatabase.mRelease < ReleaseVersion.IFC4 ? "IfcFurnishingElement" : base.StepClassName); } }
|
||||
|
||||
internal IfcFurnitureTypeEnum mPredefinedType = IfcFurnitureTypeEnum.NOTDEFINED;//: OPTIONAL IfcFurnitureTypeEnum;
|
||||
public IfcFurnitureTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcFurnitureTypeEnum mPredefinedType = IfcFurnitureTypeEnum.NOTDEFINED;//: OPTIONAL IfcFurnitureTypeEnum;
|
||||
public IfcFurnitureTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcFurnitureTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcFurniture() : base() { }
|
||||
internal IfcFurniture(DatabaseIfc db, IfcFurniture f, DuplicateOptions options) : base(db, f, options) { mPredefinedType = f.mPredefinedType; }
|
||||
internal IfcFurniture(DatabaseIfc db, IfcFurniture f, DuplicateOptions options) : base(db, f, options) { PredefinedType = f.PredefinedType; }
|
||||
public IfcFurniture(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
}
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
|
@ -672,14 +677,14 @@ namespace GeometryGym.Ifc
|
|||
public partial class IfcFurnitureType : IfcFurnishingElementType
|
||||
{
|
||||
internal IfcAssemblyPlaceEnum mAssemblyPlace = IfcAssemblyPlaceEnum.NOTDEFINED;
|
||||
internal IfcFurnitureTypeEnum mPredefinedType = IfcFurnitureTypeEnum.NOTDEFINED; // IFC4 OPTIONAL
|
||||
private IfcFurnitureTypeEnum mPredefinedType = IfcFurnitureTypeEnum.NOTDEFINED; // IFC4 OPTIONAL
|
||||
public IfcAssemblyPlaceEnum AssemblyPlace { get { return mAssemblyPlace; } set { mAssemblyPlace = value; } }
|
||||
public IfcFurnitureTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcFurnitureTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
internal IfcFurnitureType() : base() { }
|
||||
internal IfcFurnitureType(DatabaseIfc db, IfcFurnitureType t, DuplicateOptions options) : base(db, t, options) { mAssemblyPlace = t.mAssemblyPlace; mPredefinedType = t.mPredefinedType; }
|
||||
internal IfcFurnitureType(DatabaseIfc db, IfcFurnitureType t, DuplicateOptions options) : base(db, t, options) { mAssemblyPlace = t.mAssemblyPlace; PredefinedType = t.PredefinedType; }
|
||||
public IfcFurnitureType(DatabaseIfc db, string name, IfcFurnitureTypeEnum type) : base(db, name)
|
||||
{
|
||||
mPredefinedType = type;
|
||||
if (mDatabase.mRelease < ReleaseVersion.IFC4 && string.IsNullOrEmpty(ElementType) && type != IfcFurnitureTypeEnum.NOTDEFINED)
|
||||
ElementType = type.ToString();
|
||||
PredefinedType = type;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -32,12 +32,12 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcGasTerminalType : IfcFlowTerminalType // DEPRECATED IFC4
|
||||
{
|
||||
internal IfcGasTerminalTypeEnum mPredefinedType = IfcGasTerminalTypeEnum.NOTDEFINED;// : IfcGasTerminalBoxTypeEnum;
|
||||
public IfcGasTerminalTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcGasTerminalTypeEnum mPredefinedType = IfcGasTerminalTypeEnum.NOTDEFINED;// : IfcGasTerminalBoxTypeEnum;
|
||||
public IfcGasTerminalTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcGasTerminalTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcGasTerminalType() : base() { }
|
||||
internal IfcGasTerminalType(DatabaseIfc db, IfcGasTerminalType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcGasTerminalType(DatabaseIfc m, string name, IfcGasTerminalTypeEnum type) : base(m) { Name = name; mPredefinedType = type; }
|
||||
internal IfcGasTerminalType(DatabaseIfc db, IfcGasTerminalType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcGasTerminalType(DatabaseIfc db, string name, IfcGasTerminalTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
[Serializable]
|
||||
|
@ -75,38 +75,39 @@ namespace GeometryGym.Ifc
|
|||
internal IfcGeneralProfileProperties(DatabaseIfc db, IfcGeneralProfileProperties p, DuplicateOptions options) : base(db, p, options) { mPhysicalWeight = p.mPhysicalWeight; mPerimeter = p.mPerimeter; mMinimumPlateThickness = p.mMinimumPlateThickness; mMaximumPlateThickness = p.mMaximumPlateThickness; mCrossSectionArea = p.mCrossSectionArea; }
|
||||
public IfcGeneralProfileProperties(IfcProfileDef p) : base(p) { }
|
||||
}
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4)]
|
||||
public partial class IfcGeographicElement : IfcElement //IFC4
|
||||
{
|
||||
internal IfcGeographicElementTypeEnum mPredefinedType = IfcGeographicElementTypeEnum.NOTDEFINED;// OPTIONAL IfcGeographicElementTypeEnum;
|
||||
public IfcGeographicElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcGeographicElementTypeEnum mPredefinedType = IfcGeographicElementTypeEnum.NOTDEFINED;// OPTIONAL IfcGeographicElementTypeEnum;
|
||||
public IfcGeographicElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcGeographicElementTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcGeographicElement() : base() { }
|
||||
internal IfcGeographicElement(DatabaseIfc db) : base(db) { }
|
||||
internal IfcGeographicElement(DatabaseIfc db, IfcGeographicElement e, DuplicateOptions options) : base(db, e, options) { mPredefinedType = e.mPredefinedType; }
|
||||
public IfcGeographicElement(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { if (mDatabase.mRelease < ReleaseVersion.IFC4) throw new Exception(StepClassName + " only supported in IFC4!"); }
|
||||
internal IfcGeographicElement(DatabaseIfc db, IfcGeographicElement e, DuplicateOptions options) : base(db, e, options) { PredefinedType = e.PredefinedType; }
|
||||
public IfcGeographicElement(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
}
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4)]
|
||||
public partial class IfcGeographicElementType : IfcElementType //IFC4
|
||||
{
|
||||
internal IfcGeographicElementTypeEnum mPredefinedType = IfcGeographicElementTypeEnum.NOTDEFINED;// IfcGeographicElementTypeEnum;
|
||||
public IfcGeographicElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcGeographicElementTypeEnum mPredefinedType = IfcGeographicElementTypeEnum.NOTDEFINED;// IfcGeographicElementTypeEnum;
|
||||
public IfcGeographicElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcGeographicElementTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcGeographicElementType() : base() { }
|
||||
internal IfcGeographicElementType(DatabaseIfc db, IfcGeographicElementType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcGeographicElementType(DatabaseIfc m, string name, IfcGeographicElementTypeEnum type) : base(m) { Name = name; mPredefinedType = type; if (m.mRelease < ReleaseVersion.IFC4) throw new Exception(StepClassName + " only supported in IFC4!"); }
|
||||
internal IfcGeographicElementType(DatabaseIfc db, IfcGeographicElementType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcGeographicElementType(DatabaseIfc db, string name, IfcGeographicElementTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcGeometricCurveSet : IfcGeometricSet
|
||||
{
|
||||
internal IfcGeometricCurveSet() : base() { }
|
||||
internal IfcGeometricCurveSet(DatabaseIfc db, IfcGeometricCurveSet s, DuplicateOptions options) : base(db, s, options) { }
|
||||
public IfcGeometricCurveSet(IfcGeometricSetSelect element) : base(element) { if(element is IfcSurface) throw new Exception("XXX Error, IfcSurface cannot be added to IfcGeometricCurveSet " + mIndex); }
|
||||
public IfcGeometricCurveSet(IfcGeometricSetSelect element) : base(element) { if(element is IfcSurface) throw new Exception("XXX Error, IfcSurface cannot be added to IfcGeometricCurveSet " + StepId); }
|
||||
public IfcGeometricCurveSet(IEnumerable<IfcGeometricSetSelect> set) : base(set)
|
||||
{
|
||||
foreach(IfcGeometricSetSelect item in set)
|
||||
{
|
||||
if(item is IfcSurface)
|
||||
throw new Exception("XXX Error, IfcSurface cannot be added to IfcGeometricCurveSet " + mIndex);
|
||||
throw new Exception("XXX Error, IfcSurface cannot be added to IfcGeometricCurveSet " + StepId);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -144,7 +145,7 @@ namespace GeometryGym.Ifc
|
|||
mCoordinateSpaceDimension = c.mCoordinateSpaceDimension;
|
||||
mPrecision = c.mPrecision;
|
||||
if(c.mWorldCoordinateSystem != null)
|
||||
WorldCoordinateSystem = db.Factory.Duplicate(c.mDatabase[c.mWorldCoordinateSystem.Index]) as IfcAxis2Placement;
|
||||
WorldCoordinateSystem = db.Factory.Duplicate<IfcAxis2Placement>(c.mWorldCoordinateSystem);
|
||||
if (c.mTrueNorth != null)
|
||||
TrueNorth = db.Factory.Duplicate(c.TrueNorth) as IfcDirection;
|
||||
|
||||
|
@ -247,12 +248,12 @@ namespace GeometryGym.Ifc
|
|||
public SET<IfcGeometricSetSelect> Elements { get { return mElements; } }
|
||||
|
||||
internal IfcGeometricSet() : base() { }
|
||||
internal IfcGeometricSet(DatabaseIfc db, IfcGeometricSet s, DuplicateOptions options) : base(db, s, options) { mElements.AddRange(s.mElements.ConvertAll(x=>db.Factory.Duplicate(s.mDatabase[x.Index]) as IfcGeometricSetSelect)); }
|
||||
internal IfcGeometricSet(DatabaseIfc db, IfcGeometricSet s, DuplicateOptions options) : base(db, s, options) { mElements.AddRange(s.mElements.ConvertAll(x=>db.Factory.Duplicate<IfcGeometricSetSelect>(x))); }
|
||||
public IfcGeometricSet(IfcGeometricSetSelect element) : base(element.Database) { mElements.Add(element); }
|
||||
public IfcGeometricSet(IEnumerable<IfcGeometricSetSelect> set) : base(set.First().Database) { mElements.AddRange(set); }
|
||||
}
|
||||
public partial interface IfcGeometricSetSelect : IBaseClassIfc { } //SELECT ( IfcPoint, IfcCurve, IfcSurface);
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X3)]
|
||||
public partial class IfcGeomodel : IfcGeotechnicalAssembly
|
||||
{
|
||||
public IfcGeomodel() : base() { }
|
||||
|
@ -260,7 +261,7 @@ namespace GeometryGym.Ifc
|
|||
public IfcGeomodel(DatabaseIfc db, IfcGeomodel geomodel, DuplicateOptions options) : base(db, geomodel, options) { }
|
||||
public IfcGeomodel(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
}
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X3)]
|
||||
public partial class IfcGeoslice : IfcGeotechnicalAssembly
|
||||
{
|
||||
public IfcGeoslice() : base() { }
|
||||
|
@ -268,7 +269,7 @@ namespace GeometryGym.Ifc
|
|||
public IfcGeoslice(DatabaseIfc db, IfcGeoslice geoslice, DuplicateOptions options) : base(db, geoslice, options) { }
|
||||
public IfcGeoslice(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
}
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X3)]
|
||||
public abstract partial class IfcGeotechnicalAssembly : IfcGeotechnicalElement
|
||||
{
|
||||
protected IfcGeotechnicalAssembly() : base() { }
|
||||
|
@ -276,7 +277,7 @@ namespace GeometryGym.Ifc
|
|||
protected IfcGeotechnicalAssembly(DatabaseIfc db, IfcGeotechnicalAssembly geotechnicalAssembly, DuplicateOptions options) : base(db, geotechnicalAssembly, options) { }
|
||||
protected IfcGeotechnicalAssembly(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
}
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X3)]
|
||||
public abstract partial class IfcGeotechnicalElement : IfcElement
|
||||
{
|
||||
protected IfcGeotechnicalElement() : base() { }
|
||||
|
@ -284,7 +285,7 @@ namespace GeometryGym.Ifc
|
|||
protected IfcGeotechnicalElement(DatabaseIfc db, IfcGeotechnicalElement geotechnicalElement, DuplicateOptions options) : base(db, geotechnicalElement, options) { }
|
||||
protected IfcGeotechnicalElement(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
}
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X3)]
|
||||
public partial class IfcGeotechnicalStratum : IfcGeotechnicalElement
|
||||
{
|
||||
public override string StepClassName
|
||||
|
@ -307,8 +308,8 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
}
|
||||
|
||||
internal IfcGeotechnicalStratumTypeEnum mPredefinedType = IfcGeotechnicalStratumTypeEnum.NOTDEFINED;// IfcGeotechnicalStratumTypeEnum;
|
||||
public IfcGeotechnicalStratumTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcGeotechnicalStratumTypeEnum mPredefinedType = IfcGeotechnicalStratumTypeEnum.NOTDEFINED;// IfcGeotechnicalStratumTypeEnum;
|
||||
public IfcGeotechnicalStratumTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcGeotechnicalStratumTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcGeotechnicalStratum() : base() { }
|
||||
public IfcGeotechnicalStratum(DatabaseIfc db) : base(db) { }
|
||||
|
@ -349,9 +350,9 @@ namespace GeometryGym.Ifc
|
|||
private LIST<IfcGridAxis> mUAxes = new LIST<IfcGridAxis>();// : LIST [1:?] OF UNIQUE IfcGridAxis;
|
||||
private LIST<IfcGridAxis> mVAxes = new LIST<IfcGridAxis>();// : LIST [1:?] OF UNIQUE IfcGridAxis;
|
||||
private LIST<IfcGridAxis> mWAxes = new LIST<IfcGridAxis>();// : OPTIONAL LIST [1:?] OF UNIQUE IfcGridAxis;
|
||||
internal IfcGridTypeEnum mPredefinedType = IfcGridTypeEnum.NOTDEFINED;// :OPTIONAL IfcGridTypeEnum; //IFC4 CHANGE New attribute.
|
||||
private IfcGridTypeEnum mPredefinedType = IfcGridTypeEnum.NOTDEFINED;// :OPTIONAL IfcGridTypeEnum; //IFC4 CHANGE New attribute.
|
||||
//INVERSE
|
||||
public IfcGridTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcGridTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcGridTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public LIST<IfcGridAxis> UAxes { get { return mUAxes; } set { mUAxes.Clear(); if (value != null) { mUAxes.CollectionChanged -= mUAxes_CollectionChanged; mUAxes = value; mUAxes.CollectionChanged += mUAxes_CollectionChanged; } } }
|
||||
public LIST<IfcGridAxis> VAxes { get { return mVAxes; } set { mVAxes.Clear(); if (value != null) { mVAxes.CollectionChanged -= mVAxes_CollectionChanged; mVAxes = value; mVAxes.CollectionChanged += mVAxes_CollectionChanged; } } }
|
||||
|
@ -363,7 +364,7 @@ namespace GeometryGym.Ifc
|
|||
UAxes.AddRange(g.UAxes.ConvertAll(x => db.Factory.Duplicate(x) as IfcGridAxis));
|
||||
VAxes.AddRange(g.VAxes.ConvertAll(x => db.Factory.Duplicate(x) as IfcGridAxis));
|
||||
WAxes.AddRange(g.WAxes.ConvertAll(x => db.Factory.Duplicate(x) as IfcGridAxis));
|
||||
mPredefinedType = g.mPredefinedType;
|
||||
PredefinedType = g.PredefinedType;
|
||||
}
|
||||
public IfcGrid(IfcSpatialElement host, IfcAxis2Placement3D placement, List<IfcGridAxis> uAxes, List<IfcGridAxis> vAxes)
|
||||
: base(new IfcLocalPlacement(host.ObjectPlacement, placement), getRepresentation(uAxes,vAxes, null))
|
||||
|
|
|
@ -30,10 +30,10 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcHalfSpaceSolid : IfcGeometricRepresentationItem, IfcBooleanOperand /* SUPERTYPE OF (ONEOF (IfcBoxedHalfSpace ,IfcPolygonalBoundedHalfSpace)) */
|
||||
{
|
||||
private int mBaseSurface;// : IfcSurface;
|
||||
private IfcSurface mBaseSurface;// : IfcSurface;
|
||||
private bool mAgreementFlag;// : BOOLEAN;
|
||||
|
||||
public IfcSurface BaseSurface { get { return mDatabase[mBaseSurface] as IfcSurface; } set { mBaseSurface = value.mIndex; } }
|
||||
public IfcSurface BaseSurface { get { return mBaseSurface; } set { mBaseSurface = value; } }
|
||||
public bool AgreementFlag { get { return mAgreementFlag; } set { mAgreementFlag = value; } }
|
||||
|
||||
internal IfcHalfSpaceSolid() : base() { }
|
||||
|
@ -44,41 +44,41 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcHeatExchanger : IfcEnergyConversionDevice //IFC4
|
||||
{
|
||||
internal IfcHeatExchangerTypeEnum mPredefinedType = IfcHeatExchangerTypeEnum.NOTDEFINED;// OPTIONAL : IfcHeatExchangerTypeEnum;
|
||||
public IfcHeatExchangerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcHeatExchangerTypeEnum mPredefinedType = IfcHeatExchangerTypeEnum.NOTDEFINED;// OPTIONAL : IfcHeatExchangerTypeEnum;
|
||||
public IfcHeatExchangerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcHeatExchangerTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcHeatExchanger() : base() { }
|
||||
internal IfcHeatExchanger(DatabaseIfc db, IfcHeatExchanger e, DuplicateOptions options) : base(db, e, options) { mPredefinedType = e.mPredefinedType; }
|
||||
internal IfcHeatExchanger(DatabaseIfc db, IfcHeatExchanger e, DuplicateOptions options) : base(db, e, options) { PredefinedType = e.PredefinedType; }
|
||||
public IfcHeatExchanger(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcHeatExchangerType : IfcEnergyConversionDeviceType
|
||||
{
|
||||
internal IfcHeatExchangerTypeEnum mPredefinedType = IfcHeatExchangerTypeEnum.NOTDEFINED;// : IfcHeatExchangerTypeEnum;
|
||||
public IfcHeatExchangerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcHeatExchangerTypeEnum mPredefinedType = IfcHeatExchangerTypeEnum.NOTDEFINED;// : IfcHeatExchangerTypeEnum;
|
||||
public IfcHeatExchangerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcHeatExchangerTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcHeatExchangerType() : base() { }
|
||||
internal IfcHeatExchangerType(DatabaseIfc db, IfcHeatExchangerType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcHeatExchangerType(DatabaseIfc m, string name, IfcHeatExchangerTypeEnum type) : base(m) { Name = name; mPredefinedType = type; }
|
||||
internal IfcHeatExchangerType(DatabaseIfc db, IfcHeatExchangerType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcHeatExchangerType(DatabaseIfc db, string name, IfcHeatExchangerTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcHumidifier : IfcEnergyConversionDevice //IFC4
|
||||
{
|
||||
internal IfcHumidifierTypeEnum mPredefinedType = IfcHumidifierTypeEnum.NOTDEFINED;// OPTIONAL : IfcHumidifierTypeEnum;
|
||||
public IfcHumidifierTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcHumidifierTypeEnum mPredefinedType = IfcHumidifierTypeEnum.NOTDEFINED;// OPTIONAL : IfcHumidifierTypeEnum;
|
||||
public IfcHumidifierTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcHumidifierTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcHumidifier() : base() { }
|
||||
internal IfcHumidifier(DatabaseIfc db, IfcHumidifier h, DuplicateOptions options) : base(db,h, options) { mPredefinedType = h.mPredefinedType; }
|
||||
internal IfcHumidifier(DatabaseIfc db, IfcHumidifier h, DuplicateOptions options) : base(db,h, options) { PredefinedType = h.PredefinedType; }
|
||||
public IfcHumidifier(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcHumidifierType : IfcEnergyConversionDeviceType
|
||||
{
|
||||
internal IfcHumidifierTypeEnum mPredefinedType = IfcHumidifierTypeEnum.NOTDEFINED;// : IfcHumidifierExchangerEnum;
|
||||
public IfcHumidifierTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcHumidifierTypeEnum mPredefinedType = IfcHumidifierTypeEnum.NOTDEFINED;// : IfcHumidifierExchangerEnum;
|
||||
public IfcHumidifierTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcHumidifierTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
internal IfcHumidifierType() : base() { }
|
||||
internal IfcHumidifierType(DatabaseIfc db, IfcHumidifierType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcHumidifierType(DatabaseIfc m, string name, IfcHumidifierTypeEnum type) : base(m) { Name = name; mPredefinedType = type; }
|
||||
internal IfcHumidifierType(DatabaseIfc db, IfcHumidifierType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcHumidifierType(DatabaseIfc db, string name, IfcHumidifierTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
[Serializable]
|
||||
|
|
|
@ -32,7 +32,7 @@ namespace GeometryGym.Ifc
|
|||
public partial class IfcImageTexture : IfcSurfaceTexture
|
||||
{
|
||||
internal string mUrlReference;// : IfcIdentifier;
|
||||
public string UrlReference { get { return ParserIfc.Decode(mUrlReference); } set { mUrlReference = ParserIfc.Encode(value); } }
|
||||
public string UrlReference { get { return mUrlReference; } set { mUrlReference = value; } }
|
||||
|
||||
internal IfcImageTexture() : base() { }
|
||||
internal IfcImageTexture(DatabaseIfc db, IfcImageTexture t) : base(db, t) { mUrlReference = t.mUrlReference; }
|
||||
|
@ -42,7 +42,7 @@ namespace GeometryGym.Ifc
|
|||
public partial class IfcImpactProtectionDevice : IfcElementComponent
|
||||
{
|
||||
private IfcImpactProtectionDeviceTypeEnum mPredefinedType = IfcImpactProtectionDeviceTypeEnum.NOTDEFINED; //: OPTIONAL IfcImpactProtectionDeviceTypeEnum;
|
||||
public IfcImpactProtectionDeviceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcImpactProtectionDeviceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcImpactProtectionDeviceTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcImpactProtectionDevice() : base() { }
|
||||
public IfcImpactProtectionDevice(DatabaseIfc db) : base(db) { }
|
||||
|
@ -53,7 +53,7 @@ namespace GeometryGym.Ifc
|
|||
public partial class IfcImpactProtectionDeviceType : IfcElementComponentType
|
||||
{
|
||||
private IfcImpactProtectionDeviceTypeEnum mPredefinedType = IfcImpactProtectionDeviceTypeEnum.NOTDEFINED; //: IfcImpactProtectionDeviceTypeEnum;
|
||||
public IfcImpactProtectionDeviceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcImpactProtectionDeviceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcImpactProtectionDeviceTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcImpactProtectionDeviceType() : base() { }
|
||||
public IfcImpactProtectionDeviceType(DatabaseIfc db, IfcImpactProtectionDeviceType impactProtectionDeviceType, DuplicateOptions options) : base(db, impactProtectionDeviceType, options) { PredefinedType = impactProtectionDeviceType.PredefinedType; }
|
||||
|
@ -162,27 +162,26 @@ namespace GeometryGym.Ifc
|
|||
internal IfcIndexedTriangleTextureMap() : base() { }
|
||||
internal IfcIndexedTriangleTextureMap(DatabaseIfc db) : base(db) { }
|
||||
internal IfcIndexedTriangleTextureMap(DatabaseIfc db, IfcIndexedTriangleTextureMap m) : base(db, m) { mTexCoordList = m.mTexCoordList; }
|
||||
//public IfcIndexedTriangleTextureMap(DatabaseIfc m, IEnumerable<Tuple<int, int,int>> coords) : base(m) { mTexCoordList = coords.ToArray(); }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcInterceptor : IfcFlowTreatmentDevice //IFC4
|
||||
{
|
||||
internal IfcInterceptorTypeEnum mPredefinedType = IfcInterceptorTypeEnum.NOTDEFINED;
|
||||
public IfcInterceptorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcInterceptorTypeEnum mPredefinedType = IfcInterceptorTypeEnum.NOTDEFINED;
|
||||
public IfcInterceptorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcInterceptorTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcInterceptor() : base() { }
|
||||
internal IfcInterceptor(DatabaseIfc db, IfcInterceptor i, DuplicateOptions options) : base(db, i, options) { mPredefinedType = i.mPredefinedType; }
|
||||
internal IfcInterceptor(DatabaseIfc db, IfcInterceptor i, DuplicateOptions options) : base(db, i, options) { PredefinedType = i.PredefinedType; }
|
||||
public IfcInterceptor(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcInterceptorType : IfcFlowTreatmentDeviceType
|
||||
{
|
||||
internal IfcInterceptorTypeEnum mPredefinedType = IfcInterceptorTypeEnum.NOTDEFINED;// : IfcInterceptorTypeEnum;
|
||||
public IfcInterceptorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcInterceptorTypeEnum mPredefinedType = IfcInterceptorTypeEnum.NOTDEFINED;// : IfcInterceptorTypeEnum;
|
||||
public IfcInterceptorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcInterceptorTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcInterceptorType() : base() { }
|
||||
internal IfcInterceptorType(DatabaseIfc db, IfcInterceptorType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcInterceptorType(DatabaseIfc db, string name, IfcInterceptorTypeEnum t) : base(db) { Name = name; mPredefinedType = t; }
|
||||
internal IfcInterceptorType(DatabaseIfc db, IfcInterceptorType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcInterceptorType(DatabaseIfc db, string name, IfcInterceptorTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
public interface IfcInterferenceSelect : IBaseClassIfc // SELECT(IfcSpatialElement, IfcElement);
|
||||
{
|
||||
|
@ -200,37 +199,40 @@ namespace GeometryGym.Ifc
|
|||
public partial class IfcInventory : IfcGroup
|
||||
{
|
||||
internal IfcInventoryTypeEnum mPredefinedType;// : IfcInventoryTypeEnum;
|
||||
internal int mJurisdiction;// : IfcActorSelect;
|
||||
internal List<int> mResponsiblePersons = new List<int>();// : SET [1:?] OF IfcPerson;
|
||||
internal int mLastUpdateDate;// : IfcCalendarDate;
|
||||
internal int mCurrentValue;// : OPTIONAL IfcCostValue;
|
||||
internal int mOriginalValue;// : OPTIONAL IfcCostValue;
|
||||
internal IfcActorSelect mJurisdiction;// : IfcActorSelect;
|
||||
internal SET<IfcPerson> mResponsiblePersons = new SET<IfcPerson>();// : SET [1:?] OF IfcPerson;
|
||||
internal DateTime mLastUpdateDate = DateTime.MinValue;// : IfcDate
|
||||
internal IfcCalendarDate mLastUpdateDateSS;// : IfcCalendarDate;
|
||||
internal IfcCostValue mCurrentValue;// : OPTIONAL IfcCostValue;
|
||||
internal IfcCostValue mOriginalValue;// : OPTIONAL IfcCostValue;
|
||||
|
||||
public IfcInventoryTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcInventoryTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcInventoryTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcInventory() : base() { }
|
||||
internal IfcInventory(DatabaseIfc db, IfcInventory i, DuplicateOptions options) : base(db, i, options)
|
||||
{
|
||||
#warning todo
|
||||
//mInventoryType = p.mInventoryType;
|
||||
//mJurisdiction = p.mJurisdiction;
|
||||
//mResponsiblePersons = new List<int>(p.mResponsiblePersons.ToArray());
|
||||
//mLastUpdateDate = p.mLastUpdateDate;
|
||||
//mCurrentValue = p.mCurrentValue;
|
||||
//mOriginalValue = p.mOriginalValue;
|
||||
PredefinedType = i.PredefinedType;
|
||||
mJurisdiction = db.Factory.Duplicate(i.mJurisdiction, options);
|
||||
mResponsiblePersons.AddRange(i.mResponsiblePersons.Select(x=>db.Factory.Duplicate(x, options)));
|
||||
mLastUpdateDate = i.mLastUpdateDate;
|
||||
if (mLastUpdateDateSS != null)
|
||||
mLastUpdateDateSS = db.Factory.Duplicate(i.mLastUpdateDateSS, options);
|
||||
if(i.mCurrentValue != null)
|
||||
mCurrentValue = db.Factory.Duplicate(i.mCurrentValue, options);
|
||||
if(i.mOriginalValue != null)
|
||||
mOriginalValue = db.Factory.Duplicate(i.mOriginalValue, options);
|
||||
}
|
||||
internal IfcInventory(DatabaseIfc m, string name) : base(m, name) { }
|
||||
internal IfcInventory(DatabaseIfc db, string name) : base(db, name) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcIrregularTimeSeries : IfcTimeSeries
|
||||
{
|
||||
private LIST<IfcIrregularTimeSeriesValue> mValues = new LIST<IfcIrregularTimeSeriesValue>(); //: LIST[1:?] OF IfcIrregularTimeSeriesValue;
|
||||
|
||||
public LIST<IfcIrregularTimeSeriesValue> Values { get { return mValues; } set { mValues = value; } }
|
||||
|
||||
public IfcIrregularTimeSeries() : base() { }
|
||||
public IfcIrregularTimeSeries(string name, DateTime startTime, DateTime endTime, IfcTimeSeriesDataTypeEnum timeSeriesDataType, IfcDataOriginEnum dataOrigin, IEnumerable<IfcIrregularTimeSeriesValue> values)
|
||||
: base(values.First().Database, name, startTime, endTime, timeSeriesDataType, dataOrigin)
|
||||
public IfcIrregularTimeSeries(string name, IfcDateTimeSelect startTime, IfcDateTimeSelect endTime, IfcTimeSeriesDataTypeEnum timeSeriesDataType, IfcDataOriginEnum dataOrigin, IEnumerable<IfcIrregularTimeSeriesValue> values)
|
||||
: base(name, startTime, endTime, timeSeriesDataType, dataOrigin)
|
||||
{
|
||||
Values.AddRange(values);
|
||||
}
|
||||
|
|
|
@ -30,21 +30,21 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcJunctionBox : IfcFlowFitting //IFC4
|
||||
{
|
||||
internal IfcJunctionBoxTypeEnum mPredefinedType = IfcJunctionBoxTypeEnum.NOTDEFINED;// OPTIONAL : IfcJunctionBoxTypeEnum;
|
||||
public IfcJunctionBoxTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcJunctionBoxTypeEnum mPredefinedType = IfcJunctionBoxTypeEnum.NOTDEFINED;// OPTIONAL : IfcJunctionBoxTypeEnum;
|
||||
public IfcJunctionBoxTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcJunctionBoxTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcJunctionBox() : base() { }
|
||||
internal IfcJunctionBox(DatabaseIfc db, IfcJunctionBox b, DuplicateOptions options) : base(db, b, options) { mPredefinedType = b.mPredefinedType; }
|
||||
internal IfcJunctionBox(DatabaseIfc db, IfcJunctionBox b, DuplicateOptions options) : base(db, b, options) { PredefinedType = b.PredefinedType; }
|
||||
public IfcJunctionBox(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcJunctionBoxType : IfcFlowFittingType
|
||||
{
|
||||
internal IfcJunctionBoxTypeEnum mPredefinedType = IfcJunctionBoxTypeEnum.NOTDEFINED;// : IfcJunctionBoxTypeEnum;
|
||||
public IfcJunctionBoxTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcJunctionBoxTypeEnum mPredefinedType = IfcJunctionBoxTypeEnum.NOTDEFINED;// : IfcJunctionBoxTypeEnum;
|
||||
public IfcJunctionBoxTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcJunctionBoxTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcJunctionBoxType() : base() { }
|
||||
internal IfcJunctionBoxType(DatabaseIfc db, IfcJunctionBoxType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcJunctionBoxType(DatabaseIfc m, string name, IfcJunctionBoxTypeEnum type) : base(m) { Name = name; mPredefinedType = type; }
|
||||
internal IfcJunctionBoxType(DatabaseIfc db, IfcJunctionBoxType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcJunctionBoxType(DatabaseIfc db, string name, IfcJunctionBoxTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
}
|
||||
|
|
|
@ -27,7 +27,7 @@ using GeometryGym.STEP;
|
|||
|
||||
namespace GeometryGym.Ifc
|
||||
{
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X3)]
|
||||
public partial class IfcKerb : IfcBuiltElement
|
||||
{
|
||||
private bool mMountable = false; //: IfcBoolean;
|
||||
|
@ -38,7 +38,7 @@ namespace GeometryGym.Ifc
|
|||
public IfcKerb(DatabaseIfc db, IfcKerb kerb, DuplicateOptions options) : base(db, kerb, options) { Mountable = kerb.Mountable; }
|
||||
public IfcKerb(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
}
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X3)]
|
||||
public partial class IfcKerbType : IfcBuiltElementType
|
||||
{
|
||||
private bool mMountable = false; //: IfcBoolean;
|
||||
|
|
|
@ -27,22 +27,22 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcLaborResource : IfcConstructionResource
|
||||
{
|
||||
internal IfcLaborResourceTypeEnum mPredefinedType = IfcLaborResourceTypeEnum.NOTDEFINED;// OPTIONAL : IfcRoofTypeEnum;
|
||||
public IfcLaborResourceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcLaborResourceTypeEnum mPredefinedType = IfcLaborResourceTypeEnum.NOTDEFINED;// OPTIONAL : IfcRoofTypeEnum;
|
||||
public IfcLaborResourceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcLaborResourceTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcLaborResource() : base() { }
|
||||
internal IfcLaborResource(DatabaseIfc db, IfcLaborResource r, DuplicateOptions options) : base(db, r, options) { mPredefinedType = r.mPredefinedType; }
|
||||
internal IfcLaborResource(DatabaseIfc db, IfcLaborResource r, DuplicateOptions options) : base(db, r, options) { PredefinedType = r.PredefinedType; }
|
||||
public IfcLaborResource(DatabaseIfc db) : base(db) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcLaborResourceType : IfcConstructionResourceType //IFC4
|
||||
{
|
||||
internal IfcLaborResourceTypeEnum mPredefinedType = IfcLaborResourceTypeEnum.NOTDEFINED;
|
||||
public IfcLaborResourceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcLaborResourceTypeEnum mPredefinedType = IfcLaborResourceTypeEnum.NOTDEFINED;
|
||||
public IfcLaborResourceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcLaborResourceTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcLaborResourceType() : base() { }
|
||||
internal IfcLaborResourceType(DatabaseIfc db, IfcLaborResourceType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcLaborResourceType(DatabaseIfc db, string name, IfcLaborResourceTypeEnum type) : base(db) { Name = name; mPredefinedType = type; }
|
||||
internal IfcLaborResourceType(DatabaseIfc db, IfcLaborResourceType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcLaborResourceType(DatabaseIfc db, string name, IfcLaborResourceTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcLagTime : IfcSchedulingTime //IFC4
|
||||
|
@ -71,22 +71,22 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcLamp : IfcFlowTerminal //IFC4
|
||||
{
|
||||
internal IfcLampTypeEnum mPredefinedType = IfcLampTypeEnum.NOTDEFINED;// OPTIONAL : IfcLampTypeEnum;
|
||||
public IfcLampTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcLampTypeEnum mPredefinedType = IfcLampTypeEnum.NOTDEFINED;// OPTIONAL : IfcLampTypeEnum;
|
||||
public IfcLampTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcLampTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcLamp() : base() { }
|
||||
internal IfcLamp(DatabaseIfc db, IfcLamp l, DuplicateOptions options) : base(db, l, options) { mPredefinedType = l.mPredefinedType; }
|
||||
internal IfcLamp(DatabaseIfc db, IfcLamp l, DuplicateOptions options) : base(db, l, options) { PredefinedType = l.PredefinedType; }
|
||||
public IfcLamp(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcLampType : IfcFlowTerminalType
|
||||
{
|
||||
internal IfcLampTypeEnum mPredefinedType = IfcLampTypeEnum.NOTDEFINED;// : IfcLampTypeEnum;
|
||||
public IfcLampTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcLampTypeEnum mPredefinedType = IfcLampTypeEnum.NOTDEFINED;// : IfcLampTypeEnum;
|
||||
public IfcLampTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcLampTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcLampType() : base() { }
|
||||
internal IfcLampType(DatabaseIfc db, IfcLampType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcLampType(DatabaseIfc m, string name, IfcLampTypeEnum t) : base(m) { Name = name; mPredefinedType = t; }
|
||||
internal IfcLampType(DatabaseIfc db, IfcLampType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcLampType(DatabaseIfc db, string name, IfcLampTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
public interface IfcLayeredItem : IBaseClassIfc // SELECT(IfcRepresentationItem, IfcRepresentation);
|
||||
{
|
||||
|
@ -97,9 +97,9 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
internal string mName;// : IfcLabel;
|
||||
internal string mVersion = "";//: OPTIONAL IfcLabel;
|
||||
internal int mPublisher;// : OPTIONAL IfcActorSelect;
|
||||
internal IfcActorSelect mPublisher;// : OPTIONAL IfcActorSelect;
|
||||
internal DateTime mVersionDate = DateTime.MinValue; // : OPTIONAL IfcDateTime;
|
||||
internal int mVersionDateSS = 0; //
|
||||
internal IfcCalendarDate mVersionDateSS = null; //
|
||||
internal string mLocation = "";// : OPTIONAL IfcURIReference; //IFC4 Added
|
||||
internal string mDescription = "";// : OPTIONAL IfcText; //IFC4 Added
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
|
@ -110,7 +110,7 @@ namespace GeometryGym.Ifc
|
|||
|
||||
public string Name { get { return mName; } set { mName = (string.IsNullOrEmpty(value) ? "UNKNOWN" : value); } }
|
||||
public string Version { get { return mVersion; } set { mVersion = value; } }
|
||||
public IfcActorSelect Publisher { get { return mDatabase[mPublisher] as IfcActorSelect; } set { mPublisher = (value == null ? 0 : value.Index); } }
|
||||
public IfcActorSelect Publisher { get { return mPublisher; } set { mPublisher = value; } }
|
||||
public DateTime VersionDate { get { return mVersionDate; } set { mVersionDate = value; } }
|
||||
public string Location { get { return mLocation; } set { mLocation = value; } }
|
||||
public string Description { get { return mDescription; } set { mDescription = value; } }
|
||||
|
@ -119,7 +119,16 @@ namespace GeometryGym.Ifc
|
|||
public SET<IfcLibraryReference> HasLibraryReferences { get { return mHasLibraryReferences; } }
|
||||
|
||||
internal IfcLibraryInformation() : base() { }
|
||||
internal IfcLibraryInformation(DatabaseIfc db, IfcLibraryInformation i) : base(db, i) { mName = i.mName; mVersion = i.mVersion; if (i.mPublisher > 0) Publisher = db.Factory.Duplicate(i.mDatabase[i.mPublisher]) as IfcActorSelect; mVersionDate = i.mVersionDate; mLocation = i.mLocation; mDescription = i.mDescription; }
|
||||
internal IfcLibraryInformation(DatabaseIfc db, IfcLibraryInformation i) : base(db, i)
|
||||
{
|
||||
mName = i.mName;
|
||||
mVersion = i.mVersion;
|
||||
if (i.mPublisher != null)
|
||||
Publisher = db.Factory.Duplicate(i.mPublisher);
|
||||
mVersionDate = i.mVersionDate;
|
||||
mLocation = i.mLocation;
|
||||
mDescription = i.mDescription;
|
||||
}
|
||||
public IfcLibraryInformation(DatabaseIfc db, string name) : base(db) { Name = name; }
|
||||
|
||||
protected override void initialize()
|
||||
|
@ -195,22 +204,22 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcLightFixture : IfcFlowTerminal
|
||||
{
|
||||
internal IfcLightFixtureTypeEnum mPredefinedType = IfcLightFixtureTypeEnum.NOTDEFINED;// : OPTIONAL IfcLightFixtureTypeEnum;
|
||||
public IfcLightFixtureTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcLightFixtureTypeEnum mPredefinedType = IfcLightFixtureTypeEnum.NOTDEFINED;// : OPTIONAL IfcLightFixtureTypeEnum;
|
||||
public IfcLightFixtureTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcLightFixtureTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcLightFixture() : base() { }
|
||||
internal IfcLightFixture(DatabaseIfc db, IfcLightFixture f, DuplicateOptions options) : base(db, f, options) { mPredefinedType = f.mPredefinedType; }
|
||||
internal IfcLightFixture(DatabaseIfc db, IfcLightFixture f, DuplicateOptions options) : base(db, f, options) { PredefinedType = f.PredefinedType; }
|
||||
public IfcLightFixture(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcLightFixtureType : IfcFlowTerminalType
|
||||
{
|
||||
internal IfcLightFixtureTypeEnum mPredefinedType = IfcLightFixtureTypeEnum.NOTDEFINED;// : IfcLightFixtureTypeEnum;
|
||||
public IfcLightFixtureTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcLightFixtureTypeEnum mPredefinedType = IfcLightFixtureTypeEnum.NOTDEFINED;// : IfcLightFixtureTypeEnum;
|
||||
public IfcLightFixtureTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcLightFixtureTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcLightFixtureType() : base() { }
|
||||
internal IfcLightFixtureType(DatabaseIfc db, IfcLightFixtureType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcLightFixtureType(DatabaseIfc m, string name, IfcLightFixtureTypeEnum t) : base(m) { Name = name; mPredefinedType = t; }
|
||||
internal IfcLightFixtureType(DatabaseIfc db, IfcLightFixtureType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcLightFixtureType(DatabaseIfc db, string name, IfcLightFixtureTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcLightIntensityDistribution : BaseClassIfc, IfcLightDistributionDataSourceSelect
|
||||
|
@ -295,7 +304,7 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcLightSourceSpot : IfcLightSourcePositional
|
||||
{
|
||||
internal int mOrientation;// : IfcDirection;
|
||||
internal IfcDirection mOrientation;// : IfcDirection;
|
||||
internal double mConcentrationExponent;// : IfcReal;
|
||||
internal double mSpreadAngle;// : IfcPositivePlaneAngleMeasure;
|
||||
internal double mBeamWidthAngle;// : IfcPositivePlaneAngleMeasure;
|
||||
|
@ -305,11 +314,11 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcLine : IfcCurve
|
||||
{
|
||||
internal int mPnt;// : IfcCartesianPoint;
|
||||
internal int mDir;// : IfcVector;
|
||||
internal IfcCartesianPoint mPnt;// : IfcCartesianPoint;
|
||||
internal IfcVector mDir;// : IfcVector;
|
||||
|
||||
public IfcCartesianPoint Pnt { get { return mDatabase[mPnt] as IfcCartesianPoint; } set { mPnt = value.mIndex; } }
|
||||
public IfcVector Dir { get { return mDatabase[mDir] as IfcVector; } set { mDir = value.mIndex; } }
|
||||
public IfcCartesianPoint Pnt { get { return mPnt; } set { mPnt = value; } }
|
||||
public IfcVector Dir { get { return mDir; } set { mDir = value; } }
|
||||
|
||||
internal IfcLine() : base() { }
|
||||
internal IfcLine(DatabaseIfc db, IfcLine l, DuplicateOptions options) : base(db, l, options) { Pnt = db.Factory.Duplicate(l.Pnt) as IfcCartesianPoint; Dir = db.Factory.Duplicate(l.Dir) as IfcVector; }
|
||||
|
@ -422,8 +431,9 @@ namespace GeometryGym.Ifc
|
|||
if(e.Axis != null)
|
||||
Axis = db.Factory.Duplicate(e.Axis) as IfcCurve;
|
||||
}
|
||||
public IfcLinearPositioningElement(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape shape) : base(host, placement, shape) { }
|
||||
|
||||
internal override bool isDuplicate(BaseClassIfc e, bool includeAggregated, double tol)
|
||||
internal override bool isDuplicate(BaseClassIfc e, OptionsTestDuplicate options)
|
||||
{
|
||||
IfcLinearPositioningElement linearPositioningElement = e as IfcLinearPositioningElement;
|
||||
if (linearPositioningElement == null)
|
||||
|
@ -431,12 +441,12 @@ namespace GeometryGym.Ifc
|
|||
if (mAxis != null)
|
||||
{
|
||||
BaseClassIfc axis = mAxis as BaseClassIfc;
|
||||
if (!axis.isDuplicate(linearPositioningElement.mAxis as BaseClassIfc, tol))
|
||||
if (!axis.isDuplicate(linearPositioningElement.mAxis as BaseClassIfc, options.Tolerance))
|
||||
return false;
|
||||
}
|
||||
else if (linearPositioningElement.mAxis != null)
|
||||
return false;
|
||||
return base.isDuplicate(e, includeAggregated, tol);
|
||||
return base.isDuplicate(e, options);
|
||||
}
|
||||
}
|
||||
[Serializable]
|
||||
|
@ -477,7 +487,7 @@ namespace GeometryGym.Ifc
|
|||
public partial class IfcLiquidTerminal : IfcFlowTerminal
|
||||
{
|
||||
private IfcLiquidTerminalTypeEnum mPredefinedType = IfcLiquidTerminalTypeEnum.NOTDEFINED; //: OPTIONAL IfcLiquidTerminalTypeEnum;
|
||||
public IfcLiquidTerminalTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcLiquidTerminalTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcLiquidTerminalTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcLiquidTerminal() : base() { }
|
||||
public IfcLiquidTerminal(DatabaseIfc db) : base(db) { }
|
||||
|
@ -488,7 +498,7 @@ namespace GeometryGym.Ifc
|
|||
public partial class IfcLiquidTerminalType : IfcFlowTerminalType
|
||||
{
|
||||
private IfcLiquidTerminalTypeEnum mPredefinedType = IfcLiquidTerminalTypeEnum.NOTDEFINED; //: IfcLiquidTerminalTypeEnum;
|
||||
public IfcLiquidTerminalTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcLiquidTerminalTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcLiquidTerminalTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcLiquidTerminalType() : base() { }
|
||||
public IfcLiquidTerminalType(DatabaseIfc db, IfcLiquidTerminalType liquidTerminalType, DuplicateOptions options) : base(db, liquidTerminalType, options) { PredefinedType = liquidTerminalType.PredefinedType; }
|
||||
|
@ -535,10 +545,10 @@ namespace GeometryGym.Ifc
|
|||
internal int mHourComponent;// : IfcHourInDay;
|
||||
internal int mMinuteComponent;// : OPTIONAL IfcMinuteInHour;
|
||||
internal double mSecondComponent;// : OPTIONAL IfcSecondInMinute;
|
||||
internal int mZone;// OPTIONAL IfcCoordinatedUniversalTimeOffset;
|
||||
internal IfcCoordinatedUniversalTimeOffset mZone;// OPTIONAL IfcCoordinatedUniversalTimeOffset;
|
||||
internal int mDaylightSavingOffset;// : OPTIONAL IfcDaylightSavingHour;
|
||||
|
||||
public IfcCoordinatedUniversalTimeOffset Zone { get { return mDatabase[mZone] as IfcCoordinatedUniversalTimeOffset; } set { mZone = (value == null ? 0 : value.mIndex); } }
|
||||
public IfcCoordinatedUniversalTimeOffset Zone { get { return mZone; } set { mZone = value; } }
|
||||
public int DaylightSavingOffset { get { return mDaylightSavingOffset; } set { mDaylightSavingOffset = value; } }
|
||||
internal IfcLocalTime() : base() { }
|
||||
internal IfcLocalTime(DatabaseIfc db, IfcLocalTime t) : base(db, t)
|
||||
|
|
|
@ -32,8 +32,8 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public abstract partial class IfcManifoldSolidBrep : IfcSolidModel //ABSTRACT SUPERTYPE OF(ONEOF(IfcAdvancedBrep, IfcFacetedBrep))
|
||||
{
|
||||
protected int mOuter;// : IfcClosedShell;
|
||||
public IfcClosedShell Outer { get { return mDatabase[mOuter] as IfcClosedShell; } set { mOuter = value.mIndex; } }
|
||||
protected IfcClosedShell mOuter;// : IfcClosedShell;
|
||||
public IfcClosedShell Outer { get { return mOuter; } set { mOuter = value; } }
|
||||
|
||||
protected IfcManifoldSolidBrep() : base() { }
|
||||
protected IfcManifoldSolidBrep(IfcClosedShell s) : base(s.mDatabase) { Outer = s; }
|
||||
|
@ -87,21 +87,22 @@ namespace GeometryGym.Ifc
|
|||
public partial class IfcMarineFacility : IfcFacility
|
||||
{
|
||||
private IfcMarineFacilityTypeEnum mPredefinedType = IfcMarineFacilityTypeEnum.NOTDEFINED; //: OPTIONAL IfcMarineFacilityTypeEnum;
|
||||
public IfcMarineFacilityTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcMarineFacilityTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcMarineFacilityTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcMarineFacility() : base() { }
|
||||
public IfcMarineFacility(DatabaseIfc db) : base(db) { }
|
||||
internal IfcMarineFacility(DatabaseIfc db) : base(db) { }
|
||||
public IfcMarineFacility(DatabaseIfc db, string name) : base(db, name) { }
|
||||
public IfcMarineFacility(DatabaseIfc db, IfcMarineFacility marineFacility, DuplicateOptions options) : base(db, marineFacility, options) { }
|
||||
public IfcMarineFacility(DatabaseIfc db, IfcMarineFacilityTypeEnum predefinedType)
|
||||
: base(db) { PredefinedType = predefinedType; }
|
||||
public IfcMarineFacility(IfcFacility host, string name, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcMarineFacilityTypeEnum predefinedType) : base(host, placement, representation) { Name = name; }
|
||||
internal IfcMarineFacility(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcMarineFacilityTypeEnum predefinedType) : base(host, placement, representation) { }
|
||||
internal IfcMarineFacility(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcMarinePart : IfcFacilityPart
|
||||
{
|
||||
private IfcMarinePartTypeEnum mPredefinedType = IfcMarinePartTypeEnum.NOTDEFINED; //: OPTIONAL IfcMarinePartTypeEnum;
|
||||
public IfcMarinePartTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcMarinePartTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcMarinePartTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
public override string StepClassName { get { if (mDatabase != null && mDatabase.Release > ReleaseVersion.IFC4X2 && mDatabase.Release < ReleaseVersion.IFC4X3) return "IfcFacilityPart"; return base.StepClassName; } }
|
||||
public IfcMarinePart() : base() { }
|
||||
public IfcMarinePart(DatabaseIfc db) : base(db) { }
|
||||
|
@ -177,27 +178,33 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
}
|
||||
}
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
[Serializable]
|
||||
public partial class IfcMaterialClassificationRelationship : BaseClassIfc
|
||||
{
|
||||
internal List<int> mMaterialClassifications = new List<int>();// : SET [1:?] OF IfcClassificationNotationSelect;
|
||||
internal int mClassifiedMaterial;// : IfcMaterial;
|
||||
internal SET<IfcClassificationNotationSelect> mMaterialClassifications = new SET<IfcClassificationNotationSelect>();// : SET [1:?] OF IfcClassificationNotationSelect;
|
||||
internal IfcMaterial mClassifiedMaterial;// : IfcMaterial;
|
||||
internal IfcMaterialClassificationRelationship() : base() { }
|
||||
//internal IfcMaterialClassificationRelationship(IfcMaterialClassificationRelationship m) : base() { mMaterialClassifications = new List<int>(m.mMaterialClassifications.ToArray()); mClassifiedMaterial = m.mClassifiedMaterial; }
|
||||
internal IfcMaterialClassificationRelationship(DatabaseIfc db) : base(db) { }
|
||||
internal IfcMaterialClassificationRelationship(DatabaseIfc db, IfcMaterialClassificationRelationship m, DuplicateOptions options)
|
||||
: base(db, m)
|
||||
{
|
||||
mMaterialClassifications.AddRange(m.mMaterialClassifications.Select(x=>db.Factory.Duplicate(x, options)));
|
||||
mClassifiedMaterial = db.Factory.Duplicate(m.mClassifiedMaterial, options);
|
||||
}
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcMaterialConstituent : IfcMaterialDefinition //IFC4
|
||||
{
|
||||
internal string mName = "";// : OPTIONAL IfcLabel;
|
||||
internal string mDescription = "";// : OPTIONAL IfcText
|
||||
internal int mMaterial;// : IfcMaterial;
|
||||
internal IfcMaterial mMaterial;// : IfcMaterial;
|
||||
internal double mFraction;// : OPTIONAL IfcNormalisedRatioMeasure;
|
||||
internal string mCategory = "";// : OPTIONAL IfcLabel;
|
||||
|
||||
public override string Name { get { return mName; } set { mName = value; } }
|
||||
public string Description { get { return mDescription; } set { mDescription = value; } }
|
||||
public IfcMaterial Material { get { return mDatabase[mMaterial] as IfcMaterial; } set { mMaterial = (value == null ? 0 : value.mIndex); } }
|
||||
public IfcMaterial Material { get { return mMaterial; } set { mMaterial = value; } }
|
||||
public double Fraction { get { return mFraction; } set { mFraction = value; } }
|
||||
public string Category { get { return mCategory; } set { mCategory = value; } }
|
||||
|
||||
|
@ -209,7 +216,7 @@ namespace GeometryGym.Ifc
|
|||
: base(mat.mDatabase)
|
||||
{
|
||||
Name = name;
|
||||
mMaterial = mat.mIndex;
|
||||
mMaterial = mat;
|
||||
}
|
||||
}
|
||||
[Serializable]
|
||||
|
@ -248,12 +255,12 @@ namespace GeometryGym.Ifc
|
|||
[NonSerialized] private SET<IfcRelAssociatesMaterial> mAssociatedTo = new SET<IfcRelAssociatesMaterial>();
|
||||
private SET<IfcExternalReferenceRelationship> mHasExternalReference = new SET<IfcExternalReferenceRelationship>(); //IFC4 SET [0:?] OF IfcExternalReferenceRelationship FOR RelatedResourceObjects;
|
||||
private SET<IfcMaterialProperties> mHasProperties = new SET<IfcMaterialProperties>();
|
||||
[NonSerialized] internal List<IfcResourceConstraintRelationship> mHasConstraintRelationships = new List<IfcResourceConstraintRelationship>(); //gg
|
||||
[NonSerialized] internal SET<IfcResourceConstraintRelationship> mHasConstraintRelationships = new SET<IfcResourceConstraintRelationship>(); //gg
|
||||
|
||||
public SET<IfcRelAssociatesMaterial> AssociatedTo { get { return mAssociatedTo; } }
|
||||
public SET<IfcExternalReferenceRelationship> HasExternalReference { get { return mHasExternalReference; } }
|
||||
public SET<IfcMaterialProperties> HasProperties { get { return mHasProperties; } }
|
||||
public ReadOnlyCollection<IfcResourceConstraintRelationship> HasConstraintRelationships { get { return new ReadOnlyCollection<IfcResourceConstraintRelationship>( mHasConstraintRelationships); } }
|
||||
public SET<IfcResourceConstraintRelationship> HasConstraintRelationships { get { return mHasConstraintRelationships; } }
|
||||
|
||||
public abstract string Name { get; set; }
|
||||
public virtual IfcMaterial PrimaryMaterial() { return null; }
|
||||
|
@ -346,7 +353,7 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcMaterialLayer : IfcMaterialDefinition
|
||||
{
|
||||
internal int mMaterial;// : OPTIONAL IfcMaterial;
|
||||
internal IfcMaterial mMaterial;// : OPTIONAL IfcMaterial;
|
||||
internal double mLayerThickness;// :: IfcNonNegativeLengthMeasure IFC4Chagne IfcPositiveLengthMeasure;
|
||||
internal IfcLogicalEnum mIsVentilated = IfcLogicalEnum.FALSE; // : OPTIONAL IfcLogical;
|
||||
internal string mName = "";// : OPTIONAL IfcLabel; IFC4
|
||||
|
@ -354,7 +361,7 @@ namespace GeometryGym.Ifc
|
|||
internal string mCategory = "";// : OPTIONAL IfcLabel; IFC4
|
||||
internal double mPriority = double.NaN;// : OPTIONAL IfcNormalisedRatioMeasure;
|
||||
|
||||
public IfcMaterial Material { get { return mDatabase[mMaterial] as IfcMaterial; } set { mMaterial = (value == null ? 0 : value.mIndex); } }
|
||||
public IfcMaterial Material { get { return mMaterial; } set { mMaterial = value; } }
|
||||
public double LayerThickness { get { return mLayerThickness; } set { mLayerThickness = value; } }
|
||||
public IfcLogicalEnum IsVentilated { get { return mIsVentilated; } set { mIsVentilated = value; } }
|
||||
public override string Name { get { return mName; } set { mName = value; } }
|
||||
|
@ -407,13 +414,13 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcMaterialLayerSetUsage : IfcMaterialUsageDefinition
|
||||
{
|
||||
private int mForLayerSet;// : IfcMaterialLayerSet;
|
||||
private IfcMaterialLayerSet mForLayerSet;// : IfcMaterialLayerSet;
|
||||
private IfcLayerSetDirectionEnum mLayerSetDirection = IfcLayerSetDirectionEnum.AXIS1;// : IfcLayerSetDirectionEnum;
|
||||
private IfcDirectionSenseEnum mDirectionSense = IfcDirectionSenseEnum.POSITIVE;// : IfcDirectionSenseEnum;
|
||||
private double mOffsetFromReferenceLine;// : IfcLengthMeasure;
|
||||
private double mReferenceExtent = double.NaN;// : IFC4 OPTIONAL IfcPositiveLengthMeasure;
|
||||
|
||||
public IfcMaterialLayerSet ForLayerSet { get { return mDatabase[mForLayerSet] as IfcMaterialLayerSet; } set { mForLayerSet = value.mIndex; } }
|
||||
public IfcMaterialLayerSet ForLayerSet { get { return mForLayerSet; } set { mForLayerSet = value; } }
|
||||
public IfcLayerSetDirectionEnum LayerSetDirection { get { return mLayerSetDirection; } }
|
||||
public IfcDirectionSenseEnum DirectionSense { get { return mDirectionSense; } }
|
||||
public double OffsetFromReferenceLine { get { return mOffsetFromReferenceLine; } set { mOffsetFromReferenceLine = value; } }
|
||||
|
@ -426,7 +433,7 @@ namespace GeometryGym.Ifc
|
|||
internal IfcMaterialLayerSetUsage(DatabaseIfc db, IfcMaterialLayerSetUsage m) : base(db, m) { ForLayerSet = db.Factory.Duplicate(m.ForLayerSet) as IfcMaterialLayerSet; mLayerSetDirection = m.mLayerSetDirection; mDirectionSense = m.mDirectionSense; mOffsetFromReferenceLine = m.mOffsetFromReferenceLine; mReferenceExtent = m.mReferenceExtent; }
|
||||
public IfcMaterialLayerSetUsage(IfcMaterialLayerSet ls, IfcLayerSetDirectionEnum dir, IfcDirectionSenseEnum sense, double offset) : base(ls.mDatabase)
|
||||
{
|
||||
mForLayerSet = ls.mIndex;
|
||||
mForLayerSet = ls;
|
||||
mLayerSetDirection = dir;
|
||||
mDirectionSense = sense;
|
||||
mOffsetFromReferenceLine = offset;
|
||||
|
@ -466,18 +473,20 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcMaterialList : BaseClassIfc, IfcMaterialSelect, NamedObjectIfc //DEPRECATED IFC4
|
||||
{
|
||||
internal List<int> mMaterials = new List<int>();// LIST [1:?] OF IfcMaterial;
|
||||
internal LIST<IfcMaterial> mMaterials = new LIST<IfcMaterial>();// LIST [1:?] OF IfcMaterial;
|
||||
//INVERSE
|
||||
[NonSerialized] private SET<IfcRelAssociatesMaterial> mAssociatedTo = new SET<IfcRelAssociatesMaterial>();
|
||||
|
||||
public ReadOnlyCollection<IfcMaterial> Materials { get { return new ReadOnlyCollection<IfcMaterial>( mMaterials.ConvertAll(x =>mDatabase[x] as IfcMaterial)); } }
|
||||
public LIST<IfcMaterial> Materials { get { return mMaterials; } }
|
||||
public SET<IfcRelAssociatesMaterial> AssociatedTo { get { return mAssociatedTo; } }
|
||||
|
||||
public string Name { get { return "MaterialList"; } }
|
||||
public IfcMaterial PrimaryMaterial() { return mDatabase[mMaterials[0]] as IfcMaterial; }
|
||||
public IfcMaterial PrimaryMaterial() { return mMaterials.First(); }
|
||||
|
||||
internal IfcMaterialList() : base() { }
|
||||
internal IfcMaterialList(DatabaseIfc db, IfcMaterialList m) : base(db) { m.Materials.ToList().ForEach(x=>addMaterial( db.Factory.Duplicate(x) as IfcMaterial)); }
|
||||
internal IfcMaterialList(DatabaseIfc db, IfcMaterialList m) : base(db)
|
||||
{
|
||||
Materials.AddRange(m.Materials.Select(x=>db.Factory.Duplicate(x))); }
|
||||
protected override void initialize()
|
||||
{
|
||||
base.initialize();
|
||||
|
@ -512,7 +521,6 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public void Associate(IfcRelAssociatesMaterial associates) { if(!mAssociatedTo.Contains(associates)) mAssociatedTo.Add(associates); }
|
||||
|
||||
internal void addMaterial(IfcMaterial material) { mMaterials.Add(material.mIndex); }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcMaterialProfile : IfcMaterialDefinition // IFC4
|
||||
|
@ -576,7 +584,7 @@ namespace GeometryGym.Ifc
|
|||
|
||||
internal IfcMaterialProfileSet() : base() { }
|
||||
internal IfcMaterialProfileSet(DatabaseIfc db, IfcMaterialProfileSet m) : base(db, m) { mName = m.mName; mDescription = m.mDescription; MaterialProfiles.AddRange(m.mMaterialProfiles.ConvertAll(x => db.Factory.Duplicate(x) as IfcMaterialProfile)); if (m.mCompositeProfile != null) CompositeProfile = db.Factory.Duplicate(m.CompositeProfile) as IfcCompositeProfileDef; }
|
||||
private IfcMaterialProfileSet(DatabaseIfc m, string name) : base(m) { Name = name; }
|
||||
private IfcMaterialProfileSet(DatabaseIfc db, string name) : base(db) { Name = name; }
|
||||
public IfcMaterialProfileSet(string name, IfcMaterialProfile profile) : base(profile.mDatabase)
|
||||
{
|
||||
Name = name;
|
||||
|
@ -740,19 +748,19 @@ namespace GeometryGym.Ifc
|
|||
public void Associate(IfcRelAssociatesMaterial associates) { if (!mAssociatedTo.Contains(associates)) mAssociatedTo.Add(associates); }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcMeasureWithUnit : BaseClassIfc, IfcAppliedValueSelect
|
||||
public partial class IfcMeasureWithUnit : BaseClassIfc, IfcAppliedValueSelect, IfcConditionCriterionSelect
|
||||
{
|
||||
internal IfcValue mValueComponent;// : IfcValue;
|
||||
private string mVal;
|
||||
private int mUnitComponent;// : IfcUnit;
|
||||
private IfcUnit mUnitComponent;// : IfcUnit;
|
||||
|
||||
public IfcValue ValueComponent { get { return mValueComponent; } set { mValueComponent = value; } }
|
||||
public IfcUnit UnitComponent { get { return mDatabase[mUnitComponent] as IfcUnit; } set { mUnitComponent = value.Index; } }
|
||||
public IfcUnit UnitComponent { get { return mUnitComponent; } set { mUnitComponent = value; } }
|
||||
|
||||
internal IfcMeasureWithUnit() : base() { }
|
||||
internal IfcMeasureWithUnit(DatabaseIfc db, IfcMeasureWithUnit m) : base(db) { mValueComponent = m.mValueComponent; mVal = m.mVal; UnitComponent = db.Factory.Duplicate(m.mDatabase[ m.mUnitComponent]) as IfcUnit; }
|
||||
public IfcMeasureWithUnit(IfcValue v, IfcUnit u) : base(u.Database) { mValueComponent = v; mUnitComponent = u.Index; }
|
||||
internal IfcMeasureWithUnit(double value, IfcUnit u) : base(u.Database) { mValueComponent = new IfcReal(value); mUnitComponent = u.Index; }
|
||||
internal IfcMeasureWithUnit(DatabaseIfc db, IfcMeasureWithUnit m) : base(db) { mValueComponent = m.mValueComponent; mVal = m.mVal; UnitComponent = db.Factory.Duplicate(m.mUnitComponent); }
|
||||
public IfcMeasureWithUnit(IfcValue v, IfcUnit u) : base(u.Database) { mValueComponent = v; mUnitComponent = u; }
|
||||
internal IfcMeasureWithUnit(double value, IfcUnit u) : base(u.Database) { mValueComponent = new IfcReal(value); mUnitComponent = u; }
|
||||
public double SIFactor()
|
||||
{
|
||||
IfcUnit u = UnitComponent;
|
||||
|
@ -799,8 +807,8 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
internal double mNominalDiameter = double.NaN;// : OPTIONAL IfcPositiveLengthMeasure; IFC4 DEPRECATED
|
||||
internal double mNominalLength = double.NaN;// : OPTIONAL IfcPositiveLengthMeasure; IFC4 DEPRECATED
|
||||
internal IfcMechanicalFastenerTypeEnum mPredefinedType = IfcMechanicalFastenerTypeEnum.NOTDEFINED;// : OPTIONAL IfcMechanicalFastenerTypeEnum;
|
||||
public IfcMechanicalFastenerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcMechanicalFastenerTypeEnum mPredefinedType = IfcMechanicalFastenerTypeEnum.NOTDEFINED;// : OPTIONAL IfcMechanicalFastenerTypeEnum;
|
||||
public IfcMechanicalFastenerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcMechanicalFastenerTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcMechanicalFastener() : base() { }
|
||||
internal IfcMechanicalFastener(DatabaseIfc db, IfcMechanicalFastener f, DuplicateOptions options) : base(db, f, options) { mNominalDiameter = f.mNominalDiameter; mNominalLength = f.mNominalLength; }
|
||||
|
@ -812,13 +820,13 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
internal double mNominalDiameter;// : OPTIONAL IfcPositiveLengthMeasure; IFC4
|
||||
internal double mNominalLength;// : OPTIONAL IfcPositiveLengthMeasure; IFC4
|
||||
internal IfcMechanicalFastenerTypeEnum mPredefinedType = IfcMechanicalFastenerTypeEnum.NOTDEFINED;// : IfcMechanicalFastenerTypeEnum; IFC4
|
||||
public IfcMechanicalFastenerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcMechanicalFastenerTypeEnum mPredefinedType = IfcMechanicalFastenerTypeEnum.NOTDEFINED;// : IfcMechanicalFastenerTypeEnum; IFC4
|
||||
public IfcMechanicalFastenerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcMechanicalFastenerTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcMechanicalFastenerType() : base() { }
|
||||
internal IfcShapeRepresentation mProfileRep = null;
|
||||
internal IfcMechanicalFastenerType(DatabaseIfc db, IfcMechanicalFastenerType t, DuplicateOptions options) : base(db, t, options) { mNominalDiameter = t.mNominalDiameter; mNominalLength = t.mNominalLength; mPredefinedType = t.mPredefinedType; }
|
||||
public IfcMechanicalFastenerType(DatabaseIfc db, string name, IfcMechanicalFastenerTypeEnum type) : base(db) { Name = name; mPredefinedType = type; }
|
||||
internal IfcMechanicalFastenerType(DatabaseIfc db, IfcMechanicalFastenerType t, DuplicateOptions options) : base(db, t, options) { mNominalDiameter = t.mNominalDiameter; mNominalLength = t.mNominalLength; PredefinedType = t.PredefinedType; }
|
||||
public IfcMechanicalFastenerType(DatabaseIfc db, string name, IfcMechanicalFastenerTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
[Serializable]
|
||||
|
@ -851,14 +859,14 @@ namespace GeometryGym.Ifc
|
|||
internal double mHardeningModule = double.NaN;// : OPTIONAL IfcModulusOfElasticityMeasure
|
||||
internal double mProportionalStress = double.NaN;// : OPTIONAL IfcPressureMeasure;
|
||||
internal double mPlasticStrain = double.NaN;// : OPTIONAL IfcPositiveRatioMeasure;
|
||||
internal List<int> mRelaxations = new List<int>();// : OPTIONAL SET [1:?] OF IfcRelaxation
|
||||
internal SET<IfcRelaxation> mRelaxations = new SET<IfcRelaxation>();// : OPTIONAL SET [1:?] OF IfcRelaxation
|
||||
|
||||
public double YieldStress { get { return mYieldStress; } set { mYieldStress = value; } }
|
||||
public double UltimateStress { get { return mUltimateStress; } set { mUltimateStress = value; } }
|
||||
public double HardeningModule { get { return mHardeningModule; } set { mHardeningModule = value; } }
|
||||
public double ProportionalStress { get { return mProportionalStress; } set { mProportionalStress = value; } }
|
||||
public double PlasticStrain { get { return mPlasticStrain; } set { mPlasticStrain = value; } }
|
||||
public List<IfcRelaxation> Relaxations { get { return mRelaxations.ConvertAll(x => mDatabase[x] as IfcRelaxation); } set { mRelaxations = (value == null ? new List<int>() : value.ConvertAll(x => x.mIndex)); } }
|
||||
public SET<IfcRelaxation> Relaxations { get { return mRelaxations; } }
|
||||
|
||||
internal IfcMechanicalSteelMaterialProperties() : base() { }
|
||||
internal IfcMechanicalSteelMaterialProperties(DatabaseIfc db, IfcMechanicalSteelMaterialProperties p, DuplicateOptions options) : base(db, p, options)
|
||||
|
@ -869,7 +877,7 @@ namespace GeometryGym.Ifc
|
|||
mHardeningModule = p.mHardeningModule;
|
||||
mProportionalStress = p.mProportionalStress;
|
||||
mPlasticStrain = p.mPlasticStrain;
|
||||
Relaxations = p.Relaxations.ConvertAll(x=> db.Factory.Duplicate(x) as IfcRelaxation);
|
||||
Relaxations.AddRange(p.Relaxations.Select(x=> db.Factory.Duplicate(x)));
|
||||
}
|
||||
public IfcMechanicalSteelMaterialProperties(IfcMaterial mat) : base(mat) { }
|
||||
public IfcMechanicalSteelMaterialProperties(IfcMaterial mat, double dynVisc, double youngs, double shear, double poisson, double thermalExp, double yieldStress, double ultimateStress, double ultimateStrain, double hardeningModule, double proportionalStress, double plasticStrain)
|
||||
|
@ -886,31 +894,31 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcMedicalDevice : IfcFlowTerminal //IFC4
|
||||
{
|
||||
internal IfcMedicalDeviceTypeEnum mPredefinedType = IfcMedicalDeviceTypeEnum.NOTDEFINED;// OPTIONAL : IfcMedicalDeviceTypeEnum;
|
||||
public IfcMedicalDeviceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcMedicalDeviceTypeEnum mPredefinedType = IfcMedicalDeviceTypeEnum.NOTDEFINED;// OPTIONAL : IfcMedicalDeviceTypeEnum;
|
||||
public IfcMedicalDeviceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcMedicalDeviceTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcMedicalDevice() : base() { }
|
||||
internal IfcMedicalDevice(DatabaseIfc db, IfcMedicalDevice d, DuplicateOptions options) : base(db, d, options) { mPredefinedType = d.mPredefinedType; }
|
||||
internal IfcMedicalDevice(DatabaseIfc db, IfcMedicalDevice d, DuplicateOptions options) : base(db, d, options) { PredefinedType = d.PredefinedType; }
|
||||
public IfcMedicalDevice(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcMedicalDeviceType : IfcFlowTerminalType
|
||||
{
|
||||
internal IfcMedicalDeviceTypeEnum mPredefinedType = IfcMedicalDeviceTypeEnum.NOTDEFINED;// : IfcMedicalDeviceBoxTypeEnum;
|
||||
public IfcMedicalDeviceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcMedicalDeviceTypeEnum mPredefinedType = IfcMedicalDeviceTypeEnum.NOTDEFINED;// : IfcMedicalDeviceBoxTypeEnum;
|
||||
public IfcMedicalDeviceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcMedicalDeviceTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcMedicalDeviceType() : base() { }
|
||||
internal IfcMedicalDeviceType(DatabaseIfc db, IfcMedicalDeviceType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcMedicalDeviceType(DatabaseIfc m, string name, IfcMedicalDeviceTypeEnum t) : base(m) { Name = name; mPredefinedType = t; }
|
||||
internal IfcMedicalDeviceType(DatabaseIfc db, IfcMedicalDeviceType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcMedicalDeviceType(DatabaseIfc db, string name, IfcMedicalDeviceTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcMember : IfcBuiltElement
|
||||
{
|
||||
internal IfcMemberTypeEnum mPredefinedType = IfcMemberTypeEnum.NOTDEFINED;//: OPTIONAL IfcMemberTypeEnum;
|
||||
public IfcMemberTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcMemberTypeEnum mPredefinedType = IfcMemberTypeEnum.NOTDEFINED;//: OPTIONAL IfcMemberTypeEnum;
|
||||
public IfcMemberTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcMemberTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcMember() : base() { }
|
||||
internal IfcMember(DatabaseIfc db, IfcMember m, DuplicateOptions options) : base(db, m, options) { mPredefinedType = m.mPredefinedType; }
|
||||
internal IfcMember(DatabaseIfc db, IfcMember m, DuplicateOptions options) : base(db, m, options) { PredefinedType = m.PredefinedType; }
|
||||
public IfcMember(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
public IfcMember(IfcProduct host, IfcMaterialProfileSetUsage profile, IfcAxis2Placement3D placement, double length) : base(host, profile, placement,length) { }
|
||||
}
|
||||
|
@ -926,71 +934,50 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcMemberType : IfcBuiltElementType
|
||||
{
|
||||
internal IfcMemberTypeEnum mPredefinedType = IfcMemberTypeEnum.NOTDEFINED;
|
||||
public IfcMemberTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcMemberTypeEnum mPredefinedType = IfcMemberTypeEnum.NOTDEFINED;
|
||||
public IfcMemberTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcMemberTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcMemberType() : base() { }
|
||||
internal IfcMemberType(DatabaseIfc db, IfcMemberType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
internal IfcMemberType(DatabaseIfc db, IfcMemberType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcMemberType(string name, IfcMaterialProfileSet ps, IfcMemberTypeEnum type) : base(ps.mDatabase)
|
||||
{
|
||||
Name = name;
|
||||
mPredefinedType = type;
|
||||
PredefinedType = type;
|
||||
if (ps.mTaperEnd != null)
|
||||
mTapering = ps;
|
||||
else
|
||||
MaterialSelect = ps;
|
||||
}
|
||||
public IfcMemberType(DatabaseIfc m, string name, IfcMemberTypeEnum type) : base(m) { Name = name; mPredefinedType = type; }
|
||||
public IfcMemberType(string name, IfcMaterialProfile mp, IfcMemberTypeEnum type) : base(mp.mDatabase) { Name = name; mPredefinedType = type; MaterialSelect = mp; }
|
||||
public IfcMemberType(DatabaseIfc db, string name, IfcMemberTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
public IfcMemberType(string name, IfcMaterialProfile mp, IfcMemberTypeEnum type) : base(mp.mDatabase) { Name = name; PredefinedType = type; MaterialSelect = mp; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcMetric : IfcConstraint
|
||||
{
|
||||
internal IfcBenchmarkEnum mBenchMark = IfcBenchmarkEnum.EQUALTO;// : IfcBenchmarkEnum
|
||||
internal string mValueSource = ""; // : OPTIONAL IfcLabel;
|
||||
private int mDataValue = 0;// : OPTIONAL IfcMetricValueSelect;
|
||||
private IfcValue mDataValueValue = null;
|
||||
private int mReferencePath;// : OPTIONAL IfcReference;
|
||||
private IfcMetricValueSelect mDataValue = null;// : OPTIONAL IfcMetricValueSelect;
|
||||
private IfcReference mReferencePath;// : OPTIONAL IfcReference;
|
||||
|
||||
public IfcBenchmarkEnum BenchMark { get { return mBenchMark; } set { mBenchMark = value; } }
|
||||
public string ValueSource { get { return mValueSource; } set { mValueSource = value; } }
|
||||
public IfcMetricValueSelect DataValue
|
||||
{
|
||||
get
|
||||
{
|
||||
if (mDataValueValue != null)
|
||||
return mDataValueValue;
|
||||
return mDatabase[mDataValue] as IfcMetricValueSelect;
|
||||
}
|
||||
set
|
||||
{
|
||||
IfcValue ivalue = value as IfcValue;
|
||||
if (value != null)
|
||||
{
|
||||
mDataValueValue = ivalue;
|
||||
mDataValue = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
BaseClassIfc baseClass = value as BaseClassIfc;
|
||||
mDataValue = baseClass == null ? 0 : baseClass.mIndex;
|
||||
mDataValueValue = null;
|
||||
}
|
||||
}
|
||||
get { return mDataValue; }
|
||||
set { mDataValue = value; }
|
||||
}
|
||||
public IfcValue Value { get { return mDataValueValue; } set { mDataValueValue = value; } }
|
||||
public IfcReference ReferencePath { get { return mDatabase[mReferencePath] as IfcReference; } set { mReferencePath = (value == null ? 0 : value.mIndex); } }
|
||||
public IfcReference ReferencePath { get { return mReferencePath; } set { mReferencePath = value; } }
|
||||
|
||||
internal IfcMetric() : base() { }
|
||||
internal IfcMetric(DatabaseIfc db, IfcMetric m) : base(db,m)
|
||||
{
|
||||
mBenchMark = m.mBenchMark;
|
||||
mValueSource = m.mValueSource;
|
||||
if(mDataValue > 0)
|
||||
DataValue = db.Factory.Duplicate(m.mDatabase[ m.mDataValue]) as IfcMetricValueSelect;
|
||||
mDataValueValue = m.mDataValueValue;
|
||||
if(mReferencePath > 0)
|
||||
ReferencePath = db.Factory.Duplicate( m.ReferencePath) as IfcReference;
|
||||
if (m.DataValue is BaseClassIfc o)
|
||||
DataValue = db.Factory.Duplicate(o) as IfcMetricValueSelect;
|
||||
else
|
||||
DataValue = m.DataValue;
|
||||
ReferencePath = db.Factory.Duplicate(m.ReferencePath);
|
||||
}
|
||||
public IfcMetric(DatabaseIfc db, string name, IfcConstraintEnum constraint) : base(db, name, constraint) { }
|
||||
}
|
||||
|
@ -1003,22 +990,22 @@ namespace GeometryGym.Ifc
|
|||
internal IfcMirroredProfileDef(DatabaseIfc db, IfcMirroredProfileDef p, DuplicateOptions options) : base(db, p, options) { }
|
||||
public IfcMirroredProfileDef(IfcProfileDef p, string name) : base(p, null, name) { }
|
||||
}
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X3)]
|
||||
public partial class IfcMobileTelecommunicationsAppliance : IfcFlowTerminal
|
||||
{
|
||||
private IfcMobileTelecommunicationsApplianceTypeEnum mPredefinedType = IfcMobileTelecommunicationsApplianceTypeEnum.NOTDEFINED; //: OPTIONAL IfcMobileTelecommunicationsApplianceTypeEnum;
|
||||
public IfcMobileTelecommunicationsApplianceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcMobileTelecommunicationsApplianceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcMobileTelecommunicationsApplianceTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcMobileTelecommunicationsAppliance() : base() { }
|
||||
public IfcMobileTelecommunicationsAppliance(DatabaseIfc db) : base(db) { }
|
||||
public IfcMobileTelecommunicationsAppliance(DatabaseIfc db, IfcMobileTelecommunicationsAppliance mobileAppliance, DuplicateOptions options) : base(db, mobileAppliance, options) { PredefinedType = mobileAppliance.PredefinedType; }
|
||||
public IfcMobileTelecommunicationsAppliance(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X3)]
|
||||
public partial class IfcMobileTelecommunicationsApplianceType : IfcFlowTerminalType
|
||||
{
|
||||
private IfcMobileTelecommunicationsApplianceTypeEnum mPredefinedType = IfcMobileTelecommunicationsApplianceTypeEnum.NOTDEFINED; //: IfcMobileTelecommunicationsApplianceTypeEnum;
|
||||
public IfcMobileTelecommunicationsApplianceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcMobileTelecommunicationsApplianceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcMobileTelecommunicationsApplianceTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcMobileTelecommunicationsApplianceType() : base() { }
|
||||
public IfcMobileTelecommunicationsApplianceType(DatabaseIfc db, IfcMobileTelecommunicationsApplianceType mobileApplianceType, DuplicateOptions options) : base(db, mobileApplianceType, options) { PredefinedType = mobileApplianceType.PredefinedType; }
|
||||
|
@ -1042,7 +1029,7 @@ namespace GeometryGym.Ifc
|
|||
public partial class IfcMooringDevice : IfcBuiltElement
|
||||
{
|
||||
private IfcMooringDeviceTypeEnum mPredefinedType = IfcMooringDeviceTypeEnum.NOTDEFINED; //: OPTIONAL IfcMooringDeviceTypeEnum;
|
||||
public IfcMooringDeviceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcMooringDeviceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcMooringDeviceTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcMooringDevice() : base() { }
|
||||
public IfcMooringDevice(DatabaseIfc db) : base(db) { }
|
||||
|
@ -1053,7 +1040,7 @@ namespace GeometryGym.Ifc
|
|||
public partial class IfcMooringDeviceType : IfcBuiltElementType
|
||||
{
|
||||
private IfcMooringDeviceTypeEnum mPredefinedType = IfcMooringDeviceTypeEnum.NOTDEFINED; //: IfcMooringDeviceTypeEnum;
|
||||
public IfcMooringDeviceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcMooringDeviceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcMooringDeviceTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcMooringDeviceType() : base() { }
|
||||
public IfcMooringDeviceType(DatabaseIfc db, IfcMooringDeviceType mooringDeviceType, DuplicateOptions options) : base(db, mooringDeviceType, options) { PredefinedType = mooringDeviceType.PredefinedType; }
|
||||
|
@ -1063,22 +1050,22 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcMotorConnection : IfcEnergyConversionDevice //IFC4
|
||||
{
|
||||
internal IfcMotorConnectionTypeEnum mPredefinedType = IfcMotorConnectionTypeEnum.NOTDEFINED;// OPTIONAL : IfcMotorConnectionTypeEnum;
|
||||
public IfcMotorConnectionTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcMotorConnectionTypeEnum mPredefinedType = IfcMotorConnectionTypeEnum.NOTDEFINED;// OPTIONAL : IfcMotorConnectionTypeEnum;
|
||||
public IfcMotorConnectionTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcMotorConnectionTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcMotorConnection() : base() { }
|
||||
internal IfcMotorConnection(DatabaseIfc db, IfcMotorConnection c, DuplicateOptions options) : base(db, c, options) { mPredefinedType = c.mPredefinedType; }
|
||||
internal IfcMotorConnection(DatabaseIfc db, IfcMotorConnection c, DuplicateOptions options) : base(db, c, options) { PredefinedType = c.PredefinedType; }
|
||||
public IfcMotorConnection(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcMotorConnectionType : IfcEnergyConversionDeviceType
|
||||
{
|
||||
internal IfcMotorConnectionTypeEnum mPredefinedType = IfcMotorConnectionTypeEnum.NOTDEFINED;// : IfcMotorConnectionTypeEnum;
|
||||
public IfcMotorConnectionTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcMotorConnectionTypeEnum mPredefinedType = IfcMotorConnectionTypeEnum.NOTDEFINED;// : IfcMotorConnectionTypeEnum;
|
||||
public IfcMotorConnectionTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcMotorConnectionTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcMotorConnectionType() : base() { }
|
||||
internal IfcMotorConnectionType(DatabaseIfc db, IfcMotorConnectionType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcMotorConnectionType(DatabaseIfc m, string name, IfcMotorConnectionTypeEnum type) : base(m) { Name = name; mPredefinedType = type; }
|
||||
internal IfcMotorConnectionType(DatabaseIfc db, IfcMotorConnectionType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcMotorConnectionType(DatabaseIfc db, string name, IfcMotorConnectionTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
//[Obsolete("DEPRECATED IFC4", false)]
|
||||
//ENTITY IfcMove // DEPRECATED IFC4
|
||||
|
|
|
@ -38,31 +38,31 @@ namespace GeometryGym.Ifc
|
|||
|
||||
protected IfcNamedUnit() : base() { }
|
||||
protected IfcNamedUnit(DatabaseIfc db, IfcNamedUnit u) : base(db, u) { if (u.mDimensions != null) Dimensions = db.Factory.Duplicate(u.Dimensions) as IfcDimensionalExponents; mUnitType = u.mUnitType; }
|
||||
protected IfcNamedUnit(DatabaseIfc m, IfcUnitEnum unitEnum, bool gendims) : base(m)
|
||||
protected IfcNamedUnit(DatabaseIfc db, IfcUnitEnum unitEnum, bool gendims) : base(db)
|
||||
{
|
||||
mUnitType = unitEnum;
|
||||
if (gendims)
|
||||
{
|
||||
if (unitEnum == IfcUnitEnum.LENGTHUNIT)
|
||||
Dimensions = new IfcDimensionalExponents(m, 1, 0, 0, 0, 0, 0, 0);
|
||||
Dimensions = new IfcDimensionalExponents(db, 1, 0, 0, 0, 0, 0, 0);
|
||||
else if (unitEnum == IfcUnitEnum.AREAUNIT)
|
||||
Dimensions = new IfcDimensionalExponents(m, 2, 0, 0, 0, 0, 0, 0);
|
||||
Dimensions = new IfcDimensionalExponents(db, 2, 0, 0, 0, 0, 0, 0);
|
||||
else if (unitEnum == IfcUnitEnum.VOLUMEUNIT)
|
||||
Dimensions = new IfcDimensionalExponents(m, 3, 0, 0, 0, 0, 0, 0);
|
||||
Dimensions = new IfcDimensionalExponents(db, 3, 0, 0, 0, 0, 0, 0);
|
||||
else if (unitEnum == IfcUnitEnum.MASSUNIT)
|
||||
Dimensions = new IfcDimensionalExponents(m, 0, 1, 0, 0, 0, 0, 0);
|
||||
Dimensions = new IfcDimensionalExponents(db, 0, 1, 0, 0, 0, 0, 0);
|
||||
else if (unitEnum == IfcUnitEnum.TIMEUNIT)
|
||||
Dimensions = new IfcDimensionalExponents(m, 0, 0, 1, 0, 0, 0, 0);
|
||||
Dimensions = new IfcDimensionalExponents(db, 0, 0, 1, 0, 0, 0, 0);
|
||||
else if (unitEnum == IfcUnitEnum.ELECTRICCURRENTUNIT)
|
||||
Dimensions = new IfcDimensionalExponents(m, 0, 0, 0, 1, 0, 0, 0);
|
||||
Dimensions = new IfcDimensionalExponents(db, 0, 0, 0, 1, 0, 0, 0);
|
||||
else if (unitEnum == IfcUnitEnum.THERMODYNAMICTEMPERATUREUNIT)
|
||||
Dimensions = new IfcDimensionalExponents(m, 0, 0, 0, 0, 1, 0, 0);
|
||||
Dimensions = new IfcDimensionalExponents(db, 0, 0, 0, 0, 1, 0, 0);
|
||||
else if (unitEnum == IfcUnitEnum.AMOUNTOFSUBSTANCEUNIT)
|
||||
Dimensions = new IfcDimensionalExponents(m, 0, 0, 0, 0, 0, 1, 0);
|
||||
Dimensions = new IfcDimensionalExponents(db, 0, 0, 0, 0, 0, 1, 0);
|
||||
else if (unitEnum == IfcUnitEnum.LUMINOUSINTENSITYUNIT)
|
||||
Dimensions = new IfcDimensionalExponents(m, 0, 0, 0, 0, 0, 0, 1);
|
||||
Dimensions = new IfcDimensionalExponents(db, 0, 0, 0, 0, 0, 0, 1);
|
||||
else if (unitEnum == IfcUnitEnum.PLANEANGLEUNIT)
|
||||
Dimensions = new IfcDimensionalExponents(m, 0, 0, 0, 0, 0, 0, 0);
|
||||
Dimensions = new IfcDimensionalExponents(db, 0, 0, 0, 0, 0, 0, 0);
|
||||
}
|
||||
}
|
||||
public IfcNamedUnit(IfcDimensionalExponents dimensions, IfcUnitEnum unitType)
|
||||
|
@ -74,7 +74,7 @@ namespace GeometryGym.Ifc
|
|||
public partial class IfcNavigationElement : IfcBuiltElement
|
||||
{
|
||||
private IfcNavigationElementTypeEnum mPredefinedType = IfcNavigationElementTypeEnum.NOTDEFINED; //: OPTIONAL IfcNavigationElementTypeEnum;
|
||||
public IfcNavigationElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcNavigationElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcNavigationElementTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcNavigationElement() : base() { }
|
||||
public IfcNavigationElement(DatabaseIfc db) : base(db) { }
|
||||
|
@ -85,7 +85,7 @@ namespace GeometryGym.Ifc
|
|||
public partial class IfcNavigationElementType : IfcBuiltElementType
|
||||
{
|
||||
private IfcNavigationElementTypeEnum mPredefinedType = IfcNavigationElementTypeEnum.NOTDEFINED; //: IfcNavigationElementTypeEnum;
|
||||
public IfcNavigationElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcNavigationElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcNavigationElementTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcNavigationElementType() : base() { }
|
||||
public IfcNavigationElementType(DatabaseIfc db, IfcNavigationElementType navigationElementType, DuplicateOptions options) : base(db, navigationElementType, options) { PredefinedType = navigationElementType.PredefinedType; }
|
||||
|
|
|
@ -72,7 +72,7 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
if (typeObject == null)
|
||||
mIsTypedBy = null;
|
||||
else //TODO CHECK CLASS NAME MATCHES INSTANCE
|
||||
else
|
||||
{
|
||||
if (typeObject.mTypes == null)
|
||||
typeObject.mTypes = new IfcRelDefinesByType(this, typeObject);
|
||||
|
@ -82,19 +82,6 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
|
||||
protected IfcObject() : base() { }
|
||||
protected IfcObject(IfcObject obj, bool replace) : base(obj, replace)
|
||||
{
|
||||
mObjectType = obj.mObjectType;
|
||||
IfcTypeObject typeObject = obj.RelatingType();
|
||||
if (typeObject != null)
|
||||
setRelatingType(typeObject);
|
||||
if(replace)
|
||||
{
|
||||
mIsDeclaredBy = obj.mIsDeclaredBy;
|
||||
mIsDefinedBy.AddRange(obj.mIsDefinedBy);
|
||||
}
|
||||
|
||||
}
|
||||
protected IfcObject(DatabaseIfc db, IfcObject o, DuplicateOptions options) : base(db, o, options)
|
||||
{
|
||||
mObjectType = o.mObjectType;
|
||||
|
@ -103,6 +90,12 @@ namespace GeometryGym.Ifc
|
|||
IsTypedBy = db.Factory.Duplicate(o.mIsTypedBy, options) as IfcRelDefinesByType;
|
||||
}
|
||||
protected IfcObject(DatabaseIfc db) : base(db) { }
|
||||
protected IfcObject(IfcObject obj) : base(obj)
|
||||
{
|
||||
mObjectType = obj.mObjectType;
|
||||
if (obj.mIsTypedBy != null)
|
||||
obj.mIsTypedBy.RelatedObjects.Add(this);
|
||||
}
|
||||
protected override List<T> Extract<T>(Type type)
|
||||
{
|
||||
List<T> result = base.Extract<T>(type);
|
||||
|
@ -159,42 +152,6 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
return result;
|
||||
}
|
||||
internal void SetPredefinedType(string predefinedTypeConstant, string enumName)
|
||||
{
|
||||
if (mDatabase.mRelease < ReleaseVersion.IFC4)
|
||||
ObjectType = predefinedTypeConstant;
|
||||
else
|
||||
{
|
||||
Type type = GetType();
|
||||
PropertyInfo pi = type.GetProperty("PredefinedType");
|
||||
if (pi != null)
|
||||
{
|
||||
Type enumType = pi.PropertyType;
|
||||
if (enumType != null)
|
||||
{
|
||||
FieldInfo fi = enumType.GetField(predefinedTypeConstant);
|
||||
if (fi == null)
|
||||
{
|
||||
ObjectType = predefinedTypeConstant;
|
||||
fi = enumType.GetField("USERDEFINED");
|
||||
}
|
||||
if (fi != null)
|
||||
{
|
||||
int i = (int)fi.GetValue(enumType);
|
||||
object newEnumValue = Enum.ToObject(enumType, i);
|
||||
|
||||
pi.SetValue(this, newEnumValue);
|
||||
}
|
||||
else
|
||||
ObjectType = predefinedTypeConstant;
|
||||
}
|
||||
else
|
||||
ObjectType = predefinedTypeConstant;
|
||||
}
|
||||
else
|
||||
ObjectType = predefinedTypeConstant;
|
||||
}
|
||||
}
|
||||
|
||||
public void MaterialProfile(out IfcMaterial material, out IfcProfileDef profile)
|
||||
{
|
||||
|
@ -302,12 +259,16 @@ namespace GeometryGym.Ifc
|
|||
|
||||
protected IfcObjectDefinition() : base() { }
|
||||
protected IfcObjectDefinition(DatabaseIfc db) : base(db) { }
|
||||
protected IfcObjectDefinition(IfcObjectDefinition objectDefinition, bool replace) : base(objectDefinition, replace)
|
||||
protected IfcObjectDefinition(IfcObjectDefinition obj) : base(obj)
|
||||
{
|
||||
if(replace)
|
||||
{
|
||||
//todo
|
||||
}
|
||||
foreach (IfcRelAssigns assigns in obj.HasAssignments)
|
||||
assigns.RelatedObjects.Add(this);
|
||||
if(obj.mHasContext != null)
|
||||
obj.mHasContext.RelatedDefinitions.Add(this);
|
||||
foreach(IfcRelAssociates associates in obj.HasAssociations)
|
||||
associates.RelatedObjects.Add(this);
|
||||
foreach(IfcRelDefinesByProperties defines in obj.mIsDefinedBy)
|
||||
defines.RelatedObjects.Add(this);
|
||||
}
|
||||
protected IfcObjectDefinition(DatabaseIfc db, IfcObjectDefinition o, DuplicateOptions options) : base(db, o, options)
|
||||
{
|
||||
|
@ -456,8 +417,75 @@ namespace GeometryGym.Ifc
|
|||
if (product != null && product.mContainedInStructure != null)
|
||||
product.mContainedInStructure.RelatedElements.Remove(product);
|
||||
}
|
||||
|
||||
|
||||
|
||||
protected T validPredefinedType<T>(T predefinedType, ReleaseVersion version) where T : struct
|
||||
{
|
||||
T result = predefinedType;
|
||||
Type type = typeof(T);
|
||||
string val = Enum.GetName(type, predefinedType);
|
||||
VersionAddedAttribute versionAddedAttribute = type.GetField(val).GetCustomAttribute<VersionAddedAttribute>();
|
||||
if (versionAddedAttribute != null && versionAddedAttribute.Release > version && version < ReleaseVersion.IFC4X3_RC1)
|
||||
{
|
||||
if (Enum.TryParse<T>("USERDEFINED", out T value))
|
||||
{
|
||||
result = value;
|
||||
if (this is IfcObject obj && string.IsNullOrEmpty(obj.ObjectType))
|
||||
obj.ObjectType = predefinedType.ToString();
|
||||
else if (this is IfcElementType elementType && string.IsNullOrEmpty(elementType.ElementType))
|
||||
elementType.ElementType = predefinedType.ToString();
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
internal void SetPredefinedType(string predefinedTypeConstant)
|
||||
{
|
||||
string objectType = "";
|
||||
Type type = GetType();
|
||||
PropertyInfo propertyInfo = type.GetProperty("mPredefinedType", BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic);
|
||||
FieldInfo fieldInfo = type.GetField("mPredefinedType", BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic);
|
||||
if (fieldInfo != null)
|
||||
{
|
||||
Type enumType = fieldInfo.FieldType;
|
||||
if (enumType != null)
|
||||
{
|
||||
FieldInfo fi = enumType.GetField(predefinedTypeConstant);
|
||||
if (fi == null)
|
||||
{
|
||||
objectType = predefinedTypeConstant;
|
||||
fi = enumType.GetField("USERDEFINED");
|
||||
}
|
||||
else if (mDatabase != null)
|
||||
{
|
||||
VersionAddedAttribute versionAddedAttribute = fi.GetCustomAttribute<VersionAddedAttribute>();
|
||||
if (versionAddedAttribute != null && versionAddedAttribute.Release > mDatabase.mRelease && mDatabase.mRelease < ReleaseVersion.IFC4X3_RC1)
|
||||
{
|
||||
objectType = predefinedTypeConstant;
|
||||
fi = enumType.GetField("USERDEFINED");
|
||||
}
|
||||
}
|
||||
if (fi != null)
|
||||
{
|
||||
int i = (int)fi.GetValue(enumType);
|
||||
object newEnumValue = Enum.ToObject(enumType, i);
|
||||
|
||||
fieldInfo.SetValue(this, newEnumValue);
|
||||
}
|
||||
}
|
||||
}
|
||||
if(!string.IsNullOrEmpty(objectType))
|
||||
{
|
||||
if (this is IfcObject o && string.IsNullOrEmpty(o.ObjectType))
|
||||
o.ObjectType = objectType;
|
||||
else if (this is IfcElementType elementType && string.IsNullOrEmpty(elementType.ElementType))
|
||||
elementType.ElementType = objectType;
|
||||
}
|
||||
if (this is IfcObject obj && mDatabase != null && mDatabase.mRelease < ReleaseVersion.IFC4)
|
||||
{
|
||||
if (string.IsNullOrEmpty(obj.mObjectType))
|
||||
obj.mObjectType = predefinedTypeConstant;
|
||||
}
|
||||
}
|
||||
|
||||
internal IfcMaterialSelect RelatedMaterial() { return (mMaterialSelectIFC4 != null ? mMaterialSelectIFC4 : GetMaterialSelect()); }
|
||||
protected virtual IfcMaterialSelect GetMaterialSelect()
|
||||
{
|
||||
|
@ -673,16 +701,25 @@ namespace GeometryGym.Ifc
|
|||
|
||||
internal override sealed bool isDuplicate(BaseClassIfc e, double tol)
|
||||
{
|
||||
return isDuplicate(e, false, tol);
|
||||
return isDuplicate(e, new OptionsTestDuplicate(tol));
|
||||
}
|
||||
internal virtual bool isDuplicate(BaseClassIfc e, bool includeAggregated, double tol)
|
||||
internal class OptionsTestDuplicate
|
||||
{
|
||||
public bool CheckRelatedObjects = true;
|
||||
public double Tolerance = 1e-5;
|
||||
public OptionsTestDuplicate(double tol)
|
||||
{
|
||||
Tolerance = tol;
|
||||
}
|
||||
}
|
||||
internal virtual bool isDuplicate(BaseClassIfc e, OptionsTestDuplicate options)
|
||||
{
|
||||
IfcObjectDefinition objDef = e as IfcObjectDefinition;
|
||||
if (objDef == null)
|
||||
return false;
|
||||
if (base.isDuplicate(e, tol))
|
||||
if (base.isDuplicate(e, options.Tolerance))
|
||||
{
|
||||
if (includeAggregated)
|
||||
if (options.CheckRelatedObjects)
|
||||
{
|
||||
IEnumerable<IfcObjectDefinition> objDefs = IsDecomposedBy.SelectMany(x => x.RelatedObjects);
|
||||
IEnumerable<IfcObjectDefinition> dupObjDefs = objDef.IsDecomposedBy.SelectMany(x => x.RelatedObjects);
|
||||
|
@ -693,7 +730,7 @@ namespace GeometryGym.Ifc
|
|||
if (!dictObjDefs.ContainsKey(od.GlobalId))
|
||||
return false;
|
||||
IfcObjectDefinition dup = dictObjDefs[od.GlobalId];
|
||||
if (!od.isDuplicate(dup, tol))
|
||||
if (!od.isDuplicate(dup, options.Tolerance))
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -708,7 +745,7 @@ namespace GeometryGym.Ifc
|
|||
foreach (IfcRelNests nests in nestedBy)
|
||||
{
|
||||
IfcObjectDefinition firstOther = nests.RelatedObjects.First();
|
||||
if (firstOther.isDuplicate(firstRelated, tol))
|
||||
if (firstOther.isDuplicate(firstRelated, options.Tolerance))
|
||||
{
|
||||
testDuplicate = nests;
|
||||
break;
|
||||
|
@ -723,7 +760,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
IfcObjectDefinition od1 = relNests.RelatedObjects[icounter];
|
||||
IfcObjectDefinition od2 = testDuplicate.RelatedObjects[icounter];
|
||||
if (!od1.isDuplicate(od2, tol))
|
||||
if (!od1.isDuplicate(od2, options.Tolerance))
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
@ -830,12 +867,12 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcOccupant : IfcActor
|
||||
{
|
||||
internal IfcOccupantTypeEnum mPredefinedType = IfcOccupantTypeEnum.NOTDEFINED;// : OPTIONAL IfcOccupantTypeEnum;
|
||||
public IfcOccupantTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcOccupantTypeEnum mPredefinedType = IfcOccupantTypeEnum.NOTDEFINED;// : OPTIONAL IfcOccupantTypeEnum;
|
||||
public IfcOccupantTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcOccupantTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcOccupant() : base() { }
|
||||
internal IfcOccupant(DatabaseIfc db, IfcOccupant o, DuplicateOptions options) : base(db, o, options) { mPredefinedType = o.mPredefinedType; }
|
||||
public IfcOccupant(IfcActorSelect a, IfcOccupantTypeEnum type) : base(a) { mPredefinedType = type; }
|
||||
internal IfcOccupant(DatabaseIfc db, IfcOccupant o, DuplicateOptions options) : base(db, o, options) { PredefinedType = o.PredefinedType; }
|
||||
public IfcOccupant(IfcActorSelect a, IfcOccupantTypeEnum type) : base(a) { PredefinedType = type; }
|
||||
}
|
||||
public abstract partial class IfcOffsetCurve : IfcCurve //ABSTRACT SUPERTYPE OF(ONEOF(IfcOffsetCurve2D, IfcOffsetCurve3D, IfcOffsetCurveByDistances))
|
||||
{
|
||||
|
@ -891,8 +928,8 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcOneDirectionRepeatFactor : IfcGeometricRepresentationItem // DEPRECATED IFC4 SUPERTYPE OF (IfcTwoDirectionRepeatFactor)
|
||||
{
|
||||
internal int mRepeatFactor;// : IfcVector
|
||||
public IfcVector RepeatFactor { get { return mDatabase[mRepeatFactor] as IfcVector; } set { mRepeatFactor = value.mIndex; } }
|
||||
internal IfcVector mRepeatFactor;// : IfcVector
|
||||
public IfcVector RepeatFactor { get { return mRepeatFactor; } set { mRepeatFactor = value; } }
|
||||
|
||||
internal IfcOneDirectionRepeatFactor() : base() { }
|
||||
internal IfcOneDirectionRepeatFactor(DatabaseIfc db, IfcOneDirectionRepeatFactor f, DuplicateOptions options) : base(db, f, options) { RepeatFactor = db.Factory.Duplicate(f.RepeatFactor) as IfcVector; }
|
||||
|
@ -934,17 +971,17 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcOpeningElement : IfcFeatureElementSubtraction //SUPERTYPE OF(IfcOpeningStandardCase)
|
||||
{
|
||||
internal IfcOpeningElementTypeEnum mPredefinedType = IfcOpeningElementTypeEnum.NOTDEFINED;// : OPTIONAL IfcOpeningElementTypeEnum; //IFC4
|
||||
private IfcOpeningElementTypeEnum mPredefinedType = IfcOpeningElementTypeEnum.NOTDEFINED;// : OPTIONAL IfcOpeningElementTypeEnum; //IFC4
|
||||
//INVERSE
|
||||
internal SET<IfcRelFillsElement> mHasFillings = new SET<IfcRelFillsElement>();
|
||||
|
||||
public IfcOpeningElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcOpeningElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcOpeningElementTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
public SET<IfcRelFillsElement> HasFillings { get { return mHasFillings; } }
|
||||
|
||||
internal IfcOpeningElement() : base() { }
|
||||
internal IfcOpeningElement(DatabaseIfc db, IfcOpeningElement e, DuplicateOptions options) : base(db, e, options)
|
||||
{
|
||||
mPredefinedType = e.mPredefinedType;
|
||||
PredefinedType = e.PredefinedType;
|
||||
if (options.DuplicateDownstream)
|
||||
{
|
||||
foreach (IfcRelFillsElement fills in e.HasFillings)
|
||||
|
@ -1070,10 +1107,10 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcOrganizationRelationship : IfcResourceLevelRelationship //IFC4
|
||||
{
|
||||
private int mRelatingOrganization;// : IfcOrganization;
|
||||
private IfcOrganization mRelatingOrganization;// : IfcOrganization;
|
||||
private SET<IfcOrganization> mRelatedOrganizations = new SET<IfcOrganization>(); // : SET [1:?] OF IfcResourceObjectSelect;
|
||||
|
||||
public IfcOrganization RelatingOrganization { get { return mDatabase[mRelatingOrganization] as IfcOrganization; } set { mRelatingOrganization = value.mIndex; } }
|
||||
public IfcOrganization RelatingOrganization { get { return mRelatingOrganization; } set { mRelatingOrganization = value; } }
|
||||
public SET<IfcOrganization> RelatedOrganizations { get { return mRelatedOrganizations; } }
|
||||
|
||||
internal IfcOrganizationRelationship() : base() { }
|
||||
|
@ -1085,7 +1122,7 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public IfcOrganizationRelationship(IfcOrganization relating, IfcOrganization related) : this(relating, new List<IfcOrganization>() { related }) { }
|
||||
public IfcOrganizationRelationship(IfcOrganization relating, List<IfcOrganization> related)
|
||||
: base(relating.mDatabase) { mRelatingOrganization = relating.mIndex; RelatedOrganizations.AddRange(related); }
|
||||
: base(relating.mDatabase) { mRelatingOrganization = relating; RelatedOrganizations.AddRange(related); }
|
||||
|
||||
protected override void initialize()
|
||||
{
|
||||
|
@ -1134,6 +1171,7 @@ namespace GeometryGym.Ifc
|
|||
VerticalAxisDirection = verticalAxisDirection;
|
||||
}
|
||||
}
|
||||
public interface IfcOrientationSelect : IBaseClassIfc { } //= SELECT(IfcPlaneAngleMeasure, IfcDirection)
|
||||
[Serializable]
|
||||
public partial class IfcOrientedEdge : IfcEdge
|
||||
{
|
||||
|
@ -1169,22 +1207,22 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcOutlet : IfcFlowTerminal //IFC4
|
||||
{
|
||||
internal IfcOutletTypeEnum mPredefinedType = IfcOutletTypeEnum.NOTDEFINED;// OPTIONAL : IfcOutletTypeEnum;
|
||||
public IfcOutletTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcOutletTypeEnum mPredefinedType = IfcOutletTypeEnum.NOTDEFINED;// OPTIONAL : IfcOutletTypeEnum;
|
||||
public IfcOutletTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcOutletTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcOutlet() : base() { }
|
||||
internal IfcOutlet(DatabaseIfc db, IfcOutlet o, DuplicateOptions options) : base(db,o, options) { mPredefinedType = o.mPredefinedType; }
|
||||
internal IfcOutlet(DatabaseIfc db, IfcOutlet o, DuplicateOptions options) : base(db,o, options) { PredefinedType = o.PredefinedType; }
|
||||
public IfcOutlet(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcOutletType : IfcFlowTerminalType
|
||||
{
|
||||
internal IfcOutletTypeEnum mPredefinedType = IfcOutletTypeEnum.NOTDEFINED;// : IfcOutletTypeEnum;
|
||||
public IfcOutletTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcOutletTypeEnum mPredefinedType = IfcOutletTypeEnum.NOTDEFINED;// : IfcOutletTypeEnum;
|
||||
public IfcOutletTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcOutletTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcOutletType() : base() { }
|
||||
internal IfcOutletType(DatabaseIfc db, IfcOutletType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcOutletType(DatabaseIfc m, string name, IfcOutletTypeEnum t) : base(m) { Name = name; mPredefinedType = t; }
|
||||
internal IfcOutletType(DatabaseIfc db, IfcOutletType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcOutletType(DatabaseIfc db, string name, IfcOutletTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcOwnerHistory : BaseClassIfc
|
||||
|
|
|
@ -51,47 +51,45 @@ namespace GeometryGym.Ifc
|
|||
if (p.mPosition != null)
|
||||
Position = db.Factory.Duplicate(p.Position) as IfcAxis2Placement2D;
|
||||
}
|
||||
protected IfcParameterizedProfileDef(DatabaseIfc m, string name) : base(m, name)
|
||||
protected IfcParameterizedProfileDef(DatabaseIfc db, string name) : base(db, name)
|
||||
{
|
||||
if (mDatabase != null)
|
||||
{
|
||||
if (mDatabase.mModelView == ModelView.Ifc4Reference)
|
||||
throw new Exception("Invalid Model View for IfcParameterizedProfileDef : " + m.ModelView.ToString());
|
||||
if (mDatabase.mRelease < ReleaseVersion.IFC4)
|
||||
Position = mDatabase.Factory.Origin2dPlace;
|
||||
}
|
||||
if (db.mModelView == ModelView.Ifc4Reference)
|
||||
throw new Exception("Invalid Model View for IfcParameterizedProfileDef : " + db.ModelView.ToString());
|
||||
if (db.mRelease < ReleaseVersion.IFC4)
|
||||
Position = db.Factory.Origin2dPlace;
|
||||
}
|
||||
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcPath : IfcTopologicalRepresentationItem
|
||||
{
|
||||
internal List<int> mEdgeList = new List<int>();// : SET [1:?] OF IfcOrientedEdge;
|
||||
public ReadOnlyCollection<IfcOrientedEdge> EdgeList { get { return new ReadOnlyCollection<IfcOrientedEdge>(mEdgeList.ConvertAll(x => mDatabase[x] as IfcOrientedEdge)); } }
|
||||
internal SET<IfcOrientedEdge> mEdgeList = new SET<IfcOrientedEdge>();// : SET [1:?] OF IfcOrientedEdge;
|
||||
public SET<IfcOrientedEdge> EdgeList { get { return mEdgeList; } }
|
||||
|
||||
internal IfcPath() : base() { }
|
||||
internal IfcPath(DatabaseIfc db, IfcPath p, DuplicateOptions options) : base(db, p, options) { p.EdgeList.ToList().ForEach(x => addEdge(db.Factory.Duplicate(x) as IfcOrientedEdge)); }
|
||||
public IfcPath(IfcOrientedEdge edge) : base(edge.mDatabase) { mEdgeList.Add(edge.mIndex); }
|
||||
public IfcPath(List<IfcOrientedEdge> edges) : base(edges[0].mDatabase) { edges.ForEach(x => addEdge(x)); }
|
||||
|
||||
internal void addEdge(IfcOrientedEdge edge) { mEdgeList.Add(edge.mIndex); }
|
||||
internal IfcPath(DatabaseIfc db, IfcPath p, DuplicateOptions options) : base(db, p, options)
|
||||
{
|
||||
EdgeList.AddRange(p.EdgeList.Select(x => db.Factory.Duplicate(x)));
|
||||
}
|
||||
public IfcPath(IfcOrientedEdge edge) : base(edge.mDatabase) { mEdgeList.Add(edge); }
|
||||
public IfcPath(IEnumerable<IfcOrientedEdge> edges) : base(edges.First().mDatabase) { mEdgeList.AddRange(edges); }
|
||||
}
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X3)]
|
||||
public partial class IfcPavement : IfcBuiltElement
|
||||
{
|
||||
private IfcPavementTypeEnum mPredefinedType = IfcPavementTypeEnum.NOTDEFINED; //: OPTIONAL IfcPavementTypeEnum;
|
||||
public IfcPavementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcPavementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcPavementTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcPavement() : base() { }
|
||||
public IfcPavement(DatabaseIfc db) : base(db) { }
|
||||
public IfcPavement(DatabaseIfc db, IfcPavement pavement, DuplicateOptions options) : base(db, pavement, options) { PredefinedType = pavement.PredefinedType; }
|
||||
public IfcPavement(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
}
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X3)]
|
||||
public partial class IfcPavementType : IfcBuiltElementType
|
||||
{
|
||||
private IfcPavementTypeEnum mPredefinedType = IfcPavementTypeEnum.NOTDEFINED; //: IfcPavementTypeEnum;
|
||||
public IfcPavementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcPavementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcPavementTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcPavementType() : base() { }
|
||||
public IfcPavementType(DatabaseIfc db, IfcPavementType pavementType, DuplicateOptions options) : base(db, pavementType, options) { PredefinedType = pavementType.PredefinedType; }
|
||||
|
@ -115,7 +113,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
internal string mLifeCyclePhase;// : IfcLabel;
|
||||
private IfcPerformanceHistoryTypeEnum mPredefinedType = IfcPerformanceHistoryTypeEnum.NOTDEFINED;// OPTIONAL : IfcPerformanceHistoryTypeEnum;
|
||||
public IfcPerformanceHistoryTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcPerformanceHistoryTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcPerformanceHistoryTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public string LifeCyclePhase { get { return mLifeCyclePhase; } set { mLifeCyclePhase = value; } }// : IfcLabel;
|
||||
internal IfcPerformanceHistory() : base() { }
|
||||
|
@ -189,12 +187,6 @@ namespace GeometryGym.Ifc
|
|||
Roles.AddRange(p.Roles.ConvertAll(x => db.Factory.Duplicate(x) as IfcActorRole));
|
||||
Addresses.AddRange(p.Addresses.ConvertAll(x => db.Factory.Duplicate(x) as IfcAddress));
|
||||
}
|
||||
internal IfcPerson(DatabaseIfc m, string id, string familyname, string givenName) : base(m)
|
||||
{
|
||||
Identification = id;
|
||||
FamilyName = familyname;
|
||||
GivenName = givenName;
|
||||
}
|
||||
protected override void initialize()
|
||||
{
|
||||
base.initialize();
|
||||
|
@ -219,9 +211,6 @@ namespace GeometryGym.Ifc
|
|||
r.RelatedResourceObjects.Remove(this);
|
||||
}
|
||||
}
|
||||
public void AddMiddleName(string name) { if (!string.IsNullOrEmpty(name)) mMiddleNames.Add(ParserIfc.Encode(name)); }
|
||||
public void AddPrefixTitle(string title) { if (!string.IsNullOrEmpty(title)) mPrefixTitles.Add(ParserIfc.Encode(title)); }
|
||||
public void AddSuffixTitle(string title) { if (!string.IsNullOrEmpty(title)) mSuffixTitles.Add(ParserIfc.Encode(title)); }
|
||||
public void AddConstraintRelationShip(IfcResourceConstraintRelationship constraintRelationship) { mHasConstraintRelationships.Add(constraintRelationship); }
|
||||
}
|
||||
[Serializable]
|
||||
|
@ -352,11 +341,11 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public abstract partial class IfcPhysicalSimpleQuantity : IfcPhysicalQuantity //ABSTRACT SUPERTYPE OF (ONEOF (IfcQuantityArea ,IfcQuantityCount ,IfcQuantityLength ,IfcQuantityTime ,IfcQuantityVolume ,IfcQuantityWeight))
|
||||
{
|
||||
internal int mUnit = 0;// : OPTIONAL IfcNamedUnit;
|
||||
public IfcNamedUnit Unit { get { return mDatabase[mUnit] as IfcNamedUnit; } set { mUnit = (value == null ? 0 : value.mIndex); } }
|
||||
internal IfcNamedUnit mUnit = null;// : OPTIONAL IfcNamedUnit;
|
||||
public IfcNamedUnit Unit { get { return mUnit; } set { mUnit = value; } }
|
||||
|
||||
protected IfcPhysicalSimpleQuantity() : base() { }
|
||||
protected IfcPhysicalSimpleQuantity(DatabaseIfc db, IfcPhysicalSimpleQuantity q) : base(db, q) { if (q.mUnit > 0) Unit = db.Factory.Duplicate(q.Unit) as IfcNamedUnit; }
|
||||
protected IfcPhysicalSimpleQuantity(DatabaseIfc db, IfcPhysicalSimpleQuantity q) : base(db, q) { if (q.mUnit != null) Unit = db.Factory.Duplicate(q.Unit); }
|
||||
protected IfcPhysicalSimpleQuantity(DatabaseIfc db, string name) : base(db, name) { }
|
||||
|
||||
public abstract IfcMeasureValue MeasureValue { get; }
|
||||
|
@ -364,73 +353,73 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcPile : IfcDeepFoundation
|
||||
{
|
||||
internal IfcPileTypeEnum mPredefinedType = IfcPileTypeEnum.NOTDEFINED;// OPTIONAL : IfcPileTypeEnum;
|
||||
private IfcPileTypeEnum mPredefinedType = IfcPileTypeEnum.NOTDEFINED;// OPTIONAL : IfcPileTypeEnum;
|
||||
internal IfcPileConstructionEnum mConstructionType = IfcPileConstructionEnum.NOTDEFINED;// : OPTIONAL IfcPileConstructionEnum; IFC4 Deprecated.
|
||||
|
||||
public IfcPileTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcPileTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcPileTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
public IfcPileConstructionEnum ConstructionType { get { return mConstructionType; } set { mConstructionType = value; } }
|
||||
|
||||
internal IfcPile() : base() { }
|
||||
internal IfcPile(DatabaseIfc db, IfcPile p, DuplicateOptions options) : base(db, p, options) { mPredefinedType = p.mPredefinedType; mConstructionType = p.mConstructionType; }
|
||||
internal IfcPile(DatabaseIfc db, IfcPile p, DuplicateOptions options) : base(db, p, options) { PredefinedType = p.PredefinedType; mConstructionType = p.mConstructionType; }
|
||||
public IfcPile(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcPileType : IfcDeepFoundationType
|
||||
{
|
||||
internal IfcPileTypeEnum mPredefinedType = IfcPileTypeEnum.NOTDEFINED;
|
||||
public IfcPileTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcPileTypeEnum mPredefinedType = IfcPileTypeEnum.NOTDEFINED;
|
||||
public IfcPileTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcPileTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcPileType() : base() { }
|
||||
internal IfcPileType(DatabaseIfc db, IfcPileType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcPileType(DatabaseIfc db, string name, IfcPileTypeEnum type) : base(db) { Name = name; mPredefinedType = type; }
|
||||
public IfcPileType(string name, IfcMaterialProfileSet mps, IfcPileTypeEnum type) : base(mps.mDatabase) { Name = name; mPredefinedType = type; MaterialSelect = mps; }
|
||||
internal IfcPileType(DatabaseIfc db, IfcPileType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcPileType(DatabaseIfc db, string name, IfcPileTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
public IfcPileType(string name, IfcMaterialProfileSet mps, IfcPileTypeEnum type) : base(mps.mDatabase) { Name = name; PredefinedType = type; MaterialSelect = mps; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcPipeFitting : IfcFlowFitting //IFC4
|
||||
{
|
||||
internal IfcPipeFittingTypeEnum mPredefinedType = IfcPipeFittingTypeEnum.NOTDEFINED; // : OPTIONAL IfcPipeFittingTypeEnum;
|
||||
public IfcPipeFittingTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcPipeFittingTypeEnum mPredefinedType = IfcPipeFittingTypeEnum.NOTDEFINED; // : OPTIONAL IfcPipeFittingTypeEnum;
|
||||
public IfcPipeFittingTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcPipeFittingTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcPipeFitting() : base() { }
|
||||
internal IfcPipeFitting(DatabaseIfc db, IfcPipeFitting f, DuplicateOptions options) : base(db, f, options) { mPredefinedType = f.mPredefinedType; }
|
||||
internal IfcPipeFitting(DatabaseIfc db, IfcPipeFitting f, DuplicateOptions options) : base(db, f, options) { PredefinedType = f.PredefinedType; }
|
||||
public IfcPipeFitting(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcPipeFittingType : IfcFlowFittingType
|
||||
{
|
||||
internal IfcPipeFittingTypeEnum mPredefinedType = IfcPipeFittingTypeEnum.NOTDEFINED;// : IfcPipeFittingTypeEnum;
|
||||
public IfcPipeFittingTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcPipeFittingTypeEnum mPredefinedType = IfcPipeFittingTypeEnum.NOTDEFINED;// : IfcPipeFittingTypeEnum;
|
||||
public IfcPipeFittingTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcPipeFittingTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcPipeFittingType() : base() { }
|
||||
internal IfcPipeFittingType(DatabaseIfc db, IfcPipeFittingType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcPipeFittingType(DatabaseIfc db, string name, IfcPipeFittingTypeEnum type) : base(db) { Name = name; mPredefinedType = type; }
|
||||
internal IfcPipeFittingType(DatabaseIfc db, IfcPipeFittingType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcPipeFittingType(DatabaseIfc db, string name, IfcPipeFittingTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
public IfcPipeFittingType(DatabaseIfc db, string name, double radius, double bendAngle) : base(db)
|
||||
{
|
||||
Name = name;
|
||||
Pset_PipeFittingTypeBend pset = new Pset_PipeFittingTypeBend(this) { BendRadius = radius, BendAngle = bendAngle };
|
||||
mPredefinedType = IfcPipeFittingTypeEnum.BEND;
|
||||
PredefinedType = IfcPipeFittingTypeEnum.BEND;
|
||||
}
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcPipeSegment : IfcFlowSegment //IFC4
|
||||
{
|
||||
internal IfcPipeSegmentTypeEnum mPredefinedType = IfcPipeSegmentTypeEnum.NOTDEFINED;// OPTIONAL : IfcPipeSegmentTypeEnum;
|
||||
public IfcPipeSegmentTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcPipeSegmentTypeEnum mPredefinedType = IfcPipeSegmentTypeEnum.NOTDEFINED;// OPTIONAL : IfcPipeSegmentTypeEnum;
|
||||
public IfcPipeSegmentTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcPipeSegmentTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcPipeSegment() : base() { }
|
||||
internal IfcPipeSegment(DatabaseIfc db, IfcPipeSegment s, DuplicateOptions options) : base(db, s, options) { mPredefinedType = s.mPredefinedType; }
|
||||
internal IfcPipeSegment(DatabaseIfc db, IfcPipeSegment s, DuplicateOptions options) : base(db, s, options) { PredefinedType = s.PredefinedType; }
|
||||
public IfcPipeSegment(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcPipeSegmentType : IfcFlowSegmentType
|
||||
{
|
||||
internal IfcPipeSegmentTypeEnum mPredefinedType = IfcPipeSegmentTypeEnum.NOTDEFINED;// : IfcPipeSegmentTypeEnum;
|
||||
public IfcPipeSegmentTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcPipeSegmentTypeEnum mPredefinedType = IfcPipeSegmentTypeEnum.NOTDEFINED;// : IfcPipeSegmentTypeEnum;
|
||||
public IfcPipeSegmentTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcPipeSegmentTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcPipeSegmentType() : base() { }
|
||||
internal IfcPipeSegmentType(DatabaseIfc db, IfcPipeSegmentType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcPipeSegmentType(DatabaseIfc m, string name, IfcPipeSegmentTypeEnum t) : base(m) { Name = name; mPredefinedType = t; }
|
||||
internal IfcPipeSegmentType(DatabaseIfc db, IfcPipeSegmentType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcPipeSegmentType(DatabaseIfc db, string name, IfcPipeSegmentTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcPixelTexture : IfcSurfaceTexture
|
||||
|
@ -463,11 +452,11 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcPlanarBox : IfcPlanarExtent
|
||||
{
|
||||
internal int mPlacement;// : IfcAxis2Placement;
|
||||
public IfcAxis2Placement Placement { get { return mDatabase[mPlacement] as IfcAxis2Placement; } set { mPlacement = value.Index; } }
|
||||
internal IfcAxis2Placement mPlacement;// : IfcAxis2Placement;
|
||||
public IfcAxis2Placement Placement { get { return mPlacement; } set { mPlacement = value; } }
|
||||
|
||||
internal IfcPlanarBox() : base() { }
|
||||
internal IfcPlanarBox(DatabaseIfc db, IfcPlanarBox b, DuplicateOptions options) : base(db, b, options) { Placement = db.Factory.Duplicate(b.mDatabase[b.mPlacement]) as IfcAxis2Placement; }
|
||||
internal IfcPlanarBox(DatabaseIfc db, IfcPlanarBox b, DuplicateOptions options) : base(db, b, options) { Placement = db.Factory.Duplicate<IfcAxis2Placement>(b.mPlacement); }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcPlanarExtent : IfcGeometricRepresentationItem
|
||||
|
@ -490,11 +479,11 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcPlate : IfcBuiltElement
|
||||
{
|
||||
internal IfcPlateTypeEnum mPredefinedType = IfcPlateTypeEnum.NOTDEFINED;//: OPTIONAL IfcPlateTypeEnum;
|
||||
public IfcPlateTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcPlateTypeEnum mPredefinedType = IfcPlateTypeEnum.NOTDEFINED;//: OPTIONAL IfcPlateTypeEnum;
|
||||
public IfcPlateTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcPlateTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcPlate() : base() { }
|
||||
internal IfcPlate(DatabaseIfc db, IfcPlate p, DuplicateOptions options) : base(db, p, options) { mPredefinedType = p.mPredefinedType; }
|
||||
internal IfcPlate(DatabaseIfc db, IfcPlate p, DuplicateOptions options) : base(db, p, options) { PredefinedType = p.PredefinedType; }
|
||||
public IfcPlate(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
public IfcPlate(IfcProduct host, IfcMaterialProfileSetUsage profile, IfcAxis2Placement3D placement, double length) : base(host, profile, placement,length) { }
|
||||
}
|
||||
|
@ -508,12 +497,12 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcPlateType : IfcBuiltElementType
|
||||
{
|
||||
internal IfcPlateTypeEnum mPredefinedType = IfcPlateTypeEnum.NOTDEFINED;
|
||||
public IfcPlateTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcPlateTypeEnum mPredefinedType = IfcPlateTypeEnum.NOTDEFINED;
|
||||
public IfcPlateTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcPlateTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcPlateType() : base() { }
|
||||
internal IfcPlateType(DatabaseIfc db, IfcPlateType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcPlateType(DatabaseIfc m, string name, IfcPlateTypeEnum type) : base(m) { Name = name; mPredefinedType = type; }
|
||||
internal IfcPlateType(DatabaseIfc db, IfcPlateType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcPlateType(DatabaseIfc db, string name, IfcPlateTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
public IfcPlateType(string name, IfcMaterialLayerSet mls, IfcPlateTypeEnum type) : this(mls.mDatabase, name, type) { MaterialSelect = mls; }
|
||||
}
|
||||
[Serializable]
|
||||
|
@ -569,10 +558,10 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcPointOnCurve : IfcPoint
|
||||
{
|
||||
internal int mBasisCurve;// : IfcCurve;
|
||||
internal IfcCurve mBasisCurve;// : IfcCurve;
|
||||
internal double mPointParameter;// : IfcParameterValue;
|
||||
|
||||
public IfcCurve BasisCurve { get { return mDatabase[mBasisCurve] as IfcCurve; } set { mBasisCurve = value.mIndex; } }
|
||||
public IfcCurve BasisCurve { get { return mBasisCurve; } set { mBasisCurve = value; } }
|
||||
public double PointParameter { get { return mPointParameter; } set { mPointParameter = value; } }
|
||||
|
||||
internal IfcPointOnCurve() : base() { }
|
||||
|
@ -581,15 +570,15 @@ namespace GeometryGym.Ifc
|
|||
BasisCurve = p.BasisCurve.Duplicate(db, options) as IfcCurve;
|
||||
mPointParameter = p.mPointParameter;
|
||||
}
|
||||
public IfcPointOnCurve(DatabaseIfc m, IfcCurve c, double p) : base(m) { mBasisCurve = c.mIndex; mPointParameter = p; }
|
||||
public IfcPointOnCurve(IfcCurve c, double p) : base(c.Database) { mBasisCurve = c; mPointParameter = p; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcPointOnSurface : IfcPoint
|
||||
{
|
||||
internal int mBasisSurface;// : IfcSurface;
|
||||
internal IfcSurface mBasisSurface;// : IfcSurface;
|
||||
internal double mPointParameterU, mPointParameterV;// : IfcParameterValue;
|
||||
|
||||
public IfcSurface BasisSurface { get { return mDatabase[mBasisSurface] as IfcSurface; } set { mBasisSurface = value.mIndex; } }
|
||||
public IfcSurface BasisSurface { get { return mBasisSurface; } set { mBasisSurface = value; } }
|
||||
|
||||
internal IfcPointOnSurface() : base() { }
|
||||
internal IfcPointOnSurface(DatabaseIfc db, IfcPointOnSurface p, DuplicateOptions options) : base(db, p, options)
|
||||
|
@ -603,11 +592,11 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcPolygonalBoundedHalfSpace : IfcHalfSpaceSolid
|
||||
{
|
||||
internal int mPosition;// : IfcAxis2Placement3D;
|
||||
internal int mPolygonalBoundary;// : IfcBoundedCurve;
|
||||
internal IfcAxis2Placement3D mPosition;// : IfcAxis2Placement3D;
|
||||
internal IfcBoundedCurve mPolygonalBoundary;// : IfcBoundedCurve;
|
||||
|
||||
public IfcAxis2Placement3D Position { get { return mDatabase[mPosition] as IfcAxis2Placement3D; } set { mPosition = value.mIndex; } }
|
||||
public IfcBoundedCurve PolygonalBoundary { get { return mDatabase[mPolygonalBoundary] as IfcBoundedCurve; } set { mPolygonalBoundary = value.mIndex; } }
|
||||
public IfcAxis2Placement3D Position { get { return mPosition; } set { mPosition = value; } }
|
||||
public IfcBoundedCurve PolygonalBoundary { get { return mPolygonalBoundary; } set { mPolygonalBoundary = value; } }
|
||||
|
||||
internal IfcPolygonalBoundedHalfSpace() : base() { }
|
||||
internal IfcPolygonalBoundedHalfSpace(DatabaseIfc db, IfcPolygonalBoundedHalfSpace s, DuplicateOptions options) : base(db, s, options) { Position = db.Factory.Duplicate(s.Position) as IfcAxis2Placement3D; PolygonalBoundary = db.Factory.Duplicate(s.PolygonalBoundary) as IfcBoundedCurve; }
|
||||
|
@ -1032,20 +1021,20 @@ namespace GeometryGym.Ifc
|
|||
internal IfcProcedureTypeEnum mPredefinedType;// : IfcProcedureTypeEnum;
|
||||
internal string mUserDefinedProcedureType = "";// : OPTIONAL IfcLabel;
|
||||
|
||||
public IfcProcedureTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcProcedureTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcProcedureTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcProcedure() : base() { }
|
||||
internal IfcProcedure(DatabaseIfc db, IfcProcedure p, DuplicateOptions options) : base(db, p, options) { mPredefinedType = p.mPredefinedType; mUserDefinedProcedureType = p.mUserDefinedProcedureType; }
|
||||
internal IfcProcedure(DatabaseIfc db, IfcProcedure p, DuplicateOptions options) : base(db, p, options) { PredefinedType = p.PredefinedType; mUserDefinedProcedureType = p.mUserDefinedProcedureType; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcProcedureType : IfcTypeProcess //IFC4
|
||||
{
|
||||
internal IfcProcedureTypeEnum mPredefinedType = IfcProcedureTypeEnum.NOTDEFINED;// : IfcProcedureTypeEnum;
|
||||
public IfcProcedureTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcProcedureTypeEnum mPredefinedType = IfcProcedureTypeEnum.NOTDEFINED;// : IfcProcedureTypeEnum;
|
||||
public IfcProcedureTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcProcedureTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcProcedureType() : base() { }
|
||||
internal IfcProcedureType(DatabaseIfc db, IfcProcedureType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcProcedureType(DatabaseIfc m, string name, IfcProcedureTypeEnum t) : base(m) { Name = name; mPredefinedType = t; }
|
||||
internal IfcProcedureType(DatabaseIfc db, IfcProcedureType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcProcedureType(DatabaseIfc db, string name, IfcProcedureTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Serializable]
|
||||
public abstract partial class IfcProcess : IfcObject, IfcProcessSelect // ABSTRACT SUPERTYPE OF (ONEOF (IfcProcedure ,IfcTask))
|
||||
|
@ -1064,6 +1053,11 @@ namespace GeometryGym.Ifc
|
|||
public SET<IfcRelAssignsToProcess> OperatesOn { get { return mOperatesOn; } }
|
||||
|
||||
protected IfcProcess() : base() { }
|
||||
protected IfcProcess(IfcProcess process) : base(process)
|
||||
{
|
||||
Identification = process.Identification;
|
||||
LongDescription = process.LongDescription;
|
||||
}
|
||||
protected IfcProcess(DatabaseIfc db, IfcProcess p, DuplicateOptions options ) : base(db, p, options)
|
||||
{
|
||||
mIdentification = p.mIdentification;
|
||||
|
@ -1080,11 +1074,6 @@ namespace GeometryGym.Ifc
|
|||
if (mDatabase.mModelView != ModelView.Ifc4NotAssigned && mDatabase.mModelView != ModelView.Ifc2x3NotAssigned)
|
||||
throw new Exception("Invalid Model View for IfcProcess : " + db.ModelView.ToString());
|
||||
}
|
||||
protected IfcProcess(IfcProcess process) : base(process, false)
|
||||
{
|
||||
mIdentification = process.mIdentification;
|
||||
mLongDescription = process.mLongDescription;
|
||||
}
|
||||
public bool AddOperatesOn(IfcObjectDefinition related)
|
||||
{
|
||||
if (mOperatesOn.Count == 0)
|
||||
|
@ -1171,16 +1160,6 @@ namespace GeometryGym.Ifc
|
|||
internal IfcObjectPlacement mContainerCommonPlacement = null; //GeometryGym common Placement reference for aggregated items
|
||||
|
||||
protected IfcProduct() : base() { }
|
||||
protected IfcProduct(IfcProduct product, bool replace) : base(product, replace)
|
||||
{
|
||||
ObjectPlacement = product.ObjectPlacement;
|
||||
Representation = product.Representation;
|
||||
if(replace)
|
||||
{
|
||||
mReferencedBy = product.mReferencedBy;
|
||||
mContainedInStructure = product.mContainedInStructure;
|
||||
}
|
||||
}
|
||||
protected IfcProduct(IfcProductDefinitionShape rep) : base(rep.mDatabase) { Representation = rep; }
|
||||
protected IfcProduct(IfcObjectPlacement placement) : base(placement.mDatabase) { ObjectPlacement = placement; }
|
||||
protected IfcProduct(IfcObjectPlacement placement, IfcProductDefinitionShape rep) : base(placement == null ? rep.mDatabase : placement.mDatabase)
|
||||
|
@ -1357,17 +1336,17 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
return null;
|
||||
}
|
||||
internal override bool isDuplicate(BaseClassIfc e, bool includeAggregated, double tol)
|
||||
internal override bool isDuplicate(BaseClassIfc e, OptionsTestDuplicate options)
|
||||
{
|
||||
IfcProduct product = e as IfcProduct;
|
||||
if (e == null)
|
||||
return false;
|
||||
if (base.isDuplicate(e, includeAggregated, tol))
|
||||
if (base.isDuplicate(e, options))
|
||||
{
|
||||
IfcObjectPlacement placement = ObjectPlacement, placement2 = product.ObjectPlacement;
|
||||
if (placement != null)
|
||||
{
|
||||
if (!placement.isDuplicate(placement2, tol))
|
||||
if (!placement.isDuplicate(placement2, options.Tolerance))
|
||||
return false;
|
||||
}
|
||||
else if (placement2 != null)
|
||||
|
@ -1375,7 +1354,7 @@ namespace GeometryGym.Ifc
|
|||
IfcProductDefinitionShape rep = Representation, rep2 = product.Representation;
|
||||
if (rep != null)
|
||||
{
|
||||
if (!rep.isDuplicate(rep2, tol))
|
||||
if (!rep.isDuplicate(rep2, options.Tolerance))
|
||||
return false;
|
||||
}
|
||||
else if (rep2 != null)
|
||||
|
@ -1491,8 +1470,8 @@ namespace GeometryGym.Ifc
|
|||
//INVERSE
|
||||
private SET<IfcExternalReferenceRelationship> mHasExternalReference = new SET<IfcExternalReferenceRelationship>(); //IFC4 SET [0:?] OF IfcExternalReferenceRelationship FOR RelatedResourceObjects;
|
||||
internal SET<IfcProfileProperties> mHasProperties = new SET<IfcProfileProperties>();
|
||||
internal List<IfcResourceConstraintRelationship> mHasConstraintRelationships = new List<IfcResourceConstraintRelationship>(); //gg
|
||||
internal List<IfcResourceConstraintRelationship> HasConstraintRelationships { get { return mHasConstraintRelationships; } }
|
||||
internal SET<IfcResourceConstraintRelationship> mHasConstraintRelationships = new SET<IfcResourceConstraintRelationship>(); //gg
|
||||
internal SET<IfcResourceConstraintRelationship> HasConstraintRelationships { get { return mHasConstraintRelationships; } }
|
||||
|
||||
public IfcProfileTypeEnum ProfileType { get { return mProfileType; } set { mProfileType = value; } }
|
||||
public string ProfileName { get { return mProfileName; } set { mProfileName = value; } }
|
||||
|
@ -1667,14 +1646,14 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
internal string mMapProjection = "";// : OPTIONAL IfcIdentifier;
|
||||
internal string mMapZone = "";// : OPTIONAL IfcIdentifier
|
||||
internal int mMapUnit = 0;// : OPTIONAL IfcNamedUnit;
|
||||
internal IfcNamedUnit mMapUnit = null;// : OPTIONAL IfcNamedUnit;
|
||||
|
||||
public string MapProjection { get { return mMapProjection; } set { mMapProjection = ParserIfc.Encode(value); } }
|
||||
public string MapZone { get { return mMapZone; } set { mMapZone = value; } }
|
||||
public IfcNamedUnit MapUnit { get { return mDatabase[mMapUnit] as IfcNamedUnit; } set { mMapUnit = (value == null ? 0 : value.mIndex); } }
|
||||
public IfcNamedUnit MapUnit { get { return mMapUnit; } set { mMapUnit = value; } }
|
||||
|
||||
internal IfcProjectedCRS() : base() { }
|
||||
internal IfcProjectedCRS(DatabaseIfc db, IfcProjectedCRS p) : base(db, p) { mName = p.mName; mMapZone = p.mMapZone; if (p.mMapUnit > 0) MapUnit = db.Factory.Duplicate(p.MapUnit) as IfcNamedUnit; }
|
||||
internal IfcProjectedCRS(DatabaseIfc db, IfcProjectedCRS p) : base(db, p) { mName = p.mName; mMapZone = p.mMapZone; if (p != null) MapUnit = db.Factory.Duplicate(p.MapUnit) as IfcNamedUnit; }
|
||||
public IfcProjectedCRS(DatabaseIfc db, string name) : base(db, name) { }
|
||||
}
|
||||
//[Obsolete("DEPRECATED IFC4", false)]
|
||||
|
@ -1682,47 +1661,50 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcProjectionElement : IfcFeatureElementAddition
|
||||
{
|
||||
internal IfcProjectionElementTypeEnum mPredefinedType = IfcProjectionElementTypeEnum.NOTDEFINED;// : OPTIONAL IfcProjectionElementTypeEnum; //IFC4
|
||||
public IfcProjectionElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcProjectionElementTypeEnum mPredefinedType = IfcProjectionElementTypeEnum.NOTDEFINED;// : OPTIONAL IfcProjectionElementTypeEnum; //IFC4
|
||||
public IfcProjectionElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcProjectionElementTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
//INVERSE
|
||||
internal IfcProjectionElement() : base() { }
|
||||
internal IfcProjectionElement(DatabaseIfc db, IfcProjectionElement e, DuplicateOptions options) : base(db, e, options){ mPredefinedType = e.mPredefinedType; }
|
||||
internal IfcProjectionElement(DatabaseIfc db, IfcProjectionElement e, DuplicateOptions options) : base(db, e, options){ PredefinedType = e.PredefinedType; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcProjectLibrary : IfcContext
|
||||
{
|
||||
internal IfcProjectLibrary() : base() { }
|
||||
internal IfcProjectLibrary(DatabaseIfc db, IfcProjectLibrary l, DuplicateOptions options) : base(db, l, options) { }
|
||||
public IfcProjectLibrary(DatabaseIfc m, string name) : base(m, name)
|
||||
public IfcProjectLibrary(DatabaseIfc db, string name) : base(db, name)
|
||||
{
|
||||
if (m.ModelView == ModelView.Ifc4Reference || m.ModelView == ModelView.Ifc2x3Coordination)
|
||||
throw new Exception("Invalid Model View for IfcProjectLibrary : " + m.ModelView.ToString());
|
||||
if (db.ModelView == ModelView.Ifc4Reference || db.ModelView == ModelView.Ifc2x3Coordination)
|
||||
throw new Exception("Invalid Model View for IfcProjectLibrary : " + db.ModelView.ToString());
|
||||
if (string.IsNullOrEmpty(Name))
|
||||
Name = "UNKNOWN PROJECTLIBRARY";
|
||||
}
|
||||
public IfcProjectLibrary(DatabaseIfc m, string name, IfcUnitAssignment.Length length)
|
||||
: base(m, name) { UnitsInContext = new IfcUnitAssignment(mDatabase).SetUnits(length); }
|
||||
public IfcProjectLibrary(DatabaseIfc db, string name, IfcUnitAssignment.Length length)
|
||||
: base(db, name) { UnitsInContext = new IfcUnitAssignment(db).SetUnits(length); }
|
||||
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcProjectOrder : IfcControl
|
||||
{
|
||||
//internal string mID;// : IfcIdentifier; IFC4 relocated
|
||||
internal IfcProjectOrderTypeEnum mPredefinedType = IfcProjectOrderTypeEnum.NOTDEFINED;// : IfcProjectOrderTypeEnum;
|
||||
private IfcProjectOrderTypeEnum mPredefinedType = IfcProjectOrderTypeEnum.NOTDEFINED;// : IfcProjectOrderTypeEnum;
|
||||
internal string mStatus = "";// : OPTIONAL IfcLabel;
|
||||
internal string mLongDescription = ""; // : OPTIONAL IfcText;
|
||||
public IfcProjectOrderTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcProjectOrderTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
internal IfcProjectOrder() : base() { }
|
||||
internal IfcProjectOrder(DatabaseIfc db, IfcProjectOrder o, DuplicateOptions options) : base(db, o, options) { mPredefinedType = o.mPredefinedType; mStatus = o.mStatus; mLongDescription = o.mLongDescription; }
|
||||
internal IfcProjectOrder(DatabaseIfc db, IfcProjectOrder o, DuplicateOptions options) : base(db, o, options) { PredefinedType = o.PredefinedType; mStatus = o.mStatus; mLongDescription = o.mLongDescription; }
|
||||
}
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
[Serializable]
|
||||
public partial class IfcProjectOrderRecord : IfcControl // DEPRECATED IFC4
|
||||
{
|
||||
internal List<int> mRecords = new List<int>();// : LIST [1:?] OF UNIQUE IfcRelAssignsToProjectOrder;
|
||||
internal IfcProjectOrderRecordTypeEnum mPredefinedType = IfcProjectOrderRecordTypeEnum.NOTDEFINED;// : IfcProjectOrderRecordTypeEnum;
|
||||
//public List<ifcrelassignstopr>
|
||||
internal LIST<IfcRelAssignsToProjectOrder> mRecords = new LIST<IfcRelAssignsToProjectOrder>();// : LIST [1:?] OF UNIQUE IfcRelAssignsToProjectOrder;
|
||||
private IfcProjectOrderRecordTypeEnum mPredefinedType = IfcProjectOrderRecordTypeEnum.NOTDEFINED;// : IfcProjectOrderRecordTypeEnum;
|
||||
public IfcProjectOrderRecordTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcProjectOrderRecordTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcProjectOrderRecord() : base() { }
|
||||
internal IfcProjectOrderRecord(DatabaseIfc db, IfcProjectOrderRecord r, DuplicateOptions options) : base(db, r, options) { }// Records = r.Records mPredefinedType = i.mPredefinedType; }
|
||||
internal IfcProjectOrderRecord(DatabaseIfc db, IfcProjectOrderRecord r, DuplicateOptions options)
|
||||
: base(db, r, options) { mRecords.AddRange(r.mRecords.Select(x => db.Factory.Duplicate(x))); PredefinedType = r.PredefinedType; }
|
||||
}
|
||||
[Serializable]
|
||||
public abstract partial class IfcProperty : IfcPropertyAbstraction, NamedObjectIfc //ABSTRACT SUPERTYPE OF (ONEOF(IfcComplexProperty,IfcSimpleProperty));
|
||||
|
@ -1803,12 +1785,12 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
internal IfcValue mUpperBoundValue;// : OPTIONAL IfcValue;
|
||||
internal IfcValue mLowerBoundValue;// : OPTIONAL IfcValue;
|
||||
internal int mUnit;// : OPTIONAL IfcUnit;
|
||||
internal IfcUnit mUnit;// : OPTIONAL IfcUnit;
|
||||
internal IfcValue mSetPointValue;// OPTIONAL IfcValue; IFC4
|
||||
|
||||
public IfcValue UpperBoundValue { get { return mUpperBoundValue; } set { mUpperBoundValue = value; } }
|
||||
public IfcValue LowerBoundValue { get { return mLowerBoundValue; } set { mLowerBoundValue = value; } }
|
||||
public IfcUnit Unit { get { return mDatabase[mUnit] as IfcUnit; } set { mUnit = (value == null ? 0 : value.Index); } }
|
||||
public IfcUnit Unit { get { return mUnit; } set { mUnit = value; } }
|
||||
public IfcValue SetPointValue { get { return mSetPointValue; } set { mSetPointValue = value; } }
|
||||
|
||||
internal IfcPropertyBoundedValue() : base() { }
|
||||
|
@ -1816,8 +1798,8 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
mUpperBoundValue = p.mUpperBoundValue;
|
||||
mLowerBoundValue = p.mLowerBoundValue;
|
||||
if (p.mUnit > 0)
|
||||
Unit = mDatabase.Factory.Duplicate(p.mDatabase[p.mUnit]) as IfcUnit;
|
||||
if (p.mUnit != null)
|
||||
Unit = mDatabase.Factory.Duplicate<IfcUnit>(p.mUnit);
|
||||
mSetPointValue = p.mSetPointValue;
|
||||
}
|
||||
public IfcPropertyBoundedValue(DatabaseIfc db, string name) : base(db, name) { }
|
||||
|
@ -1828,16 +1810,24 @@ namespace GeometryGym.Ifc
|
|||
public override string StepClassName { get { return "IfcPropertyBoundedValue"; } }
|
||||
internal T mUpperBoundValue;// : OPTIONAL IfcValue;
|
||||
internal T mLowerBoundValue;// : OPTIONAL IfcValue;
|
||||
internal int mUnit;// : OPTIONAL IfcUnit;
|
||||
internal IfcUnit mUnit;// : OPTIONAL IfcUnit;
|
||||
internal T mSetPointValue;// OPTIONAL IfcValue; IFC4
|
||||
|
||||
public T UpperBoundValue { get { return mUpperBoundValue; } set { mUpperBoundValue = value; } }
|
||||
public T LowerBoundValue { get { return mUpperBoundValue; } set { mUpperBoundValue = value; } }
|
||||
public IfcUnit Unit { get { return mDatabase[mUnit] as IfcUnit; } set { mUnit = (value == null ? 0 : value.Index); } }
|
||||
public T LowerBoundValue { get { return mLowerBoundValue; } set { mLowerBoundValue = value; } }
|
||||
public IfcUnit Unit { get { return mUnit; } set { mUnit = value; } }
|
||||
public T SetPointValue { get { return mSetPointValue; } set { mSetPointValue = value; } }
|
||||
|
||||
internal IfcPropertyBoundedValue() : base() { }
|
||||
public IfcPropertyBoundedValue(DatabaseIfc db, string name) : base(db, name) { }
|
||||
internal IfcPropertyBoundedValue(DatabaseIfc db, IfcPropertyBoundedValue<T> p, DuplicateOptions options) : base(db, p, options)
|
||||
{
|
||||
mUpperBoundValue = p.mUpperBoundValue;
|
||||
mLowerBoundValue = p.mLowerBoundValue;
|
||||
if (p.mUnit != null)
|
||||
Unit = mDatabase.Factory.Duplicate<IfcUnit>(p.mUnit);
|
||||
mSetPointValue = p.mSetPointValue;
|
||||
}
|
||||
}
|
||||
[Obsolete("DELETED IFC4", false)]
|
||||
[Serializable]
|
||||
|
@ -1875,7 +1865,7 @@ namespace GeometryGym.Ifc
|
|||
|
||||
protected IfcPropertyDefinition() : base() { }
|
||||
internal IfcPropertyDefinition(DatabaseIfc db) : base(db) { }
|
||||
protected IfcPropertyDefinition(IfcPropertyDefinition propertyDefinition) : base(propertyDefinition, false) { }
|
||||
protected IfcPropertyDefinition(IfcPropertyDefinition propertyDefinition) : base(propertyDefinition) { }
|
||||
protected IfcPropertyDefinition(DatabaseIfc db, IfcPropertyDefinition p, DuplicateOptions options) : base(db, p, options)
|
||||
{
|
||||
if (options.DuplicateHost && p.HasContext != null)
|
||||
|
@ -1920,12 +1910,12 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcPropertyDependencyRelationship : IfcResourceLevelRelationship
|
||||
{
|
||||
internal int mDependingProperty;// : IfcProperty;
|
||||
internal int mDependantProperty;// : IfcProperty;
|
||||
private IfcProperty mDependingProperty;// : IfcProperty;
|
||||
private IfcProperty mDependantProperty;// : IfcProperty;
|
||||
internal string mExpression = "";// : OPTIONAL IfcText;
|
||||
|
||||
public IfcProperty DependingProperty { get { return mDatabase[mDependingProperty] as IfcProperty; } set { mDependingProperty = value.mIndex; value.mPropertyDependsOn.Add(this); } }
|
||||
public IfcProperty DependantProperty { get { return mDatabase[mDependantProperty] as IfcProperty; } set { mDependantProperty = value.mIndex; value.mPropertyForDependance.Add(this); } }
|
||||
public IfcProperty DependingProperty { get { return mDependingProperty; } set { mDependingProperty = value; value.mPropertyDependsOn.Add(this); } }
|
||||
public IfcProperty DependantProperty { get { return mDependantProperty; } set { mDependantProperty = value; value.mPropertyForDependance.Add(this); } }
|
||||
public string Expression { get { return mExpression; } set { mExpression = value; } }
|
||||
|
||||
internal IfcPropertyDependencyRelationship() : base() { }
|
||||
|
@ -1943,10 +1933,10 @@ namespace GeometryGym.Ifc
|
|||
public partial class IfcPropertyEnumeratedValue : IfcSimpleProperty
|
||||
{
|
||||
internal LIST<IfcValue> mEnumerationValues = new LIST<IfcValue>();// : LIST [1:?] OF IfcValue;
|
||||
internal int mEnumerationReference;// : OPTIONAL IfcPropertyEnumeration;
|
||||
internal IfcPropertyEnumeration mEnumerationReference;// : OPTIONAL IfcPropertyEnumeration;
|
||||
|
||||
public LIST<IfcValue> EnumerationValues { get { return mEnumerationValues; } set { mEnumerationValues = value; } }
|
||||
public IfcPropertyEnumeration EnumerationReference { get { return mDatabase[mEnumerationReference] as IfcPropertyEnumeration; } set { mEnumerationReference = value == null ? 0 : value.mIndex; } }
|
||||
public IfcPropertyEnumeration EnumerationReference { get { return mEnumerationReference; } set { mEnumerationReference = value; } }
|
||||
|
||||
internal IfcPropertyEnumeratedValue() : base() { }
|
||||
public IfcPropertyEnumeratedValue(DatabaseIfc db, string name, IfcValue value) : base(db, name) { mEnumerationValues.Add(value); }
|
||||
|
@ -2007,22 +1997,29 @@ namespace GeometryGym.Ifc
|
|||
internal IfcPropertyListValue() : base() { }
|
||||
public IfcPropertyListValue(DatabaseIfc db, string name, IEnumerable<T> values)
|
||||
: base(db, name) { mNominalValue.AddRange(values); }
|
||||
|
||||
internal IfcPropertyListValue(DatabaseIfc db, IfcPropertyListValue<T> p, DuplicateOptions options) : base(db, p, options)
|
||||
{
|
||||
mNominalValue.AddRange(p.mNominalValue);
|
||||
if (p.mUnit != null)
|
||||
Unit = db.Factory.Duplicate(p.mUnit as BaseClassIfc, options) as IfcUnit;
|
||||
}
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcPropertyReferenceValue : IfcSimpleProperty
|
||||
{
|
||||
internal string mUsageName = "";// : OPTIONAL IfcText;
|
||||
internal int mPropertyReference = 0;// : OPTIONAL IfcObjectReferenceSelect;
|
||||
internal string mUsageName = "";//: OPTIONAL IfcText;
|
||||
internal IfcObjectReferenceSelect mPropertyReference = null;//: OPTIONAL IfcObjectReferenceSelect;
|
||||
|
||||
public string UsageName { get { return mUsageName; } set { mUsageName = value; } }
|
||||
public IfcObjectReferenceSelect PropertyReference { get { return mDatabase[mPropertyReference] as IfcObjectReferenceSelect; } set { mPropertyReference = (value == null ? 0 : value.Index); } }
|
||||
public IfcObjectReferenceSelect PropertyReference { get { return mPropertyReference; } set { mPropertyReference = value; } }
|
||||
|
||||
internal IfcPropertyReferenceValue() : base() { }
|
||||
internal IfcPropertyReferenceValue(DatabaseIfc db, IfcPropertyReferenceValue p, DuplicateOptions options) : base(db, p, options)
|
||||
{
|
||||
mUsageName = p.mUsageName;
|
||||
if(p.mPropertyReference > 0)
|
||||
PropertyReference = db.Factory.Duplicate(p.PropertyReference as BaseClassIfc, options) as IfcObjectReferenceSelect;
|
||||
if(p.mPropertyReference != null)
|
||||
PropertyReference = db.Factory.Duplicate<IfcObjectReferenceSelect>(p.PropertyReference, options);
|
||||
}
|
||||
public IfcPropertyReferenceValue(DatabaseIfc db, string name) : base(db, name) { }
|
||||
public IfcPropertyReferenceValue(string name, IfcObjectReferenceSelect obj) : base(obj.Database, name) { PropertyReference = obj; }
|
||||
|
@ -2227,7 +2224,7 @@ namespace GeometryGym.Ifc
|
|||
protected IfcPropertySetDefinition() : base() { }
|
||||
protected IfcPropertySetDefinition(IfcPropertySetDefinition pset) : base(pset) { }
|
||||
protected IfcPropertySetDefinition(DatabaseIfc db, IfcPropertySetDefinition s, DuplicateOptions options) : base(db, s, options) { }
|
||||
protected IfcPropertySetDefinition(DatabaseIfc m, string name) : base(m) { Name = name; }
|
||||
protected IfcPropertySetDefinition(DatabaseIfc db, string name) : base(db) { Name = name; }
|
||||
protected IfcPropertySetDefinition(IfcObjectDefinition relatedObject, string name) : base(relatedObject.mDatabase) { RelateObjectDefinition(relatedObject); Name = name; }
|
||||
|
||||
public void RelateObjectDefinition(IfcObjectDefinition relatedObject)
|
||||
|
@ -2357,12 +2354,12 @@ namespace GeometryGym.Ifc
|
|||
if (s.mUnit != null)
|
||||
Unit = db.Factory.Duplicate(s.mUnit as BaseClassIfc, options) as IfcUnit;
|
||||
}
|
||||
public IfcPropertySingleValue(DatabaseIfc m, string name, IfcValue value) : base(m, name) { mNominalValue = value; }
|
||||
public IfcPropertySingleValue(DatabaseIfc m, string name, bool value) : this(m, name, new IfcBoolean(value)) { }
|
||||
public IfcPropertySingleValue(DatabaseIfc m, string name, int value) : this(m, name, new IfcInteger(value)) { }
|
||||
public IfcPropertySingleValue(DatabaseIfc m, string name, double value) : this(m, name, new IfcReal(value)) { }
|
||||
public IfcPropertySingleValue(DatabaseIfc m, string name, string value) : this(m, name, new IfcLabel(value)) { }
|
||||
public IfcPropertySingleValue(DatabaseIfc m, string name, IfcValue val, IfcUnit unit) : this(m, name, val) { Unit = unit; }
|
||||
public IfcPropertySingleValue(DatabaseIfc db, string name, IfcValue value) : base(db, name) { mNominalValue = value; }
|
||||
public IfcPropertySingleValue(DatabaseIfc db, string name, bool value) : this(db, name, new IfcBoolean(value)) { }
|
||||
public IfcPropertySingleValue(DatabaseIfc db, string name, int value) : this(db, name, new IfcInteger(value)) { }
|
||||
public IfcPropertySingleValue(DatabaseIfc db, string name, double value) : this(db, name, new IfcReal(value)) { }
|
||||
public IfcPropertySingleValue(DatabaseIfc db, string name, string value) : this(db, name, new IfcLabel(value)) { }
|
||||
public IfcPropertySingleValue(DatabaseIfc db, string name, IfcValue val, IfcUnit unit) : this(db, name, val) { Unit = unit; }
|
||||
|
||||
internal override bool isDuplicate(BaseClassIfc e, double tol)
|
||||
{
|
||||
|
@ -2436,19 +2433,6 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public partial class IfcPropertyTableValue<T,U> : IfcSimpleProperty where T : IfcValue where U :IfcValue
|
||||
{
|
||||
internal List <T> mDefiningValues = new List<T>();// : OPTIONAL LIST [1:?] OF UNIQUE IfcValue;
|
||||
internal List<U> mDefinedValues = new List<U>();// : OPTIONAL LIST [1:?] OF IfcValue;
|
||||
internal string mExpression = "";// :: OPTIONAL IfcText;
|
||||
internal IfcUnit mDefiningUnit;// : : OPTIONAL IfcUnit;
|
||||
internal IfcUnit mDefinedUnit;// : : OPTIONAL IfcUnit;
|
||||
internal IfcCurveInterpolationEnum mCurveInterpolation = IfcCurveInterpolationEnum.NOTDEFINED;// : : OPTIONAL IfcCurveInterpolationEnum;
|
||||
|
||||
internal IfcPropertyTableValue() : base() { }
|
||||
public IfcPropertyTableValue(DatabaseIfc db, string name) : base(db, name) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcPropertyTableValue : IfcSimpleProperty
|
||||
{
|
||||
|
@ -2472,6 +2456,28 @@ namespace GeometryGym.Ifc
|
|||
public IfcPropertyTableValue(DatabaseIfc db, string name) : base(db, name) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcPropertyTableValue<T, U> : IfcSimpleProperty where T : IfcValue where U : IfcValue
|
||||
{
|
||||
internal List<T> mDefiningValues = new List<T>();// : OPTIONAL LIST [1:?] OF UNIQUE IfcValue;
|
||||
internal List<U> mDefinedValues = new List<U>();// : OPTIONAL LIST [1:?] OF IfcValue;
|
||||
internal string mExpression = "";//: OPTIONAL IfcText;
|
||||
internal IfcUnit mDefiningUnit;//: OPTIONAL IfcUnit;
|
||||
internal IfcUnit mDefinedUnit;//: OPTIONAL IfcUnit;
|
||||
internal IfcCurveInterpolationEnum mCurveInterpolation = IfcCurveInterpolationEnum.NOTDEFINED;// : : OPTIONAL IfcCurveInterpolationEnum;
|
||||
|
||||
internal IfcPropertyTableValue() : base() { }
|
||||
public IfcPropertyTableValue(DatabaseIfc db, string name) : base(db, name) { }
|
||||
internal IfcPropertyTableValue(DatabaseIfc db, IfcPropertyTableValue<T, U> p, DuplicateOptions options) : base(db, p, options)
|
||||
{
|
||||
mDefiningValues.AddRange(p.mDefiningValues);
|
||||
mDefinedValues.AddRange(p.mDefinedValues);
|
||||
mExpression = p.mExpression;
|
||||
mDefiningUnit = db.Factory.Duplicate(p.mDefiningUnit);
|
||||
mDefinedUnit = db.Factory.Duplicate(p.mDefinedUnit);
|
||||
mCurveInterpolation = p.mCurveInterpolation;
|
||||
}
|
||||
}
|
||||
[Serializable]
|
||||
public abstract partial class IfcPropertyTemplate : IfcPropertyTemplateDefinition //ABSTRACT SUPERTYPE OF(ONEOF(IfcComplexPropertyTemplate, IfcSimplePropertyTemplate))
|
||||
{ //INVERSE
|
||||
internal SET<IfcComplexPropertyTemplate> mPartOfComplexTemplate = new SET<IfcComplexPropertyTemplate>();// : SET OF IfcComplexPropertyTemplate FOR HasPropertyTemplates;
|
||||
|
@ -2488,47 +2494,47 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected IfcPropertyTemplateDefinition() : base() { }
|
||||
protected IfcPropertyTemplateDefinition(DatabaseIfc db, IfcPropertyTemplateDefinition p, DuplicateOptions options) : base(db, p, options) { }
|
||||
protected IfcPropertyTemplateDefinition(DatabaseIfc m, string name) : base(m) { Name = name; }
|
||||
protected IfcPropertyTemplateDefinition(DatabaseIfc db, string name) : base(db) { Name = name; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcProtectiveDevice : IfcFlowController //IFC4
|
||||
{
|
||||
internal IfcProtectiveDeviceTypeEnum mPredefinedType = IfcProtectiveDeviceTypeEnum.NOTDEFINED;// OPTIONAL : IfcProtectiveDeviceTypeEnum;
|
||||
public IfcProtectiveDeviceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcProtectiveDeviceTypeEnum mPredefinedType = IfcProtectiveDeviceTypeEnum.NOTDEFINED;// OPTIONAL : IfcProtectiveDeviceTypeEnum;
|
||||
public IfcProtectiveDeviceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcProtectiveDeviceTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcProtectiveDevice() : base() { }
|
||||
internal IfcProtectiveDevice(DatabaseIfc db, IfcProtectiveDevice d, DuplicateOptions options) : base(db, d, options) { mPredefinedType = d.mPredefinedType; }
|
||||
internal IfcProtectiveDevice(DatabaseIfc db, IfcProtectiveDevice d, DuplicateOptions options) : base(db, d, options) { PredefinedType = d.PredefinedType; }
|
||||
public IfcProtectiveDevice(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcProtectiveDeviceTrippingUnit : IfcDistributionControlElement //IFC4
|
||||
{
|
||||
internal IfcProtectiveDeviceTrippingUnitTypeEnum mPredefinedType = IfcProtectiveDeviceTrippingUnitTypeEnum.NOTDEFINED;
|
||||
public IfcProtectiveDeviceTrippingUnitTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcProtectiveDeviceTrippingUnitTypeEnum mPredefinedType = IfcProtectiveDeviceTrippingUnitTypeEnum.NOTDEFINED;
|
||||
public IfcProtectiveDeviceTrippingUnitTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcProtectiveDeviceTrippingUnitTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcProtectiveDeviceTrippingUnit() : base() { }
|
||||
internal IfcProtectiveDeviceTrippingUnit(DatabaseIfc db, IfcProtectiveDeviceTrippingUnit u, DuplicateOptions options) : base(db,u, options) { mPredefinedType = u.mPredefinedType; }
|
||||
internal IfcProtectiveDeviceTrippingUnit(DatabaseIfc db, IfcProtectiveDeviceTrippingUnit u, DuplicateOptions options) : base(db,u, options) { PredefinedType = u.PredefinedType; }
|
||||
public IfcProtectiveDeviceTrippingUnit(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcProtectiveDeviceTrippingUnitType : IfcDistributionControlElementType
|
||||
{
|
||||
internal IfcProtectiveDeviceTrippingUnitTypeEnum mPredefinedType = IfcProtectiveDeviceTrippingUnitTypeEnum.NOTDEFINED;// : IfcProtectiveDeviceTrippingUnitTypeEnum;
|
||||
public IfcProtectiveDeviceTrippingUnitTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcProtectiveDeviceTrippingUnitTypeEnum mPredefinedType = IfcProtectiveDeviceTrippingUnitTypeEnum.NOTDEFINED;// : IfcProtectiveDeviceTrippingUnitTypeEnum;
|
||||
public IfcProtectiveDeviceTrippingUnitTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcProtectiveDeviceTrippingUnitTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcProtectiveDeviceTrippingUnitType() : base() { }
|
||||
internal IfcProtectiveDeviceTrippingUnitType(DatabaseIfc db, IfcProtectiveDeviceTrippingUnitType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcProtectiveDeviceTrippingUnitType(DatabaseIfc m, string name, IfcProtectiveDeviceTrippingUnitTypeEnum t) : base(m) { Name = name; mPredefinedType = t; }
|
||||
internal IfcProtectiveDeviceTrippingUnitType(DatabaseIfc db, IfcProtectiveDeviceTrippingUnitType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcProtectiveDeviceTrippingUnitType(DatabaseIfc db, string name, IfcProtectiveDeviceTrippingUnitTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcProtectiveDeviceType : IfcFlowControllerType
|
||||
{
|
||||
internal IfcProtectiveDeviceTypeEnum mPredefinedType = IfcProtectiveDeviceTypeEnum.NOTDEFINED;// : IfcProtectiveDeviceTypeEnum;
|
||||
public IfcProtectiveDeviceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcProtectiveDeviceTypeEnum mPredefinedType = IfcProtectiveDeviceTypeEnum.NOTDEFINED;// : IfcProtectiveDeviceTypeEnum;
|
||||
public IfcProtectiveDeviceTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcProtectiveDeviceTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcProtectiveDeviceType() : base() { }
|
||||
internal IfcProtectiveDeviceType(DatabaseIfc db, IfcProtectiveDeviceType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcProtectiveDeviceType(DatabaseIfc m, string name, IfcProtectiveDeviceTypeEnum t) : base(m) { Name = name; mPredefinedType = t; }
|
||||
internal IfcProtectiveDeviceType(DatabaseIfc db, IfcProtectiveDeviceType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcProtectiveDeviceType(DatabaseIfc db, string name, IfcProtectiveDeviceTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Obsolete("DEPRECATED IFC4x3", false)]
|
||||
[Serializable]
|
||||
|
@ -2552,25 +2558,26 @@ namespace GeometryGym.Ifc
|
|||
rcss.RelatedElements.Add(this);
|
||||
}
|
||||
}
|
||||
internal IfcProxy(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape shape) : base(host, placement, shape) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcPump : IfcFlowMovingDevice //IFC4
|
||||
{
|
||||
internal IfcPumpTypeEnum mPredefinedType = IfcPumpTypeEnum.NOTDEFINED;// OPTIONAL : IfcPumpTypeEnum;
|
||||
public IfcPumpTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcPumpTypeEnum mPredefinedType = IfcPumpTypeEnum.NOTDEFINED;// OPTIONAL : IfcPumpTypeEnum;
|
||||
public IfcPumpTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcPumpTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcPump() : base() { }
|
||||
internal IfcPump(DatabaseIfc db, IfcPump p, DuplicateOptions options) : base(db,p, options) { mPredefinedType = p.mPredefinedType; }
|
||||
internal IfcPump(DatabaseIfc db, IfcPump p, DuplicateOptions options) : base(db,p, options) { PredefinedType = p.PredefinedType; }
|
||||
public IfcPump(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcPumpType : IfcFlowMovingDeviceType
|
||||
{
|
||||
internal IfcPumpTypeEnum mPredefinedType = IfcPumpTypeEnum.NOTDEFINED;// : IfcPumpTypeEnum;
|
||||
public IfcPumpTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcPumpTypeEnum mPredefinedType = IfcPumpTypeEnum.NOTDEFINED;// : IfcPumpTypeEnum;
|
||||
public IfcPumpTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcPumpTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcPumpType() : base() { }
|
||||
internal IfcPumpType(DatabaseIfc db, IfcPumpType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcPumpType(DatabaseIfc m, string name, IfcPumpTypeEnum type) : base(m) { Name = name; mPredefinedType = type; }
|
||||
internal IfcPumpType(DatabaseIfc db, IfcPumpType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcPumpType(DatabaseIfc db, string name, IfcPumpTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
}
|
||||
|
|
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
|
@ -62,18 +62,27 @@ namespace GeometryGym.Ifc
|
|||
internal string mIdentifier = "";// : OPTIONAL IfcIdentifier;
|
||||
internal string mName = "";// : OPTIONAL IfcLabel;
|
||||
internal string mDescription = "";// : OPTIONAL IfcText;
|
||||
internal int mUnit;// : OPTIONAL IfcUnit;
|
||||
private int mReferencePath;// : OPTIONAL IfcReference;
|
||||
internal IfcUnit mUnit;// : OPTIONAL IfcUnit;
|
||||
private IfcReference mReferencePath;// : OPTIONAL IfcReference;
|
||||
|
||||
public string Identifier { get { return mIdentifier; } set { mIdentifier = value; } }
|
||||
public string Name { get { return mName; } set { mName = value; } }
|
||||
public string Description { get { return mDescription; } set { mDescription = value; } }
|
||||
public IfcUnit Unit { get { return mDatabase[mUnit] as IfcUnit; } set { mUnit = (value == null ? 0 : value.Index); } }
|
||||
public IfcReference ReferencePath { get { return mDatabase[mReferencePath] as IfcReference; } set { mReferencePath = (value == null ? 0 : value.mIndex); } }
|
||||
public IfcUnit Unit { get { return mUnit; } set { mUnit = value; } }
|
||||
public IfcReference ReferencePath { get { return mReferencePath; } set { mReferencePath = value; } }
|
||||
|
||||
internal IfcTableColumn() : base() { }
|
||||
public IfcTableColumn(DatabaseIfc db) : base(db) { }
|
||||
internal IfcTableColumn(DatabaseIfc db, IfcTableColumn c) : base(db, c) { mIdentifier = c.mIdentifier; mName = c.mName; mDescription = c.mDescription; if (c.mUnit > 0) Unit = db.Factory.Duplicate(c.mDatabase[c.mUnit]) as IfcUnit; if (c.mReferencePath > 0) ReferencePath = db.Factory.Duplicate(c.ReferencePath) as IfcReference; }
|
||||
internal IfcTableColumn(DatabaseIfc db, IfcTableColumn c) : base(db, c)
|
||||
{
|
||||
mIdentifier = c.mIdentifier;
|
||||
mName = c.mName;
|
||||
mDescription = c.mDescription;
|
||||
if (c.mUnit != null)
|
||||
Unit = db.Factory.Duplicate<IfcUnit>(c.mUnit);
|
||||
if (c.mReferencePath != null)
|
||||
ReferencePath = db.Factory.Duplicate(c.ReferencePath);
|
||||
}
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcTableRow : BaseClassIfc
|
||||
|
@ -96,22 +105,22 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcTank : IfcFlowStorageDevice //IFC4
|
||||
{
|
||||
internal IfcTankTypeEnum mPredefinedType = IfcTankTypeEnum.NOTDEFINED;// OPTIONAL : IfcTankTypeEnum;
|
||||
public IfcTankTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcTankTypeEnum mPredefinedType = IfcTankTypeEnum.NOTDEFINED;// OPTIONAL : IfcTankTypeEnum;
|
||||
public IfcTankTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcTankTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcTank() : base() { }
|
||||
internal IfcTank(DatabaseIfc db, IfcTank t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
internal IfcTank(DatabaseIfc db, IfcTank t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcTank(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcTankType : IfcFlowStorageDeviceType
|
||||
{
|
||||
internal IfcTankTypeEnum mPredefinedType = IfcTankTypeEnum.NOTDEFINED;// : IfcDuctFittingTypeEnum;
|
||||
public IfcTankTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcTankTypeEnum mPredefinedType = IfcTankTypeEnum.NOTDEFINED;// : IfcDuctFittingTypeEnum;
|
||||
public IfcTankTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcTankTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcTankType() : base() { }
|
||||
internal IfcTankType(DatabaseIfc db, IfcTankType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcTankType(DatabaseIfc db, string name, IfcTankTypeEnum t) : base(db) { Name = name; mPredefinedType = t; }
|
||||
internal IfcTankType(DatabaseIfc db, IfcTankType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcTankType(DatabaseIfc db, string name, IfcTankTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcTask : IfcProcess //SUPERTYPE OF (ONEOF(IfcMove,IfcOrderAction) both DEPRECATED IFC4)
|
||||
|
@ -122,7 +131,7 @@ namespace GeometryGym.Ifc
|
|||
internal bool mIsMilestone = false;// : BOOLEAN
|
||||
internal int mPriority = int.MinValue;// : OPTIONAL INTEGER IFC4
|
||||
internal IfcTaskTime mTaskTime = null;// : OPTIONAL IfcTaskTime; IFC4
|
||||
internal IfcTaskTypeEnum mPredefinedType = IfcTaskTypeEnum.NOTDEFINED;// : OPTIONAL IfcTaskTypeEnum IFC4
|
||||
private IfcTaskTypeEnum mPredefinedType = IfcTaskTypeEnum.NOTDEFINED;// : OPTIONAL IfcTaskTypeEnum IFC4
|
||||
//INVERSE
|
||||
internal SET<IfcRelAssignsTasks> mOwningControls = new SET<IfcRelAssignsTasks>(); //gg
|
||||
|
||||
|
@ -131,7 +140,7 @@ namespace GeometryGym.Ifc
|
|||
public bool IsMilestone { get { return mIsMilestone; } set { mIsMilestone = value; } }
|
||||
public int Priority { get { return mPriority; } set { mPriority = value; } }
|
||||
public IfcTaskTime TaskTime { get { return mTaskTime; } set { mTaskTime = value; } }
|
||||
public IfcTaskTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcTaskTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcTaskTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcTask() : base() { }
|
||||
internal IfcTask(DatabaseIfc db, IfcTask t, DuplicateOptions options) : base(db, t, options)
|
||||
|
@ -142,7 +151,7 @@ namespace GeometryGym.Ifc
|
|||
mPriority = t.mPriority;
|
||||
if (t.mTaskTime != null)
|
||||
TaskTime = db.Factory.Duplicate(t.TaskTime) as IfcTaskTime;
|
||||
mPredefinedType = t.mPredefinedType;
|
||||
PredefinedType = t.PredefinedType;
|
||||
}
|
||||
public IfcTask(DatabaseIfc db) : base(db) { }
|
||||
public IfcTask(IfcTask task) : base(task)
|
||||
|
@ -152,7 +161,7 @@ namespace GeometryGym.Ifc
|
|||
mIsMilestone = task.mIsMilestone;
|
||||
mPriority = task.mPriority;
|
||||
mTaskTime = task.mTaskTime;
|
||||
mPredefinedType = task.mPredefinedType;
|
||||
PredefinedType = task.PredefinedType;
|
||||
}
|
||||
|
||||
public Tuple<DateTime, DateTime> computeScheduleStartFinish()
|
||||
|
@ -235,15 +244,15 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcTaskType : IfcTypeProcess //IFC4
|
||||
{
|
||||
internal IfcTaskTypeEnum mPredefinedType = IfcTaskTypeEnum.NOTDEFINED;// : IfcTaskTypeEnum;
|
||||
private IfcTaskTypeEnum mPredefinedType = IfcTaskTypeEnum.NOTDEFINED;// : IfcTaskTypeEnum;
|
||||
private string mWorkMethod = "";// : OPTIONAL IfcLabel;
|
||||
|
||||
public IfcTaskTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcTaskTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcTaskTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
public string WorkMethod { get { return mWorkMethod; } set { mWorkMethod = value; } }
|
||||
|
||||
internal IfcTaskType() : base() { }
|
||||
internal IfcTaskType(DatabaseIfc db, IfcTaskType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; mWorkMethod = t.mWorkMethod; }
|
||||
public IfcTaskType(DatabaseIfc m, string name, IfcTaskTypeEnum t) : base(m) { Name = name; mPredefinedType = t; }
|
||||
internal IfcTaskType(DatabaseIfc db, IfcTaskType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; mWorkMethod = t.mWorkMethod; }
|
||||
public IfcTaskType(DatabaseIfc db, string name, IfcTaskTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcTelecomAddress : IfcAddress
|
||||
|
@ -269,7 +278,7 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcTendon : IfcReinforcingElement
|
||||
{
|
||||
internal IfcTendonTypeEnum mPredefinedType = IfcTendonTypeEnum.NOTDEFINED;// : IfcTendonTypeEnum;//
|
||||
private IfcTendonTypeEnum mPredefinedType = IfcTendonTypeEnum.NOTDEFINED;// : IfcTendonTypeEnum;//
|
||||
internal double mNominalDiameter;// : IfcPositiveLengthMeasure;
|
||||
internal double mCrossSectionArea;// : IfcAreaMeasure;
|
||||
internal double mTensionForce;// : OPTIONAL IfcForceMeasure;
|
||||
|
@ -277,11 +286,11 @@ namespace GeometryGym.Ifc
|
|||
internal double mFrictionCoefficient;// //: OPTIONAL IfcNormalisedRatioMeasure;
|
||||
internal double mAnchorageSlip;// : OPTIONAL IfcPositiveLengthMeasure;
|
||||
internal double mMinCurvatureRadius;// : OPTIONAL IfcPositiveLengthMeasure;
|
||||
public IfcTendonTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcTendonTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcTendonTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
internal IfcTendon() : base() { }
|
||||
internal IfcTendon(DatabaseIfc db, IfcTendon t, DuplicateOptions options) : base(db, t, options)
|
||||
{
|
||||
mPredefinedType = t.mPredefinedType;
|
||||
PredefinedType = t.PredefinedType;
|
||||
mNominalDiameter = t.mNominalDiameter;
|
||||
mCrossSectionArea = t.mCrossSectionArea;
|
||||
mTensionForce = t.mTensionForce;
|
||||
|
@ -301,18 +310,18 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcTendonAnchor : IfcReinforcingElement
|
||||
{
|
||||
internal IfcTendonAnchorTypeEnum mPredefinedType = IfcTendonAnchorTypeEnum.NOTDEFINED;// : OPTIONAL IfcTendonAnchorTypeEnum;
|
||||
public IfcTendonAnchorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcTendonAnchorTypeEnum mPredefinedType = IfcTendonAnchorTypeEnum.NOTDEFINED;// : OPTIONAL IfcTendonAnchorTypeEnum;
|
||||
public IfcTendonAnchorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcTendonAnchorTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcTendonAnchor() : base() { }
|
||||
internal IfcTendonAnchor(DatabaseIfc db, IfcTendonAnchor a, DuplicateOptions options) : base(db, a, options) { mPredefinedType = a.mPredefinedType; }
|
||||
internal IfcTendonAnchor(DatabaseIfc db, IfcTendonAnchor a, DuplicateOptions options) : base(db, a, options) { PredefinedType = a.PredefinedType; }
|
||||
public IfcTendonAnchor(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcTendonAnchorType : IfcReinforcingElementType
|
||||
{
|
||||
private IfcTendonAnchorTypeEnum mPredefinedType = IfcTendonAnchorTypeEnum.NOTDEFINED; //: IfcTendonAnchorTypeEnum;
|
||||
public IfcTendonAnchorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcTendonAnchorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcTendonAnchorTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcTendonAnchorType() : base() { }
|
||||
public IfcTendonAnchorType(DatabaseIfc db, string name, IfcTendonAnchorTypeEnum predefinedType)
|
||||
|
@ -322,7 +331,7 @@ namespace GeometryGym.Ifc
|
|||
public partial class IfcTendonConduit : IfcReinforcingElement
|
||||
{
|
||||
private IfcTendonConduitTypeEnum mPredefinedType = IfcTendonConduitTypeEnum.NOTDEFINED; //: IfcTendonConduitTypeEnum;
|
||||
public IfcTendonConduitTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcTendonConduitTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcTendonConduitTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcTendonConduit() : base() { }
|
||||
public IfcTendonConduit(DatabaseIfc db, IfcTendonConduitTypeEnum predefinedType)
|
||||
|
@ -333,7 +342,7 @@ namespace GeometryGym.Ifc
|
|||
public partial class IfcTendonConduitType : IfcReinforcingElementType
|
||||
{
|
||||
private IfcTendonConduitTypeEnum mPredefinedType = IfcTendonConduitTypeEnum.NOTDEFINED; //: IfcTendonConduitTypeEnum;
|
||||
public IfcTendonConduitTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcTendonConduitTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcTendonConduitTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcTendonConduitType() : base() { }
|
||||
public IfcTendonConduitType(DatabaseIfc db, string name, IfcTendonConduitTypeEnum predefinedType)
|
||||
|
@ -342,32 +351,33 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcTendonType : IfcReinforcingElementType //IFC4
|
||||
{
|
||||
internal IfcTendonTypeEnum mPredefinedType = IfcTendonTypeEnum.NOTDEFINED;// : IfcTendonType; //IFC4
|
||||
private IfcTendonTypeEnum mPredefinedType = IfcTendonTypeEnum.NOTDEFINED;// : IfcTendonType; //IFC4
|
||||
private double mNominalDiameter;// : IfcPositiveLengthMeasure; IFC4 OPTIONAL
|
||||
internal double mCrossSectionArea;// : IfcAreaMeasure; IFC4 OPTIONAL
|
||||
internal double mSheathDiameter;// : OPTIONAL IfcPositiveLengthMeasure;
|
||||
|
||||
public IfcTendonTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcTendonTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcTendonTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
public double NominalDiameter { get { return mNominalDiameter; } set { mNominalDiameter = value; } }
|
||||
|
||||
internal IfcTendonType() : base() { }
|
||||
internal IfcTendonType(DatabaseIfc db, IfcTendonType t, DuplicateOptions options) : base(db, t, options)
|
||||
{
|
||||
mPredefinedType = t.mPredefinedType;
|
||||
PredefinedType = t.PredefinedType;
|
||||
mNominalDiameter = t.mNominalDiameter;
|
||||
mCrossSectionArea = t.mCrossSectionArea;
|
||||
mSheathDiameter = t.mSheathDiameter;
|
||||
}
|
||||
public IfcTendonType(DatabaseIfc db, string name, IfcTendonTypeEnum type)
|
||||
: base(db) { Name = name; mPredefinedType = type; }
|
||||
: base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
[Serializable]
|
||||
public partial class IfcTerminatorSymbol : IfcAnnotationSymbolOccurrence // DEPRECATED IFC4
|
||||
{
|
||||
internal int mAnnotatedCurve;// : IfcAnnotationCurveOccurrence;
|
||||
internal IfcAnnotationCurveOccurrence mAnnotatedCurve;// : IfcAnnotationCurveOccurrence;
|
||||
internal IfcTerminatorSymbol() : base() { }
|
||||
//internal IfcTerminatorSymbol(IfcTerminatorSymbol i) : base(i) { mAnnotatedCurve = i.mAnnotatedCurve; }
|
||||
internal IfcTerminatorSymbol(IfcAnnotationCurveOccurrence curve) : base(curve.Database) { mAnnotatedCurve = curve; }
|
||||
internal IfcTerminatorSymbol(DatabaseIfc db, IfcTerminatorSymbol s, DuplicateOptions options) : base(db, s, options) { mAnnotatedCurve = db.Factory.Duplicate(s.mAnnotatedCurve); }
|
||||
}
|
||||
[Serializable]
|
||||
public abstract partial class IfcTessellatedFaceSet : IfcTessellatedItem, IfcBooleanOperand //ABSTRACT SUPERTYPE OF(IfcTriangulatedFaceSet, IfcPolygonalFaceSet )
|
||||
|
@ -400,36 +410,46 @@ namespace GeometryGym.Ifc
|
|||
public partial class IfcTextLiteral : IfcGeometricRepresentationItem //SUPERTYPE OF (IfcTextLiteralWithExtent)
|
||||
{
|
||||
internal string mLiteral = "";// : IfcPresentableText;
|
||||
internal int mPlacement;// : IfcAxis2Placement;
|
||||
internal IfcAxis2Placement mPlacement;// : IfcAxis2Placement;
|
||||
internal IfcTextPath mPath;// : IfcTextPath;
|
||||
|
||||
public string Literal { get { return ParserIfc.Decode(mLiteral); } set { mLiteral = ParserIfc.Encode(value); } }
|
||||
public IfcAxis2Placement Placement { get { return mDatabase[mPlacement] as IfcAxis2Placement; } }
|
||||
public IfcAxis2Placement Placement { get { return mPlacement; } }
|
||||
public IfcTextPath Path { get { return mPath; } set { mPath = value; } }
|
||||
|
||||
internal IfcTextLiteral() : base() { }
|
||||
internal IfcTextLiteral(DatabaseIfc db, IfcTextLiteral l, DuplicateOptions options) : base(db, l, options) { mLiteral = l.mLiteral; mPlacement = db.Factory.Duplicate(l.mDatabase[l.mPlacement]).mIndex; mPath = l.mPath; }
|
||||
internal IfcTextLiteral(DatabaseIfc db, IfcTextLiteral l, DuplicateOptions options) : base(db, l, options)
|
||||
{
|
||||
mLiteral = l.mLiteral;
|
||||
mPlacement = db.Factory.Duplicate<IfcAxis2Placement>(l.mPlacement);
|
||||
mPath = l.mPath;
|
||||
}
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcTextLiteralWithExtent : IfcTextLiteral
|
||||
{
|
||||
internal int mExtent;// : IfcPlanarExtent;
|
||||
internal string mBoxAlignment;// : IfcBoxAlignment;
|
||||
internal IfcPlanarExtent mExtent;// : IfcPlanarExtent;
|
||||
internal string mBoxAlignment = "";// : IfcBoxAlignment;
|
||||
|
||||
public IfcPlanarExtent Extent { get { return mDatabase[mExtent] as IfcPlanarExtent; } }
|
||||
public IfcPlanarExtent Extent { get { return mExtent; } set { mExtent = value; } }
|
||||
|
||||
internal IfcTextLiteralWithExtent() : base() { }
|
||||
//internal IfcTextLiteralWithExtent(IfcTextLiteralWithExtent o) : base(o) { mExtent = o.mExtent; mBoxAlignment = o.mBoxAlignment; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcTextStyle : IfcPresentationStyle, IfcPresentationStyleSelect
|
||||
{
|
||||
internal int mTextCharacterAppearance;// : OPTIONAL IfcCharacterStyleSelect;
|
||||
internal int mTextStyle;// : OPTIONAL IfcTextStyleSelect;
|
||||
internal int mTextFontStyle;// : IfcTextFontSelect;
|
||||
internal IfcCharacterStyleSelect mTextCharacterAppearance;// : OPTIONAL IfcCharacterStyleSelect;
|
||||
internal IfcTextStyleSelect mTextStyle;// : OPTIONAL IfcTextStyleSelect;
|
||||
internal IfcTextFontSelect mTextFontStyle;// : IfcTextFontSelect;
|
||||
internal bool mModelOrDraughting = true;// : OPTIONAL BOOLEAN; IFC4CHANGE
|
||||
internal IfcTextStyle() : base() { }
|
||||
// internal IfcTextStyle(IfcTextStyle v) : base(v) { mTextCharacterAppearance = v.mTextCharacterAppearance; mTextStyle = v.mTextStyle; mTextFontStyle = v.mTextFontStyle; mModelOrDraughting = v.mModelOrDraughting; }
|
||||
internal IfcTextStyle(DatabaseIfc db, IfcTextStyle v) : base(db, v)
|
||||
{
|
||||
mTextCharacterAppearance = db.Factory.Duplicate<IfcCharacterStyleSelect>(v.mTextCharacterAppearance);
|
||||
mTextStyle = db.Factory.Duplicate<IfcTextStyleSelect>(v.mTextStyle);
|
||||
mTextFontStyle = db.Factory.Duplicate<IfcTextFontSelect>(v.mTextFontStyle);
|
||||
mModelOrDraughting = v.mModelOrDraughting;
|
||||
}
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcTextStyleFontModel : IfcPreDefinedTextFont
|
||||
|
@ -452,13 +472,14 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcTextStyleForDefinedFont : IfcPresentationItem
|
||||
{
|
||||
internal int mColour;// : IfcColour;
|
||||
internal int mBackgroundColour;// : OPTIONAL IfcColour;
|
||||
internal IfcColour mColour;// : IfcColour;
|
||||
internal IfcColour mBackgroundColour;// : OPTIONAL IfcColour;
|
||||
internal IfcTextStyleForDefinedFont() : base() { }
|
||||
// internal IfcTextStyleForDefinedFont(IfcTextStyleForDefinedFont o) : base() { mColour = o.mColour; mBackgroundColour = o.mBackgroundColour; }
|
||||
}
|
||||
public interface IfcTextStyleSelect : IBaseClassIfc { } // SELECT(IfcTextStyleWithBoxCharacteristics, IfcTextStyleTextModel);
|
||||
[Serializable]
|
||||
public partial class IfcTextStyleTextModel : IfcPresentationItem
|
||||
public partial class IfcTextStyleTextModel : IfcPresentationItem, IfcTextStyleSelect
|
||||
{
|
||||
private IfcSizeSelect mTextIndent = null; //: OPTIONAL IfcSizeSelect;
|
||||
private string mTextAlign = ""; //: OPTIONAL IfcTextAlignment;
|
||||
|
@ -479,8 +500,26 @@ namespace GeometryGym.Ifc
|
|||
public IfcTextStyleTextModel() : base() { }
|
||||
public IfcTextStyleTextModel(DatabaseIfc db) : base(db) { }
|
||||
}
|
||||
//[Obsolete("DEPRECATED IFC4", false)]
|
||||
//ENTITY IfcTextStyleWithBoxCharacteristics; // DEPRECATED IFC4
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
[Serializable]
|
||||
public partial class IfcTextStyleWithBoxCharacteristics : BaseClassIfc, IfcTextStyleSelect // DEPRECATED IFC4
|
||||
{
|
||||
internal double mBoxHeight = double.NaN;// : OPTIONAL IfcPositiveLengthMeasure;
|
||||
internal double mBoxWidth = double.NaN;// : OPTIONAL IfcPositiveLengthMeasure;
|
||||
internal double mBoxSlantAngle = double.NaN;// : OPTIONAL IfcPlaneAngleMeasure;
|
||||
internal double mBoxRotateAngle = double.NaN;// : OPTIONAL IfcPlaneAngleMeasure;
|
||||
internal IfcSizeSelect mCharacterSpacing = null;// : OPTIONAL IfcSizeSelect
|
||||
internal IfcTextStyleWithBoxCharacteristics() : base() { }
|
||||
internal IfcTextStyleWithBoxCharacteristics(DatabaseIfc db, IfcTextStyleWithBoxCharacteristics p, DuplicateOptions options)
|
||||
: base(db)
|
||||
{
|
||||
mBoxHeight = p.mBoxHeight;
|
||||
mBoxWidth = p.mBoxWidth;
|
||||
mBoxSlantAngle = p.mBoxSlantAngle;
|
||||
mBoxRotateAngle = p.mBoxRotateAngle;
|
||||
mCharacterSpacing = p.mCharacterSpacing;
|
||||
}
|
||||
}
|
||||
[Serializable]
|
||||
public abstract partial class IfcTextureCoordinate : IfcPresentationItem //ABSTRACT SUPERTYPE OF(ONEOF(IfcIndexedTextureMap, IfcTextureCoordinateGenerator, IfcTextureMap))
|
||||
{
|
||||
|
@ -496,10 +535,10 @@ namespace GeometryGym.Ifc
|
|||
public partial class IfcTextureCoordinateGenerator : IfcTextureCoordinate
|
||||
{
|
||||
private string mMode = ""; //: IfcLabel;
|
||||
private LIST<double> mParameter = new LIST<double>(); //: OPTIONAL LIST[1:?] OF IfcReal;
|
||||
private List<double> mParameter = new List<double>(); //: OPTIONAL LIST[1:?] OF IfcReal;
|
||||
|
||||
public string Mode { get { return mMode; } set { mMode = value; } }
|
||||
public LIST<double> Parameter { get { return mParameter; } set { mParameter = value; } }
|
||||
public List<double> Parameter { get { return mParameter; } }
|
||||
|
||||
public IfcTextureCoordinateGenerator() : base() { }
|
||||
public IfcTextureCoordinateGenerator(IEnumerable<IfcSurfaceTexture> maps, string mode)
|
||||
|
@ -612,23 +651,23 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcTimePeriod : BaseClassIfc // IFC4
|
||||
{
|
||||
internal string mStart; //: IfcTime;
|
||||
internal string mFinish; //: IfcTime;
|
||||
internal DateTime mStart; //: IfcTime;
|
||||
internal DateTime mFinish; //: IfcTime;
|
||||
internal IfcTimePeriod() : base() { }
|
||||
internal IfcTimePeriod(IfcTimePeriod m) : base() { mStart = m.mStart; mFinish = m.mFinish; }
|
||||
public IfcTimePeriod(DatabaseIfc m, DateTime start, DateTime finish) : base(m) { mStart = IfcTime.convert(start); mFinish = IfcTime.convert(finish); }
|
||||
public IfcTimePeriod(DatabaseIfc db, DateTime start, DateTime finish) : base(db) { mStart = start; mFinish = finish; }
|
||||
}
|
||||
[Serializable]
|
||||
public abstract partial class IfcTimeSeries : BaseClassIfc, IfcMetricValueSelect, IfcObjectReferenceSelect, IfcResourceObjectSelect, NamedObjectIfc
|
||||
{ // ABSTRACT SUPERTYPE OF (ONEOF(IfcIrregularTimeSeries,IfcRegularTimeSeries));
|
||||
internal string mName = "";// : OPTIONAL IfcLabel;
|
||||
internal string mName = "";// : IfcLabel;
|
||||
internal string mDescription = "";// : OPTIONAL IfcText;
|
||||
internal int mStartTime;// : IfcDateTimeSelect;
|
||||
internal int mEndTime;// : IfcDateTimeSelect;
|
||||
internal IfcDateTimeSelect mStartTime;// : IfcDateTimeSelect;
|
||||
internal IfcDateTimeSelect mEndTime;// : IfcDateTimeSelect;
|
||||
internal IfcTimeSeriesDataTypeEnum mTimeSeriesDataType = IfcTimeSeriesDataTypeEnum.NOTDEFINED;// : IfcTimeSeriesDataTypeEnum;
|
||||
internal IfcDataOriginEnum mDataOrigin = IfcDataOriginEnum.NOTDEFINED;// : IfcDataOriginEnum;
|
||||
internal string mUserDefinedDataOrigin = "";// : OPTIONAL IfcLabel;
|
||||
internal int mUnit;// : OPTIONAL IfcUnit;
|
||||
internal IfcUnit mUnit;// : OPTIONAL IfcUnit;
|
||||
//INVERSE
|
||||
private SET<IfcExternalReferenceRelationship> mHasExternalReference = new SET<IfcExternalReferenceRelationship>(); //IFC4 SET [0:?] OF IfcExternalReferenceRelationship FOR RelatedResourceObjects;
|
||||
internal SET<IfcResourceConstraintRelationship> mHasConstraintRelationships = new SET<IfcResourceConstraintRelationship>(); //gg
|
||||
|
@ -638,26 +677,24 @@ namespace GeometryGym.Ifc
|
|||
public SET<IfcResourceConstraintRelationship> HasConstraintRelationships { get { return mHasConstraintRelationships; } }
|
||||
|
||||
protected IfcTimeSeries() : base() { }
|
||||
//protected IfcTimeSeries(DatabaseIfc db, IfcTimeSeries i)
|
||||
// : base(db,i)
|
||||
//{
|
||||
// mName = i.mName;
|
||||
// mDescription = i.mDescription;
|
||||
// mStartTime = i.mStartTime;
|
||||
// mEndTime = i.mEndTime;
|
||||
// mTimeSeriesDataType = i.mTimeSeriesDataType;
|
||||
// mDataOrigin = i.mDataOrigin;
|
||||
// mUserDefinedDataOrigin = i.mUserDefinedDataOrigin;
|
||||
// mUnit = i.mUnit;
|
||||
//}
|
||||
protected IfcTimeSeries(DatabaseIfc db, IfcTimeSeries s) : base(db,s)
|
||||
{
|
||||
mName = s.mName;
|
||||
mDescription = s.mDescription;
|
||||
mStartTime = db.Factory.Duplicate<IfcDateTimeSelect>(s.mStartTime);
|
||||
mEndTime = db.Factory.Duplicate<IfcDateTimeSelect>(s.mEndTime);
|
||||
mTimeSeriesDataType = s.mTimeSeriesDataType;
|
||||
mDataOrigin = s.mDataOrigin;
|
||||
mUserDefinedDataOrigin = s.mUserDefinedDataOrigin;
|
||||
mUnit = db.Factory.Duplicate<IfcUnit>(s.mUnit);
|
||||
}
|
||||
protected IfcTimeSeries(DatabaseIfc db) : base(db) { }
|
||||
protected IfcTimeSeries(DatabaseIfc db, string name, DateTime startTime, DateTime endTime, IfcTimeSeriesDataTypeEnum timeSeriesDataType, IfcDataOriginEnum dataOrigin)
|
||||
: base(db)
|
||||
protected IfcTimeSeries(string name, IfcDateTimeSelect startTime, IfcDateTimeSelect endTime, IfcTimeSeriesDataTypeEnum timeSeriesDataType, IfcDataOriginEnum dataOrigin)
|
||||
: base(startTime.Database)
|
||||
{
|
||||
Name = name;
|
||||
//mStartTime = startTime;
|
||||
//mEndTime = endTime;
|
||||
#warning TODO
|
||||
mStartTime = startTime;
|
||||
mEndTime = endTime;
|
||||
mTimeSeriesDataType = timeSeriesDataType;
|
||||
mDataOrigin = dataOrigin;
|
||||
}
|
||||
|
@ -749,22 +786,22 @@ namespace GeometryGym.Ifc
|
|||
internal IfcToroidalSurface(DatabaseIfc db, IfcToroidalSurface s, DuplicateOptions options) : base(db, s, options) { mMajorRadius = s.mMajorRadius; mMinorRadius = s.mMinorRadius; }
|
||||
public IfcToroidalSurface(IfcAxis2Placement3D placement, double majorRadius, double minorRadius) : base(placement) { MajorRadius = majorRadius; MinorRadius = minorRadius; }
|
||||
}
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X3)]
|
||||
public partial class IfcTrackElement : IfcBuiltElement
|
||||
{
|
||||
private IfcTrackElementTypeEnum mPredefinedType = IfcTrackElementTypeEnum.NOTDEFINED; //: OPTIONAL IfcTrackElementTypeEnum;
|
||||
public IfcTrackElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcTrackElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcTrackElementTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcTrackElement() : base() { }
|
||||
public IfcTrackElement(DatabaseIfc db) : base(db) { }
|
||||
public IfcTrackElement(DatabaseIfc db, IfcTrackElement trackElement, DuplicateOptions options) : base(db, trackElement, options) { PredefinedType = trackElement.PredefinedType; }
|
||||
public IfcTrackElement(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
}
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X3)]
|
||||
public partial class IfcTrackElementType : IfcBuiltElementType
|
||||
{
|
||||
private IfcTrackElementTypeEnum mPredefinedType = IfcTrackElementTypeEnum.NOTDEFINED; //: IfcTrackElementTypeEnum;
|
||||
public IfcTrackElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcTrackElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcTrackElementTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcTrackElementType() : base() { }
|
||||
public IfcTrackElementType(DatabaseIfc db, IfcTrackElementType trackElementType, DuplicateOptions options) : base(db, trackElementType, options) { PredefinedType = trackElementType.PredefinedType; }
|
||||
|
@ -774,22 +811,22 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcTransformer : IfcEnergyConversionDevice //IFC4
|
||||
{
|
||||
internal IfcTransformerTypeEnum mPredefinedType = IfcTransformerTypeEnum.NOTDEFINED;// OPTIONAL : IfcTransformerTypeEnum;
|
||||
public IfcTransformerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcTransformerTypeEnum mPredefinedType = IfcTransformerTypeEnum.NOTDEFINED;// OPTIONAL : IfcTransformerTypeEnum;
|
||||
public IfcTransformerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcTransformerTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcTransformer() : base() { }
|
||||
internal IfcTransformer(DatabaseIfc db, IfcTransformer t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
internal IfcTransformer(DatabaseIfc db, IfcTransformer t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcTransformer(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcTransformerType : IfcEnergyConversionDeviceType
|
||||
{
|
||||
internal IfcTransformerTypeEnum mPredefinedType = IfcTransformerTypeEnum.NOTDEFINED;// : IfcTransformerEnum;
|
||||
public IfcTransformerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcTransformerTypeEnum mPredefinedType = IfcTransformerTypeEnum.NOTDEFINED;// : IfcTransformerEnum;
|
||||
public IfcTransformerTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcTransformerTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcTransformerType() : base() { }
|
||||
internal IfcTransformerType(DatabaseIfc db, IfcTransformerType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcTransformerType(DatabaseIfc m, string name, IfcTransformerTypeEnum type) : base(m) { Name = name; mPredefinedType = type; }
|
||||
internal IfcTransformerType(DatabaseIfc db, IfcTransformerType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcTransformerType(DatabaseIfc db, string name, IfcTransformerTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
[Obsolete("DEPRECATED IFC4X3", false)]
|
||||
[Serializable]
|
||||
|
@ -843,18 +880,17 @@ namespace GeometryGym.Ifc
|
|||
public abstract partial class IfcTransportationDeviceType : IfcElementType //ABSTRACT SUPERTYPE OF (ONEOF (IfcTransportElementType , IfcVehicleType))
|
||||
{
|
||||
internal IfcTransportationDeviceType() : base() { }
|
||||
internal IfcTransportationDeviceType(IfcTransportationDeviceType basis) : base(basis) { }
|
||||
public IfcTransportationDeviceType(DatabaseIfc db) : base(db) { }
|
||||
protected IfcTransportationDeviceType(DatabaseIfc db, IfcTransportationDeviceType t, DuplicateOptions options) : base(db, t, options) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcTransportElement : IfcTransportationDevice
|
||||
{
|
||||
internal IfcTransportElementTypeEnum mPredefinedType = IfcTransportElementTypeEnum.NOTDEFINED;// : OPTIONAL IfcTransportElementTypeEnum;
|
||||
private IfcTransportElementTypeEnum mPredefinedType = IfcTransportElementTypeEnum.NOTDEFINED;// : OPTIONAL IfcTransportElementTypeEnum;
|
||||
internal double mCapacityByWeight = double.NaN;// : OPTIONAL IfcMassMeasure;
|
||||
internal double mCapacityByNumber = double.NaN;// : OPTIONAL IfcCountMeasure;
|
||||
|
||||
public IfcTransportElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcTransportElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcTransportElementTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
//public double CapacityByWeight { get { return mCapacityByWeight; } set { mCapacityByWeight = value; } }
|
||||
//public double CapacityByNumber { get { return CapacityByNumber; } set { mCapacityByNumber = value; } }
|
||||
|
||||
|
@ -865,12 +901,12 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcTransportElementType : IfcTransportationDeviceType
|
||||
{
|
||||
internal IfcTransportElementTypeEnum mPredefinedType = IfcTransportElementTypeEnum.NOTDEFINED;// IfcTransportElementTypeEnum;
|
||||
public IfcTransportElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcTransportElementTypeEnum mPredefinedType = IfcTransportElementTypeEnum.NOTDEFINED;// IfcTransportElementTypeEnum;
|
||||
public IfcTransportElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcTransportElementTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcTransportElementType() : base() { }
|
||||
internal IfcTransportElementType(DatabaseIfc db, IfcTransportElementType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcTransportElementType(DatabaseIfc db, string name, IfcTransportElementTypeEnum type) : base(db) { Name = name; mPredefinedType = type; }
|
||||
internal IfcTransportElementType(DatabaseIfc db, IfcTransportElementType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcTransportElementType(DatabaseIfc db, string name, IfcTransportElementTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcTrapeziumProfileDef : IfcParameterizedProfileDef
|
||||
|
@ -926,6 +962,8 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcTriangulatedIrregularNetwork : IfcTriangulatedFaceSet
|
||||
{
|
||||
public override string StepClassName { get { return (mDatabase != null && mDatabase.mRelease < ReleaseVersion.IFC4X1) ? "IfcTriangulatedFaceSet" : base.StepClassName; } }
|
||||
|
||||
internal List<int> mFlags = new List<int>(); // : LIST [1:?] OF IfcInteger;
|
||||
public List<int> Flags { get { return mFlags; } }
|
||||
|
||||
|
@ -957,12 +995,12 @@ namespace GeometryGym.Ifc
|
|||
internal IfcTrimmedCurve(DatabaseIfc db, IfcTrimmedCurve c, DuplicateOptions options) : base(db, c, options)
|
||||
{
|
||||
BasisCurve = db.Factory.Duplicate(c.BasisCurve) as IfcCurve;
|
||||
mTrim1 = new IfcTrimmingSelect(c.mTrim1.mIfcParameterValue);
|
||||
mTrim2 = new IfcTrimmingSelect(c.mTrim2.mIfcParameterValue);
|
||||
if (c.mTrim1.mIfcCartesianPoint > 0)
|
||||
mTrim1.mIfcCartesianPoint = db.Factory.Duplicate(c.mDatabase[c.mTrim1.mIfcCartesianPoint]).mIndex;
|
||||
if (c.mTrim2.mIfcCartesianPoint > 0)
|
||||
mTrim2.mIfcCartesianPoint = db.Factory.Duplicate(c.mDatabase[c.mTrim2.mIfcCartesianPoint]).mIndex;
|
||||
mTrim1 = new IfcTrimmingSelect(c.mTrim1.ParameterValue);
|
||||
mTrim2 = new IfcTrimmingSelect(c.mTrim2.ParameterValue);
|
||||
if (c.mTrim1.CartesianPoint != null)
|
||||
mTrim1.CartesianPoint = db.Factory.Duplicate(c.mTrim1.CartesianPoint);
|
||||
if (c.mTrim2.CartesianPoint != null)
|
||||
mTrim2.CartesianPoint = db.Factory.Duplicate(c.mTrim2.CartesianPoint);
|
||||
mSenseAgreement = c.mSenseAgreement;
|
||||
mMasterRepresentation = c.mMasterRepresentation;
|
||||
}
|
||||
|
@ -1033,16 +1071,16 @@ namespace GeometryGym.Ifc
|
|||
public IfcTrimmingSelect() { }
|
||||
public IfcTrimmingSelect(IfcCartesianPoint cp)
|
||||
{
|
||||
mIfcParameterValue = double.NaN;
|
||||
mIfcCartesianPoint = (cp != null ? cp.mIndex : 0);
|
||||
mParameterValue = double.NaN;
|
||||
mCartesianPoint = cp;
|
||||
}
|
||||
public IfcTrimmingSelect(double param) { mIfcParameterValue = param; }
|
||||
public IfcTrimmingSelect(double param, IfcCartesianPoint cp) : this(cp) { mIfcParameterValue = param; }
|
||||
public IfcTrimmingSelect(double param) { mParameterValue = param; }
|
||||
public IfcTrimmingSelect(double param, IfcCartesianPoint cp) : this(cp) { mParameterValue = param; }
|
||||
|
||||
internal double mIfcParameterValue = double.NaN;
|
||||
public double IfcParameterValue { get { return mIfcParameterValue; } }
|
||||
internal int mIfcCartesianPoint;
|
||||
public int IfcCartesianPoint { get { return mIfcCartesianPoint; } }
|
||||
internal double mParameterValue = double.NaN;
|
||||
public double ParameterValue { get { return mParameterValue; } set { mParameterValue = value; } }
|
||||
private IfcCartesianPoint mCartesianPoint = null;
|
||||
public IfcCartesianPoint CartesianPoint { get { return mCartesianPoint; } set { mCartesianPoint = value; } }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcTShapeProfileDef : IfcParameterizedProfileDef
|
||||
|
@ -1087,29 +1125,29 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcTubeBundle : IfcEnergyConversionDevice //IFC4
|
||||
{
|
||||
internal IfcTubeBundleTypeEnum mPredefinedType = IfcTubeBundleTypeEnum.NOTDEFINED;// OPTIONAL : IfcTubeBundleTypeEnum;
|
||||
public IfcTubeBundleTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcTubeBundleTypeEnum mPredefinedType = IfcTubeBundleTypeEnum.NOTDEFINED;// OPTIONAL : IfcTubeBundleTypeEnum;
|
||||
public IfcTubeBundleTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcTubeBundleTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcTubeBundle() : base() { }
|
||||
internal IfcTubeBundle(DatabaseIfc db, IfcTubeBundle b, DuplicateOptions options) : base(db, b, options) { mPredefinedType = b.mPredefinedType; }
|
||||
internal IfcTubeBundle(DatabaseIfc db, IfcTubeBundle b, DuplicateOptions options) : base(db, b, options) { PredefinedType = b.PredefinedType; }
|
||||
public IfcTubeBundle(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcTubeBundleType : IfcEnergyConversionDeviceType
|
||||
{
|
||||
internal IfcTubeBundleTypeEnum mPredefinedType = IfcTubeBundleTypeEnum.NOTDEFINED;// : IfcTubeBundleEnum;
|
||||
public IfcTubeBundleTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcTubeBundleTypeEnum mPredefinedType = IfcTubeBundleTypeEnum.NOTDEFINED;// : IfcTubeBundleEnum;
|
||||
public IfcTubeBundleTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcTubeBundleTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcTubeBundleType() : base() { }
|
||||
internal IfcTubeBundleType(DatabaseIfc db, IfcTubeBundleType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcTubeBundleType(DatabaseIfc m, string name, IfcTubeBundleTypeEnum t) : base(m) { Name = name; PredefinedType = t; }
|
||||
internal IfcTubeBundleType(DatabaseIfc db, IfcTubeBundleType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcTubeBundleType(DatabaseIfc db, string name, IfcTubeBundleTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
[Serializable]
|
||||
public partial class IfcTwoDirectionRepeatFactor : IfcOneDirectionRepeatFactor // DEPRECATED IFC4
|
||||
{
|
||||
internal int mSecondRepeatFactor;// : IfcVector
|
||||
public IfcVector SecondRepeatFactor { get { return mDatabase[mSecondRepeatFactor] as IfcVector; } set { mSecondRepeatFactor = value.mIndex; } }
|
||||
internal IfcVector mSecondRepeatFactor;// : IfcVector
|
||||
public IfcVector SecondRepeatFactor { get { return mSecondRepeatFactor; } set { mSecondRepeatFactor = value; } }
|
||||
|
||||
internal IfcTwoDirectionRepeatFactor() : base() { }
|
||||
internal IfcTwoDirectionRepeatFactor(DatabaseIfc db, IfcTwoDirectionRepeatFactor f, DuplicateOptions options) : base(db, f, options) { SecondRepeatFactor = db.Factory.Duplicate(f.SecondRepeatFactor) as IfcVector; }
|
||||
|
@ -1133,7 +1171,6 @@ namespace GeometryGym.Ifc
|
|||
public new string Name { get { return base.Name; } set { base.Name = string.IsNullOrEmpty( value) ? "NameNotAssigned" : value; } }
|
||||
|
||||
protected IfcTypeObject() : base() { Name = "NameNotAssigned"; }
|
||||
protected IfcTypeObject(IfcTypeObject basis) : base(basis, false) { mApplicableOccurrence = basis.mApplicableOccurrence; mHasPropertySets = basis.mHasPropertySets; mTypes = basis.mTypes; }
|
||||
protected IfcTypeObject(DatabaseIfc db, IfcTypeObject t, DuplicateOptions options) : base(db, t, options)
|
||||
{
|
||||
mApplicableOccurrence = t.mApplicableOccurrence;
|
||||
|
@ -1395,40 +1432,6 @@ namespace GeometryGym.Ifc
|
|||
|
||||
db.WriteFile(filename);
|
||||
}
|
||||
|
||||
internal void SetPredefinedType(string predefinedTypeConstant, string enumName)
|
||||
{
|
||||
IfcElementType elementType = this as IfcElementType;
|
||||
Type type = GetType();
|
||||
PropertyInfo pi = type.GetProperty("PredefinedType");
|
||||
if (pi != null)
|
||||
{
|
||||
Type enumType = pi.PropertyType;
|
||||
if (enumType != null)
|
||||
{
|
||||
FieldInfo fi = enumType.GetField(predefinedTypeConstant);
|
||||
if (fi == null)
|
||||
{
|
||||
if (elementType != null)
|
||||
elementType.ElementType = predefinedTypeConstant;
|
||||
fi = enumType.GetField("USERDEFINED");
|
||||
}
|
||||
if (fi != null)
|
||||
{
|
||||
int i = (int)fi.GetValue(enumType);
|
||||
object newEnumValue = Enum.ToObject(enumType, i);
|
||||
|
||||
pi.SetValue(this, newEnumValue);
|
||||
}
|
||||
else if (elementType != null)
|
||||
elementType.ElementType = predefinedTypeConstant;
|
||||
}
|
||||
else if (elementType != null)
|
||||
elementType.ElementType = predefinedTypeConstant;
|
||||
}
|
||||
else if (elementType != null)
|
||||
elementType.ElementType = predefinedTypeConstant;
|
||||
}
|
||||
}
|
||||
[Serializable]
|
||||
public abstract partial class IfcTypeProcess : IfcTypeObject, IfcProcessSelect //ABSTRACT SUPERTYPE OF(ONEOF(IfcEventType, IfcProcedureType, IfcTaskType))
|
||||
|
@ -1462,11 +1465,6 @@ namespace GeometryGym.Ifc
|
|||
public SET<IfcRelAssignsToProduct> ReferencedBy { get { return mReferencedBy; } }
|
||||
|
||||
protected IfcTypeProduct() : base() { }
|
||||
protected IfcTypeProduct(IfcTypeProduct basis) : base(basis)
|
||||
{
|
||||
mRepresentationMaps = basis.mRepresentationMaps;
|
||||
mTag = basis.mTag;
|
||||
}
|
||||
protected IfcTypeProduct(DatabaseIfc db, IfcTypeProduct t, DuplicateOptions options) : base(db, t, options)
|
||||
{
|
||||
if(options.DuplicateRepresentation)
|
||||
|
@ -1523,35 +1521,38 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
}
|
||||
|
||||
internal IfcElement genMappedItemElement(IfcProduct host, IfcAxis2Placement3D relativePlacement)
|
||||
internal IfcProduct GenerateMappedProduct(IfcProduct host, IfcAxis2Placement3D relativePlacement)
|
||||
{
|
||||
DatabaseIfc db = host.Database;
|
||||
string typename = this.GetType().Name;
|
||||
typename = typename.Substring(0, typename.Length - 4);
|
||||
IfcShapeRepresentation sr = new IfcShapeRepresentation(new IfcMappedItem(RepresentationMaps[0], db.Factory.XYPlaneTransformation));
|
||||
IfcProductDefinitionShape pds = new IfcProductDefinitionShape(sr);
|
||||
IfcElement element = db.Factory.ConstructElement(typename, host, new IfcLocalPlacement(host.ObjectPlacement, relativePlacement), pds);
|
||||
element.setRelatingType(this);
|
||||
foreach (IfcRelNests nests in IsNestedBy)
|
||||
IfcProduct product = db.Factory.ConstructProduct(typename, host, new IfcLocalPlacement(host.ObjectPlacement, relativePlacement), pds);
|
||||
product.setRelatingType(this);
|
||||
if (product is IfcElement element)
|
||||
{
|
||||
foreach (IfcObjectDefinition od in nests.RelatedObjects)
|
||||
foreach (IfcRelNests nests in IsNestedBy)
|
||||
{
|
||||
IfcDistributionPort port = od as IfcDistributionPort;
|
||||
if (port != null)
|
||||
foreach (IfcObjectDefinition od in nests.RelatedObjects)
|
||||
{
|
||||
IfcDistributionPort newPort = new IfcDistributionPort(element) { FlowDirection = port.FlowDirection, PredefinedType = port.PredefinedType, SystemType = port.SystemType };
|
||||
newPort.ObjectPlacement = new IfcLocalPlacement(element.ObjectPlacement, (port.ObjectPlacement as IfcLocalPlacement).RelativePlacement);
|
||||
foreach (IfcRelDefinesByProperties rdp in port.mIsDefinedBy)
|
||||
rdp.RelatedObjects.Add(newPort);
|
||||
IfcDistributionPort port = od as IfcDistributionPort;
|
||||
if (port != null)
|
||||
{
|
||||
IfcDistributionPort newPort = new IfcDistributionPort(element) { FlowDirection = port.FlowDirection, PredefinedType = port.PredefinedType, SystemType = port.SystemType };
|
||||
newPort.ObjectPlacement = new IfcLocalPlacement(element.ObjectPlacement, (port.ObjectPlacement as IfcLocalPlacement).RelativePlacement);
|
||||
foreach (IfcRelDefinesByProperties rdp in port.mIsDefinedBy)
|
||||
rdp.RelatedObjects.Add(newPort);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
foreach(IfcPropertySet pset in HasPropertySets.OfType<IfcPropertySet>())
|
||||
{
|
||||
if (pset.IsInstancePropertySet())
|
||||
pset.RelateObjectDefinition(element);
|
||||
pset.RelateObjectDefinition(product);
|
||||
}
|
||||
return element;
|
||||
return product;
|
||||
}
|
||||
|
||||
public static IfcTypeProduct ConstructType(DatabaseIfc db, string className, string name)
|
||||
|
@ -1566,12 +1567,21 @@ namespace GeometryGym.Ifc
|
|||
definedType = fields[1];
|
||||
}
|
||||
}
|
||||
if (!str.ToLower().EndsWith("Type"))
|
||||
str = str + "Type";
|
||||
if (!str.ToLower().EndsWith("type"))
|
||||
str = str + "type";
|
||||
if (db.Release < ReleaseVersion.IFC4X3)
|
||||
{
|
||||
if (string.Compare(str, "IfcBuiltElementType", true) == 0)
|
||||
str = "IfcBuildingElementProxyType";
|
||||
}
|
||||
IfcTypeProduct result = null;
|
||||
Type type = BaseClassIfc.GetType(str);
|
||||
if (type != null)
|
||||
{
|
||||
VersionAddedAttribute versionAdded = type.GetCustomAttribute(typeof(VersionAddedAttribute)) as VersionAddedAttribute;
|
||||
if (versionAdded != null && versionAdded.Release > db.Release)
|
||||
type = typeof(IfcBuildingElementProxyType);
|
||||
|
||||
Type enumType = Type.GetType("GeometryGym.Ifc." + type.Name + "Enum");
|
||||
ConstructorInfo ctor = type.GetConstructor(BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new[] { typeof(DatabaseIfc), typeof(string) }, null);
|
||||
if (ctor == null)
|
||||
|
@ -1579,46 +1589,18 @@ namespace GeometryGym.Ifc
|
|||
ctor = type.GetConstructor(BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, null, new[] { typeof(DatabaseIfc), typeof(string), enumType }, null);
|
||||
if (ctor == null)
|
||||
throw new Exception("XXX Unrecognized Ifc Constructor for " + className);
|
||||
else
|
||||
else
|
||||
{
|
||||
object predefined = Enum.Parse(enumType, "NOTDEFINED");
|
||||
result = ctor.Invoke(new object[] { db, name,predefined }) as IfcTypeProduct;
|
||||
result = ctor.Invoke(new object[] { db, name, predefined}) as IfcTypeProduct;
|
||||
}
|
||||
}
|
||||
else
|
||||
result = ctor.Invoke(new object[] { db, name }) as IfcTypeProduct;
|
||||
|
||||
|
||||
if (result != null && !string.IsNullOrEmpty(definedType))
|
||||
{
|
||||
IfcElementType et = result as IfcElementType;
|
||||
type = result.GetType();
|
||||
PropertyInfo pi = type.GetProperty("PredefinedType");
|
||||
if (pi != null)
|
||||
{
|
||||
if (enumType != null)
|
||||
{
|
||||
FieldInfo fi = enumType.GetField(definedType);
|
||||
if (fi == null)
|
||||
{
|
||||
if (et != null)
|
||||
{
|
||||
et.ElementType = definedType;
|
||||
fi = enumType.GetField("NOTDEFINED");
|
||||
}
|
||||
}
|
||||
if (fi != null)
|
||||
{
|
||||
int i = (int)fi.GetValue(enumType);
|
||||
object newEnumValue = Enum.ToObject(enumType, i);
|
||||
pi.SetValue(result, newEnumValue, null);
|
||||
}
|
||||
else if (et != null)
|
||||
et.ElementType = definedType;
|
||||
}
|
||||
else if (et != null)
|
||||
et.ElementType = definedType;
|
||||
}
|
||||
result.SetPredefinedType(definedType);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
|
|
|
@ -32,42 +32,42 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcUnitaryControlElement : IfcDistributionControlElement //IFC4
|
||||
{
|
||||
internal IfcUnitaryControlElementTypeEnum mPredefinedType = IfcUnitaryControlElementTypeEnum.NOTDEFINED;
|
||||
public IfcUnitaryControlElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcUnitaryControlElementTypeEnum mPredefinedType = IfcUnitaryControlElementTypeEnum.NOTDEFINED;
|
||||
public IfcUnitaryControlElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcUnitaryControlElementTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcUnitaryControlElement() : base() { }
|
||||
internal IfcUnitaryControlElement(DatabaseIfc db, IfcUnitaryControlElement e, DuplicateOptions options) : base(db, e, options) { mPredefinedType = e.mPredefinedType; }
|
||||
internal IfcUnitaryControlElement(DatabaseIfc db, IfcUnitaryControlElement e, DuplicateOptions options) : base(db, e, options) { PredefinedType = e.PredefinedType; }
|
||||
public IfcUnitaryControlElement(IfcObjectDefinition host, IfcObjectPlacement p, IfcProductDefinitionShape r, IfcDistributionSystem system) : base(host,p,r, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcUnitaryControlElementType : IfcDistributionControlElementType
|
||||
{
|
||||
internal IfcUnitaryControlElementTypeEnum mPredefinedType = IfcUnitaryControlElementTypeEnum.NOTDEFINED;// : IfcUnitaryControlElementTypeEnum;
|
||||
public IfcUnitaryControlElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcUnitaryControlElementTypeEnum mPredefinedType = IfcUnitaryControlElementTypeEnum.NOTDEFINED;// : IfcUnitaryControlElementTypeEnum;
|
||||
public IfcUnitaryControlElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcUnitaryControlElementTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcUnitaryControlElementType() : base() { }
|
||||
internal IfcUnitaryControlElementType(DatabaseIfc db, IfcUnitaryControlElementType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcUnitaryControlElementType(DatabaseIfc db, string name, IfcUnitaryControlElementTypeEnum t) : base(db) { Name = name; mPredefinedType = t; }
|
||||
internal IfcUnitaryControlElementType(DatabaseIfc db, IfcUnitaryControlElementType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcUnitaryControlElementType(DatabaseIfc db, string name, IfcUnitaryControlElementTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcUnitaryEquipment : IfcEnergyConversionDevice //IFC4
|
||||
{
|
||||
internal IfcUnitaryEquipmentTypeEnum mPredefinedType = IfcUnitaryEquipmentTypeEnum.NOTDEFINED;// OPTIONAL : IfcUnitaryEquipmentTypeEnum;
|
||||
public IfcUnitaryEquipmentTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcUnitaryEquipmentTypeEnum mPredefinedType = IfcUnitaryEquipmentTypeEnum.NOTDEFINED;// OPTIONAL : IfcUnitaryEquipmentTypeEnum;
|
||||
public IfcUnitaryEquipmentTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcUnitaryEquipmentTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcUnitaryEquipment() : base() { }
|
||||
internal IfcUnitaryEquipment(DatabaseIfc db, IfcUnitaryEquipment e, DuplicateOptions options) : base(db, e, options) { mPredefinedType = e.mPredefinedType; }
|
||||
internal IfcUnitaryEquipment(DatabaseIfc db, IfcUnitaryEquipment e, DuplicateOptions options) : base(db, e, options) { PredefinedType = e.PredefinedType; }
|
||||
public IfcUnitaryEquipment(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcUnitaryEquipmentType : IfcEnergyConversionDeviceType
|
||||
{
|
||||
internal IfcUnitaryEquipmentTypeEnum mPredefinedType = IfcUnitaryEquipmentTypeEnum.NOTDEFINED;// : IfcUnitaryEquipmentTypeEnum;
|
||||
public IfcUnitaryEquipmentTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcUnitaryEquipmentTypeEnum mPredefinedType = IfcUnitaryEquipmentTypeEnum.NOTDEFINED;// : IfcUnitaryEquipmentTypeEnum;
|
||||
public IfcUnitaryEquipmentTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcUnitaryEquipmentTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcUnitaryEquipmentType() : base() { }
|
||||
internal IfcUnitaryEquipmentType(DatabaseIfc db, IfcUnitaryEquipmentType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcUnitaryEquipmentType(DatabaseIfc m, string name, IfcUnitaryEquipmentTypeEnum type) : base(m) { Name = name; mPredefinedType = type; }
|
||||
internal IfcUnitaryEquipmentType(DatabaseIfc db, IfcUnitaryEquipmentType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcUnitaryEquipmentType(DatabaseIfc db, string name, IfcUnitaryEquipmentTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcUnitAssignment : BaseClassIfc
|
||||
|
@ -78,7 +78,7 @@ namespace GeometryGym.Ifc
|
|||
public SET<IfcUnit> Units { get { return mUnits; } }
|
||||
|
||||
internal IfcUnitAssignment() : base() { }
|
||||
internal IfcUnitAssignment(DatabaseIfc db, IfcUnitAssignment u) : base(db) { Units.AddRange(u.Units.ConvertAll(x => db.Factory.Duplicate(u.mDatabase[x.Index]) as IfcUnit)); }
|
||||
internal IfcUnitAssignment(DatabaseIfc db, IfcUnitAssignment u) : base(db) { Units.AddRange(u.Units.Select(x => db.Factory.Duplicate<IfcUnit>(x))); }
|
||||
public IfcUnitAssignment(DatabaseIfc db) : base(db) { }
|
||||
public IfcUnitAssignment(DatabaseIfc db, Length length) : base(db) { SetUnits(length); }
|
||||
public IfcUnitAssignment(params IfcUnit[] units) : base(units.First().Database) { Units.AddRange(units); }
|
||||
|
@ -142,15 +142,15 @@ namespace GeometryGym.Ifc
|
|||
if (mStructuralSet)
|
||||
return;
|
||||
mStructuralSet = true;
|
||||
DatabaseIfc m = mDatabase;
|
||||
DatabaseIfc db = mDatabase;
|
||||
|
||||
IfcNamedUnit fu = this[IfcUnitEnum.FORCEUNIT];
|
||||
if (fu == null)
|
||||
{
|
||||
fu = new IfcSIUnit(m, IfcUnitEnum.FORCEUNIT, IfcSIPrefix.NONE, IfcSIUnitName.NEWTON);
|
||||
fu = new IfcSIUnit(db, IfcUnitEnum.FORCEUNIT, IfcSIPrefix.NONE, IfcSIUnitName.NEWTON);
|
||||
Units.Add(fu);
|
||||
}
|
||||
IfcSIUnit lengthSI = m.Factory.SILength, volumeSI = m.Factory.SIVolume;
|
||||
IfcSIUnit lengthSI = db.Factory.SILength, volumeSI = db.Factory.SIVolume;
|
||||
if (this[IfcDerivedUnitEnum.TORQUEUNIT] == null)
|
||||
Units.Add(new IfcDerivedUnit(new IfcDerivedUnitElement(fu, 1), new IfcDerivedUnitElement(lengthSI, 1), IfcDerivedUnitEnum.TORQUEUNIT));
|
||||
if (this[IfcDerivedUnitEnum.LINEARFORCEUNIT] == null)
|
||||
|
@ -168,7 +168,7 @@ namespace GeometryGym.Ifc
|
|||
if(this[IfcDerivedUnitEnum.ACCELERATIONUNIT] == null)
|
||||
Units.Add(new IfcDerivedUnit(new IfcDerivedUnitElement(lengthSI, 1), new IfcDerivedUnitElement(time, -2), IfcDerivedUnitEnum.ACCELERATIONUNIT));
|
||||
if(this[IfcUnitEnum.PRESSUREUNIT] == null)
|
||||
Units.Add(new IfcSIUnit(m, IfcUnitEnum.PRESSUREUNIT, IfcSIPrefix.NONE, IfcSIUnitName.PASCAL));
|
||||
Units.Add(new IfcSIUnit(db, IfcUnitEnum.PRESSUREUNIT, IfcSIPrefix.NONE, IfcSIUnitName.PASCAL));
|
||||
if (this[IfcDerivedUnitEnum.SECTIONMODULUSUNIT] == null)
|
||||
Units.Add(new IfcDerivedUnit(new IfcDerivedUnitElement(lengthSI, 3), IfcDerivedUnitEnum.SECTIONMODULUSUNIT));
|
||||
if(this[IfcDerivedUnitEnum.MOMENTOFINERTIAUNIT] == null)
|
||||
|
@ -176,7 +176,7 @@ namespace GeometryGym.Ifc
|
|||
IfcSIUnit massu = this[IfcUnitEnum.MASSUNIT] as IfcSIUnit;
|
||||
if (massu == null)
|
||||
{
|
||||
massu = new IfcSIUnit(m, IfcUnitEnum.MASSUNIT, IfcSIPrefix.KILO, IfcSIUnitName.GRAM);
|
||||
massu = new IfcSIUnit(db, IfcUnitEnum.MASSUNIT, IfcSIPrefix.KILO, IfcSIUnitName.GRAM);
|
||||
Units.Add(massu);
|
||||
}
|
||||
if (this[IfcDerivedUnitEnum.MASSDENSITYUNIT] == null)
|
||||
|
@ -184,7 +184,7 @@ namespace GeometryGym.Ifc
|
|||
IfcSIUnit kelvin = this[IfcUnitEnum.THERMODYNAMICTEMPERATUREUNIT] as IfcSIUnit;
|
||||
if (kelvin == null)
|
||||
{
|
||||
kelvin = new IfcSIUnit(m, IfcUnitEnum.THERMODYNAMICTEMPERATUREUNIT, IfcSIPrefix.NONE, IfcSIUnitName.KELVIN);
|
||||
kelvin = new IfcSIUnit(db, IfcUnitEnum.THERMODYNAMICTEMPERATUREUNIT, IfcSIPrefix.NONE, IfcSIUnitName.KELVIN);
|
||||
Units.Add(kelvin);
|
||||
}
|
||||
if (this[IfcDerivedUnitEnum.THERMALEXPANSIONCOEFFICIENTUNIT] == null)
|
||||
|
@ -283,7 +283,7 @@ namespace GeometryGym.Ifc
|
|||
mFlangeSlope = p.mFlangeSlope;
|
||||
mCentreOfGravityInX = p.mCentreOfGravityInX;
|
||||
}
|
||||
public IfcUShapeProfileDef(DatabaseIfc m, string name, double depth, double flangeWidth, double webThickness, double flangeThickness)
|
||||
: base(m,name) { mDepth = depth; mFlangeWidth = flangeWidth; mWebThickness = webThickness; mFlangeThickness = flangeThickness; }
|
||||
public IfcUShapeProfileDef(DatabaseIfc db, string name, double depth, double flangeWidth, double webThickness, double flangeThickness)
|
||||
: base(db,name) { mDepth = depth; mFlangeWidth = flangeWidth; mWebThickness = webThickness; mFlangeThickness = flangeThickness; }
|
||||
}
|
||||
}
|
||||
|
|
|
@ -43,22 +43,22 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcValve : IfcFlowController //IFC4
|
||||
{
|
||||
internal IfcValveTypeEnum mPredefinedType = IfcValveTypeEnum.NOTDEFINED;// OPTIONAL : IfcValveTypeEnum;
|
||||
public IfcValveTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcValveTypeEnum mPredefinedType = IfcValveTypeEnum.NOTDEFINED;// OPTIONAL : IfcValveTypeEnum;
|
||||
public IfcValveTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcValveTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcValve() : base() { }
|
||||
internal IfcValve(DatabaseIfc db, IfcValve v, DuplicateOptions options) : base(db, v, options) { mPredefinedType = v.mPredefinedType; }
|
||||
internal IfcValve(DatabaseIfc db, IfcValve v, DuplicateOptions options) : base(db, v, options) { PredefinedType = v.PredefinedType; }
|
||||
public IfcValve(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcValveType : IfcFlowControllerType
|
||||
{
|
||||
internal IfcValveTypeEnum mPredefinedType = IfcValveTypeEnum.NOTDEFINED;// : IfcValveTypeEnum;
|
||||
public IfcValveTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcValveTypeEnum mPredefinedType = IfcValveTypeEnum.NOTDEFINED;// : IfcValveTypeEnum;
|
||||
public IfcValveTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcValveTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcValveType() : base() { }
|
||||
internal IfcValveType(DatabaseIfc db, IfcValveType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcValveType(DatabaseIfc m, string name, IfcValveTypeEnum type) : base(m) { Name = name; mPredefinedType = type; }
|
||||
internal IfcValveType(DatabaseIfc db, IfcValveType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcValveType(DatabaseIfc db, string name, IfcValveTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcVector : IfcGeometricRepresentationItem, IfcHatchLineDistanceSelect, IfcVectorOrDirection
|
||||
|
@ -77,8 +77,8 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcVehicle : IfcTransportationDevice
|
||||
{
|
||||
internal IfcVehicleTypeEnum mPredefinedType = IfcVehicleTypeEnum.NOTDEFINED;// : OPTIONAL IfcVehicleTypeEnum;
|
||||
public IfcVehicleTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcVehicleTypeEnum mPredefinedType = IfcVehicleTypeEnum.NOTDEFINED;// : OPTIONAL IfcVehicleTypeEnum;
|
||||
public IfcVehicleTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcVehicleTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcVehicle() : base() { }
|
||||
internal IfcVehicle(DatabaseIfc db, IfcVehicle e, DuplicateOptions options) : base(db, e, options) { }
|
||||
|
@ -87,12 +87,12 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcVehicleType : IfcTransportationDeviceType
|
||||
{
|
||||
internal IfcVehicleTypeEnum mPredefinedType = IfcVehicleTypeEnum.NOTDEFINED;// IfcVehicleTypeEnum;
|
||||
public IfcVehicleTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcVehicleTypeEnum mPredefinedType = IfcVehicleTypeEnum.NOTDEFINED;// IfcVehicleTypeEnum;
|
||||
public IfcVehicleTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcVehicleTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcVehicleType() : base() { }
|
||||
internal IfcVehicleType(DatabaseIfc db, IfcVehicleType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcVehicleType(DatabaseIfc m, string name, IfcVehicleTypeEnum type) : base(m) { Name = name; mPredefinedType = type; }
|
||||
internal IfcVehicleType(DatabaseIfc db, IfcVehicleType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcVehicleType(DatabaseIfc db, string name, IfcVehicleTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcVertex : IfcTopologicalRepresentationItem //SUPERTYPE OF(IfcVertexPoint)
|
||||
|
@ -108,17 +108,21 @@ namespace GeometryGym.Ifc
|
|||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
public partial class IfcVertexBasedTextureMap : BaseClassIfc // DEPRECATED IFC4
|
||||
{
|
||||
internal List<int> mTextureVertices = new List<int>();// LIST [3:?] OF IfcTextureVertex;
|
||||
internal List<int> mTexturePoints = new List<int>();// LIST [3:?] OF IfcCartesianPoint;
|
||||
internal LIST<IfcTextureVertex> mTextureVertices = new LIST<IfcTextureVertex>();// LIST [3:?] OF IfcTextureVertex;
|
||||
internal LIST<IfcCartesianPoint> mTexturePoints = new LIST<IfcCartesianPoint>();// LIST [3:?] OF IfcCartesianPoint;
|
||||
|
||||
internal IfcVertexBasedTextureMap() : base() { }
|
||||
internal IfcVertexBasedTextureMap(IfcVertexBasedTextureMap m) : base() { mTextureVertices = new List<int>(m.mTextureVertices.ToArray()); mTexturePoints = new List<int>(m.mTexturePoints.ToArray()); }
|
||||
internal IfcVertexBasedTextureMap(DatabaseIfc db, IfcVertexBasedTextureMap m) : base(db)
|
||||
{
|
||||
mTextureVertices.AddRange(m.mTextureVertices.Select(x => db.Factory.Duplicate(x)));
|
||||
mTexturePoints.AddRange(m.mTexturePoints.Select(x => db.Factory.Duplicate(x)));
|
||||
}
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcVertexLoop : IfcLoop
|
||||
{
|
||||
internal int mLoopVertex;// : IfcVertex;
|
||||
public IfcVertex LoopVertex { get { return mDatabase[mLoopVertex] as IfcVertex; } set { mLoopVertex = value.mIndex; } }
|
||||
internal IfcVertex mLoopVertex;// : IfcVertex;
|
||||
public IfcVertex LoopVertex { get { return mLoopVertex; } set { mLoopVertex = value; } }
|
||||
|
||||
internal IfcVertexLoop() : base() { }
|
||||
internal IfcVertexLoop(DatabaseIfc db, IfcVertexLoop l, DuplicateOptions options) : base(db, l, options) { LoopVertex = db.Factory.Duplicate(l.LoopVertex) as IfcVertex; }
|
||||
|
@ -141,21 +145,21 @@ namespace GeometryGym.Ifc
|
|||
return result;
|
||||
}
|
||||
}
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X2)]
|
||||
public partial class IfcVibrationDamper : IfcElementComponent
|
||||
{
|
||||
private IfcVibrationDamperTypeEnum mPredefinedType = IfcVibrationDamperTypeEnum.NOTDEFINED; //: OPTIONAL IfcVibrationDamperTypeEnum;
|
||||
public IfcVibrationDamperTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcVibrationDamperTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcVibrationDamperTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcVibrationDamper() : base() { }
|
||||
public IfcVibrationDamper(DatabaseIfc db) : base(db) { }
|
||||
public IfcVibrationDamper(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
}
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X2)]
|
||||
public partial class IfcVibrationDamperType : IfcElementComponentType
|
||||
{
|
||||
private IfcVibrationDamperTypeEnum mPredefinedType = IfcVibrationDamperTypeEnum.NOTDEFINED; //: IfcVibrationDamperTypeEnum;
|
||||
public IfcVibrationDamperTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcVibrationDamperTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcVibrationDamperTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
public IfcVibrationDamperType() : base() { }
|
||||
public IfcVibrationDamperType(DatabaseIfc db, string name) : base(db, name) { }
|
||||
|
@ -163,28 +167,28 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcVibrationIsolator : IfcElementComponent
|
||||
{
|
||||
internal IfcVibrationIsolatorTypeEnum mPredefinedType = IfcVibrationIsolatorTypeEnum.NOTDEFINED;// : OPTIONAL IfcVibrationIsolatorTypeEnum;
|
||||
public IfcVibrationIsolatorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcVibrationIsolatorTypeEnum mPredefinedType = IfcVibrationIsolatorTypeEnum.NOTDEFINED;// : OPTIONAL IfcVibrationIsolatorTypeEnum;
|
||||
public IfcVibrationIsolatorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcVibrationIsolatorTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcVibrationIsolator() : base() { }
|
||||
internal IfcVibrationIsolator(DatabaseIfc db, IfcVibrationIsolator i, DuplicateOptions options) : base(db, i, options) { mPredefinedType = i.mPredefinedType; }
|
||||
internal IfcVibrationIsolator(DatabaseIfc db, IfcVibrationIsolator i, DuplicateOptions options) : base(db, i, options) { PredefinedType = i.PredefinedType; }
|
||||
public IfcVibrationIsolator(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcVibrationIsolatorType : IfcElementComponentType
|
||||
{
|
||||
internal IfcVibrationIsolatorTypeEnum mPredefinedType = IfcVibrationIsolatorTypeEnum.NOTDEFINED;// : IfcVibrationIsolatorTypeEnum
|
||||
public IfcVibrationIsolatorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcVibrationIsolatorTypeEnum mPredefinedType = IfcVibrationIsolatorTypeEnum.NOTDEFINED;// : IfcVibrationIsolatorTypeEnum
|
||||
public IfcVibrationIsolatorTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcVibrationIsolatorTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcVibrationIsolatorType() : base() { }
|
||||
internal IfcVibrationIsolatorType(DatabaseIfc db, IfcVibrationIsolatorType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcVibrationIsolatorType(DatabaseIfc m, string name, IfcVibrationIsolatorTypeEnum type) : base(m) { Name = name; mPredefinedType = type; }
|
||||
internal IfcVibrationIsolatorType(DatabaseIfc db, IfcVibrationIsolatorType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcVibrationIsolatorType(DatabaseIfc db, string name, IfcVibrationIsolatorTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcVirtualElement : IfcElement
|
||||
{
|
||||
internal IfcVirtualElementTypeEnum mPredefinedType = IfcVirtualElementTypeEnum.NOTDEFINED;// : IfcVirtualElementTypeEnum
|
||||
public IfcVirtualElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcVirtualElementTypeEnum mPredefinedType = IfcVirtualElementTypeEnum.NOTDEFINED;// : IfcVirtualElementTypeEnum
|
||||
public IfcVirtualElementTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcVirtualElementTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcVirtualElement() : base() { }
|
||||
internal IfcVirtualElement(DatabaseIfc db, IfcVirtualElement e, DuplicateOptions options) : base(db, e, options) { }
|
||||
|
@ -193,32 +197,34 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcVirtualGridIntersection : BaseClassIfc, IfcGridPlacementDirectionSelect
|
||||
{
|
||||
private Tuple<int,int> mIntersectingAxes = new Tuple<int,int>(0,0);// : LIST [2:2] OF UNIQUE IfcGridAxis;
|
||||
private Tuple<IfcGridAxis, IfcGridAxis> mIntersectingAxes = null;// : LIST [2:2] OF UNIQUE IfcGridAxis;
|
||||
private Tuple<double,double,double> mOffsetDistances = null;// : LIST [2:3] OF IfcLengthMeasure;
|
||||
public Tuple<IfcGridAxis,IfcGridAxis> IntersectingAxes { get { return new Tuple<IfcGridAxis, IfcGridAxis>(mDatabase[mIntersectingAxes.Item1] as IfcGridAxis, mDatabase[mIntersectingAxes.Item2] as IfcGridAxis); } set { mIntersectingAxes = new Tuple<int, int>(value.Item1.mIndex, value.Item2.mIndex); } }
|
||||
public Tuple<IfcGridAxis,IfcGridAxis> IntersectingAxes { get { return mIntersectingAxes; } set { mIntersectingAxes = value; } }
|
||||
internal IfcVirtualGridIntersection() : base() { }
|
||||
internal IfcVirtualGridIntersection(DatabaseIfc db, IfcVirtualGridIntersection i) : base(db, i) { Tuple<IfcGridAxis, IfcGridAxis> axes = i.IntersectingAxes; IntersectingAxes = new Tuple<IfcGridAxis,IfcGridAxis>(db.Factory.Duplicate(axes.Item1) as IfcGridAxis, db.Factory.Duplicate(axes.Item2) as IfcGridAxis); mOffsetDistances = i.mOffsetDistances; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcVoidingFeature : IfcFeatureElementSubtraction //IFC4
|
||||
{
|
||||
internal IfcVoidingFeatureTypeEnum mPredefinedType = IfcVoidingFeatureTypeEnum.NOTDEFINED;// :IfcVoidingFeatureTypeEnum;
|
||||
public IfcVoidingFeatureTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcVoidingFeatureTypeEnum mPredefinedType = IfcVoidingFeatureTypeEnum.NOTDEFINED;// :IfcVoidingFeatureTypeEnum;
|
||||
public IfcVoidingFeatureTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcVoidingFeatureTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcVoidingFeature() : base() { }
|
||||
internal IfcVoidingFeature(DatabaseIfc db, IfcVoidingFeature v, DuplicateOptions options) : base(db, v, options) { mPredefinedType = v.mPredefinedType; }
|
||||
public IfcVoidingFeature(IfcElement host, IfcProductDefinitionShape rep, IfcVoidingFeatureTypeEnum type) : base(host, rep) { mPredefinedType = type; }
|
||||
internal IfcVoidingFeature(DatabaseIfc db, IfcVoidingFeature v, DuplicateOptions options) : base(db, v, options) { PredefinedType = v.PredefinedType; }
|
||||
public IfcVoidingFeature(IfcElement host, IfcProductDefinitionShape rep, IfcVoidingFeatureTypeEnum type) : base(host, rep) { PredefinedType = type; }
|
||||
}
|
||||
[Obsolete("RELEASE CANDIDATE IFC4X3", false)]
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X3)]
|
||||
public partial class IfcVoidStratum : IfcGeotechnicalStratum
|
||||
{
|
||||
public override string StepClassName { get { return (mDatabase.mRelease >= ReleaseVersion.IFC4X3 ? "IfcGeotechnicalStratum" : base.StepClassName); } }
|
||||
|
||||
public IfcVoidStratum() : base() { PredefinedType = IfcGeotechnicalStratumTypeEnum.VOID; }
|
||||
public IfcVoidStratum(DatabaseIfc db) : base(db) { PredefinedType = IfcGeotechnicalStratumTypeEnum.VOID; }
|
||||
public IfcVoidStratum(DatabaseIfc db, IfcVoidStratum voidStratum, DuplicateOptions options)
|
||||
internal IfcVoidStratum() : base() { PredefinedType = IfcGeotechnicalStratumTypeEnum.VOID; }
|
||||
internal IfcVoidStratum(DatabaseIfc db) : base(db) { PredefinedType = IfcGeotechnicalStratumTypeEnum.VOID; }
|
||||
internal IfcVoidStratum(DatabaseIfc db, IfcVoidStratum voidStratum, DuplicateOptions options)
|
||||
: base(db, voidStratum, options) { PredefinedType = IfcGeotechnicalStratumTypeEnum.VOID; }
|
||||
public IfcVoidStratum(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape shape)
|
||||
: base(host, placement, shape) { PredefinedType = IfcGeotechnicalStratumTypeEnum.VOID; }
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
|
@ -510,7 +516,7 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public class IfcParameterValue : IfcMeasureValue, IfcCurveMeasureSelect { public IfcParameterValue(double value) : base(value) { } }
|
||||
[Serializable]
|
||||
public class IfcPlaneAngleMeasure : IfcMeasureValue, IfcBendingParameterSelect { public IfcPlaneAngleMeasure(double value) : base(value) { } }
|
||||
public class IfcPlaneAngleMeasure : IfcMeasureValue, IfcBendingParameterSelect, IfcOrientationSelect { public IfcPlaneAngleMeasure(double value) : base(value) { } }
|
||||
[Serializable]
|
||||
public class IfcPositivePlaneAngleMeasure : IfcMeasureValue { public IfcPositivePlaneAngleMeasure(double value) : base(value) { } }
|
||||
[Serializable]
|
||||
|
@ -644,12 +650,12 @@ namespace GeometryGym.Ifc
|
|||
DateTime result = DateTime.MinValue;
|
||||
return (DateTime.TryParse(value, out result) ? result : DateTime.MinValue);
|
||||
}
|
||||
internal static IfcDateTimeSelect convertDateTimeSelect(DatabaseIfc m, DateTime date)
|
||||
internal static IfcDateTimeSelect convertDateTimeSelect(DatabaseIfc db, DateTime date)
|
||||
{
|
||||
IfcCalendarDate cd = new IfcCalendarDate(m, date.Day, date.Month, date.Year);
|
||||
if (date.Hour + date.Minute + date.Second < m.Tolerance)
|
||||
IfcCalendarDate cd = new IfcCalendarDate(db, date.Day, date.Month, date.Year);
|
||||
if (date.Hour + date.Minute + date.Second < db.Tolerance)
|
||||
return cd;
|
||||
return new IfcDateAndTime(cd, new IfcLocalTime(m, date.Hour, date.Minute, date.Second));
|
||||
return new IfcDateAndTime(cd, new IfcLocalTime(db, date.Hour, date.Minute, date.Second));
|
||||
}
|
||||
public override string ValueString { get { return FormatSTEP(mDateTime); } }
|
||||
}
|
||||
|
@ -761,7 +767,7 @@ namespace GeometryGym.Ifc
|
|||
public override string ToString() { return "IFCINTEGER(" + Magnitude.ToString() + ")"; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcLabel : IfcSimpleValue
|
||||
public partial class IfcLabel : IfcSimpleValue, IfcConditionCriterionSelect
|
||||
{
|
||||
public string Label { get; set; }
|
||||
public override object Value { get { return Label; } set { Label = value.ToString(); } }
|
||||
|
|
|
@ -31,11 +31,11 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcWall : IfcBuiltElement
|
||||
{
|
||||
internal IfcWallTypeEnum mPredefinedType = IfcWallTypeEnum.NOTDEFINED;//: OPTIONAL IfcWallTypeEnum;
|
||||
public IfcWallTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcWallTypeEnum mPredefinedType = IfcWallTypeEnum.NOTDEFINED;//: OPTIONAL IfcWallTypeEnum;
|
||||
public IfcWallTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcWallTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcWall() : base() { }
|
||||
internal IfcWall(DatabaseIfc db, IfcWall w, DuplicateOptions options) : base(db, w, options) { mPredefinedType = w.mPredefinedType; }
|
||||
internal IfcWall(DatabaseIfc db, IfcWall w, DuplicateOptions options) : base(db, w, options) { PredefinedType = w.PredefinedType; }
|
||||
public IfcWall(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
}
|
||||
[Serializable]
|
||||
|
@ -69,13 +69,13 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcWallType : IfcBuiltElementType
|
||||
{
|
||||
internal IfcWallTypeEnum mPredefinedType = IfcWallTypeEnum.NOTDEFINED;
|
||||
public IfcWallTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcWallTypeEnum mPredefinedType = IfcWallTypeEnum.NOTDEFINED;
|
||||
public IfcWallTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcWallTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcWallType() : base() { }
|
||||
internal IfcWallType(DatabaseIfc db, IfcWallType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcWallType(DatabaseIfc m, string name, IfcWallTypeEnum type) : base(m) { Name = name; mPredefinedType = type; }
|
||||
public IfcWallType(string name, IfcMaterialLayerSet ls, IfcWallTypeEnum type) : base(ls.mDatabase) { Name = name; mPredefinedType = type; MaterialSelect = ls; }
|
||||
internal IfcWallType(DatabaseIfc db, IfcWallType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcWallType(DatabaseIfc db, string name, IfcWallTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
public IfcWallType(string name, IfcMaterialLayerSet ls, IfcWallTypeEnum type) : base(ls.mDatabase) { Name = name; PredefinedType = type; MaterialSelect = ls; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcWarpingStiffnessSelect
|
||||
|
@ -88,22 +88,22 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcWasteTerminal : IfcFlowTerminal //IFC4
|
||||
{
|
||||
internal IfcWasteTerminalTypeEnum mPredefinedType = IfcWasteTerminalTypeEnum.NOTDEFINED;// OPTIONAL : IfcWasteTerminalTypeEnum;
|
||||
public IfcWasteTerminalTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcWasteTerminalTypeEnum mPredefinedType = IfcWasteTerminalTypeEnum.NOTDEFINED;// OPTIONAL : IfcWasteTerminalTypeEnum;
|
||||
public IfcWasteTerminalTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcWasteTerminalTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcWasteTerminal() : base() { }
|
||||
internal IfcWasteTerminal(DatabaseIfc db, IfcWasteTerminal t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
internal IfcWasteTerminal(DatabaseIfc db, IfcWasteTerminal t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcWasteTerminal(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation, IfcDistributionSystem system) : base(host, placement, representation, system) { }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcWasteTerminalType : IfcFlowTerminalType
|
||||
{
|
||||
internal IfcWasteTerminalTypeEnum mPredefinedType = IfcWasteTerminalTypeEnum.NOTDEFINED;// : IfcWasteTerminalTypeEnum;
|
||||
public IfcWasteTerminalTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcWasteTerminalTypeEnum mPredefinedType = IfcWasteTerminalTypeEnum.NOTDEFINED;// : IfcWasteTerminalTypeEnum;
|
||||
public IfcWasteTerminalTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcWasteTerminalTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcWasteTerminalType() : base() { }
|
||||
internal IfcWasteTerminalType(DatabaseIfc db, IfcWasteTerminalType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; }
|
||||
public IfcWasteTerminalType(DatabaseIfc m, string name, IfcWasteTerminalTypeEnum t) : base(m) { Name = name; mPredefinedType = t; }
|
||||
internal IfcWasteTerminalType(DatabaseIfc db, IfcWasteTerminalType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; }
|
||||
public IfcWasteTerminalType(DatabaseIfc db, string name, IfcWasteTerminalTypeEnum t) : base(db) { Name = name; PredefinedType = t; }
|
||||
}
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
[Serializable]
|
||||
|
@ -127,32 +127,34 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
}
|
||||
[Obsolete("RELEASE CANDIDATE IFC4X3", false)]
|
||||
[Serializable]
|
||||
[Serializable, VersionAdded(ReleaseVersion.IFC4X3)]
|
||||
public partial class IfcWaterStratum : IfcGeotechnicalStratum
|
||||
{
|
||||
public override string StepClassName { get { return (mDatabase.mRelease >= ReleaseVersion.IFC4X3 ? "IfcGeotechnicalStratum" : base.StepClassName); } }
|
||||
|
||||
public IfcWaterStratum() : base() { PredefinedType = IfcGeotechnicalStratumTypeEnum.WATER; }
|
||||
public IfcWaterStratum(DatabaseIfc db) : base(db) { PredefinedType = IfcGeotechnicalStratumTypeEnum.WATER; }
|
||||
public IfcWaterStratum(DatabaseIfc db, IfcWaterStratum waterStratum, DuplicateOptions options) : base(db, waterStratum, options) { PredefinedType = IfcGeotechnicalStratumTypeEnum.WATER; }
|
||||
internal IfcWaterStratum() : base() { PredefinedType = IfcGeotechnicalStratumTypeEnum.WATER; }
|
||||
internal IfcWaterStratum(DatabaseIfc db) : base(db) { PredefinedType = IfcGeotechnicalStratumTypeEnum.WATER; }
|
||||
internal IfcWaterStratum(DatabaseIfc db, IfcWaterStratum waterStratum, DuplicateOptions options) : base(db, waterStratum, options) { PredefinedType = IfcGeotechnicalStratumTypeEnum.WATER; }
|
||||
internal IfcWaterStratum(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape shape)
|
||||
: base(host, placement, shape) { PredefinedType = IfcGeotechnicalStratumTypeEnum.WATER; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcWindow : IfcBuiltElement
|
||||
{
|
||||
internal double mOverallHeight = double.NaN;// : OPTIONAL IfcPositiveLengthMeasure;
|
||||
internal double mOverallWidth = double.NaN;// : OPTIONAL IfcPositiveLengthMeasure;
|
||||
internal IfcWindowTypeEnum mPredefinedType = IfcWindowTypeEnum.NOTDEFINED;// : OPTIONAL IfcWindowTypeEnum;
|
||||
private IfcWindowTypeEnum mPredefinedType = IfcWindowTypeEnum.NOTDEFINED;// : OPTIONAL IfcWindowTypeEnum;
|
||||
internal IfcWindowTypePartitioningEnum mPartitioningType = IfcWindowTypePartitioningEnum.NOTDEFINED;// : OPTIONAL IfcWindowTypePartitioningEnum;
|
||||
internal string mUserDefinedPartitioningType = "";//: OPTIONAL IfcLabel;
|
||||
|
||||
public double OverallHeight { get { return mOverallHeight; } set { mOverallHeight = (value > 0 ? value : double.NaN); } }
|
||||
public double OverallWidth { get { return mOverallWidth; } set { mOverallWidth = (value > 0 ? value : double.NaN); } }
|
||||
public IfcWindowTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcWindowTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcWindowTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
public IfcWindowTypePartitioningEnum PartitioningType { get { return mPartitioningType; } set { mPartitioningType = value; } }
|
||||
public string UserDefinedPartitioningType { get { return mUserDefinedPartitioningType; } set { mUserDefinedPartitioningType = value; } }
|
||||
|
||||
internal IfcWindow() : base() { }
|
||||
internal IfcWindow(DatabaseIfc db, IfcWindow w, DuplicateOptions options) : base(db, w, options) { mOverallHeight = w.mOverallHeight; mOverallWidth = w.mOverallWidth; mPredefinedType = w.mPredefinedType; mPartitioningType = w.mPartitioningType; mUserDefinedPartitioningType = w.mUserDefinedPartitioningType; }
|
||||
internal IfcWindow(DatabaseIfc db, IfcWindow w, DuplicateOptions options) : base(db, w, options) { mOverallHeight = w.mOverallHeight; mOverallWidth = w.mOverallWidth; PredefinedType = w.mPredefinedType; mPartitioningType = w.mPartitioningType; mUserDefinedPartitioningType = w.mUserDefinedPartitioningType; }
|
||||
public IfcWindow(IfcObjectDefinition host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) : base(host, placement, representation) { }
|
||||
public IfcWindow(IfcOpeningElement host, IfcObjectPlacement placement, IfcProductDefinitionShape representation) :
|
||||
base(host.Database)
|
||||
|
@ -169,10 +171,10 @@ namespace GeometryGym.Ifc
|
|||
internal double mLiningThickness = double.NaN; //: OPTIONAL IfcNonNegativeLengthMeasure
|
||||
internal double mTransomThickness = double.NaN, mMullionThickness = double.NaN;// : OPTIONAL IfcPositiveLengthMeasure;
|
||||
internal double mFirstTransomOffset = double.NaN, mSecondTransomOffset = double.NaN, mFirstMullionOffset = double.NaN, mSecondMullionOffset = double.NaN;// : OPTIONAL IfcNormalisedRatioMeasure;
|
||||
private int mShapeAspectStyle;// : OPTIONAL IfcShapeAspect; IFC4 DEPRECATED
|
||||
private IfcShapeAspect mShapeAspectStyle;// : OPTIONAL IfcShapeAspect; IFC4 DEPRECATED
|
||||
internal double mLiningOffset = double.NaN, mLiningToPanelOffsetX = double.NaN, mLiningToPanelOffsetY = double.NaN;// : OPTIONAL IfcLengthMeasure;
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
public IfcShapeAspect ShapeAspectStyle { get { return mDatabase[mShapeAspectStyle] as IfcShapeAspect; } set { mShapeAspectStyle = (value == null ? 0 : value.mIndex); } }
|
||||
public IfcShapeAspect ShapeAspectStyle { get { return mShapeAspectStyle; } set { mShapeAspectStyle = value; } }
|
||||
internal IfcWindowLiningProperties() : base() { }
|
||||
internal IfcWindowLiningProperties(DatabaseIfc db, IfcWindowLiningProperties p, DuplicateOptions options) : base(db, p, options)
|
||||
{
|
||||
|
@ -184,15 +186,14 @@ namespace GeometryGym.Ifc
|
|||
mSecondTransomOffset = p.mSecondTransomOffset;
|
||||
mFirstMullionOffset = p.mFirstMullionOffset;
|
||||
mSecondMullionOffset = p.mSecondMullionOffset;
|
||||
if (p.mShapeAspectStyle > 0)
|
||||
ShapeAspectStyle = db.Factory.Duplicate(p.ShapeAspectStyle) as IfcShapeAspect;
|
||||
ShapeAspectStyle = db.Factory.Duplicate(p.ShapeAspectStyle);
|
||||
mLiningOffset = p.mLiningOffset;
|
||||
mLiningToPanelOffsetX = p.mLiningToPanelOffsetX;
|
||||
mLiningToPanelOffsetY = p.mLiningToPanelOffsetY;
|
||||
}
|
||||
internal IfcWindowLiningProperties(DatabaseIfc m, string name, double lngDpth, double lngThck, double trnsmThck, double mllnThck,
|
||||
internal IfcWindowLiningProperties(DatabaseIfc db, string name, double lngDpth, double lngThck, double trnsmThck, double mllnThck,
|
||||
double trnsmOffst1, double trnsmOffst2, double mllnOffst1, double mllnOffst2, double lngOffset, double lngToPnlOffstX, double lngToPnlOffstY)
|
||||
: base(m, name)
|
||||
: base(db, name)
|
||||
{
|
||||
mLiningDepth = lngDpth;
|
||||
mLiningThickness = lngThck;
|
||||
|
@ -214,9 +215,9 @@ namespace GeometryGym.Ifc
|
|||
internal IfcWindowPanelPositionEnum mPanelPosition;// :IfcWindowPanelPositionEnume;
|
||||
internal double mFrameDepth = double.NaN;// : OPTIONAL IfcPositiveLengthMeasure;
|
||||
internal double mFrameThickness = double.NaN;// : OPTIONAL IfcPositiveLengthMeasure;
|
||||
private int mShapeAspectStyle;// : OPTIONAL IfcShapeAspect; IFC4 DEPRECATED
|
||||
private IfcShapeAspect mShapeAspectStyle;// : OPTIONAL IfcShapeAspect; IFC4 DEPRECATED
|
||||
[Obsolete("DEPRECATED IFC4", false)]
|
||||
public IfcShapeAspect ShapeAspectStyle { get { return mDatabase[mShapeAspectStyle] as IfcShapeAspect; } set { mShapeAspectStyle = (value == null ? 0 : value.mIndex); } }
|
||||
public IfcShapeAspect ShapeAspectStyle { get { return mShapeAspectStyle; } set { mShapeAspectStyle = value; } }
|
||||
|
||||
internal IfcWindowPanelProperties() : base() { }
|
||||
internal IfcWindowPanelProperties(DatabaseIfc db, IfcWindowPanelProperties p, DuplicateOptions options) : base(db, p, options)
|
||||
|
@ -225,16 +226,14 @@ namespace GeometryGym.Ifc
|
|||
mPanelPosition = p.mPanelPosition;
|
||||
mFrameDepth = p.mFrameDepth;
|
||||
mFrameThickness = p.mFrameThickness;
|
||||
if (p.mShapeAspectStyle > 0)
|
||||
ShapeAspectStyle = db.Factory.Duplicate(p.ShapeAspectStyle) as IfcShapeAspect;
|
||||
if (p.mShapeAspectStyle != null)
|
||||
ShapeAspectStyle = db.Factory.Duplicate(p.ShapeAspectStyle);
|
||||
}
|
||||
public IfcWindowPanelProperties(DatabaseIfc db, string name, IfcWindowPanelOperationEnum op, IfcWindowPanelPositionEnum panel, double frameDepth, double frameThick)
|
||||
public IfcWindowPanelProperties(DatabaseIfc db, string name, IfcWindowPanelOperationEnum op, IfcWindowPanelPositionEnum panel)
|
||||
: base(db, name)
|
||||
{
|
||||
mOperationType = op;
|
||||
mPanelPosition = panel;
|
||||
mFrameDepth = frameDepth;
|
||||
mFrameThickness = frameThick;
|
||||
}
|
||||
}
|
||||
[Serializable]
|
||||
|
@ -259,43 +258,27 @@ namespace GeometryGym.Ifc
|
|||
public partial class IfcWindowType : IfcBuiltElementType //IFCWindowStyle IFC2x3
|
||||
{
|
||||
public override string StepClassName { get { return (mDatabase.mRelease < ReleaseVersion.IFC4 ? "IfcWindowStyle" : base.StepClassName); } }
|
||||
internal IfcWindowTypeEnum mPredefinedType = IfcWindowTypeEnum.NOTDEFINED;
|
||||
private IfcWindowTypeEnum mPredefinedType = IfcWindowTypeEnum.NOTDEFINED;
|
||||
internal IfcWindowTypePartitioningEnum mPartitioningType = IfcWindowTypePartitioningEnum.NOTDEFINED;// : IfcWindowTypePartitioningEnum;
|
||||
internal bool mParameterTakesPrecedence = false;// : BOOLEAN;
|
||||
internal string mUserDefinedPartitioningType = "$"; // : OPTIONAL IfcLabel;
|
||||
internal string mUserDefinedPartitioningType = ""; // : OPTIONAL IfcLabel;
|
||||
|
||||
public IfcWindowTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcWindowTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcWindowTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcWindowType() : base() { }
|
||||
internal IfcWindowType(DatabaseIfc db, IfcWindowType t, DuplicateOptions options) : base(db, t, options) { mPredefinedType = t.mPredefinedType; mPartitioningType = t.mPartitioningType; mParameterTakesPrecedence = t.mParameterTakesPrecedence; mUserDefinedPartitioningType = t.mUserDefinedPartitioningType; }
|
||||
public IfcWindowType(DatabaseIfc m, string name, IfcWindowTypeEnum type) : base(m) { Name = name; mPredefinedType = type; }
|
||||
public IfcWindowType(DatabaseIfc m, string name, IfcWindowTypeEnum type, IfcWindowTypePartitioningEnum partition, bool parameterTakesPrecendence)
|
||||
: base(m) { Name = name; mPredefinedType = type; mPartitioningType = partition; mParameterTakesPrecedence = parameterTakesPrecendence; }
|
||||
public IfcWindowType(DatabaseIfc m, string name, IfcWindowTypeEnum type, IfcWindowTypePartitioningEnum partition, string userDefinedPartionType, IfcWindowLiningProperties wlp, List<IfcWindowPanelProperties> pps)
|
||||
: base(m)
|
||||
{
|
||||
Name = name;
|
||||
mPredefinedType = type;
|
||||
mPartitioningType = partition;
|
||||
mParameterTakesPrecedence = true;
|
||||
if (wlp != null)
|
||||
mHasPropertySets.Add(wlp);
|
||||
if (pps != null && pps.Count > 0)
|
||||
mHasPropertySets.AddRange(pps);
|
||||
if (!string.IsNullOrEmpty(userDefinedPartionType))
|
||||
mUserDefinedPartitioningType = userDefinedPartionType.Replace("'", "");
|
||||
}
|
||||
internal IfcWindowType(DatabaseIfc db, IfcWindowType t, DuplicateOptions options) : base(db, t, options) { PredefinedType = t.PredefinedType; mPartitioningType = t.mPartitioningType; mParameterTakesPrecedence = t.mParameterTakesPrecedence; mUserDefinedPartitioningType = t.mUserDefinedPartitioningType; }
|
||||
public IfcWindowType(DatabaseIfc db, string name, IfcWindowTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcWorkCalendar : IfcControl //IFC4
|
||||
{
|
||||
internal SET<IfcWorkTime> mWorkingTimes = new SET<IfcWorkTime>();// : OPTIONAL SET [1:?] OF IfcWorkTime;
|
||||
internal SET<IfcWorkTime> mExceptionTimes = new SET<IfcWorkTime>();// : OPTIONAL SET [1:?] OF IfcWorkTime;
|
||||
internal IfcWorkCalendarTypeEnum mPredefinedType = IfcWorkCalendarTypeEnum.NOTDEFINED;// : OPTIONAL IfcWorkCalendarTypeEnum
|
||||
private IfcWorkCalendarTypeEnum mPredefinedType = IfcWorkCalendarTypeEnum.NOTDEFINED;// : OPTIONAL IfcWorkCalendarTypeEnum
|
||||
|
||||
public SET<IfcWorkTime> WorkingTimes { get { return mWorkingTimes; } }
|
||||
public SET<IfcWorkTime> ExceptionTimes { get { return mExceptionTimes; } }
|
||||
public IfcWorkCalendarTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
public IfcWorkCalendarTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcWorkCalendarTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcWorkCalendar() : base() { }
|
||||
internal IfcWorkCalendar(DatabaseIfc db, IfcWorkCalendar c, DuplicateOptions options) : base(db, c, options)
|
||||
|
@ -304,7 +287,7 @@ namespace GeometryGym.Ifc
|
|||
mExceptionTimes.AddRange(c.ExceptionTimes.Select(x=>db.Factory.Duplicate(x) as IfcWorkTime));
|
||||
mPredefinedType = c.mPredefinedType;
|
||||
}
|
||||
public IfcWorkCalendar(DatabaseIfc db, string name, IfcWorkCalendarTypeEnum type) : base(db) { Name = name; mPredefinedType = type; }
|
||||
public IfcWorkCalendar(DatabaseIfc db, string name, IfcWorkCalendarTypeEnum type) : base(db) { Name = name; PredefinedType = type; }
|
||||
}
|
||||
[Serializable]
|
||||
public abstract partial class IfcWorkControl : IfcControl //ABSTRACT SUPERTYPE OF(ONEOF(IfcWorkPlan, IfcWorkSchedule))
|
||||
|
@ -396,32 +379,32 @@ namespace GeometryGym.Ifc
|
|||
[Serializable]
|
||||
public partial class IfcWorkPlan : IfcWorkControl
|
||||
{
|
||||
internal IfcWorkPlanTypeEnum mPredefinedType = IfcWorkPlanTypeEnum.NOTDEFINED;// : OPTIONAL IfcWorkPlanTypeEnum; IFC4
|
||||
public IfcWorkPlanTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcWorkPlanTypeEnum mPredefinedType = IfcWorkPlanTypeEnum.NOTDEFINED;// : OPTIONAL IfcWorkPlanTypeEnum; IFC4
|
||||
public IfcWorkPlanTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcWorkPlanTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcWorkPlan() : base() { }
|
||||
public IfcWorkPlan(DatabaseIfc db) : base(db) { }
|
||||
internal IfcWorkPlan(DatabaseIfc db, IfcWorkPlan p, DuplicateOptions options) : base(db, p, options) { mPredefinedType = p.mPredefinedType; }
|
||||
internal IfcWorkPlan(DatabaseIfc db, IfcWorkPlan p, DuplicateOptions options) : base(db, p, options) { PredefinedType = p.PredefinedType; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcWorkSchedule : IfcWorkControl
|
||||
{
|
||||
internal IfcWorkScheduleTypeEnum mPredefinedType = IfcWorkScheduleTypeEnum.NOTDEFINED;// : OPTIONAL IfcWorkScheduleTypeEnum; IFC4
|
||||
public IfcWorkScheduleTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = value; } }
|
||||
private IfcWorkScheduleTypeEnum mPredefinedType = IfcWorkScheduleTypeEnum.NOTDEFINED;// : OPTIONAL IfcWorkScheduleTypeEnum; IFC4
|
||||
public IfcWorkScheduleTypeEnum PredefinedType { get { return mPredefinedType; } set { mPredefinedType = validPredefinedType<IfcWorkScheduleTypeEnum>(value, mDatabase == null ? ReleaseVersion.IFC4X3 : mDatabase.Release); } }
|
||||
|
||||
internal IfcWorkSchedule() : base() { }
|
||||
public IfcWorkSchedule(DatabaseIfc db) : base(db) { }
|
||||
public IfcWorkSchedule(IfcWorkPlan workPlan) : base(workPlan.Database) { workPlan.AddAggregated(this); }
|
||||
internal IfcWorkSchedule(DatabaseIfc db, IfcWorkSchedule s, DuplicateOptions options) : base(db, s, options) { mPredefinedType = s.mPredefinedType; }
|
||||
internal IfcWorkSchedule(DatabaseIfc db, IfcWorkSchedule s, DuplicateOptions options) : base(db, s, options) { PredefinedType = s.PredefinedType; }
|
||||
}
|
||||
[Serializable]
|
||||
public partial class IfcWorkTime : IfcSchedulingTime //IFC4
|
||||
{
|
||||
internal int mRecurrencePattern;// OPTIONAL IfcRecurrencePattern
|
||||
internal IfcRecurrencePattern mRecurrencePattern;// OPTIONAL IfcRecurrencePattern
|
||||
internal DateTime mStartDate = DateTime.MinValue;// : OPTIONAL IfcDate;
|
||||
internal DateTime mFinishDate = DateTime.MinValue;// : OPTIONAL IfcDate;
|
||||
|
||||
internal IfcRecurrencePattern RecurrencePattern { get { return mDatabase[mRecurrencePattern] as IfcRecurrencePattern; } set { mRecurrencePattern = (value == null ? 0 : value.mIndex); } }
|
||||
internal IfcRecurrencePattern RecurrencePattern { get { return mRecurrencePattern; } set { mRecurrencePattern = value; } }
|
||||
public DateTime StartDate { get { return mStartDate; } set { mStartDate = value; } }
|
||||
public DateTime FinishDate { get { return mFinishDate; } set { mFinishDate = value; } }
|
||||
|
||||
|
|
|
@ -36,7 +36,7 @@ namespace GeometryGym.Ifc
|
|||
|
||||
internal IfcZone() : base() { }
|
||||
internal IfcZone(DatabaseIfc db, IfcZone z, DuplicateOptions options) : base(db, z, options) { mLongName = z.mLongName; }
|
||||
internal IfcZone(DatabaseIfc m, string name) : base(m, name) { }
|
||||
internal IfcZone(DatabaseIfc db, string name) : base(db, name) { }
|
||||
public IfcZone(IfcSpatialElement e, string name, List<IfcSpace> spaces) : base(e, name)
|
||||
{
|
||||
if (spaces != null && spaces.Count > 0)
|
||||
|
|
|
@ -209,7 +209,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
if (objects.Count() == 0)
|
||||
return;
|
||||
obj[name] = new JArray( objects.ToList().ConvertAll(x => mDatabase[x.Index].getJson(host, options)));
|
||||
obj[name] = new JArray( objects.ToList().ConvertAll(x => mDatabase[x.StepId].getJson(host, options)));
|
||||
}
|
||||
|
||||
public static void setJSON(IfcColourOrFactor colourOrFactor, string name, JObject obj, BaseClassIfc host, SetJsonOptions options)
|
||||
|
|
|
@ -519,7 +519,7 @@ namespace GeometryGym.Ifc
|
|||
else
|
||||
obj["AppliedValue"] = mAppliedValue.getJson(this, options);
|
||||
}
|
||||
if (mUnitBasis > 0)
|
||||
if (mUnitBasis != null)
|
||||
obj["UnitBasis"] = UnitBasis.getJson(this, options);
|
||||
//todo
|
||||
setAttribute(obj, "Category", Category);
|
||||
|
@ -527,7 +527,7 @@ namespace GeometryGym.Ifc
|
|||
if (mArithmeticOperator != IfcArithmeticOperatorEnum.NONE)
|
||||
obj["ArithmeticOperator"] = ArithmeticOperator.ToString();
|
||||
if(mComponents.Count > 0)
|
||||
obj["Components"] = new JArray(Components.ToList().ConvertAll(x => x.getJson(this, options)));
|
||||
obj["Components"] = new JArray(Components.Select(x => x.getJson(this, options)));
|
||||
if (mHasExternalReference.Count > 0)
|
||||
obj["HasExternalReference"] = new JArray(HasExternalReference.ToList().ConvertAll(x => x.getJson(this, options)));
|
||||
if (mHasConstraintRelationships.Count > 0)
|
||||
|
@ -535,7 +535,7 @@ namespace GeometryGym.Ifc
|
|||
JArray array = new JArray();
|
||||
foreach (IfcResourceConstraintRelationship r in HasConstraintRelationships)
|
||||
{
|
||||
if (r.mIndex != host.mIndex)
|
||||
if (r.StepId != host.StepId)
|
||||
array.Add(r.getJson(this, options));
|
||||
}
|
||||
if(array.Count > 0)
|
||||
|
|
|
@ -126,13 +126,8 @@ namespace GeometryGym.Ifc
|
|||
Axis2 = mDatabase.ParseJObject<IfcDirection>(jobj);
|
||||
jobj = obj.GetValue("LocalOrigin", StringComparison.InvariantCultureIgnoreCase) as JObject;
|
||||
if (jobj != null)
|
||||
{
|
||||
JToken jtoken = jobj["href"];
|
||||
if (jtoken != null)
|
||||
mLocalOrigin = jtoken.Value<int>();
|
||||
else
|
||||
LocalOrigin = mDatabase.ParseJObject<IfcCartesianPoint>(jobj);
|
||||
}
|
||||
LocalOrigin = mDatabase.ParseJObject<IfcCartesianPoint>(jobj);
|
||||
|
||||
JToken token = obj.GetValue("Scale", StringComparison.InvariantCultureIgnoreCase);
|
||||
if (token != null)
|
||||
mScale = token.Value<double>();
|
||||
|
@ -140,9 +135,9 @@ namespace GeometryGym.Ifc
|
|||
protected override void setJSON(JObject obj, BaseClassIfc host, SetJsonOptions options)
|
||||
{
|
||||
base.setJSON(obj, host, options);
|
||||
if (mAxis1 > 0)
|
||||
if (mAxis1 != null)
|
||||
obj["Axis1"] = Axis1.getJson(this, options);
|
||||
if (mAxis2 > 0)
|
||||
if (mAxis2 != null)
|
||||
obj["Axis2"] = Axis2.getJson(this, options);
|
||||
obj["LocalOrigin"] = LocalOrigin.getJson(this, options);
|
||||
if (!double.IsNaN(mScale))
|
||||
|
@ -162,7 +157,7 @@ namespace GeometryGym.Ifc
|
|||
protected override void setJSON(JObject obj, BaseClassIfc host, SetJsonOptions options)
|
||||
{
|
||||
base.setJSON(obj, host, options);
|
||||
if (mAxis3 > 0)
|
||||
if (mAxis3 != null)
|
||||
obj["Axis3"] = Axis3.getJson(this, options);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -300,8 +300,8 @@ namespace GeometryGym.Ifc
|
|||
setAttribute(obj, "Location", Location);
|
||||
setAttribute(obj, "Purpose", Purpose);
|
||||
setAttribute(obj, "Revision", Revision);
|
||||
if(mDocumentOwner > 0)
|
||||
obj["DocumentOwner"] = mDatabase[mDocumentOwner].getJson(this, options);
|
||||
if(mDocumentOwner != null)
|
||||
obj["DocumentOwner"] = mDocumentOwner.getJson(this, options);
|
||||
if(mEditors.Count > 0)
|
||||
obj["Editors"] = new JArray(mEditors.ToList().ConvertAll(x => x.getJson(this, options)));
|
||||
if (mCreationTime != DateTime.MinValue)
|
||||
|
@ -367,7 +367,7 @@ namespace GeometryGym.Ifc
|
|||
if (!double.IsNaN(mPanelWidth))
|
||||
obj["PanelWidth"] = mPanelWidth;
|
||||
obj["PanelPosition"] = mPanelPosition.ToString();
|
||||
if (mShapeAspectStyle > 0)
|
||||
if (mShapeAspectStyle != null)
|
||||
obj["ShapeAspectStyle"] = ShapeAspectStyle.getJson(this, options);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -136,7 +136,7 @@ namespace GeometryGym.Ifc
|
|||
JArray array = new JArray();
|
||||
foreach (IfcRelVoidsElement rv in HasOpenings)
|
||||
{
|
||||
if (rv.mIndex != host.mIndex)
|
||||
if (rv.StepId != host.StepId)
|
||||
array.Add(rv.getJson(this, options));
|
||||
}
|
||||
if (array.Count > 0)
|
||||
|
|
|
@ -104,7 +104,7 @@ namespace GeometryGym.Ifc
|
|||
obj["CoordinateSpaceDimension"] = CoordinateSpaceDimension;
|
||||
if (mPrecision > 0)
|
||||
obj["Precision"] = Precision;
|
||||
obj["WorldCoordinateSystem"] = mDatabase[mWorldCoordinateSystem.Index].getJson(this, options);
|
||||
obj["WorldCoordinateSystem"] = mDatabase[mWorldCoordinateSystem.StepId].getJson(this, options);
|
||||
if (mTrueNorth != null)
|
||||
obj["TrueNorth"] = TrueNorth.getJson(this, options);
|
||||
}
|
||||
|
@ -114,7 +114,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
foreach (IfcGeometricRepresentationSubContext sub in HasSubContexts)
|
||||
{
|
||||
if (sub.mIndex != host.mIndex)
|
||||
if (sub.StepId != host.StepId)
|
||||
arr.Add(sub.getJson(this, options));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -47,8 +47,8 @@ namespace GeometryGym.Ifc
|
|||
base.setJSON(obj, host, options);
|
||||
obj["Name"] = Name;
|
||||
setAttribute(obj, "Version", Version);
|
||||
if (mPublisher > 0)
|
||||
obj["Publisher"] = mDatabase[mPublisher].getJson(this, options);
|
||||
if (mPublisher != null)
|
||||
obj["Publisher"] = mPublisher.getJson(this, options);
|
||||
//VersionDate
|
||||
setAttribute(obj, "Location", Location);
|
||||
setAttribute(obj, "Description", Description);
|
||||
|
|
|
@ -150,7 +150,7 @@ namespace GeometryGym.Ifc
|
|||
base.setJSON(obj, host, options);
|
||||
setAttribute(obj, "Name", Name);
|
||||
setAttribute(obj, "Description", Description);
|
||||
if (mMaterial > 0)
|
||||
if (mMaterial != null)
|
||||
obj["Material"] = Material.getJson(this, options);
|
||||
setAttribute(obj, "Category", Category);
|
||||
}
|
||||
|
@ -219,7 +219,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
base.setJSON(obj, host, options);
|
||||
|
||||
if (mMaterial > 0)
|
||||
if (mMaterial != null)
|
||||
obj["Material"] = Material.getJson(this, options);
|
||||
obj["LayerThickness"] = mLayerThickness;
|
||||
obj["IsVentilated"] = mIsVentilated.ToString();
|
||||
|
@ -388,7 +388,7 @@ namespace GeometryGym.Ifc
|
|||
obj["ValueComponent"] = DatabaseIfc.extract(value);
|
||||
IfcUnit unit = UnitComponent;
|
||||
if (unit != null)
|
||||
obj["UnitComponent"] = mDatabase[mUnitComponent].getJson(this, options);
|
||||
obj["UnitComponent"] = mUnitComponent.getJson(this, options);
|
||||
}
|
||||
}
|
||||
public partial class IfcMetric : IfcConstraint
|
||||
|
@ -413,7 +413,7 @@ namespace GeometryGym.Ifc
|
|||
if (value != null)
|
||||
DataValue = value;
|
||||
else
|
||||
mDataValueValue = DatabaseIfc.ParseValue(jobj);
|
||||
mDataValue = DatabaseIfc.ParseValue(jobj) as IfcMetricValueSelect;
|
||||
}
|
||||
//else
|
||||
|
||||
|
@ -428,11 +428,11 @@ namespace GeometryGym.Ifc
|
|||
base.setJSON(obj, host, options);
|
||||
obj["BenchMark"] = mBenchMark.ToString();
|
||||
setAttribute(obj, "ValueSource", ValueSource);
|
||||
if (mDataValue > 0)
|
||||
obj["DataValue"] = mDatabase[mDataValue].getJson(this, options);
|
||||
else if(mDataValueValue != null)
|
||||
obj["DataValue"] = DatabaseIfc.extract(mDataValueValue);
|
||||
if (mReferencePath > 0)
|
||||
if (mDataValue is BaseClassIfc o)
|
||||
obj["DataValue"] = o.getJson(this, options);
|
||||
else if(mDataValue is IfcValue val)
|
||||
obj["DataValue"] = DatabaseIfc.extract(val);
|
||||
if (mReferencePath != null)
|
||||
obj["ReferencePath"] = ReferencePath.getJson(this, options);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -87,7 +87,7 @@ namespace GeometryGym.Ifc
|
|||
JArray array = new JArray();
|
||||
foreach (IfcRelAssigns ra in HasAssignments)
|
||||
{
|
||||
if (host == null || ra.mIndex != host.mIndex)
|
||||
if (host == null || ra.StepId != host.StepId)
|
||||
array.Add(ra.getJson(this, options));
|
||||
}
|
||||
if (array.Count > 0)
|
||||
|
@ -149,7 +149,7 @@ namespace GeometryGym.Ifc
|
|||
JArray array = new JArray();
|
||||
foreach (IfcConstraint c in BenchmarkValues)
|
||||
{
|
||||
if (c.mIndex != host.mIndex)
|
||||
if (c.StepId != host.StepId)
|
||||
array.Add(c.getJson(this, options));
|
||||
}
|
||||
if (array.Count > 0)
|
||||
|
@ -203,7 +203,7 @@ namespace GeometryGym.Ifc
|
|||
JArray array = new JArray();
|
||||
foreach (IfcRelFillsElement rf in HasFillings)
|
||||
{
|
||||
if (rf.mIndex != host.mIndex)
|
||||
if (rf.StepId != host.StepId)
|
||||
array.Add(rf.getJson(this, options));
|
||||
}
|
||||
if (array.Count > 0)
|
||||
|
|
|
@ -102,10 +102,8 @@ namespace GeometryGym.Ifc
|
|||
GivenName = token.Value<string>();
|
||||
JArray array = obj.GetValue("MiddleName", StringComparison.InvariantCultureIgnoreCase) as JArray;
|
||||
if (array != null)
|
||||
{
|
||||
foreach (string s in array.Values<string>())
|
||||
AddMiddleName(s);
|
||||
}
|
||||
MiddleNames.AddRange(array.Values<string>());
|
||||
|
||||
Roles.AddRange(mDatabase.extractJArray<IfcActorRole>(obj.GetValue("Roles", StringComparison.InvariantCultureIgnoreCase) as JArray));
|
||||
Addresses.AddRange(mDatabase.extractJArray<IfcAddress>(obj.GetValue("Addresses", StringComparison.InvariantCultureIgnoreCase) as JArray));
|
||||
}
|
||||
|
@ -577,8 +575,8 @@ namespace GeometryGym.Ifc
|
|||
obj["UpperBoundValue"] = DatabaseIfc.extract(UpperBoundValue);
|
||||
if (mLowerBoundValue != null)
|
||||
obj["LowerBoundValue"] = DatabaseIfc.extract(LowerBoundValue);
|
||||
if (mUnit > 0)
|
||||
obj["Unit"] = mDatabase[mUnit].getJson(this, options);
|
||||
if (mUnit is BaseClassIfc o)
|
||||
obj["Unit"] = o.getJson(this, options);
|
||||
if (mSetPointValue != null)
|
||||
obj["SetPointValue"] = DatabaseIfc.extract(SetPointValue);
|
||||
}
|
||||
|
@ -592,8 +590,8 @@ namespace GeometryGym.Ifc
|
|||
obj["UpperBoundValue"] = DatabaseIfc.extract(UpperBoundValue);
|
||||
if (mLowerBoundValue != null)
|
||||
obj["LowerBoundValue"] = DatabaseIfc.extract(LowerBoundValue);
|
||||
if (mUnit > 0)
|
||||
obj["Unit"] = mDatabase[mUnit].getJson(this, options);
|
||||
if (mUnit is BaseClassIfc o)
|
||||
obj["Unit"] = o.getJson(this, options);
|
||||
if (mSetPointValue != null)
|
||||
obj["SetPointValue"] = DatabaseIfc.extract(SetPointValue);
|
||||
}
|
||||
|
@ -629,7 +627,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
base.setJSON(obj, host, options);
|
||||
obj["EnumerationValues"] = new JArray(EnumerationValues.ToList().ConvertAll(x => DatabaseIfc.extract(x)));
|
||||
if (mEnumerationReference > 0)
|
||||
if (mEnumerationReference != null)
|
||||
obj["EnumerationReference"] = EnumerationReference.getJson(this, options);
|
||||
}
|
||||
}
|
||||
|
@ -661,7 +659,7 @@ namespace GeometryGym.Ifc
|
|||
if(array != null)
|
||||
{
|
||||
foreach (IfcRelDefinesByTemplate r in mDatabase.extractJArray<IfcRelDefinesByTemplate>(array))
|
||||
r.AddRelated(this);
|
||||
r.RelatedPropertySets.Add(this);
|
||||
}
|
||||
array = obj.GetValue("DefinesOccurrence", StringComparison.InvariantCultureIgnoreCase) as JArray;
|
||||
if(array != null)
|
||||
|
|
|
@ -127,7 +127,7 @@ namespace GeometryGym.Ifc
|
|||
setAttribute(obj, "InstanceName", InstanceName);
|
||||
if (mListPositions.Count > 0)
|
||||
obj["ListPositions"] = new JArray(mListPositions.ToArray());
|
||||
if (mInnerReference > 0)
|
||||
if (mInnerReference != null)
|
||||
obj["InnerReference"] = InnerReference.getJson(this, options);
|
||||
}
|
||||
}
|
||||
|
@ -237,7 +237,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
base.setJSON(obj, host, options);
|
||||
if (host != mRelatingProduct)
|
||||
obj["RelatingProduct"] = mDatabase[mRelatingProduct.Index].getJson(this, options);
|
||||
obj["RelatingProduct"] = mDatabase[mRelatingProduct.StepId].getJson(this, options);
|
||||
}
|
||||
}
|
||||
public partial class IfcRelAssociates : IfcRelationship //ABSTRACT SUPERTYPE OF (ONEOF(IfcRelAssociatesApproval,IfcRelAssociatesclassification,IfcRelAssociatesConstraint,IfcRelAssociatesDocument,IfcRelAssociatesLibrary,IfcRelAssociatesMaterial))
|
||||
|
@ -292,7 +292,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
base.setJSON(obj, host, options);
|
||||
setAttribute(obj, "Intent", Intent);
|
||||
if (host.mIndex != mRelatingConstraint)
|
||||
if (host != mRelatingConstraint)
|
||||
obj["RelatingConstraint"] = RelatingConstraint.getJson(this, options);
|
||||
}
|
||||
}
|
||||
|
@ -308,8 +308,8 @@ namespace GeometryGym.Ifc
|
|||
protected override void setJSON(JObject obj, BaseClassIfc host, SetJsonOptions options)
|
||||
{
|
||||
base.setJSON(obj, host, options);
|
||||
if (host.mIndex != mRelatingDocument)
|
||||
obj["RelatingDocument"] = mDatabase[mRelatingDocument].getJson(this, options);
|
||||
if (host != mRelatingDocument)
|
||||
obj["RelatingDocument"] = mRelatingDocument.getJson(this, options);
|
||||
}
|
||||
}
|
||||
public partial class IfcRelAssociatesLibrary : IfcRelAssociates
|
||||
|
@ -340,8 +340,8 @@ namespace GeometryGym.Ifc
|
|||
protected override void setJSON(JObject obj, BaseClassIfc host, SetJsonOptions options)
|
||||
{
|
||||
base.setJSON(obj, host, options);
|
||||
if (host.mIndex != mRelatingMaterial)
|
||||
obj["RelatingMaterial"] = mDatabase[mRelatingMaterial].getJson(this, options);
|
||||
if (host != mRelatingMaterial)
|
||||
obj["RelatingMaterial"] = mRelatingMaterial.getJson(this, options);
|
||||
}
|
||||
}
|
||||
public partial class IfcRelAssociatesProfileDef : IfcRelAssociates
|
||||
|
@ -376,28 +376,28 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
JToken measure = jobj["IfcPlaneAngleMeasure"];
|
||||
if (measure != null)
|
||||
mProfileOrientationValue = measure.Value<double>();
|
||||
mProfileOrientation = new IfcPlaneAngleMeasure(measure.Value<double>());
|
||||
else
|
||||
{
|
||||
IfcDirection dir = mDatabase.ParseJObject<IfcDirection>(jobj);
|
||||
if (dir != null)
|
||||
mProfileOrientation = dir.mIndex;
|
||||
mProfileOrientation = dir;
|
||||
}
|
||||
}
|
||||
}
|
||||
protected override void setJSON(JObject obj, BaseClassIfc host, SetJsonOptions options)
|
||||
{
|
||||
base.setJSON(obj, host, options);
|
||||
if (host.mIndex != mRelatingProfileProperties)
|
||||
obj["RelatingProfileProperties"] = mDatabase[mRelatingProfileProperties].getJson(this, options);
|
||||
if (mProfileSectionLocation > 0 && host.mIndex != mProfileSectionLocation)
|
||||
obj["ProfileSectionLocation"] = mDatabase[mProfileSectionLocation].getJson(this, options);
|
||||
if (mProfileOrientation > 0)
|
||||
obj["ProfileOrientation"] = mDatabase[mProfileOrientation].getJson(this, options);
|
||||
else if (!double.IsNaN(mProfileOrientationValue))
|
||||
if (host != mRelatingProfileProperties)
|
||||
obj["RelatingProfileProperties"] = mRelatingProfileProperties.getJson(this, options);
|
||||
if (mProfileSectionLocation != null && host != mProfileSectionLocation)
|
||||
obj["ProfileSectionLocation"] = mProfileSectionLocation.getJson(this, options);
|
||||
if (mProfileOrientation is BaseClassIfc o)
|
||||
obj["ProfileOrientation"] = o.getJson(this, options);
|
||||
else if (mProfileOrientation is IfcPlaneAngleMeasure planeAngleMeasure)
|
||||
{
|
||||
JObject jobj = new JObject();
|
||||
jobj["IfcPlaneAngleMeasure"] = mProfileOrientationValue;
|
||||
jobj["IfcPlaneAngleMeasure"] = planeAngleMeasure.Measure;
|
||||
obj["ProfileOrientation"] = jobj;
|
||||
}
|
||||
}
|
||||
|
@ -429,17 +429,17 @@ namespace GeometryGym.Ifc
|
|||
protected override void setJSON(JObject obj, BaseClassIfc host, SetJsonOptions options)
|
||||
{
|
||||
base.setJSON(obj, host, options);
|
||||
if (host == null || host.mIndex != mRelatingStructuralMember)
|
||||
if (host == null || host != mRelatingStructuralMember)
|
||||
obj["RelatingStructuralMember"] = RelatingStructuralMember.getJson(host, options);
|
||||
if (host == null || host.mIndex != mRelatedStructuralConnection)
|
||||
if (host == null || host != mRelatedStructuralConnection)
|
||||
obj["RelatedStructuralConnection"] = RelatedStructuralConnection.getJson(host, options);
|
||||
if (mAppliedCondition > 0)
|
||||
if (mAppliedCondition != null)
|
||||
obj["AppliedCondition"] = AppliedCondition.getJson(this, options);
|
||||
if (mAdditionalConditions > 0)
|
||||
if (mAdditionalConditions != null)
|
||||
obj["AdditionalConditions"] = AdditionalConditions.getJson(this, options);
|
||||
if (mSupportedLength > 0)
|
||||
obj["SupportedLength"] = SupportedLength;
|
||||
if (mConditionCoordinateSystem > 0)
|
||||
if (mConditionCoordinateSystem != null)
|
||||
obj["ConditionCoordinateSystem"] = ConditionCoordinateSystem.getJson(this, options);
|
||||
}
|
||||
}
|
||||
|
@ -473,7 +473,7 @@ namespace GeometryGym.Ifc
|
|||
base.setJSON(obj, host, options);
|
||||
if (RelatingContext != host)
|
||||
obj["RelatingContext"] = RelatingContext.getJson(this, options);
|
||||
obj["RelatedDefinitions"] = new JArray(mRelatedDefinitions.ConvertAll(x => mDatabase[x.Index].getJson(this, options)));
|
||||
obj["RelatedDefinitions"] = new JArray(mRelatedDefinitions.ConvertAll(x => mDatabase[x.StepId].getJson(this, options)));
|
||||
}
|
||||
}
|
||||
public partial class IfcRelDefinesByProperties : IfcRelDefines
|
||||
|
@ -497,7 +497,7 @@ namespace GeometryGym.Ifc
|
|||
base.parseJObject(obj);
|
||||
JArray array = obj.GetValue("RelatedPropertySets", StringComparison.InvariantCultureIgnoreCase) as JArray;
|
||||
if (array != null)
|
||||
mDatabase.extractJArray<IfcPropertySetDefinition>(array).ForEach(x=>AddRelated(x));
|
||||
RelatedPropertySets.AddRange(mDatabase.extractJArray<IfcPropertySetDefinition>(array));
|
||||
JObject jobj = obj.GetValue("RelatingTemplate", StringComparison.InvariantCultureIgnoreCase) as JObject;
|
||||
if(jobj != null)
|
||||
RelatingTemplate = extractObject<IfcPropertySetTemplate>(jobj);
|
||||
|
@ -509,7 +509,7 @@ namespace GeometryGym.Ifc
|
|||
//List<IfcObject> relatedObjects = RelatedObjects;
|
||||
//JArray array = new JArray();
|
||||
//foreach (IfcObject obj in relatedObjects)
|
||||
// array.Add(obj.Index);
|
||||
// array.Add(obj.StepId);
|
||||
//obj["RelatedObjects"] = array;
|
||||
}
|
||||
}
|
||||
|
@ -532,7 +532,7 @@ namespace GeometryGym.Ifc
|
|||
//List<IfcObject> relatedObjects = RelatedObjects;
|
||||
//JArray array = new JArray();
|
||||
//foreach (IfcObject obj in relatedObjects)
|
||||
// array.Add(obj.Index);
|
||||
// array.Add(obj.StepId);
|
||||
//obj["RelatedObjects"] = array;
|
||||
}
|
||||
}
|
||||
|
@ -551,10 +551,10 @@ namespace GeometryGym.Ifc
|
|||
protected override void setJSON(JObject obj, BaseClassIfc host, SetJsonOptions options)
|
||||
{
|
||||
base.setJSON(obj, host, options);
|
||||
if (host.mIndex != mRelatingOpeningElement)
|
||||
obj["RelatingOpeningElement"] = mDatabase[mRelatingOpeningElement].getJson(this, options);
|
||||
if (host.mIndex != mRelatedBuildingElement)
|
||||
obj["RelatedBuildingElement"] = mDatabase[mRelatedBuildingElement].getJson(this, options);
|
||||
if (host != mRelatingOpeningElement)
|
||||
obj["RelatingOpeningElement"] = mRelatingOpeningElement.getJson(this, options);
|
||||
if (host != mRelatedBuildingElement)
|
||||
obj["RelatedBuildingElement"] = mRelatedBuildingElement.getJson(this, options);
|
||||
}
|
||||
}
|
||||
public partial class IfcRelNests : IfcRelDecomposes
|
||||
|
@ -749,8 +749,8 @@ namespace GeometryGym.Ifc
|
|||
foreach (IfcResourceObjectSelect r in RelatedResourceObjects)
|
||||
{
|
||||
IfcResourceConstraintRelationship rcr = r as IfcResourceConstraintRelationship;
|
||||
if (r.Index != host.mIndex)
|
||||
array.Add(mDatabase[r.Index].getJson(this, options));
|
||||
if (r.StepId != host.StepId)
|
||||
array.Add(mDatabase[r.StepId].getJson(this, options));
|
||||
}
|
||||
if (array.Count > 0)
|
||||
obj["RelatedResourceObjects"] = array;
|
||||
|
|
|
@ -238,12 +238,12 @@ namespace GeometryGym.Ifc
|
|||
obj["TemplateType"] = mTemplateType.ToString();
|
||||
setAttribute(obj, "PrimaryMeasureType", PrimaryMeasureType);
|
||||
setAttribute(obj, "SecondaryMeasureType", SecondaryMeasureType);
|
||||
if (mEnumerators > 0)
|
||||
if (mEnumerators != null)
|
||||
obj["Enumerators"] = Enumerators.getJson(this, options);
|
||||
if (mPrimaryUnit > 0)
|
||||
obj["PrimaryUnit"] = mDatabase[mPrimaryUnit].getJson(this, options);
|
||||
if (mSecondaryUnit > 0)
|
||||
obj["SecondaryUnit"] = mDatabase[mSecondaryUnit].getJson(this, options);
|
||||
if (mPrimaryUnit is BaseClassIfc o)
|
||||
obj["PrimaryUnit"] = o.getJson(this, options);
|
||||
if (mSecondaryUnit != null)
|
||||
obj["SecondaryUnit"] = mSecondaryUnit.getJson(this, options);
|
||||
setAttribute(obj, "Expression", Expression);
|
||||
if (mAccessState != IfcStateEnum.NOTDEFINED)
|
||||
obj["AccessState"] = mAccessState.ToString();
|
||||
|
@ -476,7 +476,7 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
else
|
||||
obj["DestabilizingLoad"] = mDestabilizingLoad == IfcLogicalEnum.TRUE;
|
||||
if (mCausedBy > 0)
|
||||
if (mCausedBy != null)
|
||||
obj["CausedBy"] = CausedBy.getJson(this, options);
|
||||
}
|
||||
}
|
||||
|
@ -530,12 +530,12 @@ namespace GeometryGym.Ifc
|
|||
base.setJSON(obj, host, options);
|
||||
if (mPredefinedType != IfcAnalysisModelTypeEnum.NOTDEFINED)
|
||||
obj["PredefinedType"] = mPredefinedType.ToString();
|
||||
if (mOrientationOf2DPlane > 0)
|
||||
if (mOrientationOf2DPlane != null)
|
||||
obj["OrientationOf2DPlane"] = OrientationOf2DPlane.getJson(this, options);
|
||||
if (mLoadedBy.Count > 0)
|
||||
obj["LoadedBy"] = new JArray(mLoadedBy.ConvertAll(x => mDatabase[x].getJson(this, options)));
|
||||
obj["LoadedBy"] = new JArray(mLoadedBy.ConvertAll(x => x.getJson(this, options)));
|
||||
if (mHasResults.Count > 0)
|
||||
obj["HasResults"] = new JArray(mHasResults.ConvertAll(x => mDatabase[x].getJson(this, options)));
|
||||
obj["HasResults"] = new JArray(mHasResults.ConvertAll(x => x.getJson(this, options)));
|
||||
if (mSharedPlacement != null)
|
||||
obj["SharedPlacement"] = SharedPlacement.getJson(this, options);
|
||||
}
|
||||
|
@ -555,13 +555,13 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
base.setJSON(obj, host, options);
|
||||
|
||||
if (mAppliedCondition > 0)
|
||||
if (mAppliedCondition != null)
|
||||
obj["AppliedCondition"] = AppliedCondition.getJson(this, options);
|
||||
JArray array = new JArray();
|
||||
foreach(IfcRelConnectsStructuralMember connects in mConnectsStructuralMembers)
|
||||
{
|
||||
IfcStructuralMember member = connects.RelatingStructuralMember;
|
||||
if(host == null || member.mIndex != host.mIndex)
|
||||
if(host == null || member.StepId != host.StepId)
|
||||
array.Add(member.getJson(this, options));
|
||||
}
|
||||
if (array.Count > 0)
|
||||
|
@ -746,7 +746,7 @@ namespace GeometryGym.Ifc
|
|||
foreach (IfcRelConnectsStructuralMember connects in mConnectedBy)
|
||||
{
|
||||
IfcStructuralConnection connection = connects.RelatedStructuralConnection;
|
||||
if (host == null || connection.mIndex != host.mIndex)
|
||||
if (host == null || connection.StepId != host.StepId)
|
||||
array.Add(connects.getJson(this, options));
|
||||
}
|
||||
if (array.Count > 0)
|
||||
|
@ -765,7 +765,7 @@ namespace GeometryGym.Ifc
|
|||
protected override void setJSON(JObject obj, BaseClassIfc host, SetJsonOptions options)
|
||||
{
|
||||
base.setJSON(obj, host, options);
|
||||
if (mConditionCoordinateSystem > 0)
|
||||
if (mConditionCoordinateSystem != null)
|
||||
obj["ConditionCoordinateSystem"] = ConditionCoordinateSystem.getJson(this, options);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -251,10 +251,10 @@ namespace GeometryGym.Ifc
|
|||
internal JArray getJSON(DatabaseIfc db)
|
||||
{
|
||||
JArray result = new JArray();
|
||||
if (!double.IsNaN(mIfcParameterValue))
|
||||
result.Add(DatabaseIfc.extract(new IfcParameterValue(mIfcParameterValue)));
|
||||
if (mIfcCartesianPoint > 0)
|
||||
result.Add(db[mIfcCartesianPoint].getJson(null, new BaseClassIfc.SetJsonOptions()));
|
||||
if (!double.IsNaN(ParameterValue))
|
||||
result.Add(DatabaseIfc.extract(new IfcParameterValue(ParameterValue)));
|
||||
if (CartesianPoint != null)
|
||||
result.Add(CartesianPoint.getJson(null, new BaseClassIfc.SetJsonOptions()));
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -72,7 +72,7 @@ namespace GeometryGym.Ifc
|
|||
base.setJSON(obj, host, options);
|
||||
JArray array = new JArray();
|
||||
foreach (IfcUnit unit in mUnits)
|
||||
array.Add(mDatabase[unit.Index].getJson(this, options));
|
||||
array.Add(mDatabase[unit.StepId].getJson(this, options));
|
||||
obj["Units"] = array;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -251,7 +251,7 @@ namespace GeometryGym.Ifc
|
|||
BaseClassIfc result = BaseClassIfc.LineParser(kw, str, schema, dict);
|
||||
if (result == null)
|
||||
return null;
|
||||
result.mIndex = stepID;
|
||||
result.mStepId = stepID;
|
||||
return result;
|
||||
}
|
||||
|
||||
|
@ -547,6 +547,8 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
internal static IfcValue parseValue(string str)
|
||||
{
|
||||
if (string.Compare(str, "$", true) == 0)
|
||||
return null;
|
||||
IfcMeasureValue mv = parseMeasureValue(str);
|
||||
if (mv != null)
|
||||
return mv;
|
||||
|
|
|
@ -40,7 +40,7 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcActor
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mTheActor.Index; }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mTheActor.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
|
@ -120,7 +120,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + ",(#" + string.Join(",#", mVoids.ConvertAll(x => x.Index)) + ")";
|
||||
return base.BuildStringSTEP(release) + ",(" + string.Join(",", mVoids.ConvertAll(x => "#" + x.StepId)) + ")";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -313,7 +313,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return StepOptionalLengthString(mStartDistAlong) + ",(#" + string.Join(",#", mSegments.ConvertAll(x => x.Index)) + ")";
|
||||
return StepOptionalLengthString(mStartDistAlong) + ",(#" + string.Join(",", mSegments.ConvertAll(x => "#" + x.StepId)) + ")";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -323,7 +323,7 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcAlignment2DHorizontalSegment
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mCurveGeometry.Index; }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mCurveGeometry.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
|
@ -368,7 +368,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return "(#" + string.Join(",#", mSegments.ConvertAll(x => x.Index)) + ")";
|
||||
return "(" + string.Join(",", mSegments.ConvertAll(x => "#" + x.StepId)) + ")";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary) { mSegments.AddRange(ParserSTEP.StripListLink(str, ref pos, len).ConvertAll(x => dictionary[x] as IfcAlignment2DVerticalSegment)); }
|
||||
}
|
||||
|
@ -389,7 +389,7 @@ namespace GeometryGym.Ifc
|
|||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + "," + ParserSTEP.DoubleOptionalToString(mRailHeadDistance) +
|
||||
(release == ReleaseVersion.IFC4X3_RC2 ? (mCantSegments.Count == 0 ? ",$" : ",(" + string.Join(",", mCantSegments.ConvertAll(x => "#" + x.Index)) + ")") : "");
|
||||
(release == ReleaseVersion.IFC4X3_RC2 ? (mCantSegments.Count == 0 ? ",$" : ",(" + string.Join(",", mCantSegments.ConvertAll(x => "#" + x.StepId)) + ")") : "");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -443,7 +443,7 @@ namespace GeometryGym.Ifc
|
|||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + (release < ReleaseVersion.IFC4X3_RC4 ? "," + ParserSTEP.DoubleOptionalToString(mStartDistAlong) : "") +
|
||||
(release == ReleaseVersion.IFC4X3_RC2 ? (mHorizontalSegments.Count == 0 ? ",$" : ",(#" + string.Join(",#", mHorizontalSegments.ConvertAll(x => x.Index)) + ")") : "");
|
||||
(release == ReleaseVersion.IFC4X3_RC2 ? (mHorizontalSegments.Count == 0 ? ",$" : ",(" + string.Join(",", mHorizontalSegments.ConvertAll(x => "#" + x.StepId)) + ")") : "");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -458,7 +458,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + ",#" + mStartPoint.mIndex + "," + ParserSTEP.DoubleToString(mStartDirection) + "," +
|
||||
return base.BuildStringSTEP(release) + ",#" + mStartPoint.StepId + "," + ParserSTEP.DoubleToString(mStartDirection) + "," +
|
||||
formatLength(mStartRadiusOfCurvature) + "," +
|
||||
formatLength(mEndRadiusOfCurvature) + "," + formatLength(mSegmentLength) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mGravityCenterLineHeight) + ",." + mPredefinedType.ToString() + ".";
|
||||
|
@ -506,7 +506,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + (release == ReleaseVersion.IFC4X3_RC2 ? (mVerticalSegments.Count == 0 ? ",$" : ",(#" + string.Join(",#", mVerticalSegments.ConvertAll(x => x.Index)) + ")") : "");
|
||||
return base.BuildStringSTEP(release) + (release == ReleaseVersion.IFC4X3_RC2 ? (mVerticalSegments.Count == 0 ? ",$" : ",(" + string.Join(",", mVerticalSegments.Select(x => "#" + x.StepId)) + ")") : "");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -556,7 +556,8 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return "#" + mOuterBoundary.Index + (mInnerBoundaries.Count == 0 ? ",$" : ",(#" + string.Join(",#", mInnerBoundaries.ConvertAll(x=>x.mIndex)) + ")");
|
||||
return "#" + mOuterBoundary.StepId +
|
||||
(mInnerBoundaries.Count == 0 ? ",$" : ",(" + string.Join(",", mInnerBoundaries.Select(x => "#" + x.StepId)) + ")");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -597,7 +598,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return (mApplicationDeveloper != null ? "#" + mApplicationDeveloper.Index : "$") + ",'" + mVersion + "','" +
|
||||
return (mApplicationDeveloper != null ? "#" + mApplicationDeveloper.StepId : "$") + ",'" + mVersion + "','" +
|
||||
(string.IsNullOrEmpty(mApplicationFullName) ? mDatabase.Factory.ApplicationFullName : mApplicationFullName) + "','" +
|
||||
(string.IsNullOrEmpty(mApplicationIdentifier) ? mDatabase.Factory.ApplicationIdentifier : mApplicationIdentifier) + "'";
|
||||
}
|
||||
|
@ -624,9 +625,9 @@ namespace GeometryGym.Ifc
|
|||
else
|
||||
result += ParserSTEP.LinkToString((mAppliedValue as BaseClassIfc).StepId);
|
||||
}
|
||||
result += "," + ParserSTEP.LinkToString(mUnitBasis) + ",";
|
||||
result += (mUnitBasis == null ? ",$," : ",#" + mUnitBasis.StepId + ",");
|
||||
if (release < ReleaseVersion.IFC4)
|
||||
return result + (mSSApplicableDate == null ? ",$" : ",#" + mSSApplicableDate.Index) + (mSSFixedUntilDate == null ? ",$" : ",#" + mSSFixedUntilDate.Index);
|
||||
return result + (mSSApplicableDate == null ? ",$" : ",#" + mSSApplicableDate.StepId) + (mSSFixedUntilDate == null ? ",$" : ",#" + mSSFixedUntilDate.StepId);
|
||||
result += IfcDate.STEPAttribute(mApplicableDate) + "," + IfcDate.STEPAttribute(mFixedUntilDate);
|
||||
result += (string.IsNullOrEmpty(mCategory) ? ",$," : ",'" + ParserIfc.Encode(mCategory) + "',") + (string.IsNullOrEmpty(mCondition) ? "$," : "'" + ParserIfc.Encode(mCondition) + "',");
|
||||
return result + (mArithmeticOperator == IfcArithmeticOperatorEnum.NONE ? "$," : "." + mArithmeticOperator.ToString() + ".,")
|
||||
|
@ -636,12 +637,12 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
mName = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
mDescription = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
string s = ParserSTEP.StripField(str, ref pos, len);
|
||||
string s = ParserSTEP.StripField(str, ref pos, len).Trim();
|
||||
if(s.StartsWith("IFC"))
|
||||
mAppliedValue = ParserIfc.parseValue(s);
|
||||
else
|
||||
mAppliedValue = dictionary[ ParserSTEP.ParseLink(s)] as IfcAppliedValueSelect;
|
||||
mUnitBasis = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mAppliedValue = dictionary[ParserSTEP.ParseLink(s)] as IfcAppliedValueSelect;
|
||||
mUnitBasis = dictionary[ ParserSTEP.StripLink(str, ref pos, len)] as IfcMeasureWithUnit;
|
||||
if(release < ReleaseVersion.IFC4)
|
||||
{
|
||||
mSSApplicableDate = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcDateTimeSelect;
|
||||
|
@ -664,8 +665,8 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return "#" + mComponentOfTotal.StepId + ",(#" +
|
||||
string.Join(",#", mComponents.Select(x=>x.Index))+ "),." + mArithmeticOperator.ToString() + ".," + mName + "," + mDescription;
|
||||
return "#" + mComponentOfTotal.StepId + ",(" +
|
||||
string.Join(",", mComponents.Select(x=> "#" + x.StepId))+ "),." + mArithmeticOperator.ToString() + ".," + mName + "," + mDescription;
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -724,61 +725,62 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcApprovalActorRelationship
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return ParserSTEP.LinkToString(mActor) + "," + ParserSTEP.LinkToString(mApproval) + "," + ParserSTEP.LinkToString(mRole); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return "#" + mActor.StepId + ",#" + mApproval.StepId + ",#" + mRole.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mActor = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mApproval = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mRole = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mActor = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcActorSelect;
|
||||
mApproval = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcApproval;
|
||||
mRole = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcActorRole;
|
||||
}
|
||||
}
|
||||
public partial class IfcApprovalPropertyRelationship
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
string str = "(" + ParserSTEP.LinkToString(mApprovedProperties[0]);
|
||||
for(int icounter = 1; icounter < mApprovedProperties.Count; icounter++)
|
||||
str += "," + ParserSTEP.LinkToString(mApprovedProperties[icounter]);
|
||||
str += ")," + ParserSTEP.LinkToString(mApproval);
|
||||
return str;
|
||||
return "(" + String.Join(",", mApprovedProperties.Select(x=>"#" + x.StepId)) + "),#" + mApproval.StepId;
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mApprovedProperties = ParserSTEP.StripListLink(str, ref pos, len);
|
||||
mApproval = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mApprovedProperties.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x=>dictionary[x] as IfcProperty));
|
||||
mApproval = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcApproval;
|
||||
}
|
||||
}
|
||||
public partial class IfcApprovalRelationship
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mRelatedApproval) + "," + ParserSTEP.LinkToString(mRelatingApproval) + (release < ReleaseVersion.IFC4 ? (mDescription == "$" ? ",$,'" : ",'" + mDescription + "','") + mName + "'": ""); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + ",#" + mRelatedApproval.StepId + ",#" + mRelatingApproval.StepId +
|
||||
(release < ReleaseVersion.IFC4 ? (string.IsNullOrEmpty(mDescription) ? ",$,'" : ",'" + ParserIfc.Encode(mDescription) + "','") + ParserIfc.Encode(mName) + "'": ""); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mRelatedApproval = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mRelatingApproval = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mRelatedApproval = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcApproval;
|
||||
mRelatingApproval = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcApproval;
|
||||
if (release < ReleaseVersion.IFC4)
|
||||
{
|
||||
mDescription = ParserSTEP.StripString(str, ref pos, len);
|
||||
mName = ParserSTEP.StripString(str, ref pos, len);
|
||||
mDescription = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
mName = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
}
|
||||
}
|
||||
}
|
||||
public partial class IfcArbitraryClosedProfileDef
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mOuterCurve); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mOuterCurve.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mOuterCurve = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mOuterCurve = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCurve;
|
||||
}
|
||||
}
|
||||
public partial class IfcArbitraryOpenProfileDef
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mCurve); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mCurve.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mCurve = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mCurve = Database[ParserSTEP.StripLink(str, ref pos, len)] as IfcBoundedCurve;
|
||||
}
|
||||
}
|
||||
public partial class IfcArbitraryProfileDefWithVoids
|
||||
|
@ -799,26 +801,28 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + (string.IsNullOrEmpty(mIdentification) ? ",$," : ",'" + ParserIfc.Encode(mIdentification) + "',") + ParserSTEP.LinkToString(mOriginalValue) + "," +ParserSTEP.LinkToString(mCurrentValue) + "," +
|
||||
ParserSTEP.LinkToString(mTotalReplacementCost) + "," +ParserSTEP.LinkToString(mOwner) + "," +
|
||||
ParserSTEP.LinkToString(mUser) + "," +ParserSTEP.LinkToString(mResponsiblePerson) + "," +
|
||||
(mDatabase.Release < ReleaseVersion.IFC4 ? ParserSTEP.LinkToString(mIncorporationDateSS) : IfcDate.STEPAttribute(mIncorporationDate)) + "," +ParserSTEP.LinkToString(mDepreciatedValue);
|
||||
return base.BuildStringSTEP(release) + (string.IsNullOrEmpty(mIdentification) ? ",$," : ",'" + ParserIfc.Encode(mIdentification) +
|
||||
(mOriginalValue == null ? "',$" : "',#" + mOriginalValue.StepId) + (mCurrentValue == null ? ",$" : ",#" + mCurrentValue.StepId) +
|
||||
(mTotalReplacementCost == null ? ",$" : ",#" + mTotalReplacementCost.StepId) + (mOwner == null ? ",$" : ",#" + mOwner.StepId) +
|
||||
(mUser == null ? ",$" : ",#" + mUser.StepId) + (mResponsiblePerson == null ? ",$" : ",#" + mResponsiblePerson.StepId) +
|
||||
(mDatabase.Release < ReleaseVersion.IFC4 ? (mIncorporationDate == null ? ",$" : ",#" + mIncorporationDateSS.StepId) :
|
||||
IfcDate.STEPAttribute(mIncorporationDate))) + (mDepreciatedValue == null ? ",$" : ",#" + mDepreciatedValue.StepId);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mIdentification = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
mOriginalValue = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mCurrentValue = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mTotalReplacementCost = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mOwner = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mUser = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mResponsiblePerson = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mOriginalValue = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCostValue;
|
||||
mCurrentValue = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCostValue;
|
||||
mTotalReplacementCost = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCostValue;
|
||||
mOwner = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcActorSelect;
|
||||
mUser = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcActorSelect;
|
||||
mResponsiblePerson = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcPerson;
|
||||
if (release < ReleaseVersion.IFC4)
|
||||
mIncorporationDateSS = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mIncorporationDateSS = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCalendarDate;
|
||||
else
|
||||
mIncorporationDate = IfcDate.ParseSTEP(ParserSTEP.StripString(str, ref pos, len));
|
||||
mDepreciatedValue = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mDepreciatedValue = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCostValue;
|
||||
}
|
||||
}
|
||||
public partial class IfcAsymmetricIShapeProfileDef
|
||||
|
@ -898,11 +902,11 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcAxis1Placement
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mAxis); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + (mAxis == null ? ",$" : ",#" + mAxis.StepId); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mAxis = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mAxis = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcDirection;
|
||||
}
|
||||
}
|
||||
public partial class IfcAxis2Placement2D
|
||||
|
|
|
@ -217,10 +217,10 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcBoundingBox
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return ParserSTEP.LinkToString(mCorner) + "," + ParserSTEP.DoubleToString(mXDim) + "," + ParserSTEP.DoubleToString(mYDim) + "," + ParserSTEP.DoubleToString(mZDim); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "#" + mCorner.StepId + "," + ParserSTEP.DoubleToString(mXDim) + "," + ParserSTEP.DoubleToString(mYDim) + "," + ParserSTEP.DoubleToString(mZDim); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mCorner = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mCorner = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCartesianPoint;
|
||||
mXDim = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mYDim = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mZDim = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
|
@ -228,8 +228,8 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcBoxedHalfSpace
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mEnclosure); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary) { mEnclosure = ParserSTEP.StripLink(str, ref pos, len); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mEnclosure.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary) { mEnclosure = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcBoundingBox; }
|
||||
}
|
||||
public partial class IfcBridge
|
||||
{
|
||||
|
|
|
@ -315,14 +315,13 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return ParserSTEP.LinkToString(mAxis1) + "," + ParserSTEP.LinkToString(mAxis2) + "," +
|
||||
ParserSTEP.LinkToString(mLocalOrigin) + "," + ParserSTEP.DoubleOptionalToString(mScale);
|
||||
return (mAxis1 == null ? "$" : "#" + mAxis1.StepId) + (mAxis2 == null ? ",$" : ",#" + mAxis2.StepId) + ",#" + mLocalOrigin.StepId + "," + ParserSTEP.DoubleOptionalToString(mScale);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
mAxis1 = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mAxis2 = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mLocalOrigin = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mAxis1 = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcDirection;
|
||||
mAxis2 = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcDirection;
|
||||
mLocalOrigin = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCartesianPoint;
|
||||
Scale = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
}
|
||||
}
|
||||
|
@ -337,11 +336,11 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcCartesianTransformationOperator3D
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mAxis3); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + (mAxis3 == null ? ",$" : ",#" + mAxis3.StepId); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mAxis3 = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mAxis3 = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcDirection;
|
||||
}
|
||||
}
|
||||
public partial class IfcCartesianTransformationOperator3DnonUniform
|
||||
|
@ -468,10 +467,10 @@ namespace GeometryGym.Ifc
|
|||
if (mReferenceTokens.Count > 0)
|
||||
tokens = "('" + string.Join("','", mReferenceTokens) + "')";
|
||||
bool older = mDatabase.Release <= ReleaseVersion.IFC2x3;
|
||||
string result = (string.IsNullOrEmpty(mSource) ? (older ? "'Unknown'," : "$,") : "'" + ParserIfc.Encode(mSource) + "',") +
|
||||
(string.IsNullOrEmpty(mEdition) ? (older ? "'Unknown'," : "$,") : "'" + ParserIfc.Encode(mEdition) + "',") + (older ? ParserSTEP.LinkToString(mEditionDateSS) : IfcDate.STEPAttribute(mEditionDate)) +
|
||||
",'" + ParserIfc.Encode(mName) + (older ? "'" : (string.IsNullOrEmpty(mDescription) ? "',$," : "','" + ParserIfc.Encode(mDescription) + "',") + (string.IsNullOrEmpty(mSpecification) ? "$," : "'" + ParserIfc.Encode(mSpecification) + "',") + tokens);
|
||||
return result;
|
||||
return (string.IsNullOrEmpty(mSource) ? (older ? "'Unknown'," : "$,") : "'" + ParserIfc.Encode(mSource) + "',") +
|
||||
(string.IsNullOrEmpty(mEdition) ? (older ? "'Unknown'," : "$,") : "'" + ParserIfc.Encode(mEdition) + "',") +
|
||||
(older ? (mEditionDateSS == null ? "$" : "#" + mEditionDateSS.StepId) : IfcDate.STEPAttribute(mEditionDate)) + ",'" +
|
||||
ParserIfc.Encode(mName) + (older ? "'" : (string.IsNullOrEmpty(mDescription) ? "',$," : "','" + ParserIfc.Encode(mDescription) + "',") + (string.IsNullOrEmpty(mSpecification) ? "$," : "'" + ParserIfc.Encode(mSpecification) + "',") + tokens);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -479,7 +478,7 @@ namespace GeometryGym.Ifc
|
|||
mEdition = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
if (release <= ReleaseVersion.IFC2x3)
|
||||
{
|
||||
mEditionDateSS = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mEditionDateSS = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCalendarDate;
|
||||
mName = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
}
|
||||
else
|
||||
|
@ -494,37 +493,40 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcClassificationItem
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return ParserSTEP.LinkToString(mNotation) + "," + ParserSTEP.LinkToString(mItemOf) + "," + mTitle; }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "#" + mNotation.StepId + ",#" + mItemOf.StepId + ",'" + ParserIfc.Encode(mTitle) + "'"; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
mNotation = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mItemOf = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mTitle = ParserSTEP.StripString(str, ref pos, len);
|
||||
mNotation = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcClassificationNotationFacet;
|
||||
mItemOf = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcClassification;
|
||||
mTitle = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
}
|
||||
}
|
||||
public partial class IfcClassificationItemRelationship
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return mSource + "," + mEdition + "," + ParserSTEP.LinkToString(mEditionDate) + "," + mName; }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return mSource + "," + mEdition + (mEditionDate == null ? ",$,'" : ",#" + mEditionDate.StepId + ",'") + ParserIfc.Encode(mName) + "'";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
mSource = ParserSTEP.StripString(str, ref pos, len);
|
||||
mEdition = ParserSTEP.StripString(str, ref pos, len);
|
||||
mEditionDate = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mName = ParserSTEP.StripString(str, ref pos, len);
|
||||
mEditionDate = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCalendarDate;
|
||||
mName = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
}
|
||||
}
|
||||
public partial class IfcClassificationNotation
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return "(" + string.Join(",", mNotationFacets.Select(x=>"#" + mNotationFacets)) + ")";
|
||||
return "(" + string.Join(",", mNotationFacets.Select(x => "#" + x.StepId)) + ")";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary) { mNotationFacets = ParserSTEP.StripListLink(str, ref pos, len); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary) { mNotationFacets.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x=>dictionary[x] as IfcClassificationNotationFacet)); }
|
||||
}
|
||||
public partial class IfcClassificationNotationFacet
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return mNotationValue; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary) { mNotationValue = ParserSTEP.StripString(str, ref pos, len); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "'" + ParserIfc.Encode( mNotationValue) + "'"; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary) { mNotationValue = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len)); }
|
||||
}
|
||||
public partial class IfcClassificationReference
|
||||
{
|
||||
|
@ -665,7 +667,7 @@ namespace GeometryGym.Ifc
|
|||
if (release < ReleaseVersion.IFC4)
|
||||
return "";
|
||||
return base.BuildStringSTEP(release) + (string.IsNullOrEmpty(mUsageName) ? ",$," : ",'" + ParserIfc.Encode(mUsageName) + "',") + (mTemplateType == IfcComplexPropertyTemplateTypeEnum.NOTDEFINED ? ",$," : ",." + mTemplateType + ".,") +
|
||||
(mHasPropertyTemplates.Count == 0 ? "$" : "(#" + string.Join(",#", mHasPropertyTemplates.Values.Select(x => x.Index)) + ")");
|
||||
(mHasPropertyTemplates.Count == 0 ? "$" : "(" + string.Join(",", mHasPropertyTemplates.Values.Select(x => "#" + x.StepId)) + ")");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -682,7 +684,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return "(" + string.Join(",", Segments.ConvertAll(x=>"#" + x.Index)) + ")," + ParserIfc.LogicalToString(mSelfIntersect);
|
||||
return "(" + string.Join(",", Segments.ConvertAll(x=>"#" + x.StepId)) + ")," + ParserIfc.LogicalToString(mSelfIntersect);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -693,11 +695,11 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcCompositeCurveOnSurface
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mBasisSurface; }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mBasisSurface.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mBasisSurface = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mBasisSurface = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcSurface;
|
||||
}
|
||||
}
|
||||
public partial class IfcCompositeCurveSegment
|
||||
|
@ -801,18 +803,30 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcConditionCriterion
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mCriterion) + "," + ParserSTEP.LinkToString(mCriterionDateTime); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
string criterion = "$";
|
||||
if (mCriterion is IfcLabel label)
|
||||
criterion = label.ToString();
|
||||
else if (mCriterion is BaseClassIfc o)
|
||||
criterion = "#" + o.StepId;
|
||||
return base.BuildStringSTEP(release) + "," + criterion + ",#" + mCriterionDateTime.StepId;
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mCriterion = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mCriterionDateTime = ParserSTEP.StripLink(str, ref pos, len);
|
||||
string s = ParserSTEP.StripField(str, ref pos, len);
|
||||
if (s.StartsWith("#"))
|
||||
mCriterion = dictionary[int.Parse(s.Substring(1))] as IfcConditionCriterionSelect;
|
||||
else
|
||||
mCriterion = ParserIfc.parseMeasureValue(s) as IfcConditionCriterionSelect;
|
||||
mCriterionDateTime = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcDateTimeSelect;
|
||||
}
|
||||
}
|
||||
public abstract partial class IfcConic
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return ParserSTEP.LinkToString(mPosition); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary) { mPosition = ParserSTEP.StripLink(str, ref pos, len); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "#" + mPosition.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary) { mPosition = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcAxis2Placement; }
|
||||
}
|
||||
public partial class IfcConnectedFaceSet
|
||||
{
|
||||
|
@ -820,7 +834,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
if (mCfsFaces.Count == 0)
|
||||
return "";
|
||||
return "(#" + string.Join(",#", CfsFaces.ConvertAll(x => x.Index)) + ")";
|
||||
return "(" + string.Join(",", CfsFaces.ConvertAll(x => "#" + x.StepId)) + ")";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -829,11 +843,14 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcConnectionCurveGeometry
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return ParserSTEP.LinkToString(mCurveOnRelatingElement) + "," + ParserSTEP.LinkToString(mCurveOnRelatedElement); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return "#" + mCurveOnRelatingElement.StepId + (mCurveOnRelatedElement == null ? ",$" : ",#" + mCurveOnRelatedElement.StepId);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
mCurveOnRelatingElement = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mCurveOnRelatedElement = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mCurveOnRelatingElement = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCurveOrEdgeCurve;
|
||||
mCurveOnRelatedElement = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCurveOrEdgeCurve;
|
||||
}
|
||||
}
|
||||
public partial class IfcConnectionPointEccentricity
|
||||
|
@ -849,21 +866,24 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcConnectionPointGeometry
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return ParserSTEP.LinkToString(mPointOnRelatingElement) + "," + ParserSTEP.LinkToString(mPointOnRelatedElement); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return "#" + mPointOnRelatingElement.StepId + (mPointOnRelatedElement == null ? ",$" : ",#" + mPointOnRelatedElement.StepId);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
mPointOnRelatingElement = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mPointOnRelatedElement = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mPointOnRelatingElement = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcPointOrVertexPoint;
|
||||
mPointOnRelatedElement = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcPointOrVertexPoint;
|
||||
}
|
||||
}
|
||||
public partial class IfcConnectionSurfaceGeometry
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return ParserSTEP.LinkToString(mSurfaceOnRelatingElement) + "," + ParserSTEP.LinkToString(mSurfaceOnRelatedElement); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "#" + mSurfaceOnRelatingElement.StepId + (mSurfaceOnRelatedElement == null ? ",$" : ",#" + mSurfaceOnRelatedElement.StepId); }
|
||||
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
mSurfaceOnRelatingElement = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mSurfaceOnRelatedElement = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mSurfaceOnRelatingElement = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcSurfaceOrFaceSurface;
|
||||
mSurfaceOnRelatedElement = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcSurfaceOrFaceSurface;
|
||||
}
|
||||
}
|
||||
public partial class IfcConnectionVolumeGeometry
|
||||
|
@ -932,7 +952,7 @@ namespace GeometryGym.Ifc
|
|||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
if (release < ReleaseVersion.IFC4)
|
||||
return base.BuildStringSTEP(release) + (mSuppliers.Count == 0 ? ",$" : ",(#" + string.Join(",#", mSuppliers.ConvertAll(x => x.Index)) + "),") +
|
||||
return base.BuildStringSTEP(release) + (mSuppliers.Count == 0 ? ",$" : ",(" + string.Join(",", mSuppliers.Select(x=> "#" + x.StepId)) + "),") +
|
||||
(mUsageRatio == null ? ",$" : "," + mUsageRatio.ToString());
|
||||
return base.BuildStringSTEP(release) + (mPredefinedType == IfcConstructionMaterialResourceTypeEnum.NOTDEFINED ? ",$" : ",." + mPredefinedType.ToString() + ".");
|
||||
}
|
||||
|
@ -995,7 +1015,8 @@ namespace GeometryGym.Ifc
|
|||
if (release < ReleaseVersion.IFC4)
|
||||
return base.BuildStringSTEP(release) + (string.IsNullOrEmpty(mIdentification) ? ",$," : ",'" + ParserIfc.Encode(mIdentification) + "',") +
|
||||
(string.IsNullOrEmpty(mResourceGroup) ? "$," : "'" + ParserIfc.Encode(mResourceGroup) + "',") + ParserSTEP.ObjToLinkString(mBaseQuantitySS);
|
||||
return base.BuildStringSTEP(release) + (mUsage == 0 ? ",$," : ",#" + mUsage + ",") + ParserSTEP.ListLinksToString(mBaseCosts) + "," + ParserSTEP.ObjToLinkString(mBaseQuantity);
|
||||
return base.BuildStringSTEP(release) + (mUsage == null ? ",$,(" : ",#" + mUsage.StepId + ",(") +
|
||||
String.Join(",", BaseCosts.Select(x=>"#" + x.StepId)) + (mBaseQuantity == null ? "),$" : "),#" + mBaseQuantity.StepId);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -1009,20 +1030,25 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
else
|
||||
{
|
||||
mUsage = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mBaseCosts = ParserSTEP.StripListLink(str, ref pos, len);
|
||||
mUsage = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcResourceTime;
|
||||
mBaseCosts.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x=>dictionary[x] as IfcAppliedValue));
|
||||
mBaseQuantity = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcPhysicalQuantity;
|
||||
}
|
||||
}
|
||||
}
|
||||
public abstract partial class IfcConstructionResourceType
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return (release < ReleaseVersion.IFC4 ? "" : base.BuildStringSTEP(release) + "," + ParserSTEP.ListLinksToString(mBaseCosts) + (mBaseQuantity == 0 ? ",$" : ",#" + mBaseQuantity)); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return (release < ReleaseVersion.IFC4 ? "" : base.BuildStringSTEP(release) +
|
||||
(mBaseCosts.Count == 0 ? ",$" : ",(" + String.Join(",", mBaseCosts.Select(x=>"#" + x.StepId)) + ")") +
|
||||
(mBaseQuantity == null ? ",$" : ",#" + mBaseQuantity.StepId));
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mBaseCosts = ParserSTEP.StripListLink(str, ref pos, len);
|
||||
mBaseQuantity = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mBaseCosts.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x=>dictionary[x] as IfcAppliedValue));
|
||||
mBaseQuantity = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcPhysicalQuantity;
|
||||
}
|
||||
}
|
||||
public abstract partial class IfcContext
|
||||
|
@ -1032,7 +1058,8 @@ namespace GeometryGym.Ifc
|
|||
return base.BuildStringSTEP(release) + (string.IsNullOrEmpty(mObjectType) ? ",$" : ",'" + ParserIfc.Encode(mObjectType) + "'") +
|
||||
(string.IsNullOrEmpty(mLongName) ? ",$" : ",'" + ParserIfc.Encode(mLongName) + "'") +
|
||||
(string.IsNullOrEmpty(mPhase) ? ",$" : ",'" + ParserIfc.Encode(mPhase) + "'") +
|
||||
(mRepresentationContexts.Count == 0 ? ",$," : ",(#" + string.Join(",#", mRepresentationContexts.ConvertAll(x => x.StepId)) + "),") + (mUnitsInContext == 0 ? "$" : ParserSTEP.LinkToString(mUnitsInContext));
|
||||
(mRepresentationContexts.Count == 0 ? ",$," : ",(" + string.Join(",", mRepresentationContexts.Select(x => "#" + x.StepId)) + "),") +
|
||||
(mUnitsInContext == null ? "$" : "#" + mUnitsInContext.StepId);
|
||||
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
|
@ -1042,7 +1069,7 @@ namespace GeometryGym.Ifc
|
|||
mLongName = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
mPhase = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
RepresentationContexts.AddRange(ParserSTEP.StripListLink(str, ref pos, len).ConvertAll(x => dictionary[x] as IfcRepresentationContext));
|
||||
mUnitsInContext = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mUnitsInContext = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcUnitAssignment;
|
||||
|
||||
if (mDatabase.mContext == null || !(this is IfcProjectLibrary))
|
||||
mDatabase.mContext = this;
|
||||
|
@ -1094,12 +1121,15 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcConversionBasedUnit
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",'" + mName + "'," + ParserSTEP.LinkToString(mConversionFactor); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + ",'" + mName + "',#" + mConversionFactor.StepId;
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mName = ParserSTEP.StripString(str, ref pos, len);
|
||||
mConversionFactor = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mConversionFactor = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcMeasureWithUnit;
|
||||
}
|
||||
}
|
||||
public partial class IfcConversionBasedUnitWithOffset
|
||||
|
@ -1439,13 +1469,19 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public abstract partial class IfcCsgPrimitive3D
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return ParserSTEP.LinkToString(mPosition); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary) { mPosition = ParserSTEP.StripLink(str, ref pos, len); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return (mPosition == null ? "$" : "#" + mPosition.StepId); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
mPosition = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcAxis2Placement3D;
|
||||
}
|
||||
}
|
||||
public partial class IfcCsgSolid
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return ParserSTEP.LinkToString(mTreeRootExpression); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary) { mTreeRootExpression = ParserSTEP.StripLink(str, ref pos, len); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "#" + mTreeRootExpression.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
mTreeRootExpression = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCsgSelect;
|
||||
}
|
||||
}
|
||||
public partial class IfcCShapeProfileDef
|
||||
{
|
||||
|
@ -1485,7 +1521,10 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcCurtainWall
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return (release < ReleaseVersion.IFC4 ? base.BuildStringSTEP(release) : base.BuildStringSTEP(release) + ",." + mPredefinedType.ToString() + "."); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + (release < ReleaseVersion.IFC4 ? "" : (mPredefinedType == IfcCurtainWallTypeEnum.NOTDEFINED ? ",$" : ",." + mPredefinedType.ToString() + "."));
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
|
@ -1550,7 +1589,7 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public abstract partial class IfcCurveSegment2D
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "#" + mStartPoint.mIndex +
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "#" + mStartPoint.StepId +
|
||||
"," + ParserSTEP.DoubleToString(mStartDirection) + "," + formatLength(mSegmentLength); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -1561,15 +1600,21 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcCurveStyle
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mCurveFont) + (mCurveWidth == null ? ",$," : "," + mCurveWidth.ToString() + ",") + ParserSTEP.LinkToString(mCurveColour) + (release != ReleaseVersion.IFC2x3 ? (mModelOrDraughting == IfcLogicalEnum.UNKNOWN ? ",$" : ","+ ParserIfc.LogicalToString(mModelOrDraughting)) :"") ; }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + (mCurveFont == null ? ",$" : ",#" + mCurveFont.StepId) +
|
||||
(mCurveWidth == null ? ",$," : "," + mCurveWidth.ToString() + ",") +
|
||||
(mCurveColour == null ? "$" : "#" + mCurveColour.StepId) +
|
||||
(release != ReleaseVersion.IFC2x3 ? (mModelOrDraughting == IfcLogicalEnum.UNKNOWN ? ",$" : ","+ ParserIfc.LogicalToString(mModelOrDraughting)) :"");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mCurveFont = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mCurveFont = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCurveFontOrScaledCurveFontSelect;
|
||||
string s = ParserSTEP.StripField(str, ref pos, len);
|
||||
if(str != "$")
|
||||
mCurveWidth = ParserIfc.parseValue(str) as IfcSizeSelect;
|
||||
mCurveColour = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mCurveColour = dictionary[ ParserSTEP.StripLink(str, ref pos, len)] as IfcColour;
|
||||
if (release != ReleaseVersion.IFC2x3)
|
||||
mModelOrDraughting = ParserIfc.StripLogical(str, ref pos, len);
|
||||
}
|
||||
|
|
|
@ -119,18 +119,11 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
string str = base.BuildStringSTEP(release) + ",(";
|
||||
if (mAnnotatedBySymbols.Count > 0)
|
||||
{
|
||||
str += ParserSTEP.LinkToString(mAnnotatedBySymbols[0]);
|
||||
for (int icounter = 1; icounter < mAnnotatedBySymbols.Count; icounter++)
|
||||
str += "," + ParserSTEP.LinkToString(mAnnotatedBySymbols[icounter]);
|
||||
}
|
||||
return str + "}";
|
||||
return base.BuildStringSTEP(release) + ",(" + String.Join(",", mAnnotatedBySymbols.Select(x=>"#" + x.StepId)) + ")";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mAnnotatedBySymbols = ParserSTEP.StripListLink(str, ref pos, len);
|
||||
mAnnotatedBySymbols.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x=>dictionary[x] as IfcTerminatorSymbol));
|
||||
}
|
||||
}
|
||||
public partial class IfcDimensionCurveTerminator
|
||||
|
@ -302,14 +295,19 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcDistributionPort
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",." + mFlowDirection.ToString() + (release < ReleaseVersion.IFC4 ? "." : ".,." + mPredefinedType + ".,." + mSystemType + "."); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + (mFlowDirection == IfcFlowDirectionEnum.NOTDEFINED ? ",$" : ",." + mFlowDirection.ToString() + ".") +
|
||||
(release < ReleaseVersion.IFC4 ? "" : (mPredefinedType == IfcDistributionPortTypeEnum.NOTDEFINED ? ",$" : ",." + mPredefinedType + ".") +
|
||||
(mSystemType == IfcDistributionSystemEnum.NOTDEFINED ? ",$" : ",." + mSystemType + "."));
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
string s = ParserSTEP.StripField(str, ref pos, len);
|
||||
if (s.StartsWith("."))
|
||||
Enum.TryParse<IfcFlowDirectionEnum>(s.Replace(".", ""), true, out mFlowDirection);
|
||||
if (release != ReleaseVersion.IFC2x3)
|
||||
if (release > ReleaseVersion.IFC2x3)
|
||||
{
|
||||
s = ParserSTEP.StripField(str, ref pos, len);
|
||||
if (s.StartsWith("."))
|
||||
|
@ -364,11 +362,12 @@ namespace GeometryGym.Ifc
|
|||
(string.IsNullOrEmpty(mLocation) ? "$," : "'" + ParserIfc.Encode(mLocation) + "',")) +
|
||||
(string.IsNullOrEmpty(mPurpose) ? "$," : "'" + ParserIfc.Encode(mPurpose) + "',") + (string.IsNullOrEmpty(mIntendedUse) ? "$," : "'" + ParserIfc.Encode(mIntendedUse) + "',") +
|
||||
(string.IsNullOrEmpty(mScope) ? "$," : "'" + ParserIfc.Encode(mScope) + "',") +
|
||||
(string.IsNullOrEmpty(mRevision) ? "$," : "'" + ParserIfc.Encode(mRevision) + "',") + ParserSTEP.LinkToString(mDocumentOwner) +
|
||||
(mEditors.Count == 0 ? ",$," : ",(#" + string.Join(",#", mEditors) + "),") + IfcDateTime.STEPAttribute(mCreationTime) + "," + IfcDateTime.STEPAttribute(mLastRevisionTime) + "," +
|
||||
(release < ReleaseVersion.IFC4 ? ParserSTEP.LinkToString(mSSElectronicFormat) : (string.IsNullOrEmpty(mElectronicFormat) ? "$" : "'" + ParserIfc.Encode(mElectronicFormat) + "'")) +
|
||||
(string.IsNullOrEmpty(mRevision) ? "$," : "'" + ParserIfc.Encode(mRevision) + "',") +
|
||||
(mDocumentOwner == null ? "$" : "#" + mDocumentOwner.StepId) +
|
||||
(mEditors.Count == 0 ? ",$," : ",(" + string.Join(",", mEditors.Select(x=>"#" + x.StepId) + "),") + IfcDateTime.STEPAttribute(mCreationTime) + "," + IfcDateTime.STEPAttribute(mLastRevisionTime) + "," +
|
||||
(release < ReleaseVersion.IFC4 ? (mSSElectronicFormat == null ? "$" : "#" + mSSElectronicFormat.StepId) : (string.IsNullOrEmpty(mElectronicFormat) ? "$" : "'" + ParserIfc.Encode(mElectronicFormat) + "'")) +
|
||||
(release < ReleaseVersion.IFC4 ? ",$,$" : "," + IfcDate.STEPAttribute(mValidFrom) + "," + IfcDate.STEPAttribute(mValidUntil)) +
|
||||
(mConfidentiality == IfcDocumentConfidentialityEnum.NOTDEFINED ? ",$," : ",." + mConfidentiality.ToString() + ".,") + (mStatus == IfcDocumentStatusEnum.NOTDEFINED ? "$" : "." + mStatus.ToString() + ".");
|
||||
(mConfidentiality == IfcDocumentConfidentialityEnum.NOTDEFINED ? ",$," : ",." + mConfidentiality.ToString() + ".,") + (mStatus == IfcDocumentStatusEnum.NOTDEFINED ? "$" : "." + mStatus.ToString() + "."));
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -383,12 +382,12 @@ namespace GeometryGym.Ifc
|
|||
mIntendedUse = ParserSTEP.StripString(str, ref pos, len);
|
||||
mScope = ParserSTEP.StripString(str, ref pos, len);
|
||||
mRevision = ParserSTEP.StripString(str, ref pos, len);
|
||||
mDocumentOwner = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mDocumentOwner = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcActorSelect;
|
||||
Editors.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x=>dictionary[x] as IfcActorSelect));
|
||||
mCreationTime = IfcDateTime.ParseSTEP(ParserSTEP.StripField(str, ref pos, len));
|
||||
mLastRevisionTime = IfcDateTime.ParseSTEP(ParserSTEP.StripField(str, ref pos, len));
|
||||
if (release < ReleaseVersion.IFC4)
|
||||
mSSElectronicFormat = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mSSElectronicFormat = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcDocumentElectronicFormat;
|
||||
else
|
||||
mElectronicFormat = ParserSTEP.StripString(str, ref pos, len);
|
||||
mValidFrom = IfcDate.ParseSTEP(ParserSTEP.StripField(str, ref pos, len));
|
||||
|
@ -436,8 +435,8 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + "," + ParserSTEP.DoubleOptionalToString(mOverallHeight) + "," + ParserSTEP.DoubleOptionalToString(mOverallWidth)
|
||||
+ (release < ReleaseVersion.IFC4 ? "" : (mPredefinedType == IfcDoorTypeEnum.NOTDEFINED ? ",$," : ",." + mPredefinedType.ToString() + ".,") +
|
||||
return base.BuildStringSTEP(release) + "," + formatLength(mOverallHeight) + "," + formatLength(mOverallWidth) +
|
||||
(release < ReleaseVersion.IFC4 ? "" : (mPredefinedType == IfcDoorTypeEnum.NOTDEFINED ? ",$," : ",." + mPredefinedType.ToString() + ".,") +
|
||||
(mOperationType == IfcDoorTypeOperationEnum.NOTDEFINED ? "$," : "." + SerializeDoorTypeOperation(mOperationType, release) + ".,") +
|
||||
(string.IsNullOrEmpty(mUserDefinedOperationType) ? "$" : ",'" + ParserIfc.Encode(mUserDefinedOperationType) + "'"));
|
||||
}
|
||||
|
@ -466,8 +465,13 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + "," + ParserSTEP.DoubleOptionalToString(mLiningDepth) + "," + ParserSTEP.DoubleOptionalToString(mLiningThickness) + "," + ParserSTEP.DoubleOptionalToString(mThresholdDepth) + "," + ParserSTEP.DoubleOptionalToString(mThresholdThickness) + "," + ParserSTEP.DoubleOptionalToString(mTransomThickness) + "," + ParserSTEP.DoubleOptionalToString(mTransomOffset) + "," + ParserSTEP.DoubleOptionalToString(mLiningOffset) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mThresholdOffset) + "," + ParserSTEP.DoubleOptionalToString(mCasingThickness) + "," + ParserSTEP.DoubleOptionalToString(mCasingDepth) + "," + ParserSTEP.LinkToString(mShapeAspectStyle) + (release < ReleaseVersion.IFC4 ? "" : "," + ParserSTEP.DoubleOptionalToString(mLiningToPanelOffsetX) + "," + ParserSTEP.DoubleOptionalToString(mLiningToPanelOffsetY));
|
||||
return base.BuildStringSTEP(release) + "," + ParserSTEP.DoubleOptionalToString(mLiningDepth) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mLiningThickness) + "," + ParserSTEP.DoubleOptionalToString(mThresholdDepth) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mThresholdThickness) + "," + ParserSTEP.DoubleOptionalToString(mTransomThickness) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mTransomOffset) + "," + ParserSTEP.DoubleOptionalToString(mLiningOffset) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mThresholdOffset) + "," + ParserSTEP.DoubleOptionalToString(mCasingThickness) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mCasingDepth) + (mShapeAspectStyle == null ? ",$" : ",#" + mShapeAspectStyle) +
|
||||
(release < ReleaseVersion.IFC4 ? "" : "," + ParserSTEP.DoubleOptionalToString(mLiningToPanelOffsetX) + "," + ParserSTEP.DoubleOptionalToString(mLiningToPanelOffsetY));
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -482,7 +486,7 @@ namespace GeometryGym.Ifc
|
|||
mThresholdOffset = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mCasingThickness = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mCasingDepth = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mShapeAspectStyle = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mShapeAspectStyle = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcShapeAspect;
|
||||
if (release != ReleaseVersion.IFC2x3)
|
||||
{
|
||||
mLiningToPanelOffsetX = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
|
@ -492,7 +496,11 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcDoorPanelProperties
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.DoubleOptionalToString(mPanelDepth) + ",." + mOperationType.ToString() + ".," + ParserSTEP.DoubleOptionalToString(mPanelWidth) + ",." + mPanelPosition.ToString() + ".," + ParserSTEP.LinkToString(mShapeAspectStyle); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + "," + ParserSTEP.DoubleOptionalToString(mPanelDepth) + ",." + mOperationType.ToString() + ".," +
|
||||
ParserSTEP.DoubleOptionalToString(mPanelWidth) + ",." + mPanelPosition.ToString() + (mShapeAspectStyle == null ? ".,$" : ".,#" + mShapeAspectStyle.StepId);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
|
@ -500,7 +508,7 @@ namespace GeometryGym.Ifc
|
|||
Enum.TryParse<IfcDoorPanelOperationEnum>(ParserSTEP.StripField(str, ref pos, len).Replace(".", ""), true, out mOperationType);
|
||||
mPanelWidth = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
Enum.TryParse<IfcDoorPanelPositionEnum>(ParserSTEP.StripField(str, ref pos, len).Replace(".", ""), true, out mPanelPosition);
|
||||
mShapeAspectStyle = ParserSTEP.StripLink(str,ref pos,len);
|
||||
mShapeAspectStyle = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcShapeAspect;
|
||||
}
|
||||
}
|
||||
public partial class IfcDoorStyle
|
||||
|
@ -537,9 +545,9 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return "(" + string.Join(",", mContents.Select(x => "#" + x)) + ")";
|
||||
return "(" + string.Join(",", mContents.Select(x => "#" + x.StepId)) + ")";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary) { mContents = ParserSTEP.StripListLink(str, ref pos, len); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary) { mContents.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x=>dictionary[x] as IfcDraughtingCalloutElement)); }
|
||||
}
|
||||
public partial class IfcDraughtingCalloutRelationship
|
||||
{
|
||||
|
|
|
@ -62,7 +62,7 @@ namespace GeometryGym.Ifc
|
|||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
IfcOrientedEdge oe = this as IfcOrientedEdge;
|
||||
return (oe == null ? "#" + mEdgeStart.Index + ",#" + mEdgeEnd.Index : "*,*");
|
||||
return (oe == null ? "#" + mEdgeStart.StepId + ",#" + mEdgeEnd.StepId : "*,*");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -145,7 +145,12 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcElectricDistributionPoint
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",." + mDistributionPointFunction.ToString() + (string.IsNullOrEmpty(mUserDefinedFunction) ? ".,$" : ".,'" + ParserIfc.Encode(mUserDefinedFunction) + "'"); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + (release > ReleaseVersion.IFC2x3 ? "" :
|
||||
",." + mDistributionPointFunction.ToString() +
|
||||
(string.IsNullOrEmpty(mUserDefinedFunction) ? ".,$" : ".,'" + ParserIfc.Encode(mUserDefinedFunction) + "'"));
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
|
@ -227,7 +232,10 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcElectricHeaterType
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",." + mPredefinedType.ToString() + "."; }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + (release > ReleaseVersion.IFC2x3 ? "" : ",." + mPredefinedType.ToString() + ".");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
|
@ -291,8 +299,11 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public abstract partial class IfcElementarySurface
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return ParserSTEP.LinkToString(mPosition); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary) { mPosition = ParserSTEP.StripLink(str, ref pos, len); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "#" + mPosition.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mPosition = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcAxis2Placement3D;
|
||||
}
|
||||
}
|
||||
public partial class IfcElementAssembly
|
||||
{
|
||||
|
@ -581,8 +592,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
if (release < ReleaseVersion.IFC4)
|
||||
return "";
|
||||
return base.BuildStringSTEP(release) + ",#" + mRelatingReference.StepId + ",(#" + string.Join(",#", mRelatedResourceObjects.ConvertAll(x=>x.Index)) + ")";
|
||||
|
||||
return base.BuildStringSTEP(release) + ",#" + mRelatingReference.StepId + ",(" + string.Join(",", mRelatedResourceObjects.Select(x=> "#" + x.StepId)) + ")";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -614,11 +624,11 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcExtrudedAreaSolidTapered
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mEndSweptArea); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mEndSweptArea.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mEndSweptArea = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mEndSweptArea = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcProfileDef;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -34,11 +34,11 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return (mBounds.Count == 0 ? "()" : "(#" + string.Join(",#", Bounds.ConvertAll(x => x.mIndex)) + ")");
|
||||
return (mBounds.Count == 0 ? "()" : "(" + string.Join(",", Bounds.Select(x => "#" + x.StepId)) + ")");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
Bounds.AddRange(ParserSTEP.StripListLink(str, ref pos, str.Length).ConvertAll(x => dictionary[x] as IfcFaceBound));
|
||||
Bounds.AddRange(ParserSTEP.StripListLink(str, ref pos, str.Length).Select(x => dictionary[x] as IfcFaceBound));
|
||||
}
|
||||
}
|
||||
public partial class IfcFaceBasedSurfaceModel
|
||||
|
@ -75,36 +75,34 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
string str = base.BuildStringSTEP(release) + ",(";
|
||||
if (mVoids.Count > 0)
|
||||
{
|
||||
str += ParserSTEP.LinkToString(mVoids[0]);
|
||||
for (int icounter = 1; icounter < mVoids.Count; icounter++)
|
||||
str += "," + ParserSTEP.LinkToString(mVoids[icounter]);
|
||||
}
|
||||
return str + ")";
|
||||
return base.BuildStringSTEP(release) + ",(" +string.Join(",", mVoids.Select(x => "#" + x.StepId)) + ")";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mVoids = ParserSTEP.StripListLink(str, ref pos, len);
|
||||
mVoids.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x=>dictionary[x] as IfcClosedShell));
|
||||
}
|
||||
}
|
||||
public partial class IfcFacilityPart
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
if(release >= ReleaseVersion.IFC4X3_RC1 && release < ReleaseVersion.IFC4X3)
|
||||
{
|
||||
string predefined = "IFCFACILITYPARTTYPEENUM(.NOTDEFINED.),.";
|
||||
if(this is IfcFacilityPartCommon facilityPartCommon)
|
||||
if (this is IfcBridgePart bridgePart)
|
||||
predefined = "IFCBRIDGEPARTTYPEENUM(." + bridgePart.PredefinedType.ToString() + ".),.";
|
||||
|
||||
return base.BuildStringSTEP(release) + "," + predefined + mUsageType.ToString() + ".";
|
||||
}
|
||||
if (release > ReleaseVersion.IFC4X2)
|
||||
{
|
||||
if (release < ReleaseVersion.IFC4X3)
|
||||
{
|
||||
string predefined = "IFCFACILITYPARTTYPEENUM(.NOTDEFINED.),.";
|
||||
if (this is IfcFacilityPartCommon facilityPartCommon)
|
||||
predefined = "IFCFACILITYPARTTYPEENUM(." + facilityPartCommon.PredefinedType.ToString() + ".),.";
|
||||
else if (this is IfcBridgePart bridgePart)
|
||||
predefined = "IFCBRIDGEPARTTYPEENUM(." + bridgePart.PredefinedType.ToString() + ".),.";
|
||||
else if (this is IfcRoadPart roadPart)
|
||||
predefined = "IFCROADPARTTYPEENUM(." + roadPart.PredefinedType.ToString() + ".),.";
|
||||
else if (this is IfcRailwayPart railwayPart)
|
||||
predefined = "IFCRAILWAYPARTTYPEENUM(." + railwayPart.PredefinedType.ToString() + ".),.";
|
||||
|
||||
return base.BuildStringSTEP(release) + "," + predefined + mUsageType.ToString() + ".";
|
||||
}
|
||||
return base.BuildStringSTEP(release) + ",." + mUsageType.ToString() + ".";
|
||||
}
|
||||
return base.BuildStringSTEP(release);
|
||||
|
@ -112,22 +110,24 @@ namespace GeometryGym.Ifc
|
|||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
if (release > ReleaseVersion.IFC4X2 && release < ReleaseVersion.IFC4X3)
|
||||
if (release > ReleaseVersion.IFC4X2)
|
||||
{
|
||||
string s = "";
|
||||
if (release > ReleaseVersion.IFC4X2 && release < ReleaseVersion.IFC4X3)
|
||||
if (release < ReleaseVersion.IFC4X3)
|
||||
{
|
||||
s = ParserSTEP.StripField(str, ref pos, len);
|
||||
int index = s.IndexOf('.');
|
||||
if(index > 0)
|
||||
if (index > 0)
|
||||
{
|
||||
s = s.Substring(index + 1, s.Length - index - 3);
|
||||
if (this is IfcFacilityPartCommon facilityPartCommon && Enum.TryParse<IfcFacilityPartCommonTypeEnum>(s, true, out IfcFacilityPartCommonTypeEnum facilityPartCommonTypeEnum))
|
||||
facilityPartCommon.PredefinedType = facilityPartCommonTypeEnum;
|
||||
else if (this is IfcBridgePart bridgePart && Enum.TryParse<IfcBridgePartTypeEnum>(s, true, out IfcBridgePartTypeEnum bridgePartTypeEnum))
|
||||
bridgePart.PredefinedType = bridgePartTypeEnum;
|
||||
//else if (this is IfcRoadPart roadPart && Enum.TryParse<IfcBridgePartTypeEnum>(s, true, out IfcBridgePartTypeEnum bridgePartTypeEnum))
|
||||
// bridgePart.PredefinedType = bridgePartTypeEnum;
|
||||
else if (this is IfcRoadPart roadPart && Enum.TryParse<IfcRoadPartTypeEnum>(s, true, out IfcRoadPartTypeEnum roadPartTypeEnum))
|
||||
roadPart.PredefinedType = roadPartTypeEnum;
|
||||
else if (this is IfcRailwayPart railwayPart && Enum.TryParse<IfcRailwayPartTypeEnum>(s, true, out IfcRailwayPartTypeEnum railwayPartTypeEnum))
|
||||
railwayPart.PredefinedType = railwayPartTypeEnum;
|
||||
}
|
||||
}
|
||||
s = ParserSTEP.StripField(str, ref pos, len);
|
||||
|
@ -227,13 +227,22 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcFillAreaStyleHatching
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return ParserSTEP.LinkToString(mHatchLineAppearance) + "," + mStartOfNextHatchLine + "," + ParserSTEP.LinkToString(mPointOfReferenceHatchLine) + "," + ParserSTEP.LinkToString(mPatternStart) + "," + ParserSTEP.DoubleToString(mHatchLineAngle); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return "#" + mHatchLineAppearance.StepId +
|
||||
(mStartOfNextHatchLine is BaseClassIfc o ? ",#" + o.StepId : "," + mStartOfNextHatchLine.ToString()) + ",#" +
|
||||
mPointOfReferenceHatchLine.StepId + (mPatternStart == null ? ",$," : ",#" + mPatternStart.StepId + ",") + ParserSTEP.DoubleToString(mHatchLineAngle);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mHatchLineAppearance = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mStartOfNextHatchLine = ParserSTEP.StripField(str, ref pos, len);
|
||||
mPointOfReferenceHatchLine = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mPatternStart = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mHatchLineAppearance = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCurveStyle;
|
||||
string s = ParserSTEP.StripField(str, ref pos, len).Trim();
|
||||
if (s.StartsWith("IFC"))
|
||||
mStartOfNextHatchLine = ParserIfc.parseValue(s) as IfcHatchLineDistanceSelect;
|
||||
else
|
||||
mStartOfNextHatchLine = dictionary[ParserSTEP.ParseLink(s)] as IfcHatchLineDistanceSelect;
|
||||
mPointOfReferenceHatchLine = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCartesianPoint;
|
||||
mPatternStart = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCartesianPoint;
|
||||
mHatchLineAngle = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
}
|
||||
}
|
||||
|
@ -278,7 +287,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + ",(#" + string.Join(",#", mFillStyles.ConvertAll(x=>x.Index)) + ")" + (release > ReleaseVersion.IFC2x3 ? "," + ParserSTEP.BoolToString(mModelorDraughting) : "");
|
||||
return base.BuildStringSTEP(release) + ",(" + string.Join(",", mFillStyles.ConvertAll(x=> "#" + x.StepId)) + ")" + (release > ReleaseVersion.IFC2x3 ? "," + ParserSTEP.BoolToString(mModelorDraughting) : "");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -310,11 +319,11 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcFixedReferenceSweptAreaSolid
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mFixedReference); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mFixedReference.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mFixedReference = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mFixedReference = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcDirection;
|
||||
}
|
||||
}
|
||||
public partial class IfcFlowInstrument
|
||||
|
@ -365,12 +374,15 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + ",." + mPropertySource.ToString() + ".," + ParserSTEP.LinkToString(mFlowConditionTimeSeries) + "," +
|
||||
ParserSTEP.LinkToString(mVelocityTimeSeries) + "," + ParserSTEP.LinkToString(mFlowrateTimeSeries) + "," +
|
||||
ParserSTEP.LinkToString(mFluid) + "," + ParserSTEP.LinkToString(mPressureTimeSeries) +
|
||||
return base.BuildStringSTEP(release) + ",." + mPropertySource.ToString() +
|
||||
(mFlowConditionTimeSeries == null ? ".,$" : ".,#" + mFlowConditionTimeSeries.StepId) +
|
||||
(mVelocityTimeSeries == null ? ",$" : ",#" + mVelocityTimeSeries.StepId) +
|
||||
(mFlowrateTimeSeries == null ? ",$" : ",#" + mFlowrateTimeSeries.StepId) + ",#" + mFluid.StepId +
|
||||
(mPressureTimeSeries == null ? ",$" : ",#" + mPressureTimeSeries.StepId) +
|
||||
(string.IsNullOrEmpty(mUserDefinedPropertySource) ? ",$," : ",'" + ParserIfc.Encode(mUserDefinedPropertySource) + "',") +
|
||||
ParserSTEP.DoubleOptionalToString(mTemperatureSingleValue) + "," + ParserSTEP.DoubleOptionalToString(mWetBulbTemperatureSingleValue) + "," +
|
||||
ParserSTEP.LinkToString(mWetBulbTemperatureTimeSeries) + "," + ParserSTEP.LinkToString(mTemperatureTimeSeries) + "," +
|
||||
(mWetBulbTemperatureTimeSeries == null ? ",$" : ",#" + mWetBulbTemperatureTimeSeries.StepId) +
|
||||
(mTemperatureTimeSeries == null ? ",$" :",#" + mTemperatureTimeSeries.StepId) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mFlowrateSingleValue) + "," + ParserSTEP.DoubleOptionalToString(mFlowConditionSingleValue) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mVelocitySingleValue) + "," + ParserSTEP.DoubleOptionalToString(mPressureSingleValue);
|
||||
}
|
||||
|
@ -378,16 +390,16 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
Enum.TryParse<IfcPropertySourceEnum>(ParserSTEP.StripField(str, ref pos, len).Replace(".", ""), true, out mPropertySource);
|
||||
mFlowConditionTimeSeries = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mVelocityTimeSeries = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mFlowrateTimeSeries = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mFluid = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mPressureTimeSeries = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mFlowConditionTimeSeries = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcTimeSeries;
|
||||
mVelocityTimeSeries = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcTimeSeries;
|
||||
mFlowrateTimeSeries = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcTimeSeries;
|
||||
mFluid = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcMaterial;
|
||||
mPressureTimeSeries = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcTimeSeries;
|
||||
mUserDefinedPropertySource = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
mTemperatureSingleValue = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mWetBulbTemperatureSingleValue = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mWetBulbTemperatureTimeSeries = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mTemperatureTimeSeries = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mWetBulbTemperatureTimeSeries = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcTimeSeries;
|
||||
mTemperatureTimeSeries = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcTimeSeries;
|
||||
mFlowrateSingleValue = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mFlowConditionSingleValue = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mVelocitySingleValue = ParserSTEP.StripLink(str, ref pos, len);
|
||||
|
|
|
@ -75,7 +75,10 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcGeographicElement
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return (release < ReleaseVersion.IFC4 ? "" : base.BuildStringSTEP(release) + ",." + mPredefinedType + "."); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return (release < ReleaseVersion.IFC4 ? "" : base.BuildStringSTEP(release) + (mPredefinedType == IfcGeographicElementTypeEnum.NOTDEFINED ? ",$" : ",." + mPredefinedType + "."));
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
|
@ -117,7 +120,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + ",#" + mParentContext.Index + (double.IsNaN(mTargetScale) || mTargetScale <=0 ? ",$,." : "," + ParserSTEP.DoubleOptionalToString(mTargetScale) + ",.") +
|
||||
return base.BuildStringSTEP(release) + ",#" + mParentContext.StepId + (double.IsNaN(mTargetScale) || mTargetScale <=0 ? ",$,." : "," + ParserSTEP.DoubleOptionalToString(mTargetScale) + ",.") +
|
||||
mTargetView.ToString() + (string.IsNullOrEmpty(mUserDefinedTargetView) ? ".,$" : ".,'" + ParserIfc.Encode(mUserDefinedTargetView) + "'"); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -132,7 +135,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return (mElements.Count == 0 ? "" : "(" + string.Join(",", mElements.ConvertAll(x => "#" + x.Index)) + ")");
|
||||
return (mElements.Count == 0 ? "" : "(" + string.Join(",", mElements.ConvertAll(x => "#" + x.StepId)) + ")");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -176,16 +179,16 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + ",(#" + string.Join(",#", mUAxes.ConvertAll(x => x.Index.ToString())) + "),(#" +
|
||||
string.Join(",#", mVAxes.ConvertAll(x => x.Index.ToString())) + (mWAxes.Count == 0 ? "),$" : "),(#" +
|
||||
string.Join(",#", mWAxes.ConvertAll(x=>x.Index.ToString())) + ")") + (release < ReleaseVersion.IFC4 ? "" : (mPredefinedType == IfcGridTypeEnum.NOTDEFINED ? ",$" : ",." + mPredefinedType.ToString() + "."));
|
||||
return base.BuildStringSTEP(release) + ",(" + string.Join(",", mUAxes.Select(x => "#" + x.StepId)) + "),(" +
|
||||
string.Join(",", mVAxes.Select(x => "#" + x.StepId)) + (mWAxes.Count == 0 ? "),$" : "),(" +
|
||||
string.Join(",", mWAxes.Select(x=> "#" + x.StepId)) + ")") + (release < ReleaseVersion.IFC4 ? "" : (mPredefinedType == IfcGridTypeEnum.NOTDEFINED ? ",$" : ",." + mPredefinedType.ToString() + "."));
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
UAxes.AddRange(ParserSTEP.StripListLink(str, ref pos, len).ConvertAll(x=>dictionary[x] as IfcGridAxis));
|
||||
VAxes.AddRange(ParserSTEP.StripListLink(str, ref pos, len).ConvertAll(x=>dictionary[x] as IfcGridAxis));
|
||||
WAxes.AddRange(ParserSTEP.StripListLink(str, ref pos, len).ConvertAll(x=>dictionary[x] as IfcGridAxis));
|
||||
UAxes.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x=>dictionary[x] as IfcGridAxis));
|
||||
VAxes.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x=>dictionary[x] as IfcGridAxis));
|
||||
WAxes.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x=>dictionary[x] as IfcGridAxis));
|
||||
if (release != ReleaseVersion.IFC2x3)
|
||||
{
|
||||
string s = ParserSTEP.StripField(str, ref pos, len);
|
||||
|
@ -196,7 +199,7 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcGridAxis
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return (string.IsNullOrEmpty(mAxisTag) ? "$," : "'" + ParserIfc.Encode(mAxisTag) + "',#") + AxisCurve.Index.ToString() + "," + ParserSTEP.BoolToString(mSameSense); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return (string.IsNullOrEmpty(mAxisTag) ? "$," : "'" + ParserIfc.Encode(mAxisTag) + "',#") + AxisCurve.StepId + "," + ParserSTEP.BoolToString(mSameSense); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mAxisTag = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
|
|
|
@ -30,10 +30,10 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
public partial class IfcHalfSpaceSolid
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return ParserSTEP.LinkToString(mBaseSurface) + "," + ParserSTEP.BoolToString(mAgreementFlag); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "#" + mBaseSurface.StepId + "," + ParserSTEP.BoolToString(mAgreementFlag); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mBaseSurface = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mBaseSurface = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcSurface;
|
||||
mAgreementFlag = ParserSTEP.StripBool(str, ref pos, len);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -31,11 +31,11 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
public partial class IfcImageTexture
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",'" + mUrlReference + "'"; }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",'" + ParserIfc.Encode(mUrlReference) + "'"; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mUrlReference = ParserSTEP.StripString(str, ref pos, len);
|
||||
mUrlReference = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
}
|
||||
}
|
||||
public partial class IfcIndexedColourMap
|
||||
|
@ -57,7 +57,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return "#" + mPoints.Index + (mSegments.Count == 0 ? ",$," : ",(" + string.Join(",", mSegments) + "),") +
|
||||
return "#" + mPoints.StepId + (mSegments.Count == 0 ? ",$," : ",(" + string.Join(",", mSegments) + "),") +
|
||||
(mSelfIntersect == IfcLogicalEnum.UNKNOWN ? "$" : (mSelfIntersect == IfcLogicalEnum.TRUE ? ".T." : ".F."));
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
|
@ -176,20 +176,23 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
string result = base.BuildStringSTEP(release) + ",." + mPredefinedType.ToString() + ".,#" + mJurisdiction + ",(#" + mResponsiblePersons[0];
|
||||
for (int icounter = 1; icounter < mResponsiblePersons.Count; icounter++)
|
||||
result += ",#" + mResponsiblePersons[icounter];
|
||||
return result + "),#" + mLastUpdateDate + (mCurrentValue == 0 ? ",$" : ",#" + mCurrentValue) + (mOriginalValue == 0 ? ",$" : ",#" + mOriginalValue);
|
||||
return base.BuildStringSTEP(release) + ",." + mPredefinedType.ToString() + ".,#" + mJurisdiction.StepId + ",(" +
|
||||
string.Join(",", mResponsiblePersons.Select(x=>"#" + x.StepId)) +
|
||||
(release < ReleaseVersion.IFC4 ? "),#" + mLastUpdateDate : ")," + IfcDate.STEPAttribute(mLastUpdateDate)) +
|
||||
(mCurrentValue == null ? ",$" : ",#" + mCurrentValue.StepId) + (mOriginalValue == null ? ",$" : ",#" + mOriginalValue.StepId);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
Enum.TryParse<IfcInventoryTypeEnum>(ParserSTEP.StripField(str, ref pos, len).Replace(".", ""), true, out mPredefinedType);
|
||||
mJurisdiction = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mResponsiblePersons = ParserSTEP.StripListLink(str, ref pos, len);
|
||||
mLastUpdateDate = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mCurrentValue = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mOriginalValue = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mJurisdiction = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcActorSelect;
|
||||
mResponsiblePersons.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x=>dictionary[x] as IfcPerson));
|
||||
if(release < ReleaseVersion.IFC4)
|
||||
mLastUpdateDateSS = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCalendarDate;
|
||||
else
|
||||
mLastUpdateDate = IfcDate.ParseSTEP(ParserSTEP.StripString(str, ref pos, len));
|
||||
mCurrentValue = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCostValue;
|
||||
mOriginalValue = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCostValue;
|
||||
}
|
||||
}
|
||||
public partial class IfcImpactProtectionDevice
|
||||
|
|
|
@ -99,19 +99,22 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
string result = "'" + ParserIfc.Encode(mName) + (string.IsNullOrEmpty(mVersion) ? "',$," : "','" + ParserIfc.Encode(mVersion) + "',") + ParserSTEP.LinkToString(mPublisher);
|
||||
string result = "'" + ParserIfc.Encode(mName) + (string.IsNullOrEmpty(mVersion) ? "',$," : "','" + ParserIfc.Encode(mVersion) + "',") +
|
||||
(mPublisher == null? "$" : "#" + mPublisher.StepId);
|
||||
if (mDatabase.Release < ReleaseVersion.IFC4)
|
||||
return result + ",$,(" + string.Join(",", mHasConstraintRelationships.Select(x => "#" + x.StepId)) + ")";
|
||||
return result + "," + IfcDateTime.STEPAttribute(mVersionDate) + "," + (string.IsNullOrEmpty(mLocation) ? "$," : "'" + ParserIfc.Encode(mLocation) + "',") + (string.IsNullOrEmpty(mDescription) ? "$" : "'" + ParserIfc.Encode(mDescription) + "'");
|
||||
return result + (mVersionDateSS == null ? ",$" : ",#" + mVersionDateSS.StepId) + ",(" + string.Join(",", mHasConstraintRelationships.Select(x => "#" + x.StepId)) + ")";
|
||||
return result + "," + IfcDateTime.STEPAttribute(mVersionDate) + "," +
|
||||
(string.IsNullOrEmpty(mLocation) ? "$," : "'" + ParserIfc.Encode(mLocation) + "',") +
|
||||
(string.IsNullOrEmpty(mDescription) ? "$" : "'" + ParserIfc.Encode(mDescription) + "'");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
mName = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
mVersion = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
mPublisher = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mPublisher = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcActorSelect;
|
||||
if (release < ReleaseVersion.IFC4)
|
||||
{
|
||||
mVersionDateSS = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mVersionDateSS = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCalendarDate;
|
||||
mLibraryReference.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x => dictionary[x] as IfcLibraryReference));
|
||||
}
|
||||
else
|
||||
|
@ -254,11 +257,15 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcLightSourceSpot
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mOrientation) + "," + ParserSTEP.DoubleToString(mConcentrationExponent) + "," + ParserSTEP.DoubleToString(mSpreadAngle) + "," + ParserSTEP.DoubleToString(mBeamWidthAngle); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + ",#" + mOrientation.StepId + "," + ParserSTEP.DoubleToString(mConcentrationExponent) + "," +
|
||||
ParserSTEP.DoubleToString(mSpreadAngle) + "," + ParserSTEP.DoubleToString(mBeamWidthAngle);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mOrientation = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mOrientation = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcDirection;
|
||||
mConcentrationExponent = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mSpreadAngle = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mBeamWidthAngle = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
|
@ -266,11 +273,11 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcLine
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return ParserSTEP.LinkToString(mPnt) + "," + ParserSTEP.LinkToString(mDir); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "#" + mPnt.StepId + ",#" + mDir.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
mPnt = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mDir = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mPnt = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCartesianPoint;
|
||||
mDir = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcVector;
|
||||
}
|
||||
}
|
||||
public partial class IfcLinearAxisWithInclination
|
||||
|
@ -390,13 +397,17 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcLocalTime
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return mHourComponent + "," + mMinuteComponent + "," + ParserSTEP.DoubleToString(mSecondComponent) + "," + ParserSTEP.LinkToString(mZone) + "," + ParserSTEP.IntOptionalToString(mDaylightSavingOffset); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return mHourComponent + "," + mMinuteComponent + "," + ParserSTEP.DoubleToString(mSecondComponent) +
|
||||
(mZone == null ? ",$" : ",#" + mZone.StepId) + "," + ParserSTEP.IntOptionalToString(mDaylightSavingOffset);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mHourComponent = ParserSTEP.StripInt(str, ref pos, len);
|
||||
mMinuteComponent = ParserSTEP.StripInt(str, ref pos, len);
|
||||
mSecondComponent = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mZone = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mZone = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCoordinatedUniversalTimeOffset;
|
||||
mDaylightSavingOffset = ParserSTEP.StripInt(str, ref pos, len);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -31,8 +31,11 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
public abstract partial class IfcManifoldSolidBrep
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return ParserSTEP.LinkToString(mOuter); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary) { mOuter = ParserSTEP.StripLink(str, ref pos, len); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "#" + mOuter.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mOuter = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcClosedShell;
|
||||
}
|
||||
}
|
||||
public partial class IfcMapConversion
|
||||
{
|
||||
|
@ -130,12 +133,12 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return "(" + string.Join(",", mMaterialClassifications.Select(x=>"#" + x)) + ")," + ParserSTEP.LinkToString(mClassifiedMaterial);
|
||||
return "(" + string.Join(",", mMaterialClassifications.Select(x=>"#" + x.StepId)) + "),#" + mClassifiedMaterial.StepId;
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mMaterialClassifications = ParserSTEP.StripListLink(str, ref pos, len);
|
||||
mClassifiedMaterial = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mMaterialClassifications.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x => dictionary[x] as IfcClassificationNotationSelect));
|
||||
mClassifiedMaterial = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcMaterial;
|
||||
}
|
||||
}
|
||||
public partial class IfcMaterialConstituent
|
||||
|
@ -143,14 +146,14 @@ namespace GeometryGym.Ifc
|
|||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return (string.IsNullOrEmpty(mName) ? "$," : "'" + ParserIfc.Encode(mName) + "',") +
|
||||
(string.IsNullOrEmpty(mDescription) ? "$," : "'" + ParserIfc.Encode(mDescription) + "',") + ParserSTEP.LinkToString(mMaterial) + "," +
|
||||
(string.IsNullOrEmpty(mDescription) ? "$,#" : "'" + ParserIfc.Encode(mDescription) + "',#") + mMaterial.StepId + "," +
|
||||
ParserSTEP.DoubleToString(mFraction) + (string.IsNullOrEmpty(mCategory) ? ",$" : ",'" + ParserIfc.Encode(mCategory) + "'");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mName = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
mDescription = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
mMaterial = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mMaterial = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcMaterial;
|
||||
mFraction = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mCategory = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
}
|
||||
|
@ -184,11 +187,11 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
string s = (release < ReleaseVersion.IFC4 ? "" : (string.IsNullOrEmpty(mName) ? ",$," : ",'" + ParserIfc.Encode(mName) + "',") +
|
||||
(string.IsNullOrEmpty(mDescription) ? "$," : "'" + ParserIfc.Encode(mDescription) + "',") + (string.IsNullOrEmpty(mCategory) ? "$," : "'" + ParserIfc.Encode(mCategory) + "',") + ParserSTEP.DoubleOptionalToString(mPriority));
|
||||
return ParserSTEP.LinkToString(mMaterial) + "," + ParserSTEP.DoubleToString(mLayerThickness) + "," + ParserIfc.LogicalToString(mIsVentilated) + s;
|
||||
return "#" + mMaterial.StepId + "," + ParserSTEP.DoubleToString(mLayerThickness) + "," + ParserIfc.LogicalToString(mIsVentilated) + s;
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mMaterial = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mMaterial = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcMaterial;
|
||||
mLayerThickness = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mIsVentilated = ParserIfc.StripLogical(str, ref pos, len);
|
||||
try
|
||||
|
@ -222,10 +225,10 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcMaterialLayerSetUsage
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return ParserSTEP.LinkToString(mForLayerSet) + ",." + mLayerSetDirection.ToString() + ".,." + mDirectionSense.ToString() + ".," + ParserSTEP.DoubleToString(mOffsetFromReferenceLine) + (release < ReleaseVersion.IFC4 ? "" : "," + ParserSTEP.DoubleOptionalToString(mReferenceExtent)); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "#" + mForLayerSet.StepId + ",." + mLayerSetDirection.ToString() + ".,." + mDirectionSense.ToString() + ".," + ParserSTEP.DoubleToString(mOffsetFromReferenceLine) + (release < ReleaseVersion.IFC4 ? "" : "," + ParserSTEP.DoubleOptionalToString(mReferenceExtent)); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mForLayerSet = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mForLayerSet = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcMaterialLayerSet;
|
||||
Enum.TryParse<IfcLayerSetDirectionEnum>(ParserSTEP.StripField(str, ref pos, len).Replace(".", ""), true, out mLayerSetDirection);
|
||||
Enum.TryParse<IfcDirectionSenseEnum>(ParserSTEP.StripField(str, ref pos, len).Replace(".", ""), true, out mDirectionSense);
|
||||
mOffsetFromReferenceLine = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
|
@ -267,12 +270,12 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
string str = "(" + ParserSTEP.LinkToString(mMaterials[0]);
|
||||
for (int icounter = 1; icounter < mMaterials.Count; icounter++)
|
||||
str += "," + ParserSTEP.LinkToString(mMaterials[icounter]);
|
||||
return str + ")";
|
||||
return "(" + String.Join(",", mMaterials.Select(x => "#" + x.StepId)) + ")";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mMaterials.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x=>dictionary[x] as IfcMaterial));
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary) { mMaterials = ParserSTEP.StripListLink(str, ref pos, len); }
|
||||
}
|
||||
public partial class IfcMaterialProfile
|
||||
{
|
||||
|
@ -317,7 +320,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
if (release < ReleaseVersion.IFC4 || AssociatedTo.SelectMany(x => x.mRelatedObjects).Count() == 0)
|
||||
return "";
|
||||
return "#" + mForProfileSet.Index + "," + (mCardinalPoint == IfcCardinalPointReference.DEFAULT ? "$" : ((int)mCardinalPoint).ToString()) + "," + ParserSTEP.DoubleOptionalToString(mReferenceExtent);
|
||||
return "#" + mForProfileSet.StepId + "," + (mCardinalPoint == IfcCardinalPointReference.DEFAULT ? "$" : ((int)mCardinalPoint).ToString()) + "," + ParserSTEP.DoubleOptionalToString(mReferenceExtent);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -330,7 +333,7 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcMaterialProfileSetUsageTapering
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return (release < ReleaseVersion.IFC4 || AssociatedTo.SelectMany(x => x.mRelatedObjects).Count() == 0 ? "" : base.BuildStringSTEP(release) + ",#" + ForProfileEndSet.Index + "," + (int)mCardinalEndPoint); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return (release < ReleaseVersion.IFC4 || AssociatedTo.SelectMany(x => x.mRelatedObjects).Count() == 0 ? "" : base.BuildStringSTEP(release) + ",#" + ForProfileEndSet.StepId + "," + (int)mCardinalEndPoint); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
|
@ -353,7 +356,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return (release >= ReleaseVersion.IFC4 ? base.BuildStringSTEP(release) + "," : "" ) + "#" + mMaterial.Index;
|
||||
return (release >= ReleaseVersion.IFC4 ? base.BuildStringSTEP(release) + "," : "" ) + "#" + mMaterial.StepId;
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -382,14 +385,14 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcMeasureWithUnit
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return (mValueComponent != null ? mValueComponent.ToString() : mVal) + "," + ParserSTEP.LinkToString(mUnitComponent); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return (mValueComponent != null ? mValueComponent.ToString() : mVal) + ",#" + mUnitComponent.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
string s = ParserSTEP.StripField(str, ref pos, len);
|
||||
mValueComponent = ParserIfc.parseValue(s);
|
||||
if (mValueComponent == null)
|
||||
mVal = s;
|
||||
mUnitComponent = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mUnitComponent = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcUnit;
|
||||
}
|
||||
}
|
||||
public partial class IfcMechanicalConcreteMaterialProperties
|
||||
|
@ -459,13 +462,11 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
string str = base.BuildStringSTEP(release) + "," + ParserSTEP.DoubleOptionalToString(mYieldStress) + "," + ParserSTEP.DoubleOptionalToString(mUltimateStress) + "," + ParserSTEP.DoubleOptionalToString(mUltimateStrain) + "," + ParserSTEP.DoubleOptionalToString(mHardeningModule) + "," + ParserSTEP.DoubleOptionalToString(mProportionalStress) + "," + ParserSTEP.DoubleOptionalToString(mPlasticStrain);
|
||||
if (mRelaxations.Count == 0)
|
||||
return str + ",$";
|
||||
str += ",(" + ParserSTEP.LinkToString(mRelaxations[0]);
|
||||
for (int icounter = 1; icounter < mRelaxations.Count; icounter++)
|
||||
str += "," + ParserSTEP.LinkToString(mRelaxations[icounter]);
|
||||
return str += ")";
|
||||
return base.BuildStringSTEP(release) + "," + ParserSTEP.DoubleOptionalToString(mYieldStress) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mUltimateStress) + "," + ParserSTEP.DoubleOptionalToString(mUltimateStrain) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mHardeningModule) + "," + ParserSTEP.DoubleOptionalToString(mProportionalStress) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mPlasticStrain) +
|
||||
(mRelaxations.Count == 0 ? ",$" : ",(" + String.Join(",", mRelaxations.Select(x => "#" + x.StepId)) + ")");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -476,7 +477,7 @@ namespace GeometryGym.Ifc
|
|||
mHardeningModule = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mProportionalStress = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mPlasticStrain = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mRelaxations = ParserSTEP.StripListLink(str, ref pos, len);
|
||||
mRelaxations.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x => dictionary[x] as IfcRelaxation));
|
||||
}
|
||||
}
|
||||
public partial class IfcMedicalDevice
|
||||
|
@ -530,10 +531,10 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + ",." + mBenchMark.ToString() +
|
||||
(string.IsNullOrEmpty(mValueSource) ? ".,$," : ".,'" + ParserIfc.Encode(mValueSource) + "',") +
|
||||
(mDataValueValue == null ? ParserSTEP.LinkToString(mDataValue) : mDataValueValue.ToString()) +
|
||||
(mDatabase.Release < ReleaseVersion.IFC4 ? "" : "," + ParserSTEP.LinkToString(mReferencePath));
|
||||
return base.BuildStringSTEP(release) + ",." + mBenchMark.ToString() +
|
||||
(string.IsNullOrEmpty(mValueSource) ? ".,$," : ".,'" + ParserIfc.Encode(mValueSource) + "',") +
|
||||
(mDataValue == null ? "$" : (mDataValue is BaseClassIfc o ? "#" + o.StepId : mDataValue.ToString())) +
|
||||
(mDatabase.Release < ReleaseVersion.IFC4 ? "" : ",#" + mReferencePath.StepId);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -541,10 +542,11 @@ namespace GeometryGym.Ifc
|
|||
Enum.TryParse<IfcBenchmarkEnum>(ParserSTEP.StripField(str, ref pos, len).Replace(".", ""), true, out mBenchMark);
|
||||
mValueSource = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
string s = ParserSTEP.StripField(str, ref pos, len);
|
||||
mDataValueValue = ParserIfc.parseValue(s);
|
||||
if (mDataValueValue == null)
|
||||
mDataValue = ParserSTEP.ParseLink(s);
|
||||
mReferencePath = ParserSTEP.StripLink(str, ref pos, len);
|
||||
if(s[0] == '#')
|
||||
mDataValue = dictionary[ParserSTEP.ParseLink(s)] as IfcMetricValueSelect;
|
||||
else
|
||||
mDataValue = ParserIfc.parseValue(s) as IfcMetricValueSelect;
|
||||
mReferencePath = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcReference;
|
||||
}
|
||||
}
|
||||
public partial class IfcMobileTelecommunicationsAppliance
|
||||
|
|
|
@ -30,7 +30,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
public abstract partial class IfcNamedUnit
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return (mDimensions == null ? "*" : "#" + mDimensions.Index) + ",." + mUnitType.ToString() + "."; }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return (mDimensions == null ? "*" : "#" + mDimensions.StepId) + ",." + mUnitType.ToString() + "."; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mDimensions = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcDimensionalExponents;
|
||||
|
|
|
@ -85,7 +85,7 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcOffsetCurve
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "#" + mBasisCurve.Index; }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "#" + mBasisCurve.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
BasisCurve = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCurve;
|
||||
|
@ -112,7 +112,7 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcOffsetCurveByDistances
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",(#" + string.Join(",#", OffsetValues.ConvertAll(x => x.Index)) + (string.IsNullOrEmpty(Tag) ? "),$" : "),'" + ParserIfc.Encode(Tag) + "'"); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",(" + string.Join(",", OffsetValues.ConvertAll(x => "#" + x.StepId)) + (string.IsNullOrEmpty(Tag) ? "),$" : "),'" + ParserIfc.Encode(Tag) + "'"); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
|
@ -122,10 +122,10 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcOneDirectionRepeatFactor
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return ParserSTEP.LinkToString(mRepeatFactor); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "#" + mRepeatFactor.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mRepeatFactor = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mRepeatFactor = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcVector;
|
||||
}
|
||||
}
|
||||
public partial class IfcOpenCrossProfileDef
|
||||
|
@ -165,13 +165,10 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
string name = mName;
|
||||
if(string.IsNullOrEmpty(name))
|
||||
name = mDatabase.Factory.ApplicationDeveloper;
|
||||
return (string.IsNullOrEmpty(mIdentification) ? "$,'" : "'" + ParserIfc.Encode(mIdentification) + "','") + ParserIfc.Encode(name)
|
||||
return (string.IsNullOrEmpty(mIdentification) ? "$,'" : "'" + ParserIfc.Encode(mIdentification) + "','") + ParserIfc.Encode(Name)
|
||||
+ (string.IsNullOrEmpty(mDescription) ? "',$," : "','" + ParserIfc.Encode(mDescription) + "',")
|
||||
+ (mRoles.Count == 0 ? "$," : "(#" + string.Join(",#", Roles.Select(x=>x.Index)) + "),")
|
||||
+ (mAddresses.Count == 0 ? "$" : "(#" + string.Join(",#", Addresses.Select(x=>x.Index)) + ")");
|
||||
+ (mRoles.Count == 0 ? "$," : "(" + string.Join(",", Roles.Select(x=>"#" + x.StepId)) + "),")
|
||||
+ (mAddresses.Count == 0 ? "$" : "(" + string.Join(",", Addresses.Select(x=> "#" + x.StepId)) + ")");
|
||||
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
|
@ -183,6 +180,19 @@ namespace GeometryGym.Ifc
|
|||
mAddresses.AddRange(ParserSTEP.StripListLink(str, ref pos, len).ConvertAll(x=>dictionary[x] as IfcAddress));
|
||||
}
|
||||
}
|
||||
public partial class IfcOrganizationRelationship
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return "#" + mRelatingOrganization.StepId + ",(" + String.Join(",", mRelatedOrganizations.Select(x => "#" + x.StepId)) + ")";
|
||||
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
RelatingOrganization = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcOrganization;
|
||||
RelatedOrganizations.AddRange(ParserSTEP.StripListLink(str, ref pos, len).ConvertAll(x => dictionary[x] as IfcOrganization));
|
||||
}
|
||||
}
|
||||
public partial class IfcOrientationExpression
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
|
@ -231,7 +241,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
string str = "#" + mOwningUser.Index + ",#" + mOwningApplication.Index + ",";
|
||||
string str = "#" + mOwningUser.StepId + ",#" + mOwningApplication.StepId + ",";
|
||||
if (mState == IfcStateEnum.NOTDEFINED)
|
||||
str += "$";
|
||||
else
|
||||
|
|
|
@ -42,9 +42,12 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return "(" + string.Join(",", mEdgeList.Select(x=>"#" + x));
|
||||
return "(" + string.Join(",", mEdgeList.Select(x=>"#" + x.StepId));
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mEdgeList.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x=>dictionary[x] as IfcOrientedEdge));
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary) { mEdgeList = ParserSTEP.StripListLink(str, ref pos, len); }
|
||||
}
|
||||
public partial class IfcPcurve
|
||||
{
|
||||
|
@ -140,23 +143,24 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
string str = (string.IsNullOrEmpty(mIdentification) ? "$," : "'" + ParserIfc.Encode(mIdentification) + "',");
|
||||
if (string.IsNullOrEmpty(mFamilyName) && string.IsNullOrEmpty(mGivenName))
|
||||
str += (string.IsNullOrEmpty(mIdentification) ? "'Unknown',$," : "'" + ParserIfc.Encode(mIdentification) + "',$,");
|
||||
else
|
||||
str += (string.IsNullOrEmpty(mFamilyName) ? "$," : "'" + ParserIfc.Encode(mFamilyName) + "',") + (string.IsNullOrEmpty(mGivenName) ? "$," : "'" + ParserIfc.Encode(mGivenName) + "',");
|
||||
str += (mMiddleNames.Count == 0 ? "$," : "(" + string.Join(",", mMiddleNames.Select(x=> "'" + ParserIfc.Encode(x) + "'")) + "),");
|
||||
str += (mPrefixTitles.Count == 0 ? "$," : "(" + string.Join(",", mPrefixTitles.Select(x=>"'" + ParserIfc.Encode(x) + "'")) + "),");
|
||||
str += (mSuffixTitles.Count == 0 ? "$," : "(" + string.Join(",", mSuffixTitles.Select(x=>"'" + ParserIfc.Encode(x) + "'")) + "),");
|
||||
str += (Roles.Count == 0 ? "$," : "(#" + string.Join(",#", Roles.ConvertAll(x=>x.Index.ToString())) + "),");
|
||||
return str + (Addresses.Count == 0 ? "$" : "(#" + string.Join(",#", Addresses.ConvertAll(x=>x.Index.ToString())) + ")");
|
||||
string id = Identification;
|
||||
if (string.IsNullOrEmpty(mIdentification) && string.IsNullOrEmpty(mGivenName) && string.IsNullOrEmpty(mFamilyName))
|
||||
id = "Unknown";
|
||||
return (string.IsNullOrEmpty(id) ? "$," : "'" + ParserIfc.Encode(id) + "',") +
|
||||
(string.IsNullOrEmpty(mFamilyName) ? "$," : "'" + ParserIfc.Encode(mFamilyName) + "',") +
|
||||
(string.IsNullOrEmpty(mGivenName) ? "$," : "'" + ParserIfc.Encode(mGivenName) + "',") +
|
||||
(mMiddleNames.Count == 0 ? "$," : "(" + string.Join(",", mMiddleNames.Select(x=> "'" + ParserIfc.Encode(x) + "'")) + "),") +
|
||||
(mPrefixTitles.Count == 0 ? "$," : "(" + string.Join(",", mPrefixTitles.Select(x=>"'" + ParserIfc.Encode(x) + "'")) + "),") +
|
||||
(mSuffixTitles.Count == 0 ? "$," : "(" + string.Join(",", mSuffixTitles.Select(x=>"'" + ParserIfc.Encode(x) + "'")) + "),") +
|
||||
(Roles.Count == 0 ? "$," : "(" + string.Join(",", Roles.ConvertAll(x=> "#" + x.StepId)) + "),") +
|
||||
(Addresses.Count == 0 ? "$" : "(" + string.Join(",", Addresses.ConvertAll(x=> "#" + x.StepId)) + ")");
|
||||
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mIdentification = ParserSTEP.StripString(str, ref pos, len);
|
||||
mFamilyName = ParserSTEP.StripString(str, ref pos, len);
|
||||
mGivenName = ParserSTEP.StripString(str, ref pos, len);
|
||||
mIdentification = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
mFamilyName = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
mGivenName = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
mMiddleNames.AddRange(ParserSTEP.SplitListStrings(ParserSTEP.StripField(str, ref pos, len)).Select(x=>ParserIfc.Decode(x)));
|
||||
mPrefixTitles.AddRange(ParserSTEP.SplitListStrings(ParserSTEP.StripField(str, ref pos, len)).Select(x => ParserIfc.Decode(x)));
|
||||
mSuffixTitles.AddRange(ParserSTEP.SplitListStrings(ParserSTEP.StripField(str, ref pos, len)).Select(x => ParserIfc.Decode(x)));
|
||||
|
@ -168,7 +172,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return "#" + mThePerson.Index + ",#" + mTheOrganization.Index + (mRoles.Count == 0 ? ",$" : ",(#" + string.Join(",#", mRoles.ConvertAll(x => x.Index.ToString())) + ")");
|
||||
return "#" + mThePerson.StepId + ",#" + mTheOrganization.StepId + (mRoles.Count == 0 ? ",$" : ",(" + string.Join(",", mRoles.ConvertAll(x => "#" + x.StepId)) + ")");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -207,11 +211,11 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public abstract partial class IfcPhysicalSimpleQuantity
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mUnit); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + (mUnit == null ? ",$" : ",#" + mUnit.StepId); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mUnit = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mUnit = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcNamedUnit;
|
||||
}
|
||||
}
|
||||
public partial class IfcPile
|
||||
|
@ -301,16 +305,16 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public abstract partial class IfcPlacement
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "#" + mLocation.mIndex; }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "#" + mLocation.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary) { mLocation = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcPoint; }
|
||||
}
|
||||
public partial class IfcPlanarBox
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mPlacement); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mPlacement.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mPlacement = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mPlacement = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcAxis2Placement;
|
||||
}
|
||||
}
|
||||
public partial class IfcPlanarExtent
|
||||
|
@ -375,31 +379,31 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcPointOnCurve
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return ParserSTEP.LinkToString(mBasisCurve) + "," + ParserSTEP.DoubleToString(mPointParameter); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "#" + mBasisCurve.StepId + "," + ParserSTEP.DoubleToString(mPointParameter); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mBasisCurve = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mBasisCurve = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCurve;
|
||||
mPointParameter = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
}
|
||||
}
|
||||
public partial class IfcPointOnSurface
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return ParserSTEP.LinkToString(mBasisSurface) + "," + ParserSTEP.DoubleToString(mPointParameterU) + "," + ParserSTEP.DoubleToString(mPointParameterV); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "#" + mBasisSurface.StepId + "," + ParserSTEP.DoubleToString(mPointParameterU) + "," + ParserSTEP.DoubleToString(mPointParameterV); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mBasisSurface = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mBasisSurface = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcSurface;
|
||||
mPointParameterU = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mPointParameterV = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
}
|
||||
}
|
||||
public partial class IfcPolygonalBoundedHalfSpace
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mPosition) + "," + ParserSTEP.LinkToString(mPolygonalBoundary); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mPosition.StepId + ",#" + mPolygonalBoundary.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mPosition = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mPolygonalBoundary = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mPosition = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcAxis2Placement3D;
|
||||
mPolygonalBoundary = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcBoundedCurve;
|
||||
}
|
||||
}
|
||||
public partial class IfcPolygonalFaceSet
|
||||
|
@ -408,7 +412,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
return base.BuildStringSTEP(release) +
|
||||
(release < ReleaseVersion.IFC4X3 ? (mClosed == IfcLogicalEnum.UNKNOWN ? ",$" : "," + ParserIfc.LogicalToString(mClosed)) : "") +
|
||||
",(#" + string.Join(",#", mFaces.Select(x => x.StepId)) + (mPnIndex.Count == 0 ? "),$" : "),(" + string.Join(",", mPnIndex) + ")");
|
||||
",(" + string.Join(",", mFaces.Select(x => "#" + x.StepId)) + (mPnIndex.Count == 0 ? "),$" : "),(" + string.Join(",", mPnIndex) + ")");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -421,12 +425,12 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcPolyline
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "(#" + string.Join(",#", Points.ConvertAll(x => x.Index.ToString())) + ")"; }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "(" + string.Join(",", Points.ConvertAll(x => "#" + x.StepId)) + ")"; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary) { Points.AddRange(ParserSTEP.SplitListLinks(str.Substring(1, str.Length - 2)).ConvertAll(x=>dictionary[x] as IfcCartesianPoint)); }
|
||||
}
|
||||
public partial class IfcPolyLoop
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "(#" + string.Join(",#", mPolygon.ConvertAll(x=>x.mIndex)) + ")" ; }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "(" + string.Join(",", mPolygon.ConvertAll(x=> "#" + x.StepId)) + ")" ; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary) { mPolygon.AddRange(ParserSTEP.SplitListLinks(str.Substring(1, str.Length - 2)).ConvertAll(x => dictionary[x] as IfcCartesianPoint)); }
|
||||
}
|
||||
public partial class IfcPolynomialCurve
|
||||
|
@ -621,9 +625,9 @@ namespace GeometryGym.Ifc
|
|||
if (profileDefinition == null)
|
||||
return "";
|
||||
if(release < ReleaseVersion.IFC4)
|
||||
return base.BuildStringSTEP(release) + (string.IsNullOrEmpty(mName) ? "$,#" : "'" + ParserIfc.Encode(mName) + "',#") + profileDefinition.Index;
|
||||
return base.BuildStringSTEP(release) + (string.IsNullOrEmpty(mName) ? "$,#" : "'" + ParserIfc.Encode(mName) + "',#") + profileDefinition.StepId;
|
||||
|
||||
return base.BuildStringSTEP(release) + ",#" + profileDefinition.Index;
|
||||
return base.BuildStringSTEP(release) + ",#" + profileDefinition.StepId;
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -640,14 +644,14 @@ namespace GeometryGym.Ifc
|
|||
if (release < ReleaseVersion.IFC4)
|
||||
return "";
|
||||
return base.BuildStringSTEP(release) + (string.IsNullOrEmpty( mMapProjection) ? ",$," : ",'" + ParserIfc.Encode( mMapProjection) + "',") +
|
||||
(string.IsNullOrEmpty( mMapZone) ? "$," : "'" + ParserIfc.Encode(mMapZone) + "',") + ParserSTEP.LinkToString(mMapUnit);
|
||||
(string.IsNullOrEmpty( mMapZone) ? "$," : "'" + ParserIfc.Encode(mMapZone) + "',") + (mMapUnit == null ? "$" : "#" + mMapUnit.StepId);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mMapProjection = ParserIfc.Decode( ParserSTEP.StripString(str, ref pos, len));
|
||||
mMapZone = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
mMapUnit = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mMapUnit = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcNamedUnit;
|
||||
}
|
||||
}
|
||||
public partial class IfcProjectionElement
|
||||
|
@ -688,15 +692,12 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
string str = base.BuildStringSTEP(release) + ",(" + ParserSTEP.LinkToString(mRecords[0]);
|
||||
for (int icounter = 1; icounter < mRecords.Count; icounter++)
|
||||
str += "," + ParserSTEP.LinkToString(mRecords[icounter]);
|
||||
return str + "),." + mPredefinedType.ToString() + ".";
|
||||
return base.BuildStringSTEP(release) + ",(" + string.Join(",", mRecords.Select(x=>"#" + x.StepId)) + "),." + mPredefinedType.ToString() + ".";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mRecords = ParserSTEP.StripListLink(str, ref pos, len);
|
||||
mRecords.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x=>dictionary[x] as IfcRelAssignsToProjectOrder));
|
||||
Enum.TryParse<IfcProjectOrderRecordTypeEnum>(ParserSTEP.StripField(str, ref pos, len).Replace(".", ""), true, out mPredefinedType);
|
||||
}
|
||||
}
|
||||
|
@ -711,7 +712,11 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcPropertyBoundedValue
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + (mUpperBoundValue == null ? ",$," : "," + mUpperBoundValue.ToString() + ",") + (mLowerBoundValue == null ? "$," : mLowerBoundValue.ToString() + ",") + ParserSTEP.LinkToString(mUnit) + (release < ReleaseVersion.IFC4 ? "" : (mSetPointValue == null ? ",$" : "," + mSetPointValue.ToString())); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + (mUpperBoundValue == null ? ",$," : "," + mUpperBoundValue.ToString() + ",") +
|
||||
(mLowerBoundValue == null ? "$," : mLowerBoundValue.ToString() + ",") + (mUnit == null ? "$" : "#" + mUnit.StepId) +
|
||||
(release < ReleaseVersion.IFC4 ? "" : (mSetPointValue == null ? ",$" : "," + mSetPointValue.ToString())); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
|
@ -721,10 +726,8 @@ namespace GeometryGym.Ifc
|
|||
s = ParserSTEP.StripField(str, ref pos, len);
|
||||
if (s != "$")
|
||||
mLowerBoundValue = ParserIfc.parseValue(s);
|
||||
s = ParserSTEP.StripField(str, ref pos, len);
|
||||
if (s != "$")
|
||||
mUnit = ParserSTEP.ParseLink(s);
|
||||
if (release != ReleaseVersion.IFC2x3)
|
||||
mUnit = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcUnit;
|
||||
if (release > ReleaseVersion.IFC2x3)
|
||||
{
|
||||
s = ParserSTEP.StripField(str, ref pos, len);
|
||||
if (s != "$")
|
||||
|
@ -734,7 +737,11 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcPropertyBoundedValue<T> : IfcSimpleProperty where T : IfcValue
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + (mUpperBoundValue == null ? ",$," : "," + mUpperBoundValue.ToString() + ",") + (mLowerBoundValue == null ? "$," : mLowerBoundValue.ToString() + ",") + ParserSTEP.LinkToString(mUnit) + (release < ReleaseVersion.IFC4 ? "" : (mSetPointValue == null ? ",$" : "," + mSetPointValue.ToString())); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + (mUpperBoundValue == null ? ",$," : "," + mUpperBoundValue.ToString() + ",") +
|
||||
(mLowerBoundValue == null ? "$," : mLowerBoundValue.ToString() + ",") + (mUnit == null ? "$" : "#" + mUnit.StepId) +
|
||||
(release < ReleaseVersion.IFC4 ? "" : (mSetPointValue == null ? ",$" : "," + mSetPointValue.ToString())); }
|
||||
}
|
||||
public abstract partial class IfcPropertyConstraintRelationship
|
||||
{
|
||||
|
@ -754,12 +761,16 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcPropertyDependencyRelationship
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#"+ mDependingProperty + ",#" + mDependantProperty + (string.IsNullOrEmpty(mExpression) ? ",$" : ",'" + ParserIfc.Encode(mExpression) + "'"); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + ",#" + mDependingProperty.StepId + ",#" + mDependantProperty.StepId +
|
||||
(string.IsNullOrEmpty(mExpression) ? ",$" : ",'" + ParserIfc.Encode(mExpression) + "'");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mDependingProperty = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mDependantProperty = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mDependingProperty = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcProperty;
|
||||
mDependantProperty = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcProperty;
|
||||
mExpression = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
}
|
||||
}
|
||||
|
@ -767,10 +778,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
string result = base.BuildStringSTEP(release) + ",(" + mEnumerationValues[0].ToString();
|
||||
for (int icounter = 1; icounter < mEnumerationValues.Count; icounter++)
|
||||
result += "," + mEnumerationValues[icounter].ToString();
|
||||
return result + ")," + ParserSTEP.LinkToString(mEnumerationReference);
|
||||
return base.BuildStringSTEP(release) + ",(" + String.Join(",", mEnumerationValues) + (mEnumerationReference == null ? "),$" : "),#" + mEnumerationReference.StepId);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -778,7 +786,7 @@ namespace GeometryGym.Ifc
|
|||
string s = ParserSTEP.StripField(str, ref pos, len);
|
||||
List<string> fields = ParserSTEP.SplitLineFields(s.Substring(1, s.Length - 2));
|
||||
mEnumerationValues.AddRange(fields.Select(x => ParserIfc.parseValue(x)));
|
||||
mEnumerationReference = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mEnumerationReference = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcPropertyEnumeration;
|
||||
}
|
||||
}
|
||||
public partial class IfcPropertyEnumeration
|
||||
|
@ -825,12 +833,16 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcPropertyReferenceValue
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + (string.IsNullOrEmpty(mUsageName) ? ",$," : ",'" + ParserIfc.Encode(mUsageName) + "',") + (mPropertyReference == 0 ? "$" : "#" + mPropertyReference); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + (string.IsNullOrEmpty(mUsageName) ? ",$," : ",'" + ParserIfc.Encode(mUsageName) + "',") +
|
||||
(mPropertyReference == null ? "$" : "#" + mPropertyReference.StepId);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mUsageName = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
mPropertyReference = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mPropertyReference = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcObjectReferenceSelect;
|
||||
}
|
||||
}
|
||||
public partial class IfcPropertySet
|
||||
|
|
|
@ -189,10 +189,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
string str = base.BuildStringSTEP(release) + ",(" + ParserSTEP.DoubleToString(mWeightsData[0]);
|
||||
for (int icounter = 1; icounter < mWeightsData.Count; icounter++)
|
||||
str += "," + ParserSTEP.DoubleToString(mWeightsData[icounter]);
|
||||
return str + ")";
|
||||
return base.BuildStringSTEP(release) + ",(" + string.Join(",", mWeightsData.Select(x=> ParserSTEP.DoubleToString(x))) + ")";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -261,10 +258,10 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcRectangularTrimmedSurface
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return ParserSTEP.LinkToString(mBasisSurface) + "," + ParserSTEP.DoubleToString(mU1) + "," + ParserSTEP.DoubleToString(mV1) + "," + ParserSTEP.DoubleToString(mU2) + "," + ParserSTEP.DoubleToString(mV2) + "," + ParserSTEP.BoolToString(mUsense) + "," + ParserSTEP.BoolToString(mVsense); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "#" + mBasisSurface.StepId + "," + ParserSTEP.DoubleToString(mU1) + "," + ParserSTEP.DoubleToString(mV1) + "," + ParserSTEP.DoubleToString(mU2) + "," + ParserSTEP.DoubleToString(mV2) + "," + ParserSTEP.BoolToString(mUsense) + "," + ParserSTEP.BoolToString(mVsense); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
mBasisSurface = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mBasisSurface = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcPlane;
|
||||
mU1 = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mU2 = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mV1 = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
|
@ -277,45 +274,12 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
string str = "." + mRecurrenceType.ToString();
|
||||
if (mDayComponent.Count == 0)
|
||||
str += ".,$,";
|
||||
else
|
||||
{
|
||||
str += ".,(" + mDayComponent[0];
|
||||
for (int icounter = 1; icounter < mDayComponent.Count; icounter++)
|
||||
str += "," + mDayComponent[icounter];
|
||||
str += "),";
|
||||
}
|
||||
if (mWeekdayComponent.Count == 0)
|
||||
str += "$,";
|
||||
else
|
||||
{
|
||||
str += "(" + mWeekdayComponent[0];
|
||||
for (int icounter = 1; icounter < mWeekdayComponent.Count; icounter++)
|
||||
str += "," + mWeekdayComponent[icounter];
|
||||
str += "),";
|
||||
}
|
||||
if (mMonthComponent.Count == 0)
|
||||
str += "$,";
|
||||
else
|
||||
{
|
||||
str += "(" + mMonthComponent[0];
|
||||
for (int icounter = 1; icounter < mMonthComponent.Count; icounter++)
|
||||
str += "," + mMonthComponent[icounter];
|
||||
str += "),";
|
||||
}
|
||||
str += mInterval + "," + mPosition + "," + mOccurrences;
|
||||
if (mTimePeriods.Count == 0)
|
||||
str += ",$";
|
||||
else
|
||||
{
|
||||
str += ",(" + ParserSTEP.LinkToString(mTimePeriods[0]);
|
||||
for (int icounter = 1; icounter < mTimePeriods.Count; icounter++)
|
||||
str += "," + ParserSTEP.LinkToString(mTimePeriods[icounter]);
|
||||
str += ")";
|
||||
}
|
||||
return str;
|
||||
return "." + mRecurrenceType.ToString() + (mDayComponent.Count == 0 ? ".,$," : ".,(" + string.Join(",", mDayComponent) + "),") +
|
||||
(mWeekdayComponent.Count == 0 ? "$," : "(" + string.Join(",", mWeekdayComponent) + "),") +
|
||||
(mMonthComponent.Count == 0 ? "$," : "(" + string.Join(",", mMonthComponent) + "),") +
|
||||
(mInterval == int.MinValue ? "$" : mInterval.ToString()) + (mPosition == int.MinValue ? ",$" : "," + mPosition) +
|
||||
(mOccurrences == int.MinValue ? ",$" :"," + mOccurrences) +
|
||||
(mTimePeriods.Count == 0 ? ",$" : string.Join(",", mTimePeriods.Select(x=>"#" + x.StepId)) + ")");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -338,7 +302,7 @@ namespace GeometryGym.Ifc
|
|||
s = ParserSTEP.StripField(str, ref pos, len);
|
||||
if (s != "$")
|
||||
mOccurrences = int.Parse(s);
|
||||
mTimePeriods = ParserSTEP.StripListLink(str, ref pos, len);
|
||||
mTimePeriods.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x=>dictionary[x] as IfcTimePeriod));
|
||||
}
|
||||
}
|
||||
public partial class IfcReference
|
||||
|
@ -350,7 +314,7 @@ namespace GeometryGym.Ifc
|
|||
return (string.IsNullOrEmpty(mTypeIdentifier) ? "$" : "'" + ParserIfc.Encode(mTypeIdentifier) + "'") +
|
||||
(string.IsNullOrEmpty(mAttributeIdentifier) ? ",$," : ",'" + ParserIfc.Encode(mAttributeIdentifier) + "',") +
|
||||
(string.IsNullOrEmpty(mInstanceName) ? "$," : "'" + ParserIfc.Encode(mInstanceName) + "',") +
|
||||
(mListPositions.Count == 0 ? "$," : "(" + string.Join(",", mListPositions) + "),") + ParserSTEP.LinkToString(mInnerReference);
|
||||
(mListPositions.Count == 0 ? "$," : "(" + string.Join(",", mListPositions) + "),") + (mInnerReference == null ? "$" : "#" + mInnerReference.StepId);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -360,7 +324,7 @@ namespace GeometryGym.Ifc
|
|||
string s = ParserSTEP.StripField(str, ref pos, len);
|
||||
if (s.StartsWith("("))
|
||||
mListPositions.AddRange(ParserSTEP.SplitLineFields(s.Substring(1, s.Length - 2)).ConvertAll(x => int.Parse(x)));
|
||||
mInnerReference = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mInnerReference = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcReference;
|
||||
}
|
||||
}
|
||||
public partial class IfcReferent
|
||||
|
@ -573,7 +537,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
if (mRelatedObjects.Count == 0)
|
||||
return "";
|
||||
return base.BuildStringSTEP(release) + ",#" + mRelatingObject.StepId + ",(#" + string.Join(",#", RelatedObjects.OrderBy(x=>x.StepId).Select(x => x.Index)) + ")";
|
||||
return base.BuildStringSTEP(release) + ",#" + mRelatingObject.StepId + ",(" + string.Join(",", RelatedObjects.OrderBy(x=>x.StepId).Select(x => "#" + x.StepId)) + ")";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -586,7 +550,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + ",(#" + string.Join(",#", RelatedObjects.ConvertAll(x => x.Index)) + ")," +
|
||||
return base.BuildStringSTEP(release) + ",(" + string.Join(",", RelatedObjects.ConvertAll(x => "#" + x.StepId)) + ")," +
|
||||
(mDatabase.Release < ReleaseVersion.IFC4 && mRelatedObjectsType != IfcObjectTypeEnum.NOTDEFINED ? "." + mRelatedObjectsType + "." : "$");
|
||||
|
||||
}
|
||||
|
@ -602,7 +566,10 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcRelAssignsTasks
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return (mDatabase.ModelView == ModelView.Ifc2x3Coordination || mRelatedObjects.Count == 0 ? "" : base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mTimeForTask)); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return (mDatabase.ModelView == ModelView.Ifc2x3Coordination || mRelatedObjects.Count == 0 ? "" :
|
||||
base.BuildStringSTEP(release) + (mTimeForTask == null ? ",$" : ",#" + mTimeForTask.StepId)); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
|
@ -611,7 +578,7 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcRelAssignsToActor
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return (mRelatedObjects.Count == 0 ? "" : base.BuildStringSTEP(release) + ",#" + RelatingActor.Index + "," + ParserSTEP.ObjToLinkString(mRelatingActor)); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return (mRelatedObjects.Count == 0 ? "" : base.BuildStringSTEP(release) + ",#" + RelatingActor.StepId + "," + ParserSTEP.ObjToLinkString(mRelatingActor)); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
|
@ -631,7 +598,7 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcRelAssignsToGroup
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return (mRelatedObjects.Count == 0 ? "" : base.BuildStringSTEP(release) + ",#" + mRelatingGroup.Index); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return (mRelatedObjects.Count == 0 ? "" : base.BuildStringSTEP(release) + ",#" + mRelatingGroup.StepId); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
|
@ -653,7 +620,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
if (mDatabase.ModelView == ModelView.Ifc2x3Coordination || mRelatedObjects.Count == 0)
|
||||
return "";
|
||||
return base.BuildStringSTEP(release) + ",#" + mRelatingProcess + (mQuantityInProcess == null ? ",$" : ",#" + mQuantityInProcess.Index); }
|
||||
return base.BuildStringSTEP(release) + ",#" + mRelatingProcess.StepId + (mQuantityInProcess == null ? ",$" : ",#" + mQuantityInProcess.StepId); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
|
@ -663,7 +630,7 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcRelAssignsToProduct
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return (mDatabase.ModelView == ModelView.Ifc2x3Coordination || mRelatedObjects.Count == 0 ? "" : base.BuildStringSTEP(release) + ",#" + mRelatingProduct.Index); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return (mDatabase.ModelView == ModelView.Ifc2x3Coordination || mRelatedObjects.Count == 0 ? "" : base.BuildStringSTEP(release) + ",#" + mRelatingProduct.StepId); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
|
@ -672,7 +639,10 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcRelAssignsToResource
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return (mDatabase.ModelView == ModelView.Ifc2x3Coordination || mRelatedObjects.Count == 0 ? "" : base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mRelatingResource)); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return (mDatabase.ModelView == ModelView.Ifc2x3Coordination || mRelatedObjects.Count == 0 ? "" :
|
||||
base.BuildStringSTEP(release) + ",#" + mRelatingResource.StepId); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
|
@ -685,7 +655,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
if (mRelatedObjects.Count == 0)
|
||||
return "";
|
||||
return base.BuildStringSTEP(release) + ",(#" + string.Join(",#", mRelatedObjects.ConvertAll(x => x.Index)) + ")";
|
||||
return base.BuildStringSTEP(release) + ",(" + string.Join(",", mRelatedObjects.ConvertAll(x => "#" + x.StepId)) + ")";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -702,12 +672,25 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
}
|
||||
}
|
||||
public partial class IfcRelAssociatesApproval
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
string str = base.BuildStringSTEP(release);
|
||||
return string.IsNullOrEmpty(str) ? "" : str + ",#" + RelatingApproval.StepId;
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
RelatingApproval = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcApproval;
|
||||
}
|
||||
}
|
||||
public partial class IfcRelAssociatesClassification
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
string str = base.BuildStringSTEP(release);
|
||||
return string.IsNullOrEmpty(str) ? "" : str + ",#" + RelatingClassification.Index;
|
||||
return string.IsNullOrEmpty(str) ? "" : str + ",#" + RelatingClassification.StepId;
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -717,9 +700,11 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcRelAssociatesConstraint
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return (RelatingConstraint == null ? "" : base.BuildStringSTEP(release) + (string.IsNullOrEmpty(mIntent) ? ",$," : ",'" + ParserIfc.Encode(mIntent) + "',") + ParserSTEP.LinkToString(mRelatingConstraint)); }
|
||||
return (RelatingConstraint == null ? "" : base.BuildStringSTEP(release) +
|
||||
(string.IsNullOrEmpty(mIntent) ? ",$," : ",'" + ParserIfc.Encode(mIntent) + "',") + "#" + mRelatingConstraint.StepId);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
|
@ -729,11 +714,11 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcRelAssociatesDocument
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mRelatingDocument); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mRelatingDocument.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mRelatingDocument = ParserSTEP.StripLink(str, ref pos, len);
|
||||
RelatingDocument = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcDocumentSelect;
|
||||
}
|
||||
}
|
||||
public partial class IfcRelAssociatesLibrary
|
||||
|
@ -742,7 +727,7 @@ namespace GeometryGym.Ifc
|
|||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mRelatingLibrary = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcLibrarySelect;
|
||||
RelatingLibrary = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcLibrarySelect;
|
||||
}
|
||||
}
|
||||
public partial class IfcRelAssociatesMaterial
|
||||
|
@ -752,7 +737,7 @@ namespace GeometryGym.Ifc
|
|||
string baseString = base.BuildStringSTEP(release);
|
||||
if (string.IsNullOrEmpty(baseString) || (release < ReleaseVersion.IFC4 && string.IsNullOrEmpty(RelatingMaterial.ToString())))
|
||||
return "";
|
||||
return baseString + ",#" + mRelatingMaterial;
|
||||
return baseString + ",#" + mRelatingMaterial.StepId;
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -778,28 +763,19 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
if (release > ReleaseVersion.IFC2x3 || mRelatedObjects.Count == 0)
|
||||
return "";
|
||||
string str = base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mRelatingProfileProperties) + "," +
|
||||
ParserSTEP.LinkToString(mProfileSectionLocation) + ",";
|
||||
if (double.IsNaN(mProfileOrientationValue))
|
||||
{
|
||||
if (mProfileOrientation == 0)
|
||||
return str + "$";
|
||||
return str + ",IFCPLANEANGLEMEASURE(" + ParserSTEP.DoubleToString(mProfileOrientation) + ")";
|
||||
}
|
||||
return str + ParserSTEP.LinkToString((int)mProfileOrientation);
|
||||
return base.BuildStringSTEP(release) + ",#" + mRelatingProfileProperties.StepId + ",#" + mProfileSectionLocation.StepId + "," +
|
||||
(mProfileOrientation is BaseClassIfc o ? "#" + o.StepId : (mProfileOrientation == null ? "$" : mProfileOrientation.ToString()));
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mRelatingProfileProperties = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mProfileSectionLocation = ParserSTEP.StripLink(str, ref pos, len);
|
||||
RelatingProfileProperties = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcProfileProperties;
|
||||
ProfileSectionLocation = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcShapeAspect;
|
||||
string s = ParserSTEP.StripField(str, ref pos, len);
|
||||
if (s.StartsWith("IfcPlaneAngleMeasure(", true, System.Globalization.CultureInfo.CurrentCulture))
|
||||
{
|
||||
mProfileOrientationValue = ParserSTEP.ParseDouble(s.Substring(21, s.Length - 22));
|
||||
}
|
||||
if (s[0] == '#')
|
||||
mProfileOrientation = dictionary[ParserSTEP.ParseLink(s)] as IfcOrientationSelect;
|
||||
else
|
||||
mProfileOrientation = ParserSTEP.ParseLink(s);
|
||||
mProfileOrientation = ParserIfc.parseValue(s) as IfcOrientationSelect;
|
||||
}
|
||||
}
|
||||
public partial class IfcRelaxation
|
||||
|
@ -813,7 +789,7 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcRelConnectsElements
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return (mRelatingElement == null || mRelatedElement == null ? "" : base.BuildStringSTEP(release) + "," + ParserSTEP.ObjToLinkString(mConnectionGeometry) + ",#" + mRelatingElement.Index + ",#" + mRelatedElement.Index); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return (mRelatingElement == null || mRelatedElement == null ? "" : base.BuildStringSTEP(release) + "," + ParserSTEP.ObjToLinkString(mConnectionGeometry) + ",#" + mRelatingElement.StepId + ",#" + mRelatedElement.StepId); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
|
@ -842,18 +818,25 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcRelConnectsPorts
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mRelatingPort) + "," + ParserSTEP.LinkToString(mRelatedPort) + "," + ParserSTEP.LinkToString(mRealizingElement); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + ",#" + mRelatingPort.StepId + ",#" + mRelatedPort.StepId +
|
||||
(mRealizingElement == null ? ",$" : "," + mRealizingElement.StepId);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
RelatingPort = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcPort;
|
||||
RelatedPort = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcPort;
|
||||
mRealizingElement = ParserSTEP.StripLink(str, ref pos, len);
|
||||
RealizingElement = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcElement;
|
||||
}
|
||||
}
|
||||
public partial class IfcRelConnectsPortToElement
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mRelatingPort) + "," + ParserSTEP.LinkToString(mRelatedElement); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + ",#" + mRelatingPort.StepId + ",#" + mRelatedElement.StepId;
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
|
@ -886,29 +869,28 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mRelatingStructuralMember) + "," +
|
||||
ParserSTEP.LinkToString(mRelatedStructuralConnection) + "," + ParserSTEP.LinkToString(mAppliedCondition) + "," +
|
||||
ParserSTEP.LinkToString(mAdditionalConditions) + "," + ParserSTEP.DoubleOptionalToString(mSupportedLength) + "," +
|
||||
ParserSTEP.LinkToString(mConditionCoordinateSystem);
|
||||
return base.BuildStringSTEP(release) + ",#" + mRelatingStructuralMember.StepId + ",#" + mRelatedStructuralConnection.StepId +
|
||||
(mAppliedCondition == null ? ",$" : ",#" + mAppliedCondition.StepId) + (mAdditionalConditions == null ? ",$," : ",#" + mAppliedCondition.StepId + ",") +
|
||||
ParserSTEP.DoubleOptionalToString(mSupportedLength) + (mConditionCoordinateSystem == null ? ",$" : ",#" + mConditionCoordinateSystem.StepId);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
RelatingStructuralMember = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcStructuralMember;
|
||||
RelatedStructuralConnection = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcStructuralConnection;
|
||||
mAppliedCondition = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mAdditionalConditions = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mSupportedLength = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mConditionCoordinateSystem = ParserSTEP.StripLink(str, ref pos, len);
|
||||
AppliedCondition = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcBoundaryCondition;
|
||||
AdditionalConditions = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcStructuralConnectionCondition;
|
||||
SupportedLength = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
ConditionCoordinateSystem = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcAxis2Placement3D;
|
||||
}
|
||||
}
|
||||
public partial class IfcRelConnectsWithEccentricity
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mConnectionConstraint); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mConnectionConstraint.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mConnectionConstraint = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mConnectionConstraint = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcConnectionGeometry;
|
||||
}
|
||||
}
|
||||
public partial class IfcRelConnectsWithRealizingElements
|
||||
|
@ -917,7 +899,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
if (mRealizingElements.Count == 0)
|
||||
return "";
|
||||
return base.BuildStringSTEP(release) + ",(#" + string.Join(",#", mRealizingElements.Select(x => x.Index)) + (string.IsNullOrEmpty(mConnectionType) ? "),$" : "),'" + ParserIfc.Encode(mConnectionType) + "'");
|
||||
return base.BuildStringSTEP(release) + ",(" + string.Join(",", mRealizingElements.Select(x => "#" + x.StepId)) + (string.IsNullOrEmpty(mConnectionType) ? "),$" : "),'" + ParserIfc.Encode(mConnectionType) + "'");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -932,7 +914,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
if (mRelatedElements.Count <= 0)
|
||||
return "";
|
||||
return base.BuildStringSTEP(release) + ",(#" + string.Join(",#", mRelatedElements.OrderBy(x=>x.StepId).Select(x => x.StepId.ToString())) + "),#" + mRelatingStructure.mIndex;
|
||||
return base.BuildStringSTEP(release) + ",(#" + string.Join(",#", mRelatedElements.OrderBy(x=>x.StepId).Select(x => x.StepId.ToString())) + "),#" + mRelatingStructure.StepId;
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -971,7 +953,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
if (mRelatedCoverings.Count == 0)
|
||||
return "";
|
||||
return base.BuildStringSTEP(release) + ",#" + mRelatedSpace.Index + ",(#" + string.Join(",#", RelatedCoverings.ConvertAll(x => x.Index)) + ")";
|
||||
return base.BuildStringSTEP(release) + ",#" + mRelatedSpace.StepId + ",(" + string.Join(",", RelatedCoverings.ConvertAll(x => "#" + x.StepId)) + ")";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -986,7 +968,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
if (release < ReleaseVersion.IFC4 || mRelatingContext == null || mRelatedDefinitions.Count == 0)
|
||||
return "";
|
||||
return base.BuildStringSTEP(release) + ",#" + mRelatingContext.mIndex + ",(#" + string.Join(",#", mRelatedDefinitions.ConvertAll(x => x.Index)) + ")";
|
||||
return base.BuildStringSTEP(release) + ",#" + mRelatingContext.StepId + ",(" + string.Join(",", mRelatedDefinitions.ConvertAll(x => "#" + x.StepId)) + ")";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -1043,16 +1025,12 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
if (mDatabase.Release < ReleaseVersion.IFC4 || mRelatedPropertySets.Count == 0)
|
||||
return "";
|
||||
string str = base.BuildStringSTEP(release) + ",(" + ParserSTEP.LinkToString(mRelatedPropertySets[0]);
|
||||
for (int icounter = 1; icounter < mRelatedPropertySets.Count; icounter++)
|
||||
str += "," + ParserSTEP.LinkToString(mRelatedPropertySets[icounter]);
|
||||
return str + ")," + ParserSTEP.LinkToString(mRelatingTemplate);
|
||||
return base.BuildStringSTEP(release) + ",(" + String.Join(",", mRelatedPropertySets.Select(x => "#" + x.StepId)) + "),#" + mRelatingTemplate.StepId;
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
foreach (IfcPropertySetDefinition pset in ParserSTEP.StripListLink(str, ref pos, len).Select(x => dictionary[x] as IfcPropertySetDefinition))
|
||||
AddRelated(pset);
|
||||
mRelatedPropertySets.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x => dictionary[x] as IfcPropertySetDefinition));
|
||||
RelatingTemplate = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcPropertySetTemplate;
|
||||
}
|
||||
}
|
||||
|
@ -1065,7 +1043,7 @@ namespace GeometryGym.Ifc
|
|||
IfcTypeObject to = RelatingType;
|
||||
if (to == null || string.IsNullOrEmpty(to.ToString()))
|
||||
return "";
|
||||
return base.BuildStringSTEP(release) + ",(#" + string.Join(",#", mRelatedObjects.ConvertAll(x => x.Index)) + "),#" + mRelatingType.Index;
|
||||
return base.BuildStringSTEP(release) + ",(" + string.Join(",", mRelatedObjects.ConvertAll(x => "#"+ x.StepId)) + "),#" + mRelatingType.StepId;
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -1076,7 +1054,7 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcRelFillsElement
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mRelatingOpeningElement) + "," + ParserSTEP.LinkToString(mRelatedBuildingElement); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mRelatingOpeningElement.StepId + ",#" + mRelatedBuildingElement.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
|
@ -1086,28 +1064,30 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcRelFlowControlElements
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mRelatingPort) + "," + ParserSTEP.LinkToString(mRelatedElement); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mRelatingPort.StepId + ",#" + mRelatedElement.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mRelatingPort = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mRelatedElement = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mRelatingPort = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcPort;
|
||||
mRelatedElement = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcElement;
|
||||
}
|
||||
}
|
||||
public partial class IfcRelInterferesElements
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mRelatingElement) + "," + ParserSTEP.LinkToString(mRelatedElement) + "," +
|
||||
ParserSTEP.LinkToString(mInterferenceGeometry) + (release > ReleaseVersion.IFC4X3_RC3 ? "," + ParserSTEP.ObjToLinkString(mInterferenceSpace) :"") +
|
||||
(string.IsNullOrEmpty( mInterferenceType) ? ",$," : ",'" + ParserIfc.Encode(mInterferenceType) + "',") + ParserIfc.LogicalToString(mImpliedOrder);
|
||||
return base.BuildStringSTEP(release) + ",#" + mRelatingElement.StepId + ",#" + mRelatedElement.StepId +
|
||||
(mInterferenceGeometry == null ? ",$" : ",#" + mInterferenceGeometry.StepId) +
|
||||
(release > ReleaseVersion.IFC4X3_RC3 ? "," + ParserSTEP.ObjToLinkString(mInterferenceSpace) : "") +
|
||||
(string.IsNullOrEmpty( mInterferenceType) ? ",$," : ",'" + ParserIfc.Encode(mInterferenceType) + "',") +
|
||||
ParserIfc.LogicalToString(mImpliedOrder);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
RelatingElement = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcInterferenceSelect;
|
||||
RelatedElement = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcInterferenceSelect;
|
||||
mInterferenceGeometry = ParserSTEP.StripLink(str, ref pos, len);
|
||||
InterferenceGeometry =dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcConnectionGeometry;
|
||||
if (release > ReleaseVersion.IFC4X3_RC3)
|
||||
mInterferenceSpace = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcSpatialZone;
|
||||
mInterferenceType = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
|
@ -1120,7 +1100,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
if (mRelatedObjects.Count == 0)
|
||||
return "";
|
||||
return base.BuildStringSTEP(release) + ",#" + mRelatingObject.Index + ",(#" + string.Join(",#", mRelatedObjects.Select(x => x.Index)) + ")";
|
||||
return base.BuildStringSTEP(release) + ",#" + mRelatingObject.StepId + ",(" + string.Join(",", mRelatedObjects.Select(x => "#" + x.StepId)) + ")";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -1136,15 +1116,12 @@ namespace GeometryGym.Ifc
|
|||
string str = base.BuildStringSTEP(release);
|
||||
if (string.IsNullOrEmpty(str))
|
||||
return "";
|
||||
str += ",(#" + mOverridingProperties[0];
|
||||
for (int icounter = 1; icounter < mOverridingProperties.Count; icounter++)
|
||||
str += ",#" + mOverridingProperties[icounter];
|
||||
return str + ")";
|
||||
return str + ",(" + String.Join(",", mOverridingProperties.Select(x => "#" + x.StepId)) + ")";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mOverridingProperties = ParserSTEP.StripListLink(str, ref pos, len);
|
||||
mOverridingProperties.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x=>dictionary[x] as IfcProperty));
|
||||
}
|
||||
}
|
||||
public partial class IfcRelPositions
|
||||
|
@ -1164,7 +1141,7 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcRelProjectsElement
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mRelatingElement) + "," + ParserSTEP.LinkToString(mRelatedFeatureElement); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mRelatingElement.StepId + ",#" + mRelatedFeatureElement.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
|
@ -1230,13 +1207,19 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcRelSpaceBoundary
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return ((release > ReleaseVersion.IFC2x3 && mRelatedBuildingElement == null) || mRelatingSpace == 0 ? "" : base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mRelatingSpace) + "," + ParserSTEP.ObjToLinkString(mRelatedBuildingElement) + "," + ParserSTEP.LinkToString(mConnectionGeometry) + ",." + mPhysicalOrVirtualBoundary.ToString() + ".,." + mInternalOrExternalBoundary.ToString() + "."); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return ((release > ReleaseVersion.IFC2x3 && mRelatedBuildingElement == null) || mRelatingSpace == null ? "" :
|
||||
base.BuildStringSTEP(release) + ",#" + mRelatingSpace.StepId + ",#" + mRelatedBuildingElement.StepId +
|
||||
(mConnectionGeometry == null ? ",$" : ",#" + mConnectionGeometry.StepId) + ",." + mPhysicalOrVirtualBoundary.ToString() + ".,." +
|
||||
mInternalOrExternalBoundary.ToString() + ".");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
RelatingSpace = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcSpaceBoundarySelect;
|
||||
RelatedBuildingElement = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcElement;
|
||||
mConnectionGeometry = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mConnectionGeometry = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcConnectionGeometry;
|
||||
string s = ParserSTEP.StripField(str, ref pos, len);
|
||||
if (s != "$")
|
||||
Enum.TryParse<IfcPhysicalOrVirtualEnum>(s.Replace(".", ""), true, out mPhysicalOrVirtualBoundary);
|
||||
|
@ -1247,7 +1230,7 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcRelSpaceBoundary1stLevel
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mParentBoundary); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mParentBoundary.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
|
@ -1256,7 +1239,7 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcRelSpaceBoundary2ndLevel
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mCorrespondingBoundary); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mCorrespondingBoundary.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
|
@ -1286,12 +1269,10 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
string str = (mContextOfItems == null ? "$" : "#" + mContextOfItems.Index) +
|
||||
return (mContextOfItems == null ? "$" : "#" + mContextOfItems.StepId) +
|
||||
(string.IsNullOrEmpty(mRepresentationIdentifier) ? ",$," : ",'" + ParserIfc.Encode(mRepresentationIdentifier) + "',") +
|
||||
(string.IsNullOrEmpty(mRepresentationType) ? "$,(" : "'" + ParserIfc.Encode(mRepresentationType) + "',(");
|
||||
if (mItems.Count > 0)
|
||||
str += "#" + string.Join(",#", mItems.ConvertAll(x => x.mIndex));
|
||||
return str + ")";
|
||||
(string.IsNullOrEmpty(mRepresentationType) ? "$,(" : "'" + ParserIfc.Encode(mRepresentationType) + "',(") +
|
||||
string.Join(",", mItems.ConvertAll(x => "#" + x.StepId)) + ")";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -1416,11 +1397,11 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcRevolvedAreaSolid
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mAxis) + "," + ParserSTEP.DoubleToString(mAngle); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mAxis + "," + ParserSTEP.DoubleToString(mAngle); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mAxis = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mAxis = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcAxis1Placement;
|
||||
string s = ParserSTEP.StripField(str, ref pos, len);
|
||||
if (s.StartsWith("IfcPlaneAngleMeasure(", true, System.Globalization.CultureInfo.CurrentCulture))
|
||||
mAngle = ParserSTEP.ParseDouble(s.Substring(21, str.Length - 22));
|
||||
|
@ -1430,11 +1411,11 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcRevolvedAreaSolidTapered
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mEndSweptArea); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mEndSweptArea.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mEndSweptArea = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mEndSweptArea = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcProfileDef;
|
||||
}
|
||||
}
|
||||
public partial class IfcRibPlateProfileProperties
|
||||
|
@ -1543,7 +1524,7 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return "'" + mGlobalId + (mOwnerHistory == null ? "',$" : "',#" + mOwnerHistory.mIndex) +
|
||||
return "'" + mGlobalId + (mOwnerHistory == null ? "',$" : "',#" + mOwnerHistory.StepId) +
|
||||
(string.IsNullOrEmpty(mName) ? ",$," : ",'" + ParserIfc.Encode(mName) + "',") +
|
||||
(string.IsNullOrEmpty(mDescription) ? "$" : "'" + ParserIfc.Encode(mDescription) + "'");
|
||||
}
|
||||
|
|
|
@ -58,29 +58,35 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mActualStart) + "," + ParserSTEP.LinkToString(mEarlyStart) + "," + ParserSTEP.LinkToString(mLateStart) + "," +
|
||||
ParserSTEP.LinkToString(mScheduleStart) + "," + ParserSTEP.LinkToString(mActualFinish) + "," + ParserSTEP.LinkToString(mEarlyFinish) + "," + ParserSTEP.LinkToString(mLateFinish) + "," + ParserSTEP.LinkToString(mScheduleFinish) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mScheduleDuration) + "," + ParserSTEP.DoubleOptionalToString(mActualDuration) + "," + ParserSTEP.DoubleOptionalToString(mRemainingTime) + "," + ParserSTEP.DoubleOptionalToString(mFreeFloat) + "," + ParserSTEP.DoubleOptionalToString(mTotalFloat) + "," + ParserSTEP.BoolToString(mIsCritical) + "," + ParserSTEP.LinkToString(mStatusTime) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mStartFloat) + "," + ParserSTEP.DoubleOptionalToString(mFinishFloat) + "," + ParserSTEP.DoubleOptionalToString(mCompletion); //(mScheduleTimeControlAssigned == null ? "" :
|
||||
return base.BuildStringSTEP(release) + (mActualStart == null ? ",$" : ",#" + mActualStart.StepId) +
|
||||
(mEarlyStart == null ? ",$" : ",#" + mEarlyStart.StepId) + (mLateStart == null ? ",$" : ",#" + mLateStart.StepId) +
|
||||
(mScheduleStart == null ? ",$" : ",#" + mScheduleStart.StepId) + (mActualFinish == null ? ",$" : ",#" + mActualFinish.StepId) +
|
||||
(mEarlyFinish == null ? ",$" : ",#" + mEarlyFinish.StepId) + (mLateFinish == null ? ",$" : ",#" + mLateFinish.StepId) +
|
||||
(mScheduleFinish == null ? ",$" : ",#" + mScheduleFinish) + ParserSTEP.DoubleOptionalToString(mScheduleDuration) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mActualDuration) + "," + ParserSTEP.DoubleOptionalToString(mRemainingTime) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mFreeFloat) + "," + ParserSTEP.DoubleOptionalToString(mTotalFloat) + "," +
|
||||
ParserSTEP.BoolToString(mIsCritical) + (mStatusTime == null ? ",$" : ",#" + mStatusTime.StepId) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mStartFloat) + "," + ParserSTEP.DoubleOptionalToString(mFinishFloat) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mCompletion);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mActualStart = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mEarlyStart = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mLateStart = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mScheduleStart = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mActualFinish = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mEarlyFinish = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mLateFinish = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mScheduleFinish = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mActualStart = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcDateTimeSelect;
|
||||
mEarlyStart = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcDateTimeSelect;
|
||||
mLateStart = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcDateTimeSelect;
|
||||
mScheduleStart = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcDateTimeSelect;
|
||||
mActualFinish = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcDateTimeSelect;
|
||||
mEarlyFinish = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcDateTimeSelect;
|
||||
mLateFinish = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcDateTimeSelect;
|
||||
mScheduleFinish = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcDateTimeSelect;
|
||||
mScheduleDuration = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mActualDuration = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mRemainingTime = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mFreeFloat = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mTotalFloat = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mIsCritical = ParserSTEP.StripBool(str, ref pos, len);
|
||||
mStatusTime = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mStatusTime = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcDateTimeSelect;
|
||||
mStartFloat = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mFinishFloat = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mCompletion = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
|
@ -121,8 +127,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return "#" + Directrix.Index + ",(#" +
|
||||
string.Join(",#", CrossSections.ConvertAll(x => x.Index)) + ")";
|
||||
return "#" + Directrix.StepId + ",(" + string.Join(",", CrossSections.ConvertAll(x => "#" + x.StepId)) + ")";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -136,9 +141,9 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
string result = base.BuildStringSTEP(release);
|
||||
if (release < ReleaseVersion.IFC4X3_RC3)
|
||||
result += ",(#" + string.Join(",#", mCrossSectionPositions_OBSOLETE.ConvertAll(x => x.Index));
|
||||
result += ",(" + string.Join(",", mCrossSectionPositions_OBSOLETE.ConvertAll(x => "#" + x.StepId));
|
||||
else if (release == ReleaseVersion.IFC4X3_RC3)
|
||||
result += ",(#" + string.Join(",#", mCrossSectionPositionMeasures_OBSOLETE.ConvertAll(x => x.ToString()));
|
||||
result += ",(" + string.Join(",", mCrossSectionPositionMeasures_OBSOLETE.ConvertAll(x => "#" + x.ToString()));
|
||||
else
|
||||
result += ",(" + string.Join(",", CrossSectionPositions.Select(x => "#" + x.StepId));
|
||||
return result + (release < ReleaseVersion.IFC4X3 ? (mFixedAxisVertical ? "),.T." : "),.F.") : "");
|
||||
|
@ -169,8 +174,8 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return "#" + SpineCurve.Index + ",(#" +
|
||||
string.Join(",#", CrossSections.ConvertAll(x => x.Index)) + "),(#" + string.Join(",#", mCrossSectionPositions.ConvertAll(x=>x.mIndex)) + ")";
|
||||
return "#" + SpineCurve.StepId + ",(" + string.Join(",", CrossSections.ConvertAll(x => "#" + x.StepId)) + "),(" +
|
||||
string.Join(",", mCrossSectionPositions.ConvertAll(x=> "#" + x.StepId)) + ")";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -210,23 +215,24 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcSectionProperties
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "." + mSectionType.ToString() + ".," + ParserSTEP.LinkToString(mStartProfile) + "," + ParserSTEP.LinkToString(mEndProfile); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return "." + mSectionType.ToString() + ".,#" + mStartProfile.StepId + ",#" + mEndProfile.StepId;
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
Enum.TryParse<IfcSectionTypeEnum>(ParserSTEP.StripField(str, ref pos, len).Replace(".", ""), true, out mSectionType);
|
||||
mStartProfile = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mEndProfile = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mStartProfile = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcProfileDef;
|
||||
mEndProfile = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcProfileDef;
|
||||
}
|
||||
}
|
||||
public partial class IfcSectionReinforcementProperties
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
string result = ParserSTEP.DoubleToString(mLongitudinalStartPosition) + "," + ParserSTEP.DoubleToString(mLongitudinalEndPosition) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mTransversePosition) + ",." + mReinforcementRole.ToString() + ".," + ParserSTEP.LinkToString(mSectionDefinition) + ",(" + ParserSTEP.LinkToString(mCrossSectionReinforcementDefinitions[0]);
|
||||
for (int icounter = 1; icounter < mCrossSectionReinforcementDefinitions.Count; icounter++)
|
||||
result += ",#" + mCrossSectionReinforcementDefinitions;
|
||||
return result + ")";
|
||||
return ParserSTEP.DoubleToString(mLongitudinalStartPosition) + "," + ParserSTEP.DoubleToString(mLongitudinalEndPosition) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mTransversePosition) + ",." + mReinforcementRole.ToString() + ".,#" + mSectionDefinition.StepId +
|
||||
",(" + String.Join(",", mCrossSectionReinforcementDefinitions.Select(x => "#" + x.StepId)) + ")";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -234,8 +240,8 @@ namespace GeometryGym.Ifc
|
|||
mLongitudinalEndPosition = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mTransversePosition = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
Enum.TryParse<IfcReinforcingBarRoleEnum>(ParserSTEP.StripField(str, ref pos, len).Replace(".", ""), true, out mReinforcementRole);
|
||||
mSectionDefinition = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mCrossSectionReinforcementDefinitions = ParserSTEP.StripListLink(str, ref pos, len);
|
||||
mSectionDefinition = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcSectionProperties;
|
||||
mCrossSectionReinforcementDefinitions.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x=>dictionary[x] as IfcReinforcementBarProperties));
|
||||
}
|
||||
}
|
||||
public abstract partial class IfcSegment
|
||||
|
@ -433,8 +439,10 @@ namespace GeometryGym.Ifc
|
|||
return base.BuildStringSTEP(release) + (mTemplateType == IfcSimplePropertyTemplateTypeEnum.NOTDEFINED ? ",$," : ",." + mTemplateType.ToString() + ".,") +
|
||||
(string.IsNullOrEmpty(mPrimaryMeasureType) ? "$," : "'" + ParserIfc.Encode(mPrimaryMeasureType) + "',") +
|
||||
(string.IsNullOrEmpty(mSecondaryMeasureType) ? "$," : "'" + ParserIfc.Encode(mSecondaryMeasureType) + "',") +
|
||||
ParserSTEP.LinkToString(mEnumerators) + "," + ParserSTEP.LinkToString(mPrimaryUnit) + "," + ParserSTEP.LinkToString(mSecondaryUnit) + "," +
|
||||
(string.IsNullOrEmpty(mExpression) ? "$," : "'" + ParserIfc.Encode(mExpression) + "',") + (mAccessState == IfcStateEnum.NOTDEFINED ? "$" : "." + mAccessState.ToString() + ".");
|
||||
(mEnumerators == null ? "$" : "#" + mEnumerators.StepId) + (mPrimaryUnit == null ? ",$" : ",#" + mPrimaryUnit) +
|
||||
(mSecondaryUnit == null ? ",$" : ",#" + mSecondaryUnit.StepId) + "," +
|
||||
(string.IsNullOrEmpty(mExpression) ? "$," : "'" + ParserIfc.Encode(mExpression) + "',") +
|
||||
(mAccessState == IfcStateEnum.NOTDEFINED ? "$" : "." + mAccessState.ToString() + ".");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -444,9 +452,9 @@ namespace GeometryGym.Ifc
|
|||
Enum.TryParse<IfcSimplePropertyTemplateTypeEnum>(s.Replace(".", ""), true, out mTemplateType);
|
||||
mPrimaryMeasureType = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
mSecondaryMeasureType = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
mEnumerators = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mPrimaryUnit = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mSecondaryUnit = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mEnumerators = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcPropertyEnumeration;
|
||||
mPrimaryUnit = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcUnit;
|
||||
mSecondaryUnit = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcUnit;
|
||||
mExpression = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
s = ParserSTEP.StripField(str, ref pos, len);
|
||||
if (s.StartsWith("."))
|
||||
|
@ -472,7 +480,8 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
return base.BuildStringSTEP(release) + (mRefLatitude != null ? "," + mRefLatitude.ToSTEP() + "," : ",$,") +
|
||||
(mRefLongitude != null ? mRefLongitude.ToSTEP() + "," : "$,") + ParserSTEP.DoubleOptionalToString(mRefElevation) +
|
||||
(string.IsNullOrEmpty(mLandTitleNumber) ? ",$," : ",'" + ParserIfc.Encode(mLandTitleNumber) + "',") + ParserSTEP.LinkToString(mSiteAddress);
|
||||
(string.IsNullOrEmpty(mLandTitleNumber) ? ",$," : ",'" + ParserIfc.Encode(mLandTitleNumber) + "',") +
|
||||
(mSiteAddress == null ? "$" : "#" + mSiteAddress.StepId);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -481,7 +490,7 @@ namespace GeometryGym.Ifc
|
|||
mRefLongitude = IfcCompoundPlaneAngleMeasure.Parse(ParserSTEP.StripField(str, ref pos, len));
|
||||
mRefElevation = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mLandTitleNumber = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
mSiteAddress = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mSiteAddress = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcPostalAddress;
|
||||
}
|
||||
}
|
||||
public partial class IfcSIUnit
|
||||
|
@ -571,10 +580,8 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
string str = base.BuildStringSTEP(release) + "," + ParserSTEP.BoolToString(mIsAttenuating) + ",." + mSoundScale.ToString() + ".,(" + ParserSTEP.LinkToString(mSoundValues[0]);
|
||||
for (int icounter = 1; icounter < mSoundValues.Count; icounter++)
|
||||
str += "," + ParserSTEP.LinkToString(mSoundValues[icounter]);
|
||||
return str + ")";
|
||||
return base.BuildStringSTEP(release) + "," + ParserSTEP.BoolToString(mIsAttenuating) + ",." + mSoundScale.ToString() + ".,(" +
|
||||
String.Join(",", mSoundValues.Select(x => "#" + x.StepId)) + ")";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -583,16 +590,20 @@ namespace GeometryGym.Ifc
|
|||
string s = ParserSTEP.StripField(str, ref pos, len);
|
||||
if (s.StartsWith("."))
|
||||
Enum.TryParse<IfcSoundScaleEnum>(s.Replace(".", ""), true, out mSoundScale);
|
||||
mSoundValues = ParserSTEP.StripListLink(str, ref pos, len);
|
||||
mSoundValues.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x => dictionary[x] as IfcSoundValue));
|
||||
}
|
||||
}
|
||||
public partial class IfcSoundValue
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mSoundLevelTimeSeries) + "," + ParserSTEP.DoubleToString(mFrequency) + "," + ParserSTEP.DoubleOptionalToString(mSoundLevelSingleValue); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + (mSoundLevelTimeSeries == null ? ",$" : ",#" + mSoundLevelTimeSeries.StepId) + "," +
|
||||
ParserSTEP.DoubleToString(mFrequency) + "," + ParserSTEP.DoubleOptionalToString(mSoundLevelSingleValue);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mSoundLevelTimeSeries = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mSoundLevelTimeSeries = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcTimeSeries;
|
||||
mFrequency = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mSoundLevelSingleValue = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
}
|
||||
|
@ -633,14 +644,19 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcSpaceProgram
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",'" + mSpaceProgramIdentifier + "'," + ParserSTEP.DoubleOptionalToString(mMaxRequiredArea) + "," + ParserSTEP.DoubleOptionalToString(mMinRequiredArea) + "," + ParserSTEP.LinkToString(mRequestedLocation) + "," + ParserSTEP.DoubleToString(mStandardRequiredArea); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + ",'" + mSpaceProgramIdentifier + "'," + ParserSTEP.DoubleOptionalToString(mMaxRequiredArea) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mMinRequiredArea) + (mRequestedLocation == null ? ",$" : ",#" + mRequestedLocation.StepId) + "," +
|
||||
ParserSTEP.DoubleToString(mStandardRequiredArea);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mSpaceProgramIdentifier = ParserSTEP.StripField(str, ref pos, len);
|
||||
mMaxRequiredArea = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mMinRequiredArea = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mRequestedLocation = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mRequestedLocation = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcSpatialStructureElement;
|
||||
mStandardRequiredArea = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
}
|
||||
}
|
||||
|
@ -821,22 +837,29 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public abstract partial class IfcStructuralAction
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + (mDestabilizingLoad == IfcLogicalEnum.UNKNOWN ? (mDatabase.Release < ReleaseVersion.IFC4 ? "," + ParserSTEP.BoolToString(false) : ",$") : "," + ParserIfc.LogicalToString(mDestabilizingLoad)) + (release < ReleaseVersion.IFC4 ? "," + ParserSTEP.LinkToString(mCausedBy) : ""); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) +
|
||||
(mDestabilizingLoad == IfcLogicalEnum.UNKNOWN ? (mDatabase.Release < ReleaseVersion.IFC4 ? "," + ParserSTEP.BoolToString(false) : ",$") : "," + ParserIfc.LogicalToString(mDestabilizingLoad)) +
|
||||
(release < ReleaseVersion.IFC4 ? (mCausedBy == null ? ",$" : ",#" + mCausedBy.StepId) : "");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mDestabilizingLoad = ParserIfc.StripLogical(str, ref pos, len);
|
||||
if (release < ReleaseVersion.IFC4)
|
||||
mCausedBy = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mCausedBy = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcStructuralReaction;
|
||||
}
|
||||
}
|
||||
public abstract partial class IfcStructuralActivity
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mAppliedLoad) + ",." + mGlobalOrLocal.ToString() + "."; }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + ",#" + mAppliedLoad.StepId + ",." + mGlobalOrLocal.ToString() + "."; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mAppliedLoad = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mAppliedLoad = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcStructuralLoad;
|
||||
Enum.TryParse<IfcGlobalOrLocalEnum>(ParserSTEP.StripField(str, ref pos, len).Replace(".", ""), true, out mGlobalOrLocal);
|
||||
}
|
||||
}
|
||||
|
@ -844,28 +867,33 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + ",." + mPredefinedType.ToString() + ".," + ParserSTEP.LinkToString(mOrientationOf2DPlane) +
|
||||
(mLoadedBy.Count == 0 ? ",$," : ",(#" + string.Join(",#", mLoadedBy) + "),") + (mHasResults.Count == 0 ? "$" : "(#" + string.Join(",#", mHasResults) + ")") +
|
||||
return base.BuildStringSTEP(release) + ",." + mPredefinedType.ToString() + ".," +
|
||||
(mOrientationOf2DPlane == null ? "$" : "#" + mOrientationOf2DPlane.StepId) +
|
||||
(mLoadedBy.Count == 0 ? ",$," : ",(" + string.Join(",", mLoadedBy.Select(x=> "#" + x.StepId)) + "),") +
|
||||
(mHasResults.Count == 0 ? "$" : "(" + string.Join(",", mHasResults.Select(x=>"#" + x.StepId)) + ")") +
|
||||
(release > ReleaseVersion.IFC2x3 ? "," + ParserSTEP.ObjToLinkString(mSharedPlacement) : "");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
Enum.TryParse<IfcAnalysisModelTypeEnum>(ParserSTEP.StripField(str, ref pos, len).Replace(".", ""), true, out mPredefinedType);
|
||||
mOrientationOf2DPlane = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mLoadedBy = ParserSTEP.StripListLink(str, ref pos, len);
|
||||
mHasResults = ParserSTEP.StripListLink(str, ref pos, len);
|
||||
mOrientationOf2DPlane = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcAxis2Placement3D;
|
||||
LoadedBy.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x=>dictionary[x] as IfcStructuralLoadGroup));
|
||||
HasResults.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x=>dictionary[x] as IfcStructuralResultGroup));
|
||||
if(release > ReleaseVersion.IFC2x3)
|
||||
SharedPlacement = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcObjectPlacement;
|
||||
}
|
||||
}
|
||||
public abstract partial class IfcStructuralConnection
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mAppliedCondition); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + (mAppliedCondition == null ? ",$" : ",#" + mAppliedCondition.StepId);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mAppliedCondition = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mAppliedCondition = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcBoundaryCondition;
|
||||
}
|
||||
}
|
||||
public abstract partial class IfcStructuralConnectionCondition
|
||||
|
@ -914,17 +942,14 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
string str = base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mVaryingAppliedLoadLocation) + ",("
|
||||
+ ParserSTEP.LinkToString(mSubsequentAppliedLoads[0]);
|
||||
for (int icounter = 1; icounter < mSubsequentAppliedLoads.Count; icounter++)
|
||||
str += "," + ParserSTEP.LinkToString(mSubsequentAppliedLoads[icounter]);
|
||||
return str + ")";
|
||||
return base.BuildStringSTEP(release) + ",#" + mVaryingAppliedLoadLocation.StepId + ",("
|
||||
+ string.Join(",", mSubsequentAppliedLoads.Select(x => "#" + x.StepId)) + ")";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mVaryingAppliedLoadLocation = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mSubsequentAppliedLoads = ParserSTEP.StripListLink(str, ref pos, len);
|
||||
mVaryingAppliedLoadLocation = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcShapeAspect;
|
||||
mSubsequentAppliedLoads.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x=>dictionary[x] as IfcStructuralLoad));
|
||||
}
|
||||
}
|
||||
public abstract partial class IfcStructuralLoad
|
||||
|
@ -936,36 +961,15 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
string s = ",$";
|
||||
if (mLocations.Count > 0)
|
||||
{
|
||||
s = ",((" + ParserSTEP.DoubleToString(mLocations[0][0]) + (mLocations[0].Count > 1 ? "," + ParserSTEP.DoubleToString(mLocations[0][1]) : "");
|
||||
for (int icounter = 1; icounter < mLocations.Count; icounter++)
|
||||
s += "),(" + ParserSTEP.DoubleToString(mLocations[icounter][0]) + (mLocations[icounter].Count > 1 ? "," + ParserSTEP.DoubleToString(mLocations[icounter][1]) : "");
|
||||
s += "))";
|
||||
}
|
||||
return base.BuildStringSTEP(release) + "," + ParserSTEP.ListLinksToString(mValues) + s;
|
||||
return base.BuildStringSTEP(release) + ",(" + string.Join(",", mValues.Select(x => "#" + x.StepId)) + ")" +
|
||||
(mLocations.Count == 0 ? ",$" : ",(" +
|
||||
string.Join(",", mLocations.Select(x=> "(" + String.Join(",", x.Select(d=>ParserSTEP.DoubleToString(d))) + ")")) + ")");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mValues = ParserSTEP.StripListLink(str, ref pos, len);
|
||||
string s = ParserSTEP.StripField(str, ref pos, len);
|
||||
if (s != "$")
|
||||
{
|
||||
List<string> fields = ParserSTEP.SplitLineFields(s.Substring(1, s.Length - 2));
|
||||
char[] delim = ",".ToCharArray();
|
||||
for (int icounter = 0; icounter < fields.Count; icounter++)
|
||||
{
|
||||
List<double> list = new List<double>(2);
|
||||
|
||||
string[] ss = fields[icounter].Substring(1, fields[icounter].Length - 2).Split(delim);
|
||||
list.Add(ParserSTEP.ParseDouble(ss[0]));
|
||||
if (ss.Length > 1)
|
||||
list.Add(ParserSTEP.ParseDouble(ss[1]));
|
||||
mLocations.Add(list);
|
||||
}
|
||||
}
|
||||
mValues.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x=>dictionary[x] as IfcStructuralLoadOrResult));
|
||||
mLocations.AddRange(ParserSTEP.StripListListDouble(str, ref pos, len));
|
||||
}
|
||||
}
|
||||
public partial class IfcStructuralLoadCase
|
||||
|
@ -1084,12 +1088,16 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcStructuralPointConnection
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + (release < ReleaseVersion.IFC4 ? "" : (mConditionCoordinateSystem == 0 ? ",$" : ",#" + mConditionCoordinateSystem)); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) +
|
||||
(release < ReleaseVersion.IFC4 ? "" : (mConditionCoordinateSystem == null ? ",$" : ",#" + mConditionCoordinateSystem.StepId));
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
if(release > ReleaseVersion.IFC2x3)
|
||||
mConditionCoordinateSystem = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mConditionCoordinateSystem = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcAxis2Placement3D;
|
||||
}
|
||||
}
|
||||
public partial class IfcStructuralProfileProperties
|
||||
|
@ -1172,16 +1180,14 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
string str = base.BuildStringSTEP(release) + ",(" + ParserSTEP.DoubleToString(mSubsequentThickness[0]);
|
||||
for (int icounter = 1; icounter < mSubsequentThickness.Count; icounter++)
|
||||
str += "," + ParserSTEP.DoubleToString(mSubsequentThickness[icounter]);
|
||||
return str + ")" + "," + ParserSTEP.LinkToString(mVaryingThicknessLocation);
|
||||
return base.BuildStringSTEP(release) + ",(" +
|
||||
string.Join(",", mSubsequentThickness.Select(x=>ParserSTEP.DoubleToString(x))) + ")" + ",#" + mVaryingThicknessLocation.StepId;
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mSubsequentThickness = ParserSTEP.StripListDouble(str, ref pos, len);
|
||||
mVaryingThicknessLocation = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mVaryingThicknessLocation = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcShapeAspect;
|
||||
}
|
||||
}
|
||||
public partial class IfcStructuralSurfaceReaction
|
||||
|
@ -1241,11 +1247,11 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcSubedge
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mParentEdge); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mParentEdge.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mParentEdge = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mParentEdge = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcEdge;
|
||||
}
|
||||
}
|
||||
public partial class IfcSurfaceCurve
|
||||
|
@ -1266,12 +1272,12 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + ",#" + mReferenceSurface;
|
||||
return base.BuildStringSTEP(release) + ",#" + mReferenceSurface.StepId;
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mReferenceSurface = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mReferenceSurface = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcSurface;
|
||||
}
|
||||
}
|
||||
public partial class IfcSurfaceFeature
|
||||
|
@ -1291,21 +1297,21 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcSurfaceOfLinearExtrusion
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mExtrudedDirection) + "," + ParserSTEP.DoubleToString(mDepth); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mExtrudedDirection.StepId + "," + ParserSTEP.DoubleToString(mDepth); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mExtrudedDirection = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mExtrudedDirection = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcDirection;
|
||||
mDepth = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
}
|
||||
}
|
||||
public partial class IfcSurfaceOfRevolution
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mAxisPosition); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mAxisPosition.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mAxisPosition = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mAxisPosition = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcAxis1Placement;
|
||||
}
|
||||
}
|
||||
public partial class IfcSurfaceReinforcementArea
|
||||
|
@ -1343,13 +1349,17 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcSurfaceStyleLighting
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return ParserSTEP.LinkToString(mDiffuseTransmissionColour) + "," + ParserSTEP.LinkToString(mDiffuseReflectionColour) + "," + ParserSTEP.LinkToString(mTransmissionColour) + "," + ParserSTEP.LinkToString(mReflectanceColour); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return "#" + mDiffuseTransmissionColour.StepId + ",#" + mDiffuseReflectionColour.StepId + ",#" +
|
||||
mTransmissionColour.StepId + ",#" + mReflectanceColour.StepId;
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mDiffuseTransmissionColour = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mDiffuseReflectionColour = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mTransmissionColour = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mReflectanceColour = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mDiffuseTransmissionColour = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcColourRgb;
|
||||
mDiffuseReflectionColour = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcColourRgb;
|
||||
mTransmissionColour = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcColourRgb;
|
||||
mReflectanceColour = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcColourRgb;
|
||||
}
|
||||
}
|
||||
public partial class IfcSurfaceStyleRefraction
|
||||
|
@ -1396,12 +1406,12 @@ namespace GeometryGym.Ifc
|
|||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
IfcSurfaceStyleRendering rendering = this as IfcSurfaceStyleRendering;
|
||||
return ParserSTEP.LinkToString(mSurfaceColour) +
|
||||
return "#" + mSurfaceColour.StepId +
|
||||
(rendering != null || release > ReleaseVersion.IFC2x3 ? "," + ParserSTEP.DoubleOptionalToString(mTransparency) : "");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mSurfaceColour = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mSurfaceColour = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcColourRgb;
|
||||
IfcSurfaceStyleRendering rendering = this as IfcSurfaceStyleRendering;
|
||||
if(rendering != null || release > ReleaseVersion.IFC2x3)
|
||||
mTransparency = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
|
@ -1454,10 +1464,15 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcSweptDiskSolid
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return ParserSTEP.LinkToString(mDirectrix) + "," + ParserSTEP.DoubleToString(mRadius) + "," + ParserSTEP.DoubleOptionalToString(mInnerRadius) + "," + (release < ReleaseVersion.IFC4 ? ParserSTEP.DoubleToString(mStartParam) + "," + ParserSTEP.DoubleToString(mEndParam) : ParserSTEP.DoubleOptionalToString(mStartParam) + "," + ParserSTEP.DoubleOptionalToString(mEndParam)); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return "#" + mDirectrix.StepId + "," + ParserSTEP.DoubleToString(mRadius) + "," + ParserSTEP.DoubleOptionalToString(mInnerRadius) + "," +
|
||||
(release < ReleaseVersion.IFC4 ? ParserSTEP.DoubleToString(mStartParam) + "," + ParserSTEP.DoubleToString(mEndParam) :
|
||||
ParserSTEP.DoubleOptionalToString(mStartParam) + "," + ParserSTEP.DoubleOptionalToString(mEndParam));
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mDirectrix = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mDirectrix = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCurve;
|
||||
mRadius = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mInnerRadius = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mStartParam = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
|
@ -1475,11 +1490,14 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public abstract partial class IfcSweptSurface
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return ParserSTEP.LinkToString(mSweptCurve) + "," + ParserSTEP.LinkToString(mPosition); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return "#" + mSweptCurve.StepId + (mPosition == null ? ",$" : ",#" + mPosition.StepId);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mSweptCurve = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mPosition = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mSweptCurve = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcProfileDef;
|
||||
mPosition = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcAxis2Placement3D;
|
||||
}
|
||||
}
|
||||
public partial class IfcSwitchingDevice
|
||||
|
|
|
@ -52,15 +52,15 @@ namespace GeometryGym.Ifc
|
|||
return (release < ReleaseVersion.IFC4 ? "" : (string.IsNullOrEmpty(mIdentifier) ? "$," : "'" + ParserIfc.Encode(mIdentifier) + "',") +
|
||||
(string.IsNullOrEmpty(mName) ? "$," : "'" + ParserIfc.Encode(mName) + "',") +
|
||||
(string.IsNullOrEmpty(mDescription) ? "$," : "'" + ParserIfc.Encode(mDescription) + "',") +
|
||||
ParserSTEP.LinkToString(mUnit) + "," + ParserSTEP.LinkToString(mReferencePath));
|
||||
(mUnit == null ? "$" : "#" + mUnit.StepId) + (mReferencePath == null ? ",$" : ",#" + mReferencePath.StepId));
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
mIdentifier = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
mName = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
mDescription = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
mUnit = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mReferencePath = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mUnit = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcUnit;
|
||||
mReferencePath = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcReference;
|
||||
}
|
||||
}
|
||||
public partial class IfcTableRow
|
||||
|
@ -371,8 +371,11 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcTerminatorSymbol
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mAnnotatedCurve; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary) { mAnnotatedCurve = ParserSTEP.StripLink(str, ref pos, len); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mAnnotatedCurve.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
mAnnotatedCurve = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcAnnotationCurveOccurrence;
|
||||
}
|
||||
}
|
||||
public abstract partial class IfcTessellatedFaceSet
|
||||
{
|
||||
|
@ -395,34 +398,43 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcTextLiteral
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "'" + ParserIfc.Encode(mLiteral) + "'," + ParserSTEP.LinkToString(mPlacement) + ",." + mPath.ToString() + "."; }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return "'" + ParserIfc.Encode(mLiteral) + "',#" + mPlacement.StepId + ",." + mPath.ToString() + ".";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
mLiteral = ParserIfc.Decode(ParserSTEP.StripField(str, ref pos, len));
|
||||
mPlacement = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mPlacement = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcAxis2Placement;
|
||||
Enum.TryParse<IfcTextPath>(ParserSTEP.StripField(str, ref pos, len).Replace(".", ""), true, out mPath);
|
||||
}
|
||||
}
|
||||
public partial class IfcTextLiteralWithExtent
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mExtent) + ",'" + mBoxAlignment + "'"; }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mExtent.StepId + ",'" + mBoxAlignment + "'"; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mExtent = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mExtent = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcPlanarExtent;
|
||||
mBoxAlignment = ParserSTEP.StripString(str, ref pos, len);
|
||||
}
|
||||
}
|
||||
public partial class IfcTextStyle
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mTextCharacterAppearance) + "," + ParserSTEP.LinkToString(mTextStyle) + "," + ParserSTEP.LinkToString(mTextFontStyle) + (release != ReleaseVersion.IFC2x3 ? "," + ParserSTEP.BoolToString(mModelOrDraughting) : ""); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + (mTextCharacterAppearance == null ? ",$" : ",#" + mTextCharacterAppearance) +
|
||||
(mTextStyle == null ? ",$" : ",#" + mTextStyle.StepId) + (mTextStyle == null ? ",$" : ",#" + mTextStyle.StepId) + "," +
|
||||
(mTextFontStyle == null ? ",$" : ",#" + mTextFontStyle.StepId) +
|
||||
(release > ReleaseVersion.IFC2x3 ? "," + ParserSTEP.BoolToString(mModelOrDraughting) : "");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mTextCharacterAppearance = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mTextStyle = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mTextFontStyle = ParserSTEP.StripLink(str, ref pos, len);
|
||||
if (release != ReleaseVersion.IFC2x3)
|
||||
mTextCharacterAppearance = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCharacterStyleSelect;
|
||||
mTextStyle = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcTextStyleSelect;
|
||||
mTextFontStyle = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcTextFontSelect;
|
||||
if (release > ReleaseVersion.IFC2x3)
|
||||
mModelOrDraughting = ParserSTEP.StripBool(str, ref pos, len);
|
||||
}
|
||||
}
|
||||
|
@ -453,11 +465,14 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcTextStyleForDefinedFont
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return ParserSTEP.LinkToString(mColour) + "," + ParserSTEP.LinkToString(mBackgroundColour); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return "#" + mColour.StepId + (mBackgroundColour == null ? ",$" : ",#" + mBackgroundColour.StepId);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
mColour = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mBackgroundColour = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mColour = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcColour;
|
||||
mBackgroundColour = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcColour;
|
||||
}
|
||||
}
|
||||
public partial class IfcTextStyleTextModel
|
||||
|
@ -483,6 +498,23 @@ namespace GeometryGym.Ifc
|
|||
LineHeight = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcSizeSelect;
|
||||
}
|
||||
}
|
||||
public partial class IfcTextStyleWithBoxCharacteristics
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return ParserSTEP.DoubleOptionalToString(mBoxHeight) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mBoxWidth) + "," + ParserSTEP.DoubleOptionalToString(mBoxSlantAngle) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mBoxRotateAngle) + "," + mCharacterSpacing.ToString();
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
mBoxHeight = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mBoxWidth = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mBoxSlantAngle = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mBoxRotateAngle = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mCharacterSpacing = ParserIfc.parseValue(ParserSTEP.StripField(str, ref pos, len)) as IfcSizeSelect;
|
||||
}
|
||||
}
|
||||
public abstract partial class IfcTextureCoordinate
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
|
@ -598,11 +630,11 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcTimePeriod
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "'" + mStart + "','" + mFinish + "'"; }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return IfcDateTime.STEPAttribute(mStart) + "," + IfcDateTime.STEPAttribute(mFinish); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
mStart = ParserSTEP.StripString(str, ref pos, len);
|
||||
mFinish = ParserSTEP.StripString(str, ref pos, len);
|
||||
mStart = IfcDateTime.ParseSTEP(ParserSTEP.StripField(str, ref pos, len));
|
||||
mFinish = IfcDateTime.ParseSTEP(ParserSTEP.StripField(str, ref pos, len));
|
||||
}
|
||||
}
|
||||
public abstract partial class IfcTimeSeries
|
||||
|
@ -610,22 +642,22 @@ namespace GeometryGym.Ifc
|
|||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return "'" + ParserIfc.Encode(mName) + (string.IsNullOrEmpty(mDescription) ? "',$," : "','" + ParserIfc.Encode(mDescription) + "',") +
|
||||
ParserSTEP.LinkToString(mStartTime) + "," + ParserSTEP.LinkToString(mEndTime) + ",." + mTimeSeriesDataType.ToString() + ".,." +
|
||||
mDataOrigin.ToString() + (string.IsNullOrEmpty(mUserDefinedDataOrigin) ? ".,$," : ".,'" + ParserIfc.Encode(mUserDefinedDataOrigin) + "',") +
|
||||
ParserSTEP.LinkToString(mUnit);
|
||||
(mStartTime == null ? "$" : "#" + mStartTime.StepId) + (mEndTime == null ? ",$" : ",#" + mEndTime.StepId) + ",." +
|
||||
mTimeSeriesDataType.ToString() + ".,." + mDataOrigin.ToString() + (string.IsNullOrEmpty(mUserDefinedDataOrigin) ? ".,$," : ".,'" + ParserIfc.Encode(mUserDefinedDataOrigin) + "',") +
|
||||
(mUnit == null ? "$" : "#" + mUnit.StepId);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
mName = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
mDescription = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
mStartTime = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mEndTime = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mStartTime = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcDateTimeSelect;
|
||||
mEndTime = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcDateTimeSelect;
|
||||
Enum.TryParse<IfcTimeSeriesDataTypeEnum>(ParserSTEP.StripField(str, ref pos, len).Replace(".", ""), true, out mTimeSeriesDataType);
|
||||
string s = ParserSTEP.StripField(str, ref pos, len);
|
||||
if (s.StartsWith("."))
|
||||
Enum.TryParse<IfcDataOriginEnum>(s.Replace(".", ""), true, out mDataOrigin);
|
||||
mUserDefinedDataOrigin = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
mUnit = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mUnit = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcUnit;
|
||||
}
|
||||
}
|
||||
public partial class IfcTimeSeriesValue
|
||||
|
@ -895,7 +927,8 @@ namespace GeometryGym.Ifc
|
|||
string field = ParserSTEP.StripField(str, ref pos, len);
|
||||
if (field.StartsWith("("))
|
||||
mNormals = ParserSTEP.SplitListDoubleTriple(field);
|
||||
mClosed = ParserIfc.StripLogical(str, ref pos, len);
|
||||
if(release < ReleaseVersion.IFC4X3)
|
||||
mClosed = ParserIfc.StripLogical(str, ref pos, len);
|
||||
mCoordIndex.AddRange(ParserSTEP.StripListSTPIntTriple(str, ref pos, len));
|
||||
if (release <= ReleaseVersion.IFC4A1)
|
||||
{
|
||||
|
@ -914,11 +947,12 @@ namespace GeometryGym.Ifc
|
|||
protected override void WriteStepLineWorker(TextWriter textWriter, ReleaseVersion release)
|
||||
{
|
||||
base.WriteStepLineWorker(textWriter, release);
|
||||
textWriter.Write(",(" + string.Join(",", mFlags.ConvertAll(x => x.ToString())) + ")");
|
||||
if(release >= ReleaseVersion.IFC4X1)
|
||||
textWriter.Write(",(" + string.Join(",", mFlags.ConvertAll(x => x.ToString())) + ")");
|
||||
}
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + ",(" + string.Join(",", mFlags.ConvertAll(x=>x.ToString())) + ")";
|
||||
return base.BuildStringSTEP(release) + (release >= ReleaseVersion.IFC4X1 ? ",(" + string.Join(",", mFlags.ConvertAll(x=>x.ToString())) + ")" : "");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int, BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -928,22 +962,22 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcTrimmedCurve
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "#" + mBasisCurve.Index + "," + mTrim1.ToString() + "," + mTrim2.ToString() + "," + ParserSTEP.BoolToString(mSenseAgreement) + ",." + mMasterRepresentation.ToString() + "."; }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "#" + mBasisCurve.StepId + "," + mTrim1.ToString() + "," + mTrim2.ToString() + "," + ParserSTEP.BoolToString(mSenseAgreement) + ",." + mMasterRepresentation.ToString() + "."; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mBasisCurve = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcCurve;
|
||||
mTrim1 = IfcTrimmingSelect.Parse(ParserSTEP.StripField(str, ref pos, len));
|
||||
mTrim2 = IfcTrimmingSelect.Parse(ParserSTEP.StripField(str, ref pos, len));
|
||||
mTrim1 = IfcTrimmingSelect.Parse(dictionary, ParserSTEP.StripField(str, ref pos, len));
|
||||
mTrim2 = IfcTrimmingSelect.Parse(dictionary, ParserSTEP.StripField(str, ref pos, len));
|
||||
mSenseAgreement = ParserSTEP.StripBool(str, ref pos, len);
|
||||
Enum.TryParse<IfcTrimmingPreference>(ParserSTEP.StripField(str, ref pos, len).Replace(".", ""), true, out mMasterRepresentation);
|
||||
}
|
||||
}
|
||||
public partial class IfcTrimmingSelect
|
||||
{
|
||||
internal static IfcTrimmingSelect Parse(string str)
|
||||
internal static IfcTrimmingSelect Parse(ConcurrentDictionary<int, BaseClassIfc> dictionary, string str)
|
||||
{
|
||||
IfcTrimmingSelect ts = new IfcTrimmingSelect();
|
||||
ts.mIfcParameterValue = double.NaN;
|
||||
ts.ParameterValue = double.NaN;
|
||||
int i = 0;
|
||||
while (str[i] == ' ')
|
||||
i++;
|
||||
|
@ -962,7 +996,7 @@ namespace GeometryGym.Ifc
|
|||
ls += c;
|
||||
i++;
|
||||
}
|
||||
ts.mIfcCartesianPoint = ParserSTEP.ParseLink(ls);
|
||||
ts.CartesianPoint = dictionary[ParserSTEP.ParseLink(ls)] as IfcCartesianPoint;
|
||||
if (c == ',')
|
||||
{
|
||||
i++;
|
||||
|
@ -978,7 +1012,7 @@ namespace GeometryGym.Ifc
|
|||
string pv = "";
|
||||
while (str[i] != ')')
|
||||
pv += str[i++];
|
||||
ts.mIfcParameterValue = ParserSTEP.ParseDouble(pv);
|
||||
ts.mParameterValue = ParserSTEP.ParseDouble(pv);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -994,7 +1028,7 @@ namespace GeometryGym.Ifc
|
|||
string pv = "";
|
||||
while (str[i] != ')')
|
||||
pv += str[i++];
|
||||
ts.mIfcParameterValue = ParserSTEP.ParseDouble(pv);
|
||||
ts.ParameterValue = ParserSTEP.ParseDouble(pv);
|
||||
}
|
||||
if (++i < str.Length)
|
||||
{
|
||||
|
@ -1002,7 +1036,7 @@ namespace GeometryGym.Ifc
|
|||
i++;
|
||||
if (str[i++] == ',')
|
||||
{
|
||||
ts.mIfcCartesianPoint = ParserSTEP.ParseLink(str.Substring(i, str.Length - i - 1));
|
||||
ts.CartesianPoint = dictionary[ParserSTEP.ParseLink(str.Substring(i, str.Length - i - 1))] as IfcCartesianPoint;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1011,15 +1045,15 @@ namespace GeometryGym.Ifc
|
|||
public override string ToString()
|
||||
{
|
||||
string str = "(";
|
||||
if (!double.IsNaN(mIfcParameterValue))
|
||||
if (!double.IsNaN(mParameterValue))
|
||||
{
|
||||
str += "IFCPARAMETERVALUE(" + ParserSTEP.DoubleToString(mIfcParameterValue) + ")";
|
||||
if (mIfcCartesianPoint > 0)
|
||||
str += "," + ParserSTEP.LinkToString(mIfcCartesianPoint);
|
||||
str += "IFCPARAMETERVALUE(" + ParserSTEP.DoubleToString(mParameterValue) + ")";
|
||||
if (mCartesianPoint != null)
|
||||
str += ",#" + mCartesianPoint.StepId;
|
||||
return str + ")";
|
||||
}
|
||||
else
|
||||
return str + ParserSTEP.LinkToString(mIfcCartesianPoint) + ")";
|
||||
return str + "#" + mCartesianPoint.StepId + ")";
|
||||
}
|
||||
}
|
||||
public partial class IfcTShapeProfileDef
|
||||
|
@ -1072,11 +1106,11 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcTwoDirectionRepeatFactor
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mSecondRepeatFactor); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",#" + mSecondRepeatFactor.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mSecondRepeatFactor = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mSecondRepeatFactor = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcVector;
|
||||
}
|
||||
}
|
||||
public partial class IfcTypeObject
|
||||
|
@ -1084,7 +1118,7 @@ namespace GeometryGym.Ifc
|
|||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
List<IfcPropertySetDefinition> psets = HasPropertySets.Where(x => !x.isEmpty).ToList();
|
||||
return base.BuildStringSTEP(release) + (mApplicableOccurrence == "$" ? ",$," : ",'" + mApplicableOccurrence + "',") +(psets.Count == 0 ? "$" : "(#" + string.Join(",#" , psets.ConvertAll(x=>x.mIndex)) + ")");
|
||||
return base.BuildStringSTEP(release) + (mApplicableOccurrence == "$" ? ",$," : ",'" + mApplicableOccurrence + "',") +(psets.Count == 0 ? "$" : "(" + string.Join("," , psets.ConvertAll(x=>"#" + x.StepId)) + ")");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -1112,8 +1146,8 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + (mRepresentationMaps.Count == 0 ? ",$," : ",(#" + string.Join(",#", mRepresentationMaps.ConvertAll(x=>x.mIndex)) + "),") +
|
||||
(string.IsNullOrEmpty(mTag) ? "$" : "'" + ParserIfc.Encode(mTag) + "'");
|
||||
return base.BuildStringSTEP(release) + (mRepresentationMaps.Count == 0 ? ",$," : ",(" +
|
||||
string.Join(",", mRepresentationMaps.ConvertAll(x=> "#" + x.StepId)) + "),") + (string.IsNullOrEmpty(mTag) ? "$" : "'" + ParserIfc.Encode(mTag) + "'");
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
|
|
|
@ -75,7 +75,7 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcUnitAssignment
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "(#" + string.Join(",#", mUnits.ConvertAll(x=>x.Index)) + ")"; }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "(" + string.Join(",", mUnits.ConvertAll(x=> "#" + x.StepId)) + ")"; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary) { Units.AddRange(ParserSTEP.StripListLink(str, ref pos, len).ConvertAll(x=>Database[x] as IfcUnit)); }
|
||||
}
|
||||
public partial class IfcUShapeProfileDef
|
||||
|
|
|
@ -98,24 +98,22 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
string str = "(" + ParserSTEP.LinkToString(mTextureVertices[0]);
|
||||
for (int icounter = 1; icounter < mTextureVertices.Count; icounter++)
|
||||
str += "," + ParserSTEP.LinkToString(mTextureVertices[icounter]);
|
||||
str += "),(" + ParserSTEP.LinkToString(mTexturePoints[0]);
|
||||
for (int icounter = 1; icounter < mTexturePoints.Count; icounter++)
|
||||
str += "," + ParserSTEP.LinkToString(mTexturePoints[icounter]);
|
||||
return str;
|
||||
return "(" + string.Join(",", mTextureVertices.Select(x => "#" + x.StepId)) + "),(" +
|
||||
string.Join(",", mTexturePoints.Select(x => "#" + x.StepId)) + ")";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mTextureVertices = ParserSTEP.StripListLink(str, ref pos, len);
|
||||
mTexturePoints = ParserSTEP.StripListLink(str, ref pos, len);
|
||||
mTextureVertices.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x=>dictionary[x] as IfcTextureVertex));
|
||||
mTexturePoints.AddRange(ParserSTEP.StripListLink(str, ref pos, len).Select(x=>dictionary[x] as IfcCartesianPoint));
|
||||
}
|
||||
}
|
||||
public partial class IfcVertexLoop
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return ParserSTEP.LinkToString(mLoopVertex); }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary) { mLoopVertex = ParserSTEP.StripLink(str, ref pos, str.Length); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return "#" + mLoopVertex.StepId; }
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
mLoopVertex = dictionary[ParserSTEP.StripLink(str, ref pos, str.Length)] as IfcVertex;
|
||||
}
|
||||
}
|
||||
public partial class IfcVertexPoint
|
||||
{
|
||||
|
@ -190,17 +188,14 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
string str = "(#" + mIntersectingAxes.Item1 + ",#" + mIntersectingAxes.Item2 + "),(";
|
||||
str += ParserSTEP.DoubleToString(mOffsetDistances.Item1) + "," + ParserSTEP.DoubleToString(mOffsetDistances.Item2);
|
||||
if (!double.IsNaN(mOffsetDistances.Item3))
|
||||
str += "," + ParserSTEP.DoubleToString(mOffsetDistances.Item3);
|
||||
str += ")";
|
||||
return str;
|
||||
return "(#" + mIntersectingAxes.Item1.StepId + ",#" + mIntersectingAxes.Item2.StepId + "),(" +
|
||||
ParserSTEP.DoubleToString(mOffsetDistances.Item1) + "," + ParserSTEP.DoubleToString(mOffsetDistances.Item2) +
|
||||
(!double.IsNaN(mOffsetDistances.Item3) ? "," + ParserSTEP.DoubleToString(mOffsetDistances.Item3) : "") + ")";
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
List<int> links = ParserSTEP.StripListLink(str, ref pos, len);
|
||||
mIntersectingAxes = new Tuple<int, int>(links[0], links[1]);
|
||||
mIntersectingAxes = new Tuple<IfcGridAxis, IfcGridAxis>(dictionary[links[0]] as IfcGridAxis, dictionary[links[1]] as IfcGridAxis);
|
||||
List<string> lst = ParserSTEP.SplitLineFields(ParserSTEP.StripField(str,ref pos, len));
|
||||
mOffsetDistances = new Tuple<double, double, double>(ParserSTEP.ParseDouble(lst[0]), ParserSTEP.ParseDouble(lst[1]), (lst.Count > 2 ? ParserSTEP.ParseDouble(lst[2]) : double.NaN));
|
||||
}
|
||||
|
|
|
@ -100,8 +100,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + "," + ParserSTEP.DoubleOptionalToString(mOverallHeight) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mOverallWidth) +
|
||||
return base.BuildStringSTEP(release) + "," + formatLength(mOverallHeight) + "," + formatLength(mOverallWidth) +
|
||||
(release < ReleaseVersion.IFC4 ? "" : ",." + mPredefinedType + ".,." + mPartitioningType +
|
||||
(string.IsNullOrEmpty(mUserDefinedPartitioningType) ? ".,$" : ".,'" + ParserIfc.Encode(mUserDefinedPartitioningType) + "'"));
|
||||
}
|
||||
|
@ -126,9 +125,13 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + "," + ParserSTEP.DoubleOptionalToString(mLiningDepth) + "," + ParserSTEP.DoubleOptionalToString(mLiningThickness) + "," + ParserSTEP.DoubleOptionalToString(mTransomThickness) + "," + ParserSTEP.DoubleOptionalToString(mMullionThickness)
|
||||
+ "," + ParserSTEP.DoubleOptionalToString(mFirstTransomOffset) + "," + ParserSTEP.DoubleOptionalToString(mSecondTransomOffset) + "," + ParserSTEP.DoubleOptionalToString(mFirstMullionOffset) + "," + ParserSTEP.DoubleOptionalToString(mSecondMullionOffset) + "," +
|
||||
ParserSTEP.LinkToString(mShapeAspectStyle) + (release < ReleaseVersion.IFC4 ? "" : "," + ParserSTEP.DoubleOptionalToString(mLiningOffset) + "," + ParserSTEP.DoubleOptionalToString(mLiningToPanelOffsetX) + "," + ParserSTEP.DoubleOptionalToString(mLiningToPanelOffsetY));
|
||||
return base.BuildStringSTEP(release) + "," + ParserSTEP.DoubleOptionalToString(mLiningDepth) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mLiningThickness) + "," + ParserSTEP.DoubleOptionalToString(mTransomThickness) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mMullionThickness) + "," + ParserSTEP.DoubleOptionalToString(mFirstTransomOffset) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mSecondTransomOffset) + "," + ParserSTEP.DoubleOptionalToString(mFirstMullionOffset) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mSecondMullionOffset) + (mShapeAspectStyle == null ? ",$" : ",#" + mShapeAspectStyle.StepId) +
|
||||
(release < ReleaseVersion.IFC4 ? "" : "," + ParserSTEP.DoubleOptionalToString(mLiningOffset) + "," +
|
||||
ParserSTEP.DoubleOptionalToString(mLiningToPanelOffsetX) + "," + ParserSTEP.DoubleOptionalToString(mLiningToPanelOffsetY));
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -141,7 +144,7 @@ namespace GeometryGym.Ifc
|
|||
mSecondTransomOffset = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mFirstMullionOffset = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mSecondMullionOffset = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mShapeAspectStyle = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mShapeAspectStyle = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcShapeAspect;
|
||||
if (release != ReleaseVersion.IFC2x3)
|
||||
{
|
||||
mLiningOffset = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
|
@ -152,7 +155,12 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcWindowPanelProperties
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return base.BuildStringSTEP(release) + ",." + mOperationType.ToString() + ".,." + mPanelPosition.ToString() + ".," + ParserSTEP.DoubleOptionalToString(mFrameDepth) + "," + ParserSTEP.DoubleOptionalToString(mFrameThickness) + "," + ParserSTEP.LinkToString(mShapeAspectStyle); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + ",." + mOperationType.ToString() + ".,." + mPanelPosition.ToString() + ".," +
|
||||
ParserSTEP.DoubleOptionalToString(mFrameDepth) + "," + ParserSTEP.DoubleOptionalToString(mFrameThickness) +
|
||||
(mShapeAspectStyle == null ? ",$" : ",#" + mShapeAspectStyle);
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
|
@ -160,7 +168,7 @@ namespace GeometryGym.Ifc
|
|||
Enum.TryParse<IfcWindowPanelPositionEnum>(ParserSTEP.StripField(str, ref pos, len).Replace(".", ""), true, out mPanelPosition);
|
||||
mFrameDepth = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mFrameThickness = ParserSTEP.StripDouble(str, ref pos, len);
|
||||
mShapeAspectStyle = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mShapeAspectStyle = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcShapeAspect;
|
||||
}
|
||||
}
|
||||
public partial class IfcWindowStyle
|
||||
|
@ -183,8 +191,11 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return (release < ReleaseVersion.IFC4 ? base.BuildStringSTEP(release) + ",.NOTDEFINED.,.NOTDEFINED.," + ParserSTEP.BoolToString(mParameterTakesPrecedence) + "," + ParserSTEP.BoolToString(false) :
|
||||
base.BuildStringSTEP(release) + ",." + mPredefinedType.ToString() + ".,." + mPartitioningType.ToString() + ".," + ParserSTEP.BoolToString(mParameterTakesPrecedence) + (mUserDefinedPartitioningType == "$" ? ",$" : ",'" + mUserDefinedPartitioningType + "'"));
|
||||
return (release < ReleaseVersion.IFC4 ? base.BuildStringSTEP(release) + ",.NOTDEFINED.,.NOTDEFINED.," +
|
||||
ParserSTEP.BoolToString(mParameterTakesPrecedence) + "," + ParserSTEP.BoolToString(false) :
|
||||
base.BuildStringSTEP(release) + ",." + mPredefinedType.ToString() + ".,." + mPartitioningType.ToString() + ".," +
|
||||
ParserSTEP.BoolToString(mParameterTakesPrecedence) +
|
||||
(string.IsNullOrEmpty(mUserDefinedPartitioningType) ? ",$" : ",'" + ParserIfc.Encode(mUserDefinedPartitioningType) + "'"));
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
|
@ -192,7 +203,7 @@ namespace GeometryGym.Ifc
|
|||
Enum.TryParse<IfcWindowTypeEnum>(ParserSTEP.StripField(str,ref pos, len).Replace(".", ""), true, out mPredefinedType);
|
||||
Enum.TryParse<IfcWindowTypePartitioningEnum>(ParserSTEP.StripField(str, ref pos, len).Replace(".", ""), true, out mPartitioningType);
|
||||
mParameterTakesPrecedence = ParserSTEP.StripBool(str, ref pos, len);
|
||||
mUserDefinedPartitioningType = ParserSTEP.StripString(str, ref pos, len);
|
||||
mUserDefinedPartitioningType = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
|
||||
}
|
||||
}
|
||||
public partial class IfcWorkCalendar
|
||||
|
@ -248,7 +259,7 @@ namespace GeometryGym.Ifc
|
|||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return base.BuildStringSTEP(release) + "," + (release < ReleaseVersion.IFC4 ? "'" + mIdentification + "'," + ParserSTEP.ObjToLinkString(mSSCreationDate) : IfcDateTime.STEPAttribute(mCreationDate)) +
|
||||
(mCreators.Count > 0 ? ",(#" + string.Join(",#", Creators.ConvertAll(x=>x.Index)) + ")," : ",$,") +
|
||||
(mCreators.Count > 0 ? ",(" + string.Join(",", Creators.ConvertAll(x=>"#" + x.StepId)) + ")," : ",$,") +
|
||||
(release < ReleaseVersion.IFC4 ? (mPurpose == "$" ? "$," : "'" + mPurpose + "',") + ParserSTEP.DoubleOptionalToString(mSSDuration) + "," + ParserSTEP.DoubleOptionalToString(mSSTotalFloat) + "," +
|
||||
ParserSTEP.ObjToLinkString(mSSStartTime) + "," + ParserSTEP.ObjToLinkString(mSSFinishTime) + ",." + mWorkControlType.ToString() + (mUserDefinedControlType == "$" ? ".,$" : ".,'" + mUserDefinedControlType + "'") :
|
||||
(mPurpose == "$" ? "$," : "'" + mPurpose + "',") + mDuration + "," + mTotalFloat + "," + IfcDateTime.STEPAttribute(mStartTime) + "," + IfcDateTime.STEPAttribute(mFinishTime));
|
||||
|
@ -290,11 +301,16 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcWorkTime
|
||||
{
|
||||
protected override string BuildStringSTEP(ReleaseVersion release) { return (release < ReleaseVersion.IFC4 ? "" : base.BuildStringSTEP(release) + "," + ParserSTEP.LinkToString(mRecurrencePattern) + ","+ IfcDate.STEPAttribute(mStartDate) + "," + IfcDate.STEPAttribute(mFinishDate)); }
|
||||
protected override string BuildStringSTEP(ReleaseVersion release)
|
||||
{
|
||||
return (release < ReleaseVersion.IFC4 ? "" :
|
||||
base.BuildStringSTEP(release) + (mRecurrencePattern == null ? ",$" : ",#" + mRecurrencePattern.StepId) + ","+
|
||||
IfcDate.STEPAttribute(mStartDate) + "," + IfcDate.STEPAttribute(mFinishDate));
|
||||
}
|
||||
internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary<int,BaseClassIfc> dictionary)
|
||||
{
|
||||
base.parse(str, ref pos, release, len, dictionary);
|
||||
mRecurrencePattern = ParserSTEP.StripLink(str, ref pos, len);
|
||||
mRecurrencePattern = dictionary[ParserSTEP.StripLink(str, ref pos, len)] as IfcRecurrencePattern;
|
||||
mStartDate = IfcDate.ParseSTEP(ParserSTEP.StripString(str, ref pos, len));
|
||||
mFinishDate = IfcDate.ParseSTEP(ParserSTEP.StripString(str, ref pos, len));
|
||||
}
|
||||
|
|
|
@ -68,7 +68,7 @@ namespace GeometryGym.Ifc
|
|||
SetXML(element, host, processed);
|
||||
|
||||
if(mDatabase.XMLMandatoryId)
|
||||
element.SetAttribute("id", "i" + mIndex);
|
||||
element.SetAttribute("id", "i" + mStepId);
|
||||
if (string.Compare(name, type) != 0)
|
||||
{
|
||||
XmlAttribute typeAttribute = doc.CreateAttribute("type", mDatabase.mXsiNamespace);
|
||||
|
@ -101,7 +101,7 @@ namespace GeometryGym.Ifc
|
|||
XmlElement element = xml.OwnerDocument.CreateElement(name, mDatabase.mXmlNamespace);
|
||||
xml.AppendChild(element);
|
||||
foreach (IBaseClassIfc o in objects)
|
||||
element.AppendChild(mDatabase[o.Index].GetXML(xml.OwnerDocument, "", this, processed));
|
||||
element.AppendChild((o as BaseClassIfc).GetXML(xml.OwnerDocument, "", this, processed));
|
||||
}
|
||||
internal static XmlNode convert(XmlDocument doc, IfcValue value, string name, string ifcnamespace)
|
||||
{
|
||||
|
|
|
@ -786,7 +786,7 @@ namespace GeometryGym.Ifc
|
|||
else
|
||||
xml.AppendChild((mAppliedValue as BaseClassIfc).GetXML(xml.OwnerDocument, "AppliedValue", this, processed));
|
||||
}
|
||||
if (mUnitBasis > 0)
|
||||
if (mUnitBasis != null)
|
||||
xml.AppendChild(UnitBasis.GetXML(xml.OwnerDocument, "UnitBasis", this, processed));
|
||||
//todo
|
||||
setAttribute(xml, "Category", Category);
|
||||
|
@ -813,7 +813,7 @@ namespace GeometryGym.Ifc
|
|||
XmlElement element = xml.OwnerDocument.CreateElement("HasConstraintRelationships", mDatabase.mXmlNamespace);
|
||||
foreach (IfcResourceConstraintRelationship r in HasConstraintRelationships)
|
||||
{
|
||||
if (r.mIndex != host.mIndex)
|
||||
if (r != host)
|
||||
element.AppendChild(r.GetXML(xml.OwnerDocument, "", this, processed));
|
||||
}
|
||||
if (element.HasChildNodes)
|
||||
|
@ -1010,7 +1010,7 @@ namespace GeometryGym.Ifc
|
|||
internal override void SetXML(XmlElement xml, BaseClassIfc host, Dictionary<string, XmlElement> processed)
|
||||
{
|
||||
base.SetXML(xml, host, processed);
|
||||
if (mAxis > 0)
|
||||
if (mAxis != null)
|
||||
xml.AppendChild(Axis.GetXML(xml.OwnerDocument, "Axis", this, processed));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -152,9 +152,9 @@ namespace GeometryGym.Ifc
|
|||
internal override void SetXML(XmlElement xml, BaseClassIfc host, Dictionary<string, XmlElement> processed)
|
||||
{
|
||||
base.SetXML(xml, host, processed);
|
||||
if (mAxis1 > 0)
|
||||
if (mAxis1 != null)
|
||||
xml.AppendChild(Axis1.GetXML(xml.OwnerDocument, "Axis1", this, processed));
|
||||
if (mAxis2 > 0)
|
||||
if (mAxis2 != null)
|
||||
xml.AppendChild(Axis2.GetXML(xml.OwnerDocument, "Axis2", this, processed));
|
||||
xml.AppendChild(LocalOrigin.GetXML(xml.OwnerDocument, "LocalOrigin", this, processed));
|
||||
if (!double.IsNaN(mScale))
|
||||
|
@ -192,7 +192,7 @@ namespace GeometryGym.Ifc
|
|||
internal override void SetXML(XmlElement xml, BaseClassIfc host, Dictionary<string, XmlElement> processed)
|
||||
{
|
||||
base.SetXML(xml, host, processed);
|
||||
if (mAxis3 > 0)
|
||||
if (mAxis3 != null)
|
||||
xml.AppendChild(Axis1.GetXML(xml.OwnerDocument, "Axis3", this, processed));
|
||||
}
|
||||
}
|
||||
|
@ -346,7 +346,7 @@ namespace GeometryGym.Ifc
|
|||
else if (string.Compare(name, "Edition", true) == 0)
|
||||
Edition = child.InnerText;
|
||||
else if (string.Compare(name, "EditionDate", true) == 0)
|
||||
mEditionDateSS = mDatabase.ParseXml<IfcCalendarDate>(child as XmlElement).StepId;
|
||||
mEditionDateSS = mDatabase.ParseXml<IfcCalendarDate>(child as XmlElement);
|
||||
else if (string.Compare(name, "Name", true) == 0)
|
||||
Name = child.InnerText;
|
||||
else if (string.Compare(name, "Description", true) == 0)
|
||||
|
@ -407,7 +407,7 @@ namespace GeometryGym.Ifc
|
|||
base.SetXML(xml, host, processed);
|
||||
IfcClassificationReferenceSelect referenced = ReferencedSource;
|
||||
if (referenced != null && referenced != host)
|
||||
xml.AppendChild(mDatabase[referenced.Index].GetXML(xml.OwnerDocument, "ReferencedSource", this, processed));
|
||||
xml.AppendChild((referenced as BaseClassIfc).GetXML(xml.OwnerDocument, "ReferencedSource", this, processed));
|
||||
setAttribute(xml, "Description", Description);
|
||||
setAttribute(xml, "Sort", Sort);
|
||||
|
||||
|
@ -632,7 +632,7 @@ namespace GeometryGym.Ifc
|
|||
internal override void SetXML(XmlElement xml, BaseClassIfc host, Dictionary<string, XmlElement> processed)
|
||||
{
|
||||
base.SetXML(xml, host, processed);
|
||||
xml.AppendChild(mDatabase[mPosition].GetXML(xml.OwnerDocument, "Position", this, processed));
|
||||
xml.AppendChild((mPosition as BaseClassIfc).GetXML(xml.OwnerDocument, "Position", this, processed));
|
||||
}
|
||||
}
|
||||
public partial class IfcConnectedFaceSet : IfcTopologicalRepresentationItem //SUPERTYPE OF (ONEOF (IfcClosedShell ,IfcOpenShell))
|
||||
|
@ -725,7 +725,7 @@ namespace GeometryGym.Ifc
|
|||
setAttribute(xml, "Phase", Phase);
|
||||
if (repContexts != null)
|
||||
xml.AppendChild(repContexts);
|
||||
if (mUnitsInContext > 0)
|
||||
if (mUnitsInContext != null)
|
||||
xml.AppendChild(UnitsInContext.GetXML(xml.OwnerDocument, "UnitsInContext", this, processed));
|
||||
if (mIsDefinedBy.Count > 0)
|
||||
{
|
||||
|
@ -782,7 +782,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
base.SetXML(xml, host, processed);
|
||||
xml.AppendChild((CurveOnRelatingElement as BaseClassIfc).GetXML(xml.OwnerDocument, "CurveOnRelatingElement", this, processed));
|
||||
if(mCurveOnRelatedElement > 0)
|
||||
if(mCurveOnRelatedElement != null)
|
||||
xml.AppendChild((CurveOnRelatedElement as BaseClassIfc).GetXML(xml.OwnerDocument, "CurveOnRelatedElement", this, processed));
|
||||
}
|
||||
}
|
||||
|
@ -859,7 +859,7 @@ namespace GeometryGym.Ifc
|
|||
XmlElement element = xml.OwnerDocument.CreateElement("PropertiesForConstraint", mDatabase.mXmlNamespace);
|
||||
foreach (IfcResourceConstraintRelationship r in mPropertiesForConstraint)
|
||||
{
|
||||
if (host.mIndex != r.mIndex && !processed.ContainsKey(r.xmlId()))
|
||||
if (host != r && !processed.ContainsKey(r.xmlId()))
|
||||
element.AppendChild(r.GetXML(xml.OwnerDocument, "", this, processed));
|
||||
}
|
||||
if (element.HasChildNodes)
|
||||
|
@ -870,7 +870,7 @@ namespace GeometryGym.Ifc
|
|||
XmlElement element = xml.OwnerDocument.CreateElement("HasConstraintRelationships", mDatabase.mXmlNamespace);
|
||||
foreach (IfcResourceConstraintRelationship r in HasConstraintRelationships)
|
||||
{
|
||||
if (host.mIndex != r.mIndex)
|
||||
if (host != r)
|
||||
element.AppendChild(r.GetXML(xml.OwnerDocument, "", this, processed));
|
||||
}
|
||||
if (element.HasChildNodes)
|
||||
|
@ -1067,7 +1067,7 @@ namespace GeometryGym.Ifc
|
|||
internal override void SetXML(XmlElement xml, BaseClassIfc host, Dictionary<string, XmlElement> processed)
|
||||
{
|
||||
base.SetXML(xml, host, processed);
|
||||
xml.AppendChild(mDatabase[mTreeRootExpression].GetXML(xml.OwnerDocument, "TreeRootExpression", this, processed));
|
||||
xml.AppendChild((mTreeRootExpression as BaseClassIfc).GetXML(xml.OwnerDocument, "TreeRootExpression", this, processed));
|
||||
}
|
||||
}
|
||||
public partial class IfcCShapeProfileDef : IfcParameterizedProfileDef
|
||||
|
|
|
@ -246,7 +246,7 @@ namespace GeometryGym.Ifc
|
|||
public partial class IfcDistributionPort : IfcPort
|
||||
{
|
||||
//internal IfcFlowDirectionEnum mFlowDirection = IfcFlowDirectionEnum.NOTDEFINED; //: OPTIONAL IfcFlowDirectionEnum;
|
||||
//internal IfcDistributionPortTypeEnum mPredefinedType = IfcDistributionPortTypeEnum.NOTDEFINED; // IFC4 : OPTIONAL IfcDistributionPortTypeEnum;
|
||||
//private IfcDistributionPortTypeEnum mPredefinedType = IfcDistributionPortTypeEnum.NOTDEFINED; // IFC4 : OPTIONAL IfcDistributionPortTypeEnum;
|
||||
//internal IfcDistributionSystemEnum mSystemType = IfcDistributionSystemEnum.NOTDEFINED;// IFC4 : OPTIONAL IfcDistributionSystemEnum;
|
||||
internal override void ParseXml(XmlElement xml)
|
||||
{
|
||||
|
|
|
@ -148,7 +148,7 @@ namespace GeometryGym.Ifc
|
|||
XmlElement element = xml.OwnerDocument.CreateElement("HasOpenings", mDatabase.mXmlNamespace);
|
||||
foreach (IfcRelVoidsElement voids in mHasOpenings)
|
||||
{
|
||||
if (voids.mIndex != host.mIndex)
|
||||
if (voids != host)
|
||||
element.AppendChild(voids.GetXML(xml.OwnerDocument, "", this, processed));
|
||||
}
|
||||
if (element.HasChildNodes)
|
||||
|
|
|
@ -121,7 +121,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
IfcClosedShell s = mDatabase.ParseXml<IfcClosedShell>(cn as XmlElement);
|
||||
if (s != null)
|
||||
addVoid(s);
|
||||
Voids.Add(s);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -69,7 +69,7 @@ namespace GeometryGym.Ifc
|
|||
if (!double.IsNaN(mPrecision))
|
||||
xml.SetAttribute("Precision", mPrecision.ToString());
|
||||
if (mWorldCoordinateSystem != null)
|
||||
xml.AppendChild(mDatabase[mWorldCoordinateSystem.Index].GetXML(xml.OwnerDocument, "WorldCoordinateSystem", this, processed));
|
||||
xml.AppendChild((mWorldCoordinateSystem as BaseClassIfc).GetXML(xml.OwnerDocument, "WorldCoordinateSystem", this, processed));
|
||||
if (mTrueNorth != null)
|
||||
xml.AppendChild(TrueNorth.GetXML(xml.OwnerDocument, "TrueNorth", this, processed));
|
||||
}
|
||||
|
@ -139,7 +139,7 @@ namespace GeometryGym.Ifc
|
|||
XmlElement element = xml.OwnerDocument.CreateElement("Elements", mDatabase.mXmlNamespace);
|
||||
xml.AppendChild(element);
|
||||
foreach (IfcGeometricSetSelect el in mElements)
|
||||
element.AppendChild(mDatabase[el.Index].GetXML(xml.OwnerDocument, "", this, processed));
|
||||
element.AppendChild((el as BaseClassIfc).GetXML(xml.OwnerDocument, "", this, processed));
|
||||
}
|
||||
}
|
||||
public partial class IfcGradientCurve
|
||||
|
|
|
@ -55,8 +55,8 @@ namespace GeometryGym.Ifc
|
|||
base.SetXML(xml, host, processed);
|
||||
xml.SetAttribute("Name", Name);
|
||||
setAttribute(xml, "Version", Version);
|
||||
if (mPublisher > 0)
|
||||
xml.AppendChild(mDatabase[mPublisher].GetXML(xml.OwnerDocument, "Publisher", this, processed));
|
||||
if (mPublisher != null)
|
||||
xml.AppendChild((mPublisher as BaseClassIfc).GetXML(xml.OwnerDocument, "Publisher", this, processed));
|
||||
//VersionDate
|
||||
setAttribute(xml, "Location", Location);
|
||||
setAttribute(xml, "Description", Description);
|
||||
|
|
|
@ -364,7 +364,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
base.SetXML(xml, host, processed);
|
||||
xml.AppendChild(convert(xml.OwnerDocument, mValueComponent, "ValueComponent", mDatabase.mXmlNamespace));
|
||||
xml.AppendChild(mDatabase[mUnitComponent].GetXML(xml.OwnerDocument, "UnitComponent", this, processed));
|
||||
xml.AppendChild((mUnitComponent as BaseClassIfc).GetXML(xml.OwnerDocument, "UnitComponent", this, processed));
|
||||
}
|
||||
}
|
||||
public partial class IfcMetric : IfcConstraint
|
||||
|
@ -382,15 +382,15 @@ namespace GeometryGym.Ifc
|
|||
if (string.Compare(name, "DataValue") == 0)
|
||||
{
|
||||
if(child.HasChildNodes)
|
||||
mDataValueValue = extractValue(child.FirstChild);
|
||||
if (mDataValueValue == null)
|
||||
mDataValue = extractValue(child.FirstChild) as IfcMetricValueSelect;
|
||||
if (mDataValue == null)
|
||||
{
|
||||
BaseClassIfc baseClass = mDatabase.ParseXml<BaseClassIfc>(child as XmlElement);
|
||||
IfcMetricValueSelect metric = baseClass as IfcMetricValueSelect;
|
||||
if (metric != null)
|
||||
DataValue = metric;
|
||||
else
|
||||
mDataValueValue = extractValue(child as XmlNode);
|
||||
mDataValue = extractValue(child as XmlNode);
|
||||
}
|
||||
}
|
||||
else if (string.Compare(name, "ReferencePath") == 0)
|
||||
|
@ -402,11 +402,11 @@ namespace GeometryGym.Ifc
|
|||
base.SetXML(xml, host, processed);
|
||||
xml.SetAttribute("BenchMark", mBenchMark.ToString().ToLower());
|
||||
setAttribute(xml, "ValueSource", ValueSource);
|
||||
if (mDataValue > 0)
|
||||
xml.AppendChild(mDatabase[mDataValue].GetXML(xml.OwnerDocument, "DataValue", this, processed));
|
||||
else if(mDataValueValue != null)
|
||||
xml.AppendChild(convert(xml.OwnerDocument, mDataValueValue, "DataValue", mDatabase.mXmlNamespace));
|
||||
if(mReferencePath > 0)
|
||||
if (mDataValue is BaseClassIfc o)
|
||||
xml.AppendChild(o.GetXML(xml.OwnerDocument, "DataValue", this, processed));
|
||||
else if(mDataValue is IfcValue val)
|
||||
xml.AppendChild(convert(xml.OwnerDocument, val, "DataValue", mDatabase.mXmlNamespace));
|
||||
if(mReferencePath != null)
|
||||
xml.AppendChild(ReferencePath.GetXML(xml.OwnerDocument, "ReferencePath", this, processed));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -115,7 +115,7 @@ namespace GeometryGym.Ifc
|
|||
XmlElement element = xml.OwnerDocument.CreateElement("HasAssignments", mDatabase.mXmlNamespace);
|
||||
foreach (IfcRelAssigns rap in mHasAssignments)
|
||||
{
|
||||
if (rap.mIndex != host.mIndex)
|
||||
if (rap != host)
|
||||
element.AppendChild(rap.GetXML(xml.OwnerDocument, "", this, processed));
|
||||
}
|
||||
if (element.HasChildNodes)
|
||||
|
@ -277,7 +277,7 @@ namespace GeometryGym.Ifc
|
|||
XmlElement element = xml.OwnerDocument.CreateElement("HasFillings", mDatabase.mXmlNamespace);
|
||||
foreach (IfcRelFillsElement fills in mHasFillings)
|
||||
{
|
||||
if (fills.mIndex != host.mIndex)
|
||||
if (fills != host)
|
||||
element.AppendChild(fills.GetXML(xml.OwnerDocument, "", this, processed));
|
||||
}
|
||||
if (element.HasChildNodes)
|
||||
|
|
|
@ -97,7 +97,7 @@ namespace GeometryGym.Ifc
|
|||
if (string.Compare(name, "MiddleNames") == 0)
|
||||
{
|
||||
foreach (XmlNode cn in child.ChildNodes)
|
||||
AddMiddleName(cn.InnerText);
|
||||
MiddleNames.Add(cn.InnerText);
|
||||
}
|
||||
else if (string.Compare(name, "Roles", true) == 0)
|
||||
{
|
||||
|
@ -788,7 +788,7 @@ namespace GeometryGym.Ifc
|
|||
base.SetXML(xml, host, processed);
|
||||
setAttribute(xml, "MapProjection", MapProjection);
|
||||
setAttribute(xml, "MapZone", MapZone);
|
||||
if (mMapUnit > 0)
|
||||
if (mMapUnit != null)
|
||||
xml.AppendChild(MapUnit.GetXML(xml.OwnerDocument, "MapUnit", this, processed));
|
||||
}
|
||||
}
|
||||
|
@ -833,8 +833,8 @@ namespace GeometryGym.Ifc
|
|||
xml.AppendChild(convert(xml.OwnerDocument, mUpperBoundValue, "UpperBoundValue", mDatabase.mXmlNamespace));
|
||||
if (mLowerBoundValue != null)
|
||||
xml.AppendChild(convert(xml.OwnerDocument, mLowerBoundValue, "LowerBoundValue", mDatabase.mXmlNamespace));
|
||||
if (mUnit > 0)
|
||||
xml.AppendChild(mDatabase[mUnit].GetXML(xml.OwnerDocument, "Unit", this, processed));
|
||||
if (mUnit != null)
|
||||
xml.AppendChild((mUnit as BaseClassIfc).GetXML(xml.OwnerDocument, "Unit", this, processed));
|
||||
if (mSetPointValue != null)
|
||||
xml.AppendChild(convert(xml.OwnerDocument, mSetPointValue, "SetPointValue", mDatabase.mXmlNamespace));
|
||||
}
|
||||
|
@ -848,8 +848,8 @@ namespace GeometryGym.Ifc
|
|||
xml.AppendChild(convert(xml.OwnerDocument, mUpperBoundValue, "UpperBoundValue", mDatabase.mXmlNamespace));
|
||||
if (mLowerBoundValue != null)
|
||||
xml.AppendChild(convert(xml.OwnerDocument, mLowerBoundValue, "LowerBoundValue", mDatabase.mXmlNamespace));
|
||||
if(mUnit > 0)
|
||||
xml.AppendChild(mDatabase[mUnit].GetXML(xml.OwnerDocument, "Unit", this, processed));
|
||||
if(mUnit != null)
|
||||
xml.AppendChild((mUnit as BaseClassIfc).GetXML(xml.OwnerDocument, "Unit", this, processed));
|
||||
if (mSetPointValue != null)
|
||||
xml.AppendChild(convert(xml.OwnerDocument, mSetPointValue, "SetPointValue", mDatabase.mXmlNamespace));
|
||||
}
|
||||
|
@ -966,7 +966,7 @@ namespace GeometryGym.Ifc
|
|||
XmlElement element = xml.OwnerDocument.CreateElement("EnumerationValues", mDatabase.mXmlNamespace);
|
||||
foreach (IfcValue value in mEnumerationValues)
|
||||
element.AppendChild(convert(xml.OwnerDocument, value, "", mDatabase.mXmlNamespace));
|
||||
if (mEnumerationReference > 0)
|
||||
if (mEnumerationReference != null)
|
||||
element.AppendChild(EnumerationReference.GetXML(xml.OwnerDocument, "EnumerationReference", this, processed));
|
||||
}
|
||||
}
|
||||
|
@ -1040,7 +1040,7 @@ namespace GeometryGym.Ifc
|
|||
else if (string.Compare(name, "IsDefinedBy") == 0)
|
||||
{
|
||||
foreach (IfcRelDefinesByTemplate r in mDatabase.ParseXMLList<IfcRelDefinesByTemplate>(child))
|
||||
r.AddRelated(this);
|
||||
r.RelatedPropertySets.Add(this);
|
||||
}
|
||||
else if (string.Compare(name, "DefinesOccurrence") == 0)
|
||||
{
|
||||
|
|
|
@ -184,7 +184,7 @@ namespace GeometryGym.Ifc
|
|||
setAttribute(xml, "InstanceName", InstanceName);
|
||||
if (mListPositions.Count > 0)
|
||||
xml.SetAttribute("ListPositions", String.Join(" ", mListPositions));
|
||||
if (mInnerReference > 0)
|
||||
if (mInnerReference != null)
|
||||
xml.AppendChild(InnerReference.GetXML(xml.OwnerDocument, "InnerReference", this, processed));
|
||||
}
|
||||
}
|
||||
|
@ -336,7 +336,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
base.SetXML(xml, host, processed);
|
||||
if (host != mRelatingProduct)
|
||||
xml.AppendChild(mDatabase[mRelatingProduct.Index].GetXML(xml.OwnerDocument, "RelatingProduct", this, processed));
|
||||
xml.AppendChild((mRelatingProduct as BaseClassIfc).GetXML(xml.OwnerDocument, "RelatingProduct", this, processed));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -368,7 +368,7 @@ namespace GeometryGym.Ifc
|
|||
XmlElement element = xml.OwnerDocument.CreateElement("RelatedObjects", mDatabase.mXmlNamespace);
|
||||
xml.AppendChild(element);
|
||||
foreach (IfcDefinitionSelect r in related)
|
||||
element.AppendChild(mDatabase[r.Index].GetXML(xml.OwnerDocument, "", this, processed));
|
||||
element.AppendChild((r as BaseClassIfc).GetXML(xml.OwnerDocument, "", this, processed));
|
||||
}
|
||||
}
|
||||
public partial class IfcRelAssociatesClassification : IfcRelAssociates
|
||||
|
@ -425,7 +425,7 @@ namespace GeometryGym.Ifc
|
|||
internal override void SetXML(XmlElement xml, BaseClassIfc host, Dictionary<string, XmlElement> processed)
|
||||
{
|
||||
base.SetXML(xml, host, processed);
|
||||
xml.AppendChild(mDatabase[mRelatingDocument].GetXML(xml.OwnerDocument, "RelatingDocument", this, processed));
|
||||
xml.AppendChild((mRelatingDocument as BaseClassIfc).GetXML(xml.OwnerDocument, "RelatingDocument", this, processed));
|
||||
}
|
||||
}
|
||||
public partial class IfcRelAssociatesLibrary
|
||||
|
@ -472,7 +472,7 @@ namespace GeometryGym.Ifc
|
|||
internal override void SetXML(XmlElement xml, BaseClassIfc host, Dictionary<string, XmlElement> processed)
|
||||
{
|
||||
base.SetXML(xml, host, processed);
|
||||
xml.AppendChild(mDatabase[mRelatingMaterial].GetXML(xml.OwnerDocument, "RelatingMaterial", this, processed));
|
||||
xml.AppendChild((mRelatingMaterial as BaseClassIfc).GetXML(xml.OwnerDocument, "RelatingMaterial", this, processed));
|
||||
}
|
||||
}
|
||||
public partial class IfcRelAssociatesProfileDef : IfcRelAssociates
|
||||
|
@ -568,7 +568,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
IfcPropertySetDefinition p = mDatabase.ParseXml<IfcPropertySetDefinition>(cn as XmlElement);
|
||||
if (p != null)
|
||||
AddRelated(p);
|
||||
RelatedPropertySets.Add(p);
|
||||
}
|
||||
}
|
||||
else if (string.Compare(name, "RelatingTemplate") == 0)
|
||||
|
|
|
@ -115,7 +115,7 @@ namespace GeometryGym.Ifc
|
|||
base.SetXML(xml, host, processed);
|
||||
xml.SetAttribute("SectionType", mSectionType.ToString().ToLower());
|
||||
xml.AppendChild(StartProfile.GetXML(xml.OwnerDocument, "StartProfile", this, processed));
|
||||
if(mEndProfile > 0)
|
||||
if(mEndProfile != null)
|
||||
xml.AppendChild(EndProfile.GetXML(xml.OwnerDocument, "EndProfile", this, processed));
|
||||
}
|
||||
}
|
||||
|
@ -344,12 +344,12 @@ namespace GeometryGym.Ifc
|
|||
xml.SetAttribute("TemplateType", mTemplateType.ToString().ToLower());
|
||||
setAttribute(xml, "PrimaryMeasureType", PrimaryMeasureType);
|
||||
setAttribute(xml, "SecondaryMeasureType", SecondaryMeasureType);
|
||||
if (mEnumerators > 0)
|
||||
if (mEnumerators != null)
|
||||
xml.AppendChild(Enumerators.GetXML(xml.OwnerDocument, "Enumerators", this, processed));
|
||||
if (mPrimaryUnit > 0)
|
||||
xml.AppendChild(mDatabase[mPrimaryUnit].GetXML(xml.OwnerDocument, "PrimaryUnit", this, processed));
|
||||
if (mSecondaryUnit > 0)
|
||||
xml.AppendChild(mDatabase[mSecondaryUnit].GetXML(xml.OwnerDocument, "SecondaryUnit", this, processed));
|
||||
if (mPrimaryUnit != null)
|
||||
xml.AppendChild((mPrimaryUnit as BaseClassIfc).GetXML(xml.OwnerDocument, "PrimaryUnit", this, processed));
|
||||
if (mSecondaryUnit != null)
|
||||
xml.AppendChild((mSecondaryUnit as BaseClassIfc).GetXML(xml.OwnerDocument, "SecondaryUnit", this, processed));
|
||||
setAttribute(xml, "Expression", Expression);
|
||||
if (mAccessState != IfcStateEnum.NOTDEFINED)
|
||||
xml.SetAttribute("AccessState", mAccessState.ToString().ToLower());
|
||||
|
@ -422,7 +422,7 @@ namespace GeometryGym.Ifc
|
|||
if (!double.IsNaN(mRefElevation))
|
||||
xml.SetAttribute("RefElevation", mRefElevation.ToString());
|
||||
setAttribute(xml, "LandTitleNumber", LandTitleNumber);
|
||||
if (mSiteAddress > 0)
|
||||
if (mSiteAddress != null)
|
||||
xml.AppendChild(SiteAddress.GetXML(xml.OwnerDocument, "SiteAddress", this, processed));
|
||||
}
|
||||
}
|
||||
|
@ -612,8 +612,8 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
else
|
||||
xml.SetAttribute("DestabilizingLoad", mDestabilizingLoad.ToString().ToLower());
|
||||
if (mCausedBy > 0)
|
||||
xml.AppendChild(mDatabase[mCausedBy].GetXML(xml.OwnerDocument, "CausedBy", this, processed));
|
||||
if (mCausedBy != null)
|
||||
xml.AppendChild(mCausedBy.GetXML(xml.OwnerDocument, "CausedBy", this, processed));
|
||||
}
|
||||
}
|
||||
public abstract partial class IfcStructuralActivity : IfcProduct
|
||||
|
@ -635,7 +635,7 @@ namespace GeometryGym.Ifc
|
|||
internal override void SetXML(XmlElement xml, BaseClassIfc host, Dictionary<string, XmlElement> processed)
|
||||
{
|
||||
base.SetXML(xml, host, processed);
|
||||
xml.AppendChild(mDatabase[mAppliedLoad].GetXML(xml.OwnerDocument, "AppliedLoad", this, processed));
|
||||
xml.AppendChild(mAppliedLoad.GetXML(xml.OwnerDocument, "AppliedLoad", this, processed));
|
||||
xml.SetAttribute("GlobalOrLocal", mGlobalOrLocal.ToString().ToLower());
|
||||
if (mAssignedToStructuralItem != null)
|
||||
xml.AppendChild(mAssignedToStructuralItem.GetXML(xml.OwnerDocument, "AssignedToStructuralItem", this, processed));
|
||||
|
@ -681,21 +681,21 @@ namespace GeometryGym.Ifc
|
|||
|
||||
if (mPredefinedType != IfcAnalysisModelTypeEnum.NOTDEFINED)
|
||||
xml.SetAttribute("PredefinedType", mPredefinedType.ToString().ToLower());
|
||||
if (mOrientationOf2DPlane > 0)
|
||||
xml.AppendChild(mDatabase[mOrientationOf2DPlane].GetXML(xml.OwnerDocument, "OrientationOf2DPlane", this, processed));
|
||||
if (mOrientationOf2DPlane != null)
|
||||
xml.AppendChild(mOrientationOf2DPlane.GetXML(xml.OwnerDocument, "OrientationOf2DPlane", this, processed));
|
||||
if (mLoadedBy.Count > 0)
|
||||
{
|
||||
XmlElement element = xml.OwnerDocument.CreateElement("LoadedBy", mDatabase.mXmlNamespace);
|
||||
xml.AppendChild(element);
|
||||
foreach (int item in mLoadedBy)
|
||||
element.AppendChild(mDatabase[item].GetXML(xml.OwnerDocument, "", this, processed));
|
||||
foreach (var item in mLoadedBy)
|
||||
element.AppendChild(item.GetXML(xml.OwnerDocument, "", this, processed));
|
||||
}
|
||||
if (mHasResults.Count > 0)
|
||||
{
|
||||
XmlElement element = xml.OwnerDocument.CreateElement("HasResults", mDatabase.mXmlNamespace);
|
||||
xml.AppendChild(element);
|
||||
foreach (int item in mHasResults)
|
||||
element.AppendChild(mDatabase[item].GetXML(xml.OwnerDocument, "", this, processed));
|
||||
foreach (var item in mHasResults)
|
||||
element.AppendChild(item.GetXML(xml.OwnerDocument, "", this, processed));
|
||||
}
|
||||
if (mSharedPlacement != null)
|
||||
xml.AppendChild(SharedPlacement.GetXML(xml.OwnerDocument, "SharedPlacement", this, processed));
|
||||
|
@ -716,8 +716,8 @@ namespace GeometryGym.Ifc
|
|||
internal override void SetXML(XmlElement xml, BaseClassIfc host, Dictionary<string, XmlElement> processed)
|
||||
{
|
||||
base.SetXML(xml, host, processed);
|
||||
if (mAppliedCondition > 0)
|
||||
xml.AppendChild(mDatabase[mAppliedCondition].GetXML(xml.OwnerDocument, "AppliedCondition", this, processed));
|
||||
if (mAppliedCondition != null)
|
||||
xml.AppendChild((mAppliedCondition as BaseClassIfc).GetXML(xml.OwnerDocument, "AppliedCondition", this, processed));
|
||||
}
|
||||
}
|
||||
public abstract partial class IfcStructuralConnectionCondition : BaseClassIfc //ABSTRACT SUPERTYPE OF (ONEOF (IfcFailureConnectionCondition ,IfcSlippageConnectionCondition));
|
||||
|
@ -734,7 +734,7 @@ namespace GeometryGym.Ifc
|
|||
setAttribute(xml, "Name", Name);
|
||||
}
|
||||
}
|
||||
public partial class IfcStructuralCurveAction : IfcStructuralAction // IFC4 SUPERTYPE OF(IfcStructuralLinearAction)
|
||||
public partial class IfcStructuralCurveAction
|
||||
{
|
||||
internal override void ParseXml(XmlElement xml)
|
||||
{
|
||||
|
@ -1062,7 +1062,7 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
base.SetXML(xml, host, processed);
|
||||
xml.AppendChild(SweptCurve.GetXML(xml.OwnerDocument, "SweptCurve", this, processed));
|
||||
if (mPosition > 0)
|
||||
if (mPosition != null)
|
||||
xml.AppendChild(Position.GetXML(xml.OwnerDocument, "Position", this, processed));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -105,9 +105,9 @@ namespace GeometryGym.Ifc
|
|||
setAttribute(xml, "Identifier", Identifier);
|
||||
setAttribute(xml, "Name", Name);
|
||||
setAttribute(xml, "Description", Description);
|
||||
if (mUnit > 0)
|
||||
xml.AppendChild(mDatabase[mUnit].GetXML(xml.OwnerDocument, "Unit", this, processed));
|
||||
if (mReferencePath > 0)
|
||||
if (mUnit != null)
|
||||
xml.AppendChild((mUnit as BaseClassIfc).GetXML(xml.OwnerDocument, "Unit", this, processed));
|
||||
if (mReferencePath != null)
|
||||
xml.AppendChild(ReferencePath.GetXML(xml.OwnerDocument, "ReferencePath",this,processed));
|
||||
}
|
||||
}
|
||||
|
@ -457,12 +457,12 @@ namespace GeometryGym.Ifc
|
|||
{
|
||||
string name = child.Name;
|
||||
if (string.Compare(name, "IfcParameterValue-wrapper") == 0)
|
||||
result.mIfcParameterValue = double.Parse(child.InnerText);
|
||||
result.ParameterValue = double.Parse(child.InnerText);
|
||||
else if (string.Compare(name, "IfcCartesianPoint") == 0)
|
||||
{
|
||||
IfcCartesianPoint p = db.ParseXml<IfcCartesianPoint>(child as XmlElement);
|
||||
if (p != null)
|
||||
result.mIfcCartesianPoint = p.mIndex;
|
||||
result.CartesianPoint = p;
|
||||
}
|
||||
}
|
||||
return result;
|
||||
|
@ -470,14 +470,14 @@ namespace GeometryGym.Ifc
|
|||
internal XmlElement getXML(XmlDocument doc, string name, Dictionary<string, XmlElement> processed, DatabaseIfc db)
|
||||
{
|
||||
XmlElement result = doc.CreateElement(name, db.mXmlNamespace);
|
||||
if (!double.IsNaN(mIfcParameterValue))
|
||||
if (!double.IsNaN(ParameterValue))
|
||||
{
|
||||
XmlElement element = doc.CreateElement("IfcParameterValue-wrapper", db.mXmlNamespace);
|
||||
element.InnerText = mIfcParameterValue.ToString();
|
||||
element.InnerText = ParameterValue.ToString();
|
||||
result.AppendChild(element);
|
||||
}
|
||||
if (mIfcCartesianPoint > 0)
|
||||
result.AppendChild(db[mIfcCartesianPoint].GetXML(doc, "", null, processed));
|
||||
if (CartesianPoint != null)
|
||||
result.AppendChild(CartesianPoint.GetXML(doc, "", null, processed));
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -85,7 +85,7 @@ namespace GeometryGym.Ifc
|
|||
XmlElement element = xml.OwnerDocument.CreateElement("Units", mDatabase.mXmlNamespace);
|
||||
xml.AppendChild(element);
|
||||
foreach (IfcUnit unit in Units)
|
||||
element.AppendChild(mDatabase[unit.Index].GetXML(xml.OwnerDocument, "", this, processed));
|
||||
element.AppendChild((unit as BaseClassIfc).GetXML(xml.OwnerDocument, "", this, processed));
|
||||
}
|
||||
}
|
||||
public partial class IfcUShapeProfileDef : IfcParameterizedProfileDef
|
||||
|
|
|
@ -31,18 +31,16 @@ namespace GeometryGym.STEP
|
|||
|
||||
public partial interface ISTEPEntity
|
||||
{
|
||||
int Index { get; }
|
||||
int StepId { get; }
|
||||
string StepClassName { get; }
|
||||
}
|
||||
[Serializable]
|
||||
public abstract partial class STEPEntity
|
||||
{
|
||||
[NonSerialized] internal int mIndex = 0;
|
||||
[NonSerialized] internal int mStepId = 0;
|
||||
[NonSerialized] internal List<string> mComments = new List<string>();
|
||||
|
||||
public int Index { get { return mIndex; } private set { mIndex = value; } }
|
||||
public int StepId { get { return mIndex; } private set { mIndex = value; } }
|
||||
public int StepId { get { return mStepId; } private set { mStepId = value; } }
|
||||
|
||||
protected static ConcurrentDictionary<string, Type> mSTEPTypes = new ConcurrentDictionary<string, Type>();
|
||||
protected static ConcurrentDictionary<string, ConstructorInfo> mConstructors = new ConcurrentDictionary<string, ConstructorInfo>();
|
||||
|
@ -66,7 +64,7 @@ namespace GeometryGym.STEP
|
|||
foreach (string c in mComments)
|
||||
comment += "/* " + c + " */\r\n";
|
||||
}
|
||||
return comment + (mIndex > 0 ? "#" + StepId + "= " : "") + StepClassName.ToUpper() + "(";
|
||||
return comment + (mStepId > 0 ? "#" + StepId + "= " : "") + StepClassName.ToUpper() + "(";
|
||||
}
|
||||
protected string StepLineSuffix()
|
||||
{
|
||||
|
|
|
@ -48,29 +48,29 @@ namespace GeometryGym.STEP
|
|||
public int LastKey() { return mObjects.Count == 0 ? 0 : mObjects.Last().Key; }
|
||||
|
||||
public int NextObjectRecord { set { mNextBlank = value; } }
|
||||
public virtual T this[int index]
|
||||
public virtual T this[int stepId]
|
||||
{
|
||||
get
|
||||
{
|
||||
T result = null;
|
||||
mObjects.TryGetValue(index, out result);
|
||||
mObjects.TryGetValue(stepId, out result);
|
||||
return result;
|
||||
}
|
||||
set
|
||||
{
|
||||
if (value == null)
|
||||
{
|
||||
if (mObjects.ContainsKey(index))
|
||||
mObjects.Remove(index);
|
||||
if (index < mNextBlank && index > 0)
|
||||
mNextBlank = index;
|
||||
if (mObjects.ContainsKey(stepId))
|
||||
mObjects.Remove(stepId);
|
||||
if (stepId < mNextBlank && stepId > 0)
|
||||
mNextBlank = stepId;
|
||||
return;
|
||||
}
|
||||
|
||||
mObjects[index] = value;
|
||||
if (index == mNextBlank)
|
||||
mObjects[stepId] = value;
|
||||
if (stepId == mNextBlank)
|
||||
mNextBlank = mNextBlank + 1;
|
||||
value.mIndex = index;
|
||||
value.mStepId = stepId;
|
||||
}
|
||||
}
|
||||
internal void appendObject(T o) { this[NextBlank()] = o; }
|
||||
|
|
|
@ -196,7 +196,7 @@ namespace GeometryGym.STEP
|
|||
else
|
||||
return "#" + link;
|
||||
}
|
||||
public static string ObjToLinkString(ISTEPEntity obj) { return obj == null ? "$" : "#" + obj.Index; }
|
||||
public static string ObjToLinkString(ISTEPEntity obj) { return obj == null ? "$" : "#" + obj.StepId; }
|
||||
public static string ListLinksToString(List<int> links)
|
||||
{
|
||||
if (links.Count == 0)
|
||||
|
|
|
@ -22,7 +22,6 @@
|
|||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
<LangVersion>6</LangVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
|
@ -32,27 +31,6 @@
|
|||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
<LangVersion>6</LangVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<OutputPath>bin\x64\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<DebugType>full</DebugType>
|
||||
<PlatformTarget>x64</PlatformTarget>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
|
||||
<OutputPath>bin\x64\Release\</OutputPath>
|
||||
<DefineConstants>TRACE;IFCMODEL IFCPARSE IFCEXPORTONLY GGDLL RHCOMM NOLISTS NOTREEVIEW NOFORMS</DefineConstants>
|
||||
<Optimize>true</Optimize>
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<PlatformTarget>x64</PlatformTarget>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
|
|
|
@ -90,7 +90,7 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcAxis1Placement : IfcPlacement
|
||||
{
|
||||
internal Vector3d AxisVector { get { return (mAxis > 0 ? Axis.Vector3d : Vector3d.XAxis); } }
|
||||
internal Vector3d AxisVector { get { return (mAxis != null ? Axis.Vector3d : Vector3d.XAxis); } }
|
||||
}
|
||||
public partial class IfcAxis2Placement2D : IfcPlacement, IfcAxis2Placement
|
||||
{
|
||||
|
|
|
@ -77,16 +77,16 @@ namespace GeometryGym.Ifc
|
|||
internal virtual Transform getScaleTransform() { return double.IsNaN(mScale) ? Rhino.Geometry.Transform.Identity : Rhino.Geometry.Transform.Scale(Point3d.Origin, mScale); }
|
||||
protected virtual Transform vecsTransform()
|
||||
{
|
||||
Vector3d vx = new Vector3d(1, 0, 0), vy = new Vector3d(0, 1, 0);
|
||||
Vector3d vx = Vector3d.XAxis, vy = Vector3d.YAxis;
|
||||
Transform tr = Rhino.Geometry.Transform.Identity;
|
||||
if (mAxis1 > 0)
|
||||
if (mAxis1 != null)
|
||||
{
|
||||
vx = Axis1.Vector3d;
|
||||
tr.M00 = vx.X;
|
||||
tr.M10 = vx.Y;
|
||||
tr.M20 = vx.Z;
|
||||
}
|
||||
if (mAxis2 > 0)
|
||||
if (mAxis2 != null)
|
||||
{
|
||||
vy = Axis2.Vector3d;
|
||||
}
|
||||
|
@ -115,7 +115,7 @@ namespace GeometryGym.Ifc
|
|||
}
|
||||
public partial class IfcCartesianTransformationOperator3D
|
||||
{
|
||||
internal Vector3d Axis3Vector { get { return (mAxis3 > 0 ? Axis3.Vector3d : Vector3d.ZAxis); } }
|
||||
internal Vector3d Axis3Vector { get { return (mAxis3 != null ? Axis3.Vector3d : Vector3d.ZAxis); } }
|
||||
protected override Transform vecsTransform()
|
||||
{
|
||||
Transform tr = base.vecsTransform();
|
||||
|
|
Загрузка…
Ссылка в новой задаче