How to divide the cylinder into layers and then measure the volume of each layer???

조회 수: 7 (최근 30일)
HI honorable members of matlab, i am trying to measure volume of cylinder using layers. I have measure the volume of cylinder using conhull function but i want to divide the the cylinder into layers having certain thickness. Then i want to measure volume of each layer or slice. The sum of volume of all layers should give me the same volume as a cylinder.
Thanks in advance for your cooperation and help.
h = 20; % height
ra = 5; % radius
% Create constant vectors
tht = linspace(0,2*pi,100)
z = linspace(0,h,20)
% Create cylinder
xa = repmat(ra*cos(tht),20,1)
ya = repmat(ra*sin(tht),20,1)
za = repmat(z',1,100)
% To close the ends
X = [xa*0; flipud(xa); (xa(1,:))*0]
Y = [ya*0; flipud(ya); (ya(1,:))*0]
Z = [za; flipud(za); za(1,:)]
% Draw cylinder
[TRI,v]= surf2patch(X,Y,Z,'triangle')
patch('Vertices',v,'Faces',TRI,'facecolor',[0.5 0.8 0.8],'facealpha',0.8)
view(3); grid on; axis square; title('Cylinder','FontSize',12)
%% Volume using convhull() function
[~,V]=convhull(X,Y,Z)
%% volume measure using the formula
volume_cylinder = pi * ra^2 * h

답변 (0개)

카테고리

Help CenterFile Exchange에서 Surface and Mesh Plots에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by