Returns a feature's orientation. This will have different possible return value, based on the input geometry type. Note that the orientation will always be no_orientation for any geometries not listed below.


If the input is an area geometry which fits the right-hand or left-hand rule, the attribute will be set to the value right_hand_rule or left_hand_rule, respectively. The attribute will not have a meaningful value for degenerate areas, such as areas with a figure-8 boundary, or areas that are actually a line or point.

The right-hand rule requires that, on a walk of the area's coordinates, the area is on the right-hand side. Thus, outer boundaries must be clockwise and inner boundaries must be counterclockwise. The opposite is true for the left-hand rule.


If the input is a surface geometry, where all parts of the surface are consistently oriented, the attribute will be set to the value valid_surface_orientation. If the parts are unoriented or inconsistent, the attribute will be set to the value no_orientation.


If the input is a solid geometry, where all of the normals point away from the interior of the solid, the attribute will be set to the value valid_solid_orientation. If all of the normals point towards the interior of the solid, the attribute will be set to the value reversed_solid_orientation. In all other cases, the attribute will be set to the value no_orientation.


If the input is an oriented point geometry, the point’s orientation is extracted as a 3x3 matrix representation, and the attribute set as a list of the matrix values, in row-major order. Aggregates and multipoints only have point orientation extracted if they contain a single oriented point.



Editing Transformer Parameters

Using a set of menu options, transformer parameters can be assigned by referencing other elements in the workspace. More advanced functions, such as an advanced editor and an arithmetic editor, are also available in some transformers. To access a menu of these options, click beside the applicable parameter. For more information, see Transformer Parameter Menu Options.

Defining Values

There are several ways to define a value for use in a Transformer. The simplest is to simply type in a value or string, which can include functions of various types such as attribute references, math and string functions, and workspace parameters. There are a number of tools and shortcuts that can assist in constructing values, generally available from the drop-down context menu adjacent to the value field.

Dialog Options - Tables

Transformers with table-style parameters have additional tools for populating and manipulating values.

FME Community

The FME Community is the place for demos, how-tos, articles, FAQs, and more. Get answers to your questions, learn from other users, and suggest, vote, and comment on new features.

Search for all results about the OrientationExtractor on the FME Community.