PDM-UG: Explicitly defined transformations between geometric models

From WikiSTEP

Jump to: navigation, search

This page belongs to the PDM Usage Guide.

Relationships between geometric models can be made modeled in an explicit manner by using instances of cartesian_transformation_operator.

The Instance Model: EXPRESS entities and attributes

The EXPRESS entities and attributes used to support the requirements of explicit definition of transformation between the elements of two representations is illustrated in Diagram 15, Diagram 16, and Diagram 17.

Image:Diagram_15_Explicit_Representation_of_a_Translation_Instance_Diagram.png
Diagram 15: Explicit Representation of a Translation Instance Diagram

The scale attribute with a positive value different from 1.0 allows uniform scaling in addition to translation or identity.

Image:Diagram_16_Explicit_Representation_of_a_Translation_with_Scaling_Instance_Diagram.png
Diagram 16: Explicit Representation of a Translation with Scaling Instance Diagram

An additional rotation or mirroring requires the definition of the three axis attributes. If all optional attributes are set, a composition of all kinds of transformation is possible.

Image:Diagram_17_Explicit_Representation_of_a_Translation_with_Rotation_Instance_Diagram.png
Diagram 17: Explicit Representation of a Translation with Rotation Instance Diagram

Cartesian transformation operator

Cartesian_transformation_operator defines a geometric transformation composed of translation and rotation. Mirroring and scaling should not be used in the context of representing the geometric equivalent for an assembly structure. There are two subtypes of cartesian_transformation_operator:

  • cartesian_transformation_operator_2d,
  • cartesian_transformation_operator_3d.

Attributes

  • The name attribute (inherited from supertype representation_item) provides a naming capability.
  • The name attribute (inherited from functionally_defined_transformation) provides a naming capability.
  • The description attribute can be used to provide optional further textual description.
  • The axis1 attribute is the X axis direction of the transformation target.
  • The axis2 attribute is the Y axis direction of the transformation target.
  • The local_origin attribute is the required translation specified as a cartesian point. The actual translation included in the transformation is from the geometric origin to the local origin.
  • The scale attribute is the scaling value specified for the translation.
  • The axis3 attribute is the Z axis direction of the transformation target.
  • The local_origin attribute is the required translation specified as a cartesian point. The actual translation included in the transformation is from the geometric origin to the local origin.
  • The scale attribute is the scaling value specified for the translation.
  • The axis3 attribute is the Z axis direction of the transformation target.


ENTITY cartesian_transformation_operator Attribute Population Remarks
representation_item.name type: label = string  
functionally_defined_transformation.name type: label = string  
description type: text = string OPTIONAL
axis1 type: entity = direction OPTIONAL
axis2 type: entity = direction OPTIONAL
local_origin type: entity = cartesian_point  
scale type: REAL OPTIONAL
axis3 type: entity direction OPTIONAL
Attribute specific to cartesian_transformation_operator_3d


A cartesian_transformation_operator_3d defines a geometric transformation composed of translation, rotation, mirroring and uniform scaling. Depending on what kind of transformation is implemented, certain optional attributes are required. With only local_origin given as an attribute, the transformation may be an identity or a translation.

===Preprocessor Recommendations=== A cartesian_transformation_operator is a subtype of geometric_representation_item, and has attributes populated with geometric entities. In consequence an instance of a cartesian_transformation_operator must be founded in (i.e., must exist as an element of) a shape_representation. It is thus recommended that the cartesian_transformation_operator be referenced as an item of the shape_representation that is the value of the attribute rep_2 of a shape_representation_relationship (e.g., the ‘parent’ shape_representation). In the context of an assembly, the rep_2 attribute points to the assembly definition as a target for the transformation of the component instance shape. This recommendation interprets the transformation to be part of the assembly shape rather than of the component shape.

===Postprocessor Recommendations=== None specified.

===Related Entities=== None specified

Personal tools