how can i calculate a complex polygon with coordinates in matlab ?
5 次查看(过去 30 天)
显示 更早的评论
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
采纳的回答
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
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
2020-10-19
You can use polyarea for accomplishing your task. The documentation is here:
Hope that helps!
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 Center 和 File Exchange 中查找有关 Elementary Polygons 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!