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

25 ビュー (過去 30 日間)
LR
LR 2021 年 5 月 9 日
編集済み: LR 2021 年 5 月 11 日
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

回答 (1 件)

Matt J
Matt J 2021 年 5 月 9 日
pgon=polyshape(dataX,dataY);
perimeter(pgon)
  5 件のコメント
Matt J
Matt J 2021 年 5 月 10 日
You could just do
dataX(end+1)=dataX(1)
and similarly for dataY.
LR
LR 2021 年 5 月 11 日
編集済み: LR 2021 年 5 月 11 日
How would I add that to my current code?
Thanks

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeElementary Polygons についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by