How to rotate a 3D object?

38 views (last 30 days)
tabw
tabw on 27 Dec 2014
Commented: tabw on 28 Dec 2014
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
tabw
tabw on 27 Dec 2014
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
tabw
tabw on 28 Dec 2014
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.

Community Treasure Hunt

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

Start Hunting!