how to plot z=9-sqrt(x^2+y^2) inside the cylinder r=2?
10 次查看(过去 30 天)
显示 更早的评论
clear all;
syms x y;
xlabel('x');
ylabel('y');
zlabel('z');
[x,y] = meshgrid(-10:1:10,-10:1:10);
y=9-sqrt(x.^2+y.^2);
surf(x,y,x);
view([10 10 10]);
1 个评论
回答(2 个)
madhan ravi
2018-12-4
编辑:madhan ravi
2018-12-4
syms x y
ezsurf(9-sqrt(x.^2+y.^2));
axis([-10 10 -10 10 -10 10]) % you can limit the range here
hold on
fimplicit3(x^2+y^2==2^2)
view([10 10 10]);
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/198201/image.png)
KSSV
2018-12-4
编辑:KSSV
2018-12-4
% Mesh a cylinder
R = 2 ; % radius
h = 2. ; % height
m = 50 ;
n = 50 ;
% Discretizing the Height and Angle of the cylinder
nH = linspace(0,h,m) ;
nT = linspace(0,360.,n)*pi/180 ;
[H, T] = meshgrid(nH,nT) ;
% Convert grid to cylindrical coordintes
X = R*cos(T);
Y = R*sin(T);
Z = H ;
%
[x,y] = meshgrid(-R:0.1:R,-R:0.1:R);
z=h-sqrt(x.^2+y.^2);
surf(x,y,z);
hold on
surf(X,Y,Z)
xlabel('x');
ylabel('y');
zlabel('z');
view([10 10 10]);
YOu have to play with the second equation, so that it lies inside cylinder.
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!