org.h2gis.functions.spatial.affine_transformations

## Class ZAffineTransformation

- java.lang.Object
- - org.h2gis.functions.spatial.affine_transformations.ZAffineTransformation

All Implemented Interfaces:
  com.vividsolutions.jts.geom.CoordinateSequenceFilter, Cloneable

    public class ZAffineTransformation
    extends Object
    implements Cloneable, com.vividsolutions.jts.geom.CoordinateSequenceFilter

Applies a 3D affine transformation to a geometry. That means a rotation, scale and translate in a single step.

Author:
  Erwan Bocher

### Constructor Summary

Constructors
Constructor and Description
`ZAffineTransformation(double dx, double dy, double dz)` Populate the matrix element of the linear transformation used to rotate, scale, translate or shear in 3D a geometry.
`ZAffineTransformation(double m00, double m01, double m02, double m03, double m10, double m11, double m12, double m13, double m20, double m21, double m22, double m23)` Constructs a new transformation whose matrix has the specified values.

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `filter(com.vividsolutions.jts.geom.CoordinateSequence seq, int i)`
`boolean` `isDone()`
`boolean` `isGeometryChanged()`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### ZAffineTransformation

    public ZAffineTransformation(double m00,
                                 double m01,
                                 double m02,
                                 double m03,
                                 double m10,
                                 double m11,
                                 double m12,
                                 double m13,
                                 double m20,
                                 double m21,
                                 double m22,
                                 double m23)

Constructs a new transformation whose matrix has the specified values.

Parameters:
  `m00` - the entry for the [0, 0] element in the transformation matrix
  `m01` - the entry for the [0, 1] element in the transformation matrix
  `m02` - the entry for the [0, 2] element in the transformation matrix
  `m03` - the entry for the [0, 3] element in the transformation matrix
  `m10` - the entry for the [1, 0] element in the transformation matrix
  `m11` - the entry for the [1, 1] element in the transformation matrix
  `m12` - the entry for the [1, 2] element in the transformation matrix
  `m13` - the entry for the [1, 3] element in the transformation matrix
  `m20` - the entry for the [2, 0] element in the transformation matrix
  `m21` - the entry for the [2, 1] element in the transformation matrix
  `m22` - the entry for the [2, 2] element in the transformation matrix
  `m23` - the entry for the [2, 3] element in the transformation matrix

#### ZAffineTransformation

    public ZAffineTransformation(double dx,
                                 double dy,
                                 double dz)

Populate the matrix element of the linear transformation used to rotate, scale, translate or shear in 3D a geometry.

Parameters:
  `dx` -
  `dy` -
  `dz` -

### Method Detail

#### filter

    public void filter(com.vividsolutions.jts.geom.CoordinateSequence seq,
                       int i)

Specified by:
  `filter` in interface `com.vividsolutions.jts.geom.CoordinateSequenceFilter`

#### isDone

    public boolean isDone()

Specified by:
  `isDone` in interface `com.vividsolutions.jts.geom.CoordinateSequenceFilter`

#### isGeometryChanged

    public boolean isGeometryChanged()

Specified by:
  `isGeometryChanged` in interface `com.vividsolutions.jts.geom.CoordinateSequenceFilter`