Plot of an ellipsoid
3 次查看(过去 30 天)
显示 更早的评论
Hello, I want to plot ellipsoid at some points whose coordinates are known to us. I know the magnitude of three axis and their orientation in horizontal plane (i.e. angle w.r.t to X axis) as well as elevation (i.e. vertical angle ). How i can plot the ellipsoid, please suggest.
0 个评论
采纳的回答
Johannes Fischer
2019-8-22
This submission on the File Exchange comprises a 'drawEllipsoid' function which requires central point, length of half axes and Euler angles. You might need to convert your known angles to Euler angles.
0 个评论
更多回答(1 个)
Bruno Luong
2019-8-22
编辑:Bruno Luong
2019-8-22
% If your principal axis are (3x1) P1, P2, P3 and half length are (scalars) h1, h2, h3
Q = [P1(:), P2(:), P3(:)];
Q = Q .* ([h1, h2, h3]./sqrt(sum(Q.^2,1)));
n = 41;
[x,y,z]=sphere(n);
xyz = Q*[x(:) y(:) z(:)]';
x = reshape(xyz(1,:),[n n]+1);
y = reshape(xyz(2,:),[n n]+1);
z = reshape(xyz(3,:),[n n]+1);
surf(x,y,z,'linestyle','none');
axis equal
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Earth and Planetary Science 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!