## rotation3D

Versión 1.0.0 (1.45 KB) por
This function is a 3-Dimensional Rotation.This program performs the rotation of coordinates of an (x,y,z) figure by any angle.

10 descargas

Ver licencia

function [xx,yy,zz]=rotation3D(x,y,z,p,ang)
% Author && support : Amit Chakraborty
% This function is 3-Dimensional Rotaion.
% This program performs rotation of coordinates of an (x,y,z) by any angle.
% Any set of (x,y,z) data will be transformed to (xx,yy,zz) in the new rotated coordinates.
% Original and transformed data are plotted in blue and red respectively.
% p =1 ==> rotations around x-axis
% p =2 ==> rotations around y-axis
% p =3 ==> rotations around z-axis
% ang => amount of rotation. Just change with your requriement
%% Starting from below :
if p==1
xx = x;
yy = y*cos(ang)-z*sin(ang);
zz = z*cos(ang)+y*sin(ang);
elseif p==2
xx = x*cos(ang)+z*sin(ang);
yy = y;
zz = z*cos(ang)-x*sin(ang);
else
xx = x*cos(ang)-y*sin(ang);
yy = y*cos(ang)+x*sin(ang);
zz = z;
end
figure;
plot3(x,y,z);
title('Original Data vs Rotated Data')
hold ;
plot3(xx,yy,zz,'r');
legend('Original','Rotated')
hold off;
end

### Citar como

Amit Chakraborty (2023). rotation3D (https://www.mathworks.com/matlabcentral/fileexchange/113205-rotation3d), MATLAB Central File Exchange. Recuperado .

##### Compatibilidad con la versión de MATLAB
Se creó con R2022a
Compatible con cualquier versión