# How to Draw a Pentagon or Polygon by Using Function

조회 수: 23(최근 30일)
Özgür Alaydin 2023년 3월 15일
댓글: Özgür Alaydin 2023년 3월 16일
Dear all,
I want to draw a pentagon and am using the code given below.
Vb is the height of the pentagon. X and Y are the limits of the coordinates in the given directions.
The problem is: when i plot i am getting the pentagon but lengths are not equal as shown in figure.
How can i get a regular pentagon?
Vb=250;
a=10; %% size of pentagon
polyg = 5;
Nx=50; Ny=50;
Mx=50; My=50;
x=linspace(-Mx/2,Mx/2,Nx);
y=linspace(-My/2,My/2,Ny);
[X,Y]=meshgrid(x,y);
f1 = (abs(X)<a*sind((polyg-2)*180/polyg));
f2 = (X*cotd(360/polyg)-a<Y)...
.* (-X*cotd(360/polyg)-a<Y)...
.* (-X*cotd(360/polyg)+a>Y);
fx = f1.*f2;
V0 = (1-fx)*Vb;
surf(X,Y,V0); 댓글을 달려면 로그인하십시오.

### 답변(1개)

Steven Lord 2023년 3월 15일
Why not just use nsidedpoly?
P = nsidedpoly(5);
plot(P);
axis equal ##### 댓글 수: 3표시 이전 댓글 수: 2숨기기 이전 댓글 수: 2
Özgür Alaydin 2023년 3월 16일
Not as i want because i will use integration after getting the coordinates of the pentagon.

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

### 범주

Find more on Elementary Polygons in Help Center and File Exchange

### Community Treasure Hunt

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

Start Hunting!