Save 3D surface output of "rotate" to variable
9 views (last 30 days)
Show older comments
Hey all,
I was thrilled to find the rotate function as I was coding up my own. However, I've come across a key issues I was hoping someone could help me with:
After applying the rotate function to a 3D surface, how do I save the output to a variable so that I can analyze it?
Any advice/comments are greatly appreciated. Basically, what I'm trying to do is alter topographic data so that the perspective above a certain point is normal to the surface and work with this perspective.
Many thanks.
0 Comments
Accepted Answer
Scott
on 12 Nov 2015
1 Comment
Mike Garrity
on 12 Nov 2015
That's right. The rotate function modifies the XData, YData, and ZData properties of the object you give it.
Just to be clear, you can skip all of the openfig and findall stuff on that page you linked to and simplify it down to something like this:
[x,y,z] = cylinder;
h = surf(x,y,z)
rotate(h,[0 1 0],30)
newx = h.XData;
newy = h.YData;
newz = h.ZData;
And if you'd ever like to go back to coding your own, you might find this post helpful. It gets into how you represent perspective when you do this type of transformation.
More Answers (0)
See Also
Categories
Find more on Surface and Mesh Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!