File Exchange

image thumbnail

Compute 3D rotation matrix

version 1.0 (1.13 KB) by

Simplifies computation of 3D rotation matrices.

7 Downloads

Updated

No License

Given input:
r: angle to rotate, in rads
Axis: axis of rotation, defined as a 3point which connects to the origin.

Output:
3x3 Matrix R such that for an arbitrary point v, Rv is the point corresponding to v rotated around the Axis.

% example:
% rotate around a random direction a random amount and then back
% the result should be an Identity matrix

r = rand(4,1);
rotationmat3D(r(1),[r(2),r(3),r(4)]) * rotationmat3D(-r(1),[r(2),r(3),r(4)])

ans =

1.0000 0.0000 0.0000
0.0000 1.0000 0
0.0000 0 1.0000

%
% example2:
% rotate around z axis 45 degrees
Rtest = rotationmat3D(pi/4,[0 0 1])
Rtest =

0.7071 -0.7071 0
0.7071 0.7071 0
0 0 1.0000

Comments and Ratings (4)

Crandel

Tudor Donca

Tim Zaman

Excellent.

Mohammad

MATLAB Release
MATLAB 7.8 (R2009a)
Tags Add Tags

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video

Win prizes and improve your MATLAB skills

Play today