Lock axis for Rotate3D

2 views (last 30 days)
Hey,
Is it possible to lock specific axes for rotate3D?
This would be very helpful as I want to rotate my plots around the z axis only.

Accepted Answer

Alamanda Ponappa Poovaya
Alamanda Ponappa Poovaya on 2 Nov 2021
It is not possible to lock specific axis for rotate3D. However there is a workaround using the rotate function, using which you can fix the axis. Refer to the code snippet below as an example.
Rotate is not interactive, however by using the for loop as seen below, you can visualize rotation around any axis
% Sample plot
s = surf(peaks(20));
xlabel('x-axis')
ylabel('y-axis')
zlabel('z-axis')
% along z axis
direction = [0 0 1];
%rotate by 25 degrees
for i = 1:0.1:25
pause(0.2)
rotate(s,direction,i)
end
Documentation:
  1 Comment
Julius Schroers
Julius Schroers on 2 Nov 2021
Thanks alot!
Got multiple plots inside one figure and struggled looping with rotate.
Tried looping view() and for now im happy with something like that:
for ii=1:720
view(ii,0)
pause(0.2)
end

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!