Drawing cross sectional views of a body using .mat file
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
hello,
I have this data of a cylinder
The first column is the length of each section in meters starting from 0 till the end of cylinder at 0.4960.
The second column is the outer diameter and the third column is the inner diameter.
I want to draw its cross sectional view on matlab.
I have this code
for i =1:1:1
MD(:,1) = MD(:,1)
a = size(MD,1);
for j =1:1:(a-1)
coord = MD(j:j+1,:);
rectangle('Position',[coord(1,1) 0 coord(2,1)-coord(1,1) coord(1,2)])
axis([0 0.2 0 0.02])
hold on
end
end
This code draws the rectangles but they are not correct I want to draw some thing like this
it should draw rectangles, but two rectangles for hollow cylinder and 1 for non hollow cylinder.
Does anyone knows?
3 Kommentare
Antworten (1)
Hrishikesh Borate
am 29 Dez. 2020
Hi,
I understand that you want to draw the cross-sectional view of a cylinder from the data in MD variable.
Following is an example code, upon which you can build up as per your requirements.
MD = [0, 0.0480, 0.0380;...
0.0255, 0.0480, 0.0210;...
0.0770, 0.0660, 0.0210;...
0.1120, 0.0600, 0.0210;...
0.1880, 0.0600, 0.0210;...
0.2030, 0.0600, 0.0350;...
0.3040, 0.0480, 0.0350;...
0.4130, 0.0480, 0.0380;...
0.4960, 0.0480, 0.0380];
[x1, y1, z1] = cylinder(MD(:,2));
[x2, y2, z2] = cylinder(MD(:,3));
z = MD(:,1).*ones(1,21);
halfPts = floor(length(x1)/2);
surf(x1(:,1:halfPts), y1(:,1:halfPts), z(:,1:halfPts));
hold on;
surf(x2(:,1:halfPts), y2(:,1:halfPts), z(:,1:halfPts));
hold off;
0 Kommentare
Siehe auch
Kategorien
Mehr zu Point Cloud Processing finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!