## AffineTransformImage

AffineTransformImage() transforms an image as dictated by the affine matrix. It allocates the memory necessary for the new Image structure and returns a pointer to the new image.

The format of the AffineTransformImage method is:

      Image *AffineTransformImage(const Image *image,
        AffineMatrix *affine_matrix,ExceptionInfo *exception)

A description of each parameter follows:

##### image

The image.

##### affine_matrix

The affine matrix.

##### exception

Return any errors or warnings in this structure.

## RotateImage

RotateImage() creates a new image that is a rotated copy of an existing one. Positive angles rotate counter-clockwise (right-hand rule), while negative angles rotate clockwise. Rotated images are usually larger than the originals and have 'empty' triangular corners. X axis. Empty triangles left over from shearing the image are filled with the background color defined by member 'background_color' of the image. RotateImage allocates the memory necessary for the new Image structure and returns a pointer to the new image.

RotateImage() is based on the paper "A Fast Algorithm for General Raster Rotatation" by Alan W. Paeth. RotateImage is adapted from a similar method based on the Paeth paper written by Michael Halle of the Spatial Imaging Group, MIT Media Lab.

The format of the RotateImage method is:

      Image *RotateImage(const Image *image,const double degrees,
        ExceptionInfo *exception)

A description of each parameter follows.

##### image

The image.

##### degrees

Specifies the number of degrees to rotate the image.

##### exception

Return any errors or warnings in this structure.

## ShearImage

ShearImage() creates a new image that is a shear_image copy of an existing one. Shearing slides one edge of an image along the X or Y axis, creating a parallelogram. An X direction shear slides an edge along the X axis, while a Y direction shear slides an edge along the Y axis. The amount of the shear is controlled by a shear angle. For X direction shears, x_shear is measured relative to the Y axis, and similarly, for Y direction shears y_shear is measured relative to the X axis. Empty triangles left over from shearing the image are filled with the background color defined by member 'background_color' of the image.. ShearImage() allocates the memory necessary for the new Image structure and returns a pointer to the new image.

ShearImage() is based on the paper "A Fast Algorithm for General Raster Rotatation" by Alan W. Paeth.

The format of the ShearImage method is:

      Image *ShearImage(const Image *image,const double x_shear,
        const double y_shear,ExceptionInfo *exception)

A description of each parameter follows.

##### image

The image.

##### x_shear, y_shear

Specifies the number of degrees to shear the image.

##### exception

Return any errors or warnings in this structure.

Discourse Server • Mailing Lists • ImageMagick Studio