Plot cylinder symmetry axis

조회 수: 3 (최근 30일)
gaetano mallardo
gaetano mallardo 2019년 1월 8일
댓글: Raj Gopal Mishra 2020년 7월 26일
I am using the function cylinder to generate a cylinder model. I would like to show the cylinder axis in my plot.
There is a function to rapidly plot the axis or i have to necessary build it and than plot ?
  댓글 수: 1
Raj Gopal Mishra
Raj Gopal Mishra 2020년 7월 26일
We can Also plot it with simple Circle patch repeating it for number of times till we get height.
theta=linspace(0,pi,100);
r=1.5; % radius
h=10; %height
x=r*cos(theta);
y=r*sin(theta);
z=zeros(size(x));
while z(1,1)<h,
patch([x -x], [y -y], [z z], 'r')
hold on
z=z+0.1;
end
hold off
view(3)

댓글을 달려면 로그인하십시오.

채택된 답변

Star Strider
Star Strider 2019년 1월 8일
I am not certain what you intend by ‘axis’.
If you just want a line through the axis of the cylinder, try this:
[X,Y,Z] = cylinder;
figure
surf(X, Y, Z)
hold on
plot3([0 0], [0 0], [-1 2], ':r', 'LineWidth',2)
hold off
grid on
Experiment to get the result you want.
  댓글 수: 2
gaetano mallardo
gaetano mallardo 2019년 1월 9일
Thank you for your answer, it was exactly what i was looking for, even if i realised there are more cylinder function. Anyway starting from your code i arrived to a solution.
What i was using it's:
model = cylinderModel(params)
Basing on your code i developed the same solution for my model class and i post it here in case it can help someone in future:
figure()
hold on
plot(model)
hold on
cilindro = model; % just name change
plot3([cilindro.Parameters(1,1) cilindro.Parameters(1,4)], ....
[cilindro.Parameters(1,2) cilindro.Parameters(1,5)], ...
[cilindro.Parameters(1,3) cilindro.Parameters(1,6)],...
':r', 'LineWidth',2)
Star Strider
Star Strider 2019년 1월 9일
As always, my pleasure.
For reference, the cylinderModel class (link) is part of the Computer Vision System Toolbox (link) that I do not have.
I added that and MATLAB to the ‘Products’ tags.

댓글을 달려면 로그인하십시오.

추가 답변 (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