How to rotate a 3D object?

I have a 3D object which is reconstructed from stacks of images. 3D object size : 512 x 512 x 50 roughly.
how to rotate the angle theta and phi (spherical coordinate) ?
it seems embedded function rotate only can rotate on 2D image.
Is there a way to rotate the 3D image?
Actually , I wrote a code to rotate 2D image and tried to implement on 3D image. However, It did not work well.
Thanks !!
I attached a 3D image. you can tried any method that works on that kind of image.
thanks again

Answers (2)

Stalin Samuel
Stalin Samuel on 27 Dec 2014

1 Comment

How?Can you please be more specific? What I want is that I want to rotated the 3D image,3DMatrix by certain angle and save that. I am not asking to rotate the 3D image when viewing it.
What I need is The rotated Matrix data.

Sign in to comment.

Chad Greene
Chad Greene on 27 Dec 2014
rotate3d rotates the view, rotate rotates the object. The c-130 function uses rotate to set roll, pitch, and yaw of an airplane.

1 Comment

what is the meaning of "If h is an array of handles, all objects must be children of the same axes."
I tried to use rotate to rotate my 3D image.
rotate(3Dimage,[1 0 0],30,[30 30 30])
??? Error using ==> get
Invalid handle object.
Error in ==> rotate at 59
t = get(h(i),'type');
??? Error using ==> rotate at 33 H must contain axes children only.
some error exists.

Sign in to comment.

Asked:

on 27 Dec 2014

Commented:

on 28 Dec 2014

Community Treasure Hunt

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

Start Hunting!