Draw partial spheroid include a spheroid
Ältere Kommentare anzeigen
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.
Akzeptierte Antwort
Weitere Antworten (2)
darova
am 19 Aug. 2019
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 Kommentare
KOU DU
am 19 Aug. 2019
darova
am 19 Aug. 2019
What format of data output should be?
KOU DU
am 19 Aug. 2019
KOU DU
am 21 Aug. 2019
KOU DU
am 21 Aug. 2019
darova
am 21 Aug. 2019
Use surf() to draw 1/8 of sphere and patch() to create a planes
KOU DU
am 21 Aug. 2019
darova
am 21 Aug. 2019
Are your shapes (sphere and ellispoid?) always centered? Are their centers in origin?
KOU DU
am 22 Aug. 2019
darova
am 22 Aug. 2019
Here we go
darova
am 22 Aug. 2019
Don't know how introduce 'p' parameter in that form
KOU DU
am 22 Aug. 2019
KOU DU
am 22 Aug. 2019
Abhisek Pradhan
am 7 Aug. 2019
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');
1 Kommentar
KOU DU
am 19 Aug. 2019
Kategorien
Mehr zu Surface and Mesh Plots finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


