2016-05-10 4 views

Antwort

2

Aus MATLAB Dokumentation:http://www.mathworks.com/help/matlab/ref/polyarea.html


können Sie polyarea verwenden

Sintax

A = polyarea(X,Y) 
A = polyarea(X,Y,dim) 

Beschreibung

A = polyarea(X,Y) gibt den Bereich des Polygons zurück, der durch die Scheitelpunkte in den Vektoren X und Y angegeben wird.

Wenn X und Y Matrizen der gleichen Größe sind, dann kehrt polyarea den Bereich der Polygone durch die Spalten definiert X und Y.

Wenn X und Y mehrdimensionalen Arrays, dann liefert polyarea den Bereich der Polygone in der ersten Dimension der nonsingleton X und Y.

A = polyarea(X,Y,dim) arbeitet entlang der Dimension, die durch Skalar dim angegeben wird.

Beispiel

L = linspace(0,2.*pi,9); 
xv = 1.2*cos(L)'; 
yv = 1.2*sin(L)'; 

xv = [xv ; xv(1)]; 
yv = [yv ; yv(1)]; 

A = polyarea(xv,yv) 

// Result A = 4.0729 

plot(xv,yv); 
title(['Area = ' num2str(A)]) 
axis image 

enter image description here

+0

Es ist zu bevorzugen, dass Sie ein Beispiel nennen, die eher eine Frage an die OP relevanten ist als buchstäblich Kopieren/die Dokumentation MATLAB einfügen. – Suever

+0

Vielen Dank für Ihre Antwort, ich habe es versucht und es hat funktioniert, aber eigentlich denke ich, dass es keine Notwendigkeit für xv = [xv; xv (1)]; yv = [yv; yv (1)]; Danke – Soyol

+0

@Suever Es könnte helfen, ist es nicht? – nanilab

Verwandte Themen