Draw partial spheroid include a spheroid
显示 更早的评论
I want to draw 1/8 spheroid include a small spheroid and output the geometry for mesh. But my current coding always have discontinue in the cutting plan.

Can anyone help provide a idea of cutting the spheroid in 1/8 not for showing but get the data.
采纳的回答
更多回答(2 个)
darova
2019-8-19
Use patch() to generate planes
clc,clear
R = 10;
r = 3;
t = linspace(0,pi/2,20);
x = [r*cos(t) fliplr(R*cos(t))];
y = [r*sin(t) fliplr(R*sin(t))];
patch(x,y,x*0,'b')
hold on
patch(x,x*0,y,'b')
patch(x*0,x,y,'b')
hold off
alpha(0.5)
view(3)
13 个评论
KOU DU
2019-8-19
darova
2019-8-19
What format of data output should be?
KOU DU
2019-8-19
KOU DU
2019-8-21
KOU DU
2019-8-21
darova
2019-8-21
Use surf() to draw 1/8 of sphere and patch() to create a planes
KOU DU
2019-8-21
darova
2019-8-21
Are your shapes (sphere and ellispoid?) always centered? Are their centers in origin?
KOU DU
2019-8-22
darova
2019-8-22
Here we go
darova
2019-8-22
Don't know how introduce 'p' parameter in that form
KOU DU
2019-8-22
KOU DU
2019-8-22
Abhisek Pradhan
2019-8-7
Following code may be used as an alternative to draw a sphere. Theta and Phi can be varied to get the desired result.
R=10;
Phi=linspace(-pi,pi);
Theta=linspace(0,2*pi);
[Phi,Theta]=meshgrid(Phi,Theta);
Z=R*sin(Phi);
X=R*cos(Phi).*cos(Theta);
Y=R*cos(Phi).*sin(Theta);
hSurface = surf(X,Y,Z);
set(hSurface,'FaceColor',[0 0 1], 'FaceAlpha',0.5,'FaceLighting','gouraud','EdgeColor','none');
类别
在 帮助中心 和 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!


