MATLAB Answers

Rotate 3D surface matrices

6 views (last 30 days)
I have three matrices for surf command: X, Y, Z. I need to rotate the matrices along z-axis by some degrees. I remember there is a matlab command for that (maybe from image processing toolbox), but I can't recall what is it. The command will make the size of matrices larger, with many zero elements in the four corners. Anyone knows what is the rotation command?

  0 Comments

Sign in to comment.

Accepted Answer

darova
darova on 21 Feb 2020
You can manually change data. Just use rotation matrix
a = 15; % angle rotation
R = [cosd(a) sind(a);-sind(a) cosd(a)];
V = R*[X(:) Y(:)]'; % rotate about Z axis
X1 = reshape(V(1,:),size(X)); % new data
Y1 = reshape(V(2,:),size(Y));
surf(X1,Y1,Z);

  1 Comment

Gifari Zulkarnaen
Gifari Zulkarnaen on 21 Feb 2020
I found the answer: imrotate command
But thanks anyway for the insight.

Sign in to comment.

More Answers (0)