Documentation

This is machine translation

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

Note: This page has been translated by MathWorks. Please click here
To view all translated materials including this page, select Japan 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;```

See Also

Topics

Introduced before R2006a

Was this topic helpful?

The Manager's Guide to Solving the Big Data Conundrum

Download white paper