How can i plot a hexagon, a triangle, a pentagon, an octagon and a circle.

23 visualizaciones (últimos 30 días)
What are the changes i need to make to this code to get a triangle, a pentagon, an octagon and a circle
% close all the open figure windows
close all
% create array containing 361 equally spaced points btw 0 and 2*pi
degrees = linspace(0, 2*pi, 361);
% store in the array 'c' cosine of all the values in the array 'degrees'
c = cos(degrees);
% store in the array 's' sine of all the values in the array 'degrees'
s = sin(degrees);
% calculate appropriate step size for plotting a hexagon
step = 360/6;
%plot the polygon
plot(c(1:step:361), s(1:step:361))
%set equal aspect ratio for all the axis
axis equal

Respuesta aceptada

Walter Roberson
Walter Roberson el 25 de Nov. de 2013
sides = input('har mycket sides?');
step = 360/sides;
  4 comentarios
John BG
John BG el 29 de Mzo. de 2016
the commands sind and cosd take degrees directly:
sides=6
deg=[0:1:361]
c=cosd(deg)
s=sind(deg)
step=360/sides
plot(c(1:step:361),s(1:step:361));axis equal
Shyam Agarwal
Shyam Agarwal el 19 de En. de 2021
How can we change the length of polygon

Iniciar sesión para comentar.

Más respuestas (1)

Image Analyst
Image Analyst el 3 de En. de 2022
@Shyam Agarwal, try nsidedpoly():
pgon1 = nsidedpoly(6);
pgon2 = nsidedpoly(6,'Center',[5 0],'SideLength',3);
plot([pgon1 pgon2])
axis equal

Categorías

Más información sobre Lighting, Transparency, and Shading en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by