How to plot such a complete figure by matlab. The hemisphere is $x^2+y62+z^2=4$ and the cylinder is $x^2+y^2=1$ with bases $z=0$ and $z=\sqrt{3}$

21 views (last 30 days)
How to plot such a complete figure by matlab. The hemisphere is $x^2+y62+z^2=4$ and the cylinder is $x^2+y^2=1$ with bases $z=0$ and $z=\sqrt{3}$
The code of hemisphere
R = 2;
[X,Y] = meshgrid(-2:.1:2);
Z = sqrt(R.^2 - X.^2 - Y.^2);
Z(imag(Z) ~= 0) = 0;
mesh(X,Y,Z);
  2 Comments

Sign in to comment.

Accepted Answer

KSSV
KSSV on 7 Jun 2022
I would go by parametric equations.
%% Sphere
R = 2 ;
th = linspace(0,2*pi) ;
phi = linspace(0,pi/2) ;
[T,P] = meshgrid(th,phi) ;
X1 = R*cos(T).*sin(P) ;
Y1 = R*sin(T).*sin(P) ;
Z1 = R*cos(P) ;
%% Cyclinder
R = 1 ;
H = sqrt(3) ;
th = linspace(0,2*pi);
h = linspace(0,H) ;
[T,H] = meshgrid(th,h) ;
X2 = R*cos(T);
Y2 = R*sin(T) ;
Z2 = H ;
mesh(X1,Y1,Z1,'FaceAlpha',0.5)
hold on
mesh(X2,Y2,Z2)
axis equal

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!