8.18.3.14 IfcRigidOperation
8.18.3.14.1 Semantic definition
A rigid operation specifies an offset in the coordinate reference system. It does not specify any conversion or distortion. It is a coordinate operation that tells that the whole virtual model is translated in the same way. For example, using lengths to translate along x,y,z; or using angles for a 2D translation (e.g., lambda, phi), plus a change in height.
8.18.3.14.2 Entity inheritance
8.18.3.14.3 Attributes
| # | Attribute | Type | Description | 
|---|---|---|---|
| IfcCoordinateOperation (2) | |||
| 1 | SourceCRS | IfcCoordinateReferenceSystemSelect | 
 Source coordinate reference system for the operation.  | 
| 2 | TargetCRS | IfcCoordinateReferenceSystem | 
 Target coordinate reference system for the operation.  | 
| Click to show 2 hidden inherited attributes Click to hide 2 inherited attributes | |||
| IfcRigidOperation (3) | |||
| 3 | FirstCoordinate | IfcMeasureValue | 
 The first coordinate of the translation. Can be a length measure in case of map coordinates or a plane angle measure in case of geographic reference systems.  | 
| 4 | SecondCoordinate | IfcMeasureValue | 
 The second coordinate of the translation. Can be a length measure in case of map coordinates or a plane angle measure in case of geographic reference systems.  | 
| 5 | Height | OPTIONAL IfcLengthMeasure | 
 Translation above (positive) or below (negative) the coordinate surface.  | 
8.18.3.14.4 Formal propositions
| Name | Description | 
|---|---|
| SameCoordinateType | 
 Restricts the value type of FirstCoordinate and SecondCoordinate to IfcLengthMeasure or IfcPlaneAngleMeasure and asserts the same type is used for both.  | 
 | 
|
8.18.3.14.5 Examples
8.18.3.14.6 Formal representation
ENTITY IfcRigidOperation
 SUBTYPE OF (IfcCoordinateOperation);
	FirstCoordinate : IfcMeasureValue;
	SecondCoordinate : IfcMeasureValue;
	Height : OPTIONAL IfcLengthMeasure;
 WHERE
	SameCoordinateType : (('IFC4X3_ADD2.IFCLENGTHMEASURE' IN TYPEOF(FirstCoordinate)) AND ('IFC4X3_ADD2.IFCLENGTHMEASURE' IN TYPEOF(SecondCoordinate))) OR (('IFC4X3_ADD2.IFCPLANEANGLEMEASURE' IN TYPEOF(FirstCoordinate)) AND ('IFC4X3_ADD2.IFCPLANEANGLEMEASURE' IN TYPEOF(SecondCoordinate)));
END_ENTITY;
