home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / octa21eb.zip / octave / SCRIPTS.ZIP / scripts.fat / quatern / qtrans.m < prev    next >
Text File  |  1999-04-29  |  438b  |  14 lines

  1. function v = qtrans(v,q)
  2. # function v = qtrans(v,q)
  3. # transform the unit quatern v by the unit quatern q;
  4. # v = [w x y z], q = transformation quatern
  5. # returns v = q*v/q
  6.  
  7. if(!is_vec(v) | length(v) != 4)
  8.   error(sprintf("qtrans: v(%d,%d) must be a quatern",rows(v),columns(v)))
  9. elseif(!is_vec(q) | length(q) != 4)
  10.   error(sprintf("qtrans: q(%d,%d) must be a quatern",rows(q),columns(q)))
  11. endif
  12.  
  13. v = qmult(q,qmult(v,qinv(q)));
  14.