CREATEROTATION Create the 3*3 matrix of a rotation. TRANS = createRotation(THETA); Returns the rotation corresponding to angle THETA (in radians) The returned matrix has the form : [cos(theta) -sin(theta) 0] [sin(theta) cos(theta) 0] [0 0 1] TRANS = createRotation(POINT, THETA); TRANS = createRotation(X0, Y0, THETA); Also specifies origin of rotation. The result is similar as performing translation(-X0, -Y0), rotation(THETA), and translation(X0, Y0). Example % apply a rotation on a polygon poly = [0 0; 30 0;30 10;10 10;10 20;0 20]; trans = createRotation([10 20], pi/6); polyT = transformPoint(poly, trans); % display the original and the rotated polygons figure; hold on; axis equal; axis([-10 40 -10 40]); drawPolygon(poly, 'k'); drawPolygon(polyT, 'b'); See also: transforms2d, transformPoint, createRotation90, createTranslation
Package: matgeom