Class TIfcFile
Unit
Declaration
type TIfcFile = class(TIfcPersistent)
Description
IFC file representation.
This class is not defined in the IFC standard, but it is consistent with how the IFC file is actually represented, in both STEP and JSON encodings. The file starts with some metadata (in STEP header, on JSON top-level object) and then follows the "data" which is TIfcProject instance.
Source: scene/load/ifc/castleifc_ifc_types.inc (line 103).
Hierarchy
- TObject
- TPersistent
- TComponent
- TIfcPersistent
- TIfcFile
Overview
Methods
| Protected | function WantsGlobalId: Boolean; virtual; |
| Protected | class function IfcClassName: String; virtual; |
| Public | constructor Create(AOwner: TComponent); override; |
| Public | destructor Destroy; override; |
| Public | function BuildNode(const Mapping: TCastleIfcMapping): TX3DRootNode; |
Properties
| Published | property GlobalId: String read FGlobalId write FGlobalId; |
| Public | property Project: TIfcProject read FProject write FProject; |
| Published | property EncodingType: String read FEncodingType write FEncodingType; |
| Published | property Version: String read FVersion write FVersion; |
| Published | property SchemaIdentifier: String read FSchemaIdentifier write FSchemaIdentifier; |
| Published | property OriginatingSystem: String read FOriginatingSystem write FOriginatingSystem; |
| Published | property PreprocessorVersion: String read FPreprocessorVersion write FPreprocessorVersion; |
| Published | property TimeStamp: String read FTimeStamp write FTimeStamp; |
Description
Methods
| Protected | function WantsGlobalId: Boolean; virtual; |
|
This item is declared in ancestor TIfcPersistent.
If Strictly following the spec, this should be only defined for TIfcRoot, because only IfcRoot has GlobalId. In reality, we need GlobalId at TIfcPersistent to load some files, and we sometimes need | |
| Protected | class function IfcClassName: String; virtual; |
|
This item is declared in ancestor TIfcPersistent. Name for the IFC standard, used in IFC files. By default, this is just ClassName with prefix 'T' removed. | |
| Public | constructor Create(AOwner: TComponent); override; |
|
This item has no description. | |
| Public | destructor Destroy; override; |
|
This item has no description. | |
| Public | function BuildNode(const Mapping: TCastleIfcMapping): TX3DRootNode; |
|
This item has no description. | |
Properties
| Published | property GlobalId: String read FGlobalId write FGlobalId; |
|
This item is declared in ancestor TIfcPersistent. Globally unique identifier for the object instance. Note: Not declared as TGUID, because TGUID cannot be published, but also we don't really need it: for our purposes, this identifier is just an arbitrary string. Note: IFC 4.3 specification puts this only at IfcRoot, not at every IFC class. But testcase https://github.com/buildingsmart-community/Community-Sample-Test-Files/blob/main/IFC%204.0.2.1%20(IFC%204)/ISO%20Spec%20archive/wall-with-opening-and-window.json (from IFC 4.0) shows this can be present at any IFC class, in particular TIfcGeometricRepresentationContext. In fact, TIfcGeometricRepresentationContext needs to have IFC JSON documentation says this, which seems to (unfortunately it is not unambiguous enough...) allow this at any IFC class: "Whereas the | |
| Public | property Project: TIfcProject read FProject write FProject; |
|
Project, always exactly one TIfcProject instance inside IFC file. May be temporarily | |
| Published | property EncodingType: String read FEncodingType write FEncodingType; |
|
This item has no description. | |
| Published | property Version: String read FVersion write FVersion; |
|
This item has no description. | |
| Published | property SchemaIdentifier: String read FSchemaIdentifier write FSchemaIdentifier; |
|
This item has no description. | |
| Published | property OriginatingSystem: String read FOriginatingSystem write FOriginatingSystem; |
|
This item has no description. | |
| Published | property PreprocessorVersion: String read FPreprocessorVersion write FPreprocessorVersion; |
|
This item has no description. | |
| Published | property TimeStamp: String read FTimeStamp write FTimeStamp; |
|
TODO: If ever necessary, convert this to TDateTime | |
Generated by PasDoc 0.17.0.snapshot.