Documentation

### This is machine translation

Mouseover text to see original. Click the button below to return to the English version of the page.

To view all translated materials including this page, select Country from the country navigator on the bottom of this page.

# makehgtform

Create 4-by-4 transform matrix

## Syntax

```M = makehgtform M = makehgtform('translate',[tx ty tz]) M = makehgtform('scale',s) M = makehgtform('scale',[sx,sy,sz]) M = makehgtform('xrotate',t) M = makehgtform('yrotate',t) M = makehgtform('zrotate',t) M = makehgtform('axisrotate',[ax,ay,az],t) ```

## Description

Use `makehgtform` to create transform matrices for translation, scaling, and rotation of graphics objects. Apply the transform to graphics objects by assigning the transform to the `Matrix` property of a parent transform object.

`M = makehgtform ` returns an identity transform.

```M = makehgtform('translate',[tx ty tz])``` or M = makehgtform('translate',tx,ty,tz) returns a transform that translates along the x-axis by `tx`, along the y-axis by `ty`, and along the z-axis by `tz`.

`M = makehgtform('scale',s) `returns a transform that scales uniformly along the x-, y-, and z-axes.

`M = makehgtform('scale',[sx,sy,sz]) `returns a transform that scales along the x-axis by `sx`, along the y-axis by `sy`, and along the z-axis by `sz`.

`M = makehgtform('xrotate',t) `returns a transform that rotates around the x-axis by `t` radians.

`M = makehgtform('yrotate',t) `returns a transform that rotates around the y-axis by `t` radians.

`M = makehgtform('zrotate',t) `returns a transform that rotates around the z-axis by `t` radians.

`M = makehgtform('axisrotate',[ax,ay,az],t) `Rotate around axis `[ax ay az]` by `t` radians.

Note that you can specify multiple operations in one call to `makehgtform` and the MATLAB® software returns a transform matrix that is the result of concatenating all specified operations. For example,

`m = makehgtform('xrotate',pi/2,'yrotate',pi/2);`

is the same as

```mx = makehgtform('xrotate',pi/2); my = makehgtform('yrotate',pi/2); m = mx*my;```