X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=octave_packages%2Fnurbs-1.3.6%2Fvecroty.m;fp=octave_packages%2Fnurbs-1.3.6%2Fvecroty.m;h=3ac9370fab8ea9053260f39ca865be17ef09df10;hb=f5f7a74bd8a4900f0b797da6783be80e11a68d86;hp=0000000000000000000000000000000000000000;hpb=1705066eceaaea976f010f669ce8e972f3734b05;p=CreaPhase.git diff --git a/octave_packages/nurbs-1.3.6/vecroty.m b/octave_packages/nurbs-1.3.6/vecroty.m new file mode 100644 index 0000000..3ac9370 --- /dev/null +++ b/octave_packages/nurbs-1.3.6/vecroty.m @@ -0,0 +1,62 @@ +function ry = vecroty(angle) +% +% VECROTY: Transformation matrix for a rotation around the y axis. +% +% Calling Sequence: +% +% ry = vecroty(angle); +% +% INPUT: +% +% angle : rotation angle defined in radians +% +% OUTPUT: +% +% ry : (4x4) Transformation matrix. +% +% +% Description: +% +% Return the (4x4) Transformation matrix for a rotation about the y axis +% by the defined angle. +% +% The matrix is: +% +% [ cos(angle) 0 sin(angle) 0] +% [ 0 1 0 0] +% [ -sin(angle) 0 cos(angle) 0] +% [ 0 0 0 1] +% +% Examples: +% +% Rotate the NURBS line (0.0 0.0 0.0) - (3.0 3.0 3.0) by 45 degrees +% around the y-axis +% +% line = nrbline([0.0 0.0 0.0],[3.0 3.0 3.0]); +% trans = vecroty(%pi/4); +% rline = nrbtform(line, trans); +% +% See also: +% +% nrbtform +% +% Copyright (C) 2000 Mark Spink +% +% This program is free software: you can redistribute it and/or modify +% it under the terms of the GNU General Public License as published by +% the Free Software Foundation, either version 2 of the License, or +% (at your option) any later version. + +% This program is distributed in the hope that it will be useful, +% but WITHOUT ANY WARRANTY; without even the implied warranty of +% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +% GNU General Public License for more details. +% +% You should have received a copy of the GNU General Public License +% along with this program. If not, see . + +sn = sin(angle); +cn = cos(angle); +ry = [cn 0 sn 0; 0 1 0 0; -sn 0 cn 0; 0 0 0 1]; + +end