8.18.3.5 IfcGeometricRepresentationSubContext
8.18.3.5.1 Semantic definition
IfcGeometricRepresentationSubContext defines the context that applies to several shape representations of a product being a sub context, sharing the WorldCoordinateSystem, CoordinateSpaceDimension, Precision and TrueNorth attributes with the parent IfcGeometricRepresentationContext.
The IfcGeometricRepresentationSubContext is used to define semantically distinguished representation types for different information content, dependent on the representation view and the target scale. It can be used to control the level of detail of the shape representation that is most applicable to this geometric representation context. In addition the sub context is used to control the later appearance of the IfcShapeRepresentation within a plot view.
Each IfcProduct can then have several instances of subtypes of IfcRepresentation, each being assigned to a different IfcGeometricRepresentationSubContext). The applicable values for the inherited ContextIdentifier attribute shall be identical to the RepresentationIdentifier attribute defined at IfcShapeRepresentation.
8.18.3.5.2 Entity inheritance
8.18.3.5.3 Attributes
# | Attribute | Type | Description |
---|---|---|---|
IfcRepresentationContext (3) | |||
IfcGeometricRepresentationContext (6) | |||
Click to show 9 hidden inherited attributes Click to hide 9 inherited attributes | |||
IfcGeometricRepresentationSubContext (8) | |||
7 | ParentContext | IfcGeometricRepresentationContext |
Parent context from which the sub context derives its world coordinate system, precision, space coordinate dimension and true north. |
8 | TargetScale | OPTIONAL IfcPositiveRatioMeasure |
The target plot scale of the representation to which this representation context applies. |
9 | TargetView | IfcGeometricProjectionEnum |
Target view of the representation to which this representation context applies. |
10 | UserDefinedTargetView | OPTIONAL IfcLabel |
User defined target view, this attribute value shall be given, if the TargetView attribute is set to USERDEFINED. |
5* | WorldCoordinateSystem | IfcAxis2Placement |
This attribute is formally derived.
|
3* | CoordinateSpaceDimension | IfcDimensionCount |
This attribute is formally derived.
|
6* | TrueNorth | IfcDirection |
This attribute is formally derived.
|
4* | Precision | IfcReal |
This attribute is formally derived.
|
8.18.3.5.4 Formal propositions
Name | Description | ||||
---|---|---|---|---|---|
NoCoordOperation |
An IfcCoordinateOperation shall not be provided to a geometric representation sub context, only to the parent geometric representation context. |
||||
|
|||||
ParentNoSub |
The parent context shall not be another geometric representation sub context. |
||||
|
|||||
UserTargetProvided |
The attribute UserDefinedTargetView shall be given, if the attribute TargetView is set to USERDEFINED. |
||||
|
8.18.3.5.5 Formal representation
ENTITY IfcGeometricRepresentationSubContext SUBTYPE OF (IfcGeometricRepresentationContext); ParentContext : IfcGeometricRepresentationContext; TargetScale : OPTIONAL IfcPositiveRatioMeasure; TargetView : IfcGeometricProjectionEnum; UserDefinedTargetView : OPTIONAL IfcLabel; DERIVE SELF\IfcGeometricRepresentationContext.WorldCoordinateSystem : IfcAxis2Placement := ParentContext.WorldCoordinateSystem; SELF\IfcGeometricRepresentationContext.CoordinateSpaceDimension : IfcDimensionCount := ParentContext.CoordinateSpaceDimension; SELF\IfcGeometricRepresentationContext.TrueNorth : IfcDirection := NVL(ParentContext.TrueNorth, IfcConvertDirectionInto2D(SELF\IfcGeometricRepresentationContext.WorldCoordinateSystem.P[2])); SELF\IfcGeometricRepresentationContext.Precision : IfcReal := NVL(ParentContext.Precision,1.E-5); WHERE NoCoordOperation : SIZEOF(SELF\IfcGeometricRepresentationContext.HasCoordinateOperation) = 0; ParentNoSub : NOT('IFC4X3_DEV_738df036.IFCGEOMETRICREPRESENTATIONSUBCONTEXT' IN TYPEOF(ParentContext)); UserTargetProvided : (TargetView <> IfcGeometricProjectionEnum.USERDEFINED) OR ((TargetView = IfcGeometricProjectionEnum.USERDEFINED) AND EXISTS(UserDefinedTargetView)) ; END_ENTITY;