Class TIfcProduct

Unit

Declaration

type TIfcProduct = class abstract(TIfcObject)

Description

Any object that relates to a geometric or spatial context.

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

Hierarchy

Overview

Methods

Public function BuildNode(const Mapping: TCastleIfcMapping): TTransformNode; override;
Published procedure AddMeshRepresentation( const Context: TIfcGeometricRepresentationContext; const Coordinates: array of TVector3; const Indexes: array of Integer);
Published procedure AddBoxRepresentation( const Context: TIfcGeometricRepresentationContext; const Box: TBox3D);
Published procedure SetRelativePlacement(const Translation: TVector3);

Properties

Published property ObjectPlacement: TIfcObjectPlacement read FObjectPlacement write FObjectPlacement;
Published property Representation: TIfcProductRepresentation read FRepresentation write FRepresentation;

Description

Methods

Public function BuildNode(const Mapping: TCastleIfcMapping): TTransformNode; override;

This item has no description.

Published procedure AddMeshRepresentation( const Context: TIfcGeometricRepresentationContext; const Coordinates: array of TVector3; const Indexes: array of Integer);

Add mesh representation to the given product.

The mesh is expressed as a set of 3D points (Coordinates) and indexes to these coordinates (Indexes) that determine polygons. The indexes are 0-based and can be separated by -1 to delimit polygons.

See examples/ifc/ for an example usage of this routine to define walls and floors.

Parameters
Context
Geometric representation context instance, usually TIfcProject.ModelContext (for 3D models) or TIfcProject.PlanContext (for 2D floor plans).
Published procedure AddBoxRepresentation( const Context: TIfcGeometricRepresentationContext; const Box: TBox3D);

Add box representation to the given product.

Right now, the Box is transformed into a proper mesh representation, so this is just equivalent to calling AddMeshRepresentation with the 8 box corners and proper indexes to define 6 box sides.

Published procedure SetRelativePlacement(const Translation: TVector3);

Move this product by given 3D translation. This sets ObjectPlacement to a new instance.

Properties

Published property ObjectPlacement: TIfcObjectPlacement read FObjectPlacement write FObjectPlacement;

Object coordinate system and placement of the product in space.

Published property Representation: TIfcProductRepresentation read FRepresentation write FRepresentation;

Representations of the product.


Generated by PasDoc 0.16.0-snapshot.