www.pudn.com > calibr8.zip > quart.m
function rotmat = quart(rotAx, rotAng) %DEVELOPMENT PHASE % % rotmat = quart(rotAx, rotAng) % % computes rotation matrix of quarternions % % rotmat - rotation matrix % % rotAx - rotation axis [xr, yr, zr] % rotAng - rotation angle m1 = cos( rotAng/2 ); m2 = sin(( rotAng/2 ) * rotAx(1,1)); m3 = sin(( rotAng/2 ) * rotAx(1,2)); m4 = sin(( rotAng/2 ) * rotAx(1,3)); m = [m1, m2, m3, m4]' rotmat = [1 - 2*(m3^2 + m4^2), 2 * (m2*m3 + m1*m4), 2 * (m2*m4 - m1*m3); 2 * (m2*m3 - m1*m4), 1 - 2 * (m2^2 + m4^2), 2 * (m3*m4 + m1*m2); 2 * (m2*m4 + m1*m3), 2 * (m3*m4 - m1*m2), 1 - 2 * (m2^2 + m3^2) ]; rotmat = rotmat ./ vsize(m);