Ich versuche ein Skript zu schreiben, das die Länge und Fläche eines Polygons mit Ginput berechnet. Also egal wie viele Punkte ich wähle, ich sollte die Fläche und Länge angezeigt bekommen. Ich habe zwei Funktionen erstellt, eine für die Berechnung der Fläche und eine für die Berechnung der Länge.Länge und Fläche des Polygons berechnen
Länge:
function L=polylen(x,y)
n=length(x);
L=0;
for i=1:n-1
L=L+sqrt((x(i+1)-x(i))^2+(y(i+1)-y(i))^2);
end
Gebiet:
function A=polyarea(x,y)
n=length(x);
A=0;
for i=1:n-1
A=A+(x(i+1)+x(i))*(y(i+1)-y(i));
end
A=abs(A)/2;
Mein Skript zum Plotten und Schließen des Polygons
clf
axis([0 1 0 1]), hold on
[x,y]=ginput(1);
plot(x,y,'o')
xpol=x;
ypol=y;
while 1
[x,y,knapp]=ginput(1);
if knapp~=1
break
end
xpol=[xpol;x];
ypol=[ypol;y];
plot(xpol(end-1:end),ypol(end-1:end),'o-')
end
xpol=[xpol;xpol(1)];
ypol=[ypol;ypol(1)];
plot(xpol(end-1:end),ypol(end-1:end),'o-')
hold off
Wie kann ich jetzt auf diese Funktionen aufrufen und integrieren sie in mein Skript, damit sie diese beiden Werte berechnen können?
Wie Sie in meinen Posts sehen können, sind die Funktionen bereits definiert. Im dritten Skript möchte ich nun diese Funktionen verwenden, um Fläche und Länge der Polygone zu berechnen. – Parseval
Ich habe es auf meine Art hinzugefügt, um es zu einem Text in der Handlung zu machen. Sie können die Ausgabe in Prompt oder einer anderen Methode verwenden. – Guto