aboutsummaryrefslogtreecommitdiff
path: root/docs/source/operations/transformations/affine.rst
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@spatialys.com>2018-10-01 12:32:52 +0200
committerEven Rouault <even.rouault@spatialys.com>2018-10-01 21:31:51 +0200
commitfe29f8acdce81607c11a597f4bffc7ff61fa9c19 (patch)
tree5eb8696603b3b814e4aea7f686266fd72847f035 /docs/source/operations/transformations/affine.rst
parent1583a566a208d2451fb1acc8bcf16fbd8151983e (diff)
downloadPROJ-fe29f8acdce81607c11a597f4bffc7ff61fa9c19.tar.gz
PROJ-fe29f8acdce81607c11a597f4bffc7ff61fa9c19.zip
Add a affine transformation method, and make geogoffset as a particular case of it (fixes #535)
Diffstat (limited to 'docs/source/operations/transformations/affine.rst')
-rw-r--r--docs/source/operations/transformations/affine.rst123
1 files changed, 123 insertions, 0 deletions
diff --git a/docs/source/operations/transformations/affine.rst b/docs/source/operations/transformations/affine.rst
new file mode 100644
index 00000000..8b1681b3
--- /dev/null
+++ b/docs/source/operations/transformations/affine.rst
@@ -0,0 +1,123 @@
+.. _affine:
+
+================================================================================
+Affine transformation
+================================================================================
+
+.. versionadded:: 6.0.0
+
+The affine transformation applies translation and scaling/rotation terms on the
+x,y,z coordinates, and translation and scaling on the temporal cordinate.
+
++---------------------+----------------------------------------------------------+
+| **Alias** | affine |
++---------------------+----------------------------------------------------------+
+| **Domain** | 4D |
++---------------------+----------------------------------------------------------+
+| **Input type** | XYZT |
++---------------------+----------------------------------------------------------+
+| **output type** | XYZT |
++---------------------+----------------------------------------------------------+
+
+By default, the parameters are set for an identity transforms. The transformation
+is reversible unless the determinant of the sji matrix is 0, or `tscale` is 0
+
+
+Parameters
+################################################################################
+
+Optional
+-------------------------------------------------------------------------------
+
+.. option:: +xoff=<value>
+
+ Offset in X. Default value: 0
+
+.. option:: +yoff=<value>
+
+ Offset in Y. Default value: 0
+
+.. option:: +zoff=<value>
+
+ Offset in Z. Default value: 0
+
+.. option:: +toff=<value>
+
+ Offset in T. Default value: 0
+
+.. option:: +s11=<value>
+
+ Rotation/scaling term. Default value: 1
+
+.. option:: +s12=<value>
+
+ Rotation/scaling term. Default value: 0
+
+.. option:: +s13=<value>
+
+ Rotation/scaling term. Default value: 0
+
+.. option:: +s21=<value>
+
+ Rotation/scaling term. Default value: 0
+
+.. option:: +s22=<value>
+
+ Rotation/scaling term. Default value: 1
+
+.. option:: +s23=<value>
+
+ Rotation/scaling term. Default value: 0
+
+.. option:: +s31=<value>
+
+ Rotation/scaling term. Default value: 0
+
+.. option:: +s32=<value>
+
+ Rotation/scaling term. Default value: 0
+
+.. option:: +s33=<value>
+
+ Rotation/scaling term. Default value: 1
+
+.. option:: +tscale=<value>
+
+ Time scaling term. Default value: 1
+
+
+
+Mathematical description
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+.. math::
+ :label: formula
+
+ \begin{align}
+ \begin{bmatrix}
+ X \\
+ Y \\
+ Z \\
+ T \\
+ \end{bmatrix}^{dest} =
+ \begin{bmatrix}
+ xoff \\
+ yoff \\
+ zoff \\
+ toff \\
+ \end{bmatrix} +
+ \begin{bmatrix}
+ s11 & s12 & s13 & 0 \\
+ s21 & s22 & s23 & 0 \\
+ s31 & s32 & s33 & 0 \\
+ 0 & 0 & 0 & tscale \\
+ \end{bmatrix}
+ \begin{bmatrix}
+ X \\
+ Y \\
+ Z \\
+ T \\
+ \end{bmatrix}^{source}
+ \end{align}
+
+