SecondOrderConformer

Performs a second-order conformal transformation on the feature's geometry.  Depending on the input geometry, a 2D or 3D transformation is performed.  Transformed features are passed to the TRANSFORMED port.

The transformation results in the x and y coordinates being modified by:

x' = C + E(x-A) - F(y-B) + G((x-A)^2 - (y-B)^2) - 2H(x-A)(y-B)

y' = D + E(y-B) + F(x-A) + H((x-A)^2 - (y-B)^2) + 2G(x-A)(y-B)

z' = z + I

This transformation is non-linear. Thus, to maintain the integrity of the data, this transformer only performs transformations on the points defining geometries.  For example, a 4-point quadrilateral polygon will remain a 4-point polygon after transformation, although a pure transformation would convert its lines into curves.  If curve approximates from lines are desired, use a Densifier before this transformer.

Due to the non-linear nature of the transformation, true 3D geometries (such as Box and EnclosedSurface) are not supported by this transformer.  All true-3D geometries are passed to the INVALID port.

Each of the parameters may either be entered as a number, or can be taken from the value of a feature attribute by selecting the attribute name from the pull-down list.

FME Function or Factory Used

@SecondOrderConformal