Calculate perimeter of a shape using x,y coordinates input to an array

31 Ansichten (letzte 30 Tage)
LR
LR am 9 Mai 2021
Bearbeitet: LR am 11 Mai 2021
How can I find the perimeter of a shape using x,y coordinates input to an array. The code below adds up the number of sides of the shape instead of the length of the sides which is what I need. The equation for calculating the distance between each pair of x,y points is: sqrt((dataX(i)+1)-dataX(i))^2+((dataY(i)+1)-dataY(i))^2
Many thanks
numberOfCoordinates=input('Please input the number of coordinates:');
for i=1:1:numberOfCoordinates
dataX(i)=input('Please enter the X co-ordinate:')
dataY(i)=input('Please enter the Y co-ordinate:')
end
end
perimeter=0;
for i=1:1:numberOfCoordinates
x=((dataX(i)+1)-dataX(i))^2
y=((dataY(i)+1)-dataY(i))^2
answer=sqrt(sum(x,y))
perimeter=perimeter+answer
end

Antworten (1)

Matt J
Matt J am 9 Mai 2021
pgon=polyshape(dataX,dataY);
perimeter(pgon)
  5 Kommentare
Matt J
Matt J am 10 Mai 2021
You could just do
dataX(end+1)=dataX(1)
and similarly for dataY.
LR
LR am 11 Mai 2021
Bearbeitet: LR am 11 Mai 2021
How would I add that to my current code?
Thanks

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Elementary Polygons finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by