Affine Transformation - MapInfo_Pro_Advanced - 2023

MapInfo Pro Advanced Help

Product type
Software
Portfolio
Locate
Product family
MapInfo
Product
MapInfo > MapInfo Pro
Version
2023
Language
English
Product name
MapInfo Pro Advanced
Title
MapInfo Pro Advanced Help
First publish date
2016
Last updated
2023-09-20
Published on
2023-09-20T15:00:50.875000

Affine transformation is a linear transformation which combines translation, scaling, rotation, and shearing. The Affine transformation preserves collinearity and ratios of distances which means all points lying on a straight line remain on a straight line, the midpoint of a line segment remains at the midpoint, and parallel lines remain parallel after transformation. However, it may not preserve angles between lines or distances between points.

Affine Transformation In GIS - Affine transformation is commonly used in GIS to transform maps between coordinate systems. When developing spatial databases for use in GIS, data may be provided on map sheets with unknown or inaccurate projections. You can use this transformation to adjust from an unknown coordinate system such as a local Mine Grid to UTM. The local Mine Grids can be translated to UTM by rotating around the X,Y and Z axes.

A minimum of 3 control points is required for affine transformation.

There are 4 Affine types (primitives):

Note: (x,y) is the location of the object before transformation and (u,v) is the location of the object after transformation.

  1. Rotation
    • origin is fixed, axes move (rotate about origin). The value of rotation should be in radian.
    • u = x cos(a) + y sin(a); v = -x sin(a) + y cos(a) (note: a is measured counterclockwise)
  2. Translation:
    • origin is moved, axes do not rotate.
    • u = x - a; v = y - b
    • origin is moved a units parallel to x, and b units parallel to y
  3. Shear
    • coordinate system is reversed.
    • to reverse y, but not x: u = x; v = c - y
    • This transformation is important for displaying images on video monitors as the default coordinate system has the origin in the upper left corner and coordinates which run across and down.
  4. Scaling
    • both origin and axes are fixed, scale changes.
    • u = cx; v = dy
    • e.g. if x and y are latitude and longitude, scaling of x and y may be different. If the scaling is different, the shape of the object will change.

In MapInfo Pro Advanced, you can use Affine transformation in any of the following ways:

  • By using 3 or more control points from which MapInfo Pro can analytically derieve the best transform that minimises the error at the control points.
  • By providing 9 matrix transformation parameters which are used to define the affine transformation coefficients.
  • By providing 6 Affine Coefficients (A to F).

The 9 parameters for Affine transformation are as follows.

  • Translate Source X (POX)
  • Translate Source Y (POY)
  • Shear X (SHX)
  • Shear Y (SHY)
  • Scale X (SX)
  • Scale Y (SY)
  • Rotation (Theta)
  • Translate to World X (WOX)
  • Translate to World Y (WOY)

The 6 Affine Coefficients are derived from these 9 matrix parameters using the following formulas.

Affine Coefficients Formula
A SX.cos(Theta) - SX.SHY .sin(Theta)
B SY .SHX.cos(Theta) - SY .sin(Theta)
C WOX - (POX*A+POY*B)
D SX.sin(Theta) + SX.SHY .cos(Theta)
E SY .SHX.sin(Theta) + SY .cos(Theta)
F WOY - (POX*D+POY*E)