Class TIfcIndexedPolyCurve
Unit
Declaration
type TIfcIndexedPolyCurve = class(TIfcBoundedCurve)
Description
Bounded curve with only linear and circular arc segments defined by a Cartesian point list and an optional list of segments.
Spec: https://standards.buildingsmart.org/IFC/RELEASE/IFC4_3/HTML/lexical/IfcIndexedPolyCurve.htm
Source: scene/load/ifc/castleifc_ifc_standard_types.inc (line 1057).
Hierarchy
- TObject
- TPersistent
- TComponent
- TIfcPersistent
- TIfcRepresentationItem
- TIfcGeometricRepresentationItem
- TIfcCurve
- TIfcBoundedCurve
- TIfcIndexedPolyCurve
Overview
Methods
| Protected | function WantsGlobalId: Boolean; virtual; |
| Protected | class function IfcClassName: String; virtual; |
| Public | procedure UpdateCrossSection(const CrossSection: TVector2List; var CrossSectionConvex: Boolean); virtual; |
| Public | constructor Create(AOwner: TComponent); override; |
| Public | destructor Destroy; override; |
| Public | function BuildNode(const Mapping: TCastleIfcMapping; const ParentProduct: TIfcProduct; const LitAppearance, UnlitAppearance: TAppearanceNode): TAbstractChildNode; override; |
Properties
| Published | property GlobalId: String read FGlobalId write FGlobalId; |
| Published | property LayerAssignment: TIfcPresentationLayerAssignment read FLayerAssignment write FLayerAssignment; |
| Published | property StyledByItem: TIfcStyledItem read FStyledByItem write FStyledByItem; |
| Published | property Points: TIfcCartesianPointList_Spec read FPoints write FPoints; |
| Published | property Segments: TIfcSegmentIndexSelectList read FSegments; |
| Published | property SelfIntersect: Boolean read FSelfIntersect write FSelfIntersect default false; |
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); virtual; |
|
This item is declared in ancestor TIfcCurve. Update CrossSection to be used by IfcExtrudedAreaSolid. In the base class, this reuses BuildNode and extracts cross section information from a temporary node. Override to provide more optimized implementation. Set CrossSectionConvex to Source: scene/load/ifc/castleifc_ifc_standard_types.inc (line 934). | |
| Public | constructor Create(AOwner: TComponent); override; |
|
This item has no description. Source: scene/load/ifc/castleifc_ifc_standard_types.inc (line 1063). | |
| Public | destructor Destroy; override; |
|
This item has no description. Source: scene/load/ifc/castleifc_ifc_standard_types.inc (line 1064). | |
| Public | function BuildNode(const Mapping: TCastleIfcMapping; const ParentProduct: TIfcProduct; const LitAppearance, UnlitAppearance: TAppearanceNode): TAbstractChildNode; override; |
|
This item has no description. Showing description inherited from TIfcRepresentationItem.BuildNode.
Build a node to display this using Castle Game Engine. Returns
Source: scene/load/ifc/castleifc_ifc_standard_types.inc (line 1065). | |
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 LayerAssignment: TIfcPresentationLayerAssignment read FLayerAssignment write FLayerAssignment; |
|
This item is declared in ancestor TIfcRepresentationItem.
Assignment of the representation item to a single or multiple layer(s). Source: scene/load/ifc/castleifc_ifc_standard_types.inc (line 374). | |
| Published | property StyledByItem: TIfcStyledItem read FStyledByItem write FStyledByItem; |
|
This item is declared in ancestor TIfcRepresentationItem.
Reference to the IfcStyledItem that provides presentation information to the representation, e.g. a curve style, including colour and thickness to a geometric curve. Source: scene/load/ifc/castleifc_ifc_standard_types.inc (line 380). | |
| Published | property Points: TIfcCartesianPointList_Spec read FPoints write FPoints; |
|
Points defining the polyline. Source: scene/load/ifc/castleifc_ifc_standard_types.inc (line 1070). | |
| Published | property Segments: TIfcSegmentIndexSelectList read FSegments; |
|
List of straight line and circular arc segments, each providing a list of indices into the Cartesian point list. Source: scene/load/ifc/castleifc_ifc_standard_types.inc (line 1074). | |
| Published | property SelfIntersect: Boolean read FSelfIntersect write FSelfIntersect default false; |
|
Indication of whether the curve intersects itself or not; this is for information only. Source: scene/load/ifc/castleifc_ifc_standard_types.inc (line 1078). | |
Generated by PasDoc 0.17.0.snapshot.