Translation for an ellipsoid ?
2 次查看(过去 30 天)
显示 更早的评论
Is it possible to translate an ellipsoid after it is rotated. I have understood the usage of rotate function for doing this.
[a,b,c]=ellipsoid(axes_handle,0,0,0,sx(k),sy(k),sz(k),meshSize);
h2=surf(a,b,c);
rotate(h2,[1 0 0],phix_d);
However, there does not seem to exist a similar function for translation. Is there anyway to do this such that later on I need the coordinates of the rotated followed by translated ellipsoid.
1 个评论
Robbie Gaul
2015-12-5
Hi Sakshi,
Did you ever find a solution to this problem as I need to do the same thing?
Regards
回答(2 个)
Muhammad Zubair Sheikh
2019-6-10
Is there any solution to translate the ellipsoid?
3 个评论
John D'Errico
2019-6-10
Please don't add an answer to an old question just to ask a question.
Translating an ellipsoid is as trivial as adding a constant offset to x, y or z (or any combination thereof.)
Catalytic
2019-6-10
编辑:Catalytic
2019-6-10
Is there anyway to do this such that later on I need the coordinates of the rotated followed by translated ellipsoid.
You can do all manner of translations and rotations in combination with one another using makehgtform,
[x, y, z] = ellipsoid(0,0,0,5.9,3.25,3.25,30);
h=surf(x,y,z);
T = hgtransform('Parent',gca);
h.Parent=T;
T.Matrix=makehgtform('yrotate',pi/4,'translate',[-15 -10 0]);
axis vis3d
1 个评论
Muhammad Zubair Sheikh
2019-6-13
Thank you so much.
I however solved the problem by generating an ellipsoid at [0,0,0] and rotating its coordinates (X, Y, Z) with a rotation matrix and then adding some values to them for translation.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 3-D Scene Control 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!