Class TIfcCompositeProfileDef
Unit
Declaration
type TIfcCompositeProfileDef = class(TIfcProfileDef)
Description
Defines profile by composition of other profiles.
Spec: https://standards.buildingsmart.org/IFC/RELEASE/IFC4_3/HTML/lexical/IfcCompositeProfileDef.htm
Source: scene/load/ifc/castleifc_ifc_standard_types.inc (line 1241).
Hierarchy
- TObject
- TPersistent
- TComponent
- TIfcPersistent
- TIfcProfileDef
- TIfcCompositeProfileDef
Overview
Methods
| Protected | function WantsGlobalId: Boolean; virtual; |
| Protected | class function IfcClassName: String; virtual; |
| Public | procedure UpdateCrossSection(const CrossSection: TVector2List; var CrossSectionConvex: Boolean; const ParentName: String); virtual; |
| Public | constructor Create(AOwner: TComponent); override; |
| Public | destructor Destroy; override; |
Properties
| Published | property GlobalId: String read FGlobalId write FGlobalId; |
| Published | property ProfileType: TIfcProfileTypeEnum read FProfileType write FProfileType; |
| Published | property ProfileName: TIfcLabel read FProfileName write FProfileName; |
| Published | property HasExternalReference: TIfcExternalReferenceRelationshipList read FHasExternalReference; |
| Published | property HasProperties: TIfcProfilePropertiesList read FHasProperties; |
| Published | property Profiles: TIfcProfileDefList read FProfiles; |
| Published | property Label: TIfcLabel read FLabel write FLabel; |
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 | procedure UpdateCrossSection(const CrossSection: TVector2List; var CrossSectionConvex: Boolean; const ParentName: String); virtual; |
|
This item is declared in ancestor TIfcProfileDef. Update CrossSection to be used by IfcExtrudedAreaSolid. In the base class, this makes a warning "not implemented". Override (and do not call "inherited") to provide a useful implementation. Source: scene/load/ifc/castleifc_ifc_standard_types.inc (line 1220). | |
| Public | constructor Create(AOwner: TComponent); override; |
|
This item has no description. Source: scene/load/ifc/castleifc_ifc_standard_types.inc (line 1246). | |
| Public | destructor Destroy; override; |
|
This item has no description. Source: scene/load/ifc/castleifc_ifc_standard_types.inc (line 1247). | |
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 | |
| Published | property ProfileType: TIfcProfileTypeEnum read FProfileType write FProfileType; |
|
This item is declared in ancestor TIfcProfileDef. Type of geometry into which this profile definition shall be resolved. Source: scene/load/ifc/castleifc_ifc_standard_types.inc (line 1224). | |
| Published | property ProfileName: TIfcLabel read FProfileName write FProfileName; |
|
This item is declared in ancestor TIfcProfileDef. Human-readable name of the profile. Source: scene/load/ifc/castleifc_ifc_standard_types.inc (line 1227). | |
| Published | property HasExternalReference: TIfcExternalReferenceRelationshipList read FHasExternalReference; |
|
This item is declared in ancestor TIfcProfileDef. Reference to external information, e.g. library, classification, or document information, which is associated with the profile. Source: scene/load/ifc/castleifc_ifc_standard_types.inc (line 1231). | |
| Published | property HasProperties: TIfcProfilePropertiesList read FHasProperties; |
|
This item is declared in ancestor TIfcProfileDef. Additional properties of the profile, for example mechanical properties. Source: scene/load/ifc/castleifc_ifc_standard_types.inc (line 1234). | |
| Published | property Profiles: TIfcProfileDefList read FProfiles; |
|
The profiles which are used to define the composite profile. Source: scene/load/ifc/castleifc_ifc_standard_types.inc (line 1250). | |
| Published | property Label: TIfcLabel read FLabel write FLabel; |
|
The name by which the composition may be referred. Source: scene/load/ifc/castleifc_ifc_standard_types.inc (line 1253). | |
Generated by PasDoc 0.17.0.snapshot.