Documentation

This is machine translation

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

Note: This page has been translated by MathWorks. Please click here
To view all translated materals 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;

Introduced before R2006a

Was this topic helpful?