how can i calculate a complex polygon with coordinates in matlab ?

조회 수: 5 (최근 30일)
ADNAN KIRAL
ADNAN KIRAL 2020년 10월 19일
댓글: ADNAN KIRAL 2020년 10월 19일
Hi,
how can I calculate A complex polygon in Matlab?
image shows what I need to calculate in Matlab. do you guys have any code for that ? or are there any Matlab command which can calculate it by coordinates?
thanks in advance
  댓글 수: 4
ADNAN KIRAL
ADNAN KIRAL 2020년 10월 19일
thanks for your reply.
calculation of the area !.
I have a large number of coordinates. If I can code it in Matlab. I will replace with my coordinates. So that I need to know how to calculate the area of such shape.
ADNAN KIRAL
ADNAN KIRAL 2020년 10월 19일
In fact, if i can type this equation, it will give the area.

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

채택된 답변

Ameer Hamza
Ameer Hamza 2020년 10월 19일
The equation in your comment can be written in MATLAB like this
A = 1/2*sum(x(1:end-1).*y(2:end)-y(1:end-1).*x(2:end));
  댓글 수: 7
Ameer Hamza
Ameer Hamza 2020년 10월 19일
You can try something like this
X;
Y;
A = zeros(1, numel(X)-2);
for i = 1:numel(A)
x = X(1:i+2);
y = Y(1:i+2);
A(i) = 1/2*sum(x(1:end-1).*y(2:end)-y(1:end-1).*x(2:end));
end

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

추가 답변 (2개)

Durganshu
Durganshu 2020년 10월 19일
You can use polyarea for accomplishing your task. The documentation is here:
Hope that helps!
  댓글 수: 1
ADNAN KIRAL
ADNAN KIRAL 2020년 10월 19일
thanks for reply.
one more question please ? how can I get coordinate vs. area ( at the end, I need to know how the area is increasing with coordinate change)
I have tried "cumsum" Matlab command, but it did not work. it gave the total area. thanks

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


Steven Lord
Steven Lord 2020년 10월 19일
If you want to do more than just compute its area I would use polyshape for that.
>> x = [7 7 5 3 -5 0 -8 2 -4];
>> y = [-7 3 -6 3 3 8 3 -3 -8];
>> P = polyshape(x, y);
>> plot(P)
There are a number of questions you can ask about a polyshape and a number of operations you can perform on one.

카테고리

Help CenterFile Exchange에서 Elementary Polygons에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by