Class TIfcProject

Unit

Declaration

type TIfcProject = class(TIfcContext)

Description

Context for information to be exchanged or shared, it may represent a construction project but does not have to.

Note that this initializes property Name to 'My Project', as the project name must be non-empty (at least for conversion scripts on https://github.com/buildingsmart-community/ifcJSON and https://github.com/michaliskambi/ifcJSON ). This is the same initial project name as used by BonsaiBIM.

Spec: https://standards.buildingsmart.org/IFC/RELEASE/IFC4_3/HTML/lexical/IfcProject.htm

Source: src/scene/load/ifc/castleifc_ifc_standard_types.inc (line 5084).

Hierarchy

Overview

Methods

Public constructor Create(AOwner: TComponent); override;
Public procedure SetupUnits;
Public function ModelContext: TIfcGeometricRepresentationContext;
Public function PlanContext: TIfcGeometricRepresentationContext;
Public procedure SetupModelContext;
Public function BestContainer: TIfcSpatialElement;

Description

Methods

Public constructor Create(AOwner: TComponent); override;

This item has no description.

Source: src/scene/load/ifc/castleifc_ifc_standard_types.inc (line 5086).

Public procedure SetupUnits;

Setup units, following metric system and radians. This matches glTF, X3D and CGE conventions.

Valid IFC project must have units defined. BonsaiBIM expects it. See also valid notes on https://stackoverflow.com/questions/51665572/required-data-for-ifc .

Source: src/scene/load/ifc/castleifc_ifc_standard_types.inc (line 5094).

Public function ModelContext: TIfcGeometricRepresentationContext;

Find a 3D TIfcGeometricRepresentationContext called "Model" in the project. This should be used to add all new 3D models to the project.

Returns Nil if not found, which can happen only temporarily when the IFC file is constructed – eventually, all valid IFC files should have a mandatory 3D context, see https://standards.buildingsmart.org/IFC/RELEASE/IFC4_3/HTML/lexical/IfcGeometricRepresentationContext.htm .

Call SetupModelContext to make sure this is non-nil.

Source: src/scene/load/ifc/castleifc_ifc_standard_types.inc (line 5105).

Public function PlanContext: TIfcGeometricRepresentationContext;

Find a 2D TIfcGeometricRepresentationContext called "Plan" in the project. This should be used to add new 2D plans to the project.

Returns Nil if not found. This is normal, 2D (plan) context is optional in IFC.

Source: src/scene/load/ifc/castleifc_ifc_standard_types.inc (line 5112).

Public procedure SetupModelContext;

Add a 3D geometric representation context named "Model" to the project, which should be used for models displayed in 3D view. Does not add it if the project already has a suitable 3D context with this name. Makes ModelContext non-nil.

Source: src/scene/load/ifc/castleifc_ifc_standard_types.inc (line 5118).

Public function BestContainer: TIfcSpatialElement;

Find TIfcSpatialElement where it seems most suitable to insert new elements. This is just a guess, a proper IFC editor should allow user to choose it, as there may be multiple valid choices (e.g. TIfcSite, TIfcBuilding, TIfcBuldingStorey).

Returns Nil if we cannot determine it.

Source: src/scene/load/ifc/castleifc_ifc_standard_types.inc (line 5126).


Generated by PasDoc 0.17.0.snapshot.