Transformation on ellipsoid
3 次查看(过去 30 天)
显示 更早的评论
I have defined an ellipsoid at origin with its centre and then rotated the ellipsoid followed by translation using hgtransform function. Below is the code that I have used. However, when I am trying to retrieve [x,y,z] after the transformations, the coordinates of the ellipsoid are remaining the same. What is the conceptual mistake that I am making here ?
[x,y,z]=ellipsoid(0,0,0,sx,sy,sz,meshSize);
h=surf(x,y,z);
t = hgtransform; % parent%
set(h,'Parent',t) % making the ellipsoid as the child
C=b*R'+ T; %matrices b, R abd T defined previously
set(t,'matrix',C) % this should do the transformation on ellipsoid
x=get(h,'xdata');
y=get(h,'ydata');
z=get(h,'zdata'); % but these x,y,z remain same ??
0 个评论
采纳的回答
Walter Roberson
2011-6-18
hgtransform() does not change the stored coordinates, only how the coordinates are processed for rendering.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Object Containers 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!