How to generate points on the surface of an ellipsoid?
15 次查看(过去 30 天)
显示 更早的评论
I'm looking for a method or Matlab-function to generate some points (eg. equidistant points) on the surface of a ellipsoid. A good function to do this for a sphere is available by mySphere(N). Are there any idea to solve this problem? Thanks
0 个评论
回答(1 个)
Uday Pradhan
2021-1-12
编辑:Uday Pradhan
2021-1-12
Hi,
[x,y,z] = ellipsoid(0,-0.5,0,6,3.25,3.25);
will create an ellipsoid with centre at (0,-0.5,0) and has semi -axis length (6,3.25,3.25). Now, coming to the points on the surface:
You can utilize the x,y and z variables returned by the function. Basically,
[x(i,j),y(i,j),z(i,j)] %where 1<= i,j <= 21
is a point on the ellipsoid. The 21 faces restriction can be made finer by using an extra argument for "number of faces". I hope this helps!
1 个评论
Adam Danz
2021-1-12
编辑:Adam Danz
2021-1-12
I think this generates equidistant points along the longitudes and within each latitude but not between latitudes and the points definitely aren't equidistant.
[x,y,z] = ellipsoid(0,-0.5,0,6,3.25,3.25);
plot3(x,y,z,'o')
grid on
axis equal
view(2)
set(gca,'xtick',-6:6,'ytick',-4:4)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Surface and Mesh Plots 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!