IfcCartesianTransformationOperator2D

Natural language names
deKartesische Transformation - zweidimensional (2D)
enCartesian Transformation Operator2 D
frOpérateur 2D de transformation cartésienne
Change log
ItemSPFXMLChangeDescription
IFC4 Addendum 1
    IfcCartesianTransformationOperator2D
      ScaleMODIFIEDType changed from REAL to IfcReal.
Semantic definitions at the entity
Entity definition

An IfcCartesianTransformationOperator2D defines a geometric transformation in two-dimensional space.

NOTE  Definition according to ISO/CD 10303-42:1992
A Cartesian transformation operator 2d defines a geometric transformation in two-dimensional space composed of translation, rotation, mirroring and uniform scaling. The list of normalized vectors u defines the columns of an orthogonal matrix T. These vectors are computed from the direction attributes axis1 and axis2 by the base axis function. If |T|= -1, the transformation includes mirroring.
NOTE  Entity adapted from cartesian_transformation_operator_2d defined in ISO10303-42.
HISTORY  New entity in IFC2x.
Attribute definitions
#AttributeTypeCardinalityDescription C
U
:=IfcBaseAxis(2,SELF\IfcCartesianTransformationOperator.Axis1, SELF\IfcCartesianTransformationOperator.Axis2,?)
IfcDirectionL[2:2]The list of mutually orthogonal, normalized vectors defining the transformation matrix T. They are derived from the explicit attributes Axis1 and Axis2 in that order. X
Formal Propositions
RuleDescription
DimEqual2The coordinate space dimensionality of this entity shall be 2.
Axis1Is2DThe inherited Axis1 should have (if given) the dimensionality of 2.
Axis2Is2DThe inherited Axis2 should have (if given) the dimensionality of 2.
Inherited definitions from supertypes
Entity inheritance IfcCartesianTransformationOperator2DnonUniform IfcCartesianTransformationOperator IfcGeometricRepresentationItem IfcRepresentationItem
Attribute inheritance
#AttributeTypeCardinalityDescriptionC
IfcRepresentationItem
LayerAssignmentIfcPresentationLayerAssignment
@AssignedItems
S[0:1]Assignment of the representation item to a single or multiple layer(s). The LayerAssignments can override a LayerAssignments of the IfcRepresentation it is used within the list of Items. X
StyledByItemIfcStyledItem
@Item
S[0:1]Reference to the IfcStyledItem that provides presentation information to the representation, e.g. a curve style, including colour and thickness to a geometric curve. X
IfcGeometricRepresentationItem
IfcCartesianTransformationOperator
1Axis1IfcDirection[0:1] The direction used to determine U[1], the derived X axis direction.X
2Axis2IfcDirection[0:1] The direction used to determine U[2], the derived Y axis direction.X
3LocalOriginIfcCartesianPoint[1:1] The required translation, specified as a cartesian point. The actual translation included in the transformation is from the geometric origin to the local origin.X
4ScaleIfcReal[0:1] The scaling value specified for the transformation.X
Scl
:=NVL(Scale, 1.0)
IfcReal[1:1]The derived scale S of the transformation, equal to scale if that exists, or 1.0 otherwise. X
Dim
:=LocalOrigin.Dim
IfcDimensionCount[1:1]The space dimensionality of this class, determined by the space dimensionality of the local origin. X
IfcCartesianTransformationOperator2D
U
:=IfcBaseAxis(2,SELF\IfcCartesianTransformationOperator.Axis1, SELF\IfcCartesianTransformationOperator.Axis2,?)
IfcDirectionL[2:2]The list of mutually orthogonal, normalized vectors defining the transformation matrix T. They are derived from the explicit attributes Axis1 and Axis2 in that order. X
Formal representations
XSD Specification
 <xs:element name="IfcCartesianTransformationOperator2D" type="ifc:IfcCartesianTransformationOperator2D" substitutionGroup="ifc:IfcCartesianTransformationOperator" nillable="true"/>
 <xs:complexType name="IfcCartesianTransformationOperator2D">
  <xs:complexContent>
   <xs:extension base="ifc:IfcCartesianTransformationOperator"/>
  </xs:complexContent>
 </xs:complexType>
EXPRESS Specification
ENTITY IfcCartesianTransformationOperator2D
 SUPERTYPE OF(IfcCartesianTransformationOperator2DnonUniform)
 SUBTYPE OF (IfcCartesianTransformationOperator);
 DERIVE
  U : LIST [2:2] OF IfcDirection := IfcBaseAxis(2,SELF\IfcCartesianTransformationOperator.Axis1, SELF\IfcCartesianTransformationOperator.Axis2,?);
 WHERE
  DimEqual2 : SELF\IfcCartesianTransformationOperator.Dim = 2;
  Axis1Is2D : NOT(EXISTS(SELF\IfcCartesianTransformationOperator.Axis1)) OR (SELF\IfcCartesianTransformationOperator.Axis1.Dim = 2);
  Axis2Is2D : NOT(EXISTS(SELF\IfcCartesianTransformationOperator.Axis2)) OR (SELF\IfcCartesianTransformationOperator.Axis2.Dim = 2);
END_ENTITY;

Link to EXPRESS-G diagram EXPRESS-G diagram

Link to this page  Link to this page