Commit 1c383a02 authored by Han Liang's avatar Han Liang

neu von han

parent e5a368ea
function bestWeg(start,ziel,GUs)%Start and Ziel sind beide vector oder matrix mit einer zeile und drei spalten
%UNTITLED Summary of this function goes here
% Detailed explanation goes here
global standort(1,1,1)=2;%das erste Punkt ist start Punkt, klar wird das auf dem zweiten Page gespeichert.
standort(1,:,2)=start;
zeile=1;
page=2;
startpunkt=standort(zeile,:,page);
while startpunkt~=ziel %% Endbedingung nicht perfekt, oder bei der Testfunktion die Ausnahme, u.z. der UAV sich ganz nah von Ziel befindet, braucht UAV nur dahin direkt fliegen
while startpunkt~=ziel%% Endbedingung nicht perfekt, oder bei der Testfunktion die Ausnahme, u.z. der UAV sich ganz nah von Ziel befindet, braucht UAV nur dahin direkt fliegen
%%if Bedinggung, test,ob UAV sehr nah von ziel ist.!!!!!!!!!!!!!!!!!!!!!
if(distance(startpunkt,ziel)<10)%ich nehme an, wenn das Distanz zwischen UAV und Ziel weniger als 10 Meter ist, darf UAV direkt hinzu fliegen.
startpunkt=ziel;
else
%%startpunkt=standort(zeile,:,page);%%ob du startpunkt erneust???
zeile=zeile+1;
index=2;
startpunkt=standort(zeile-1,:,page);
randPunkte=naechsteBereich(startpunkt);%ich nehme an, dass die Funktion von Anissa naechsteBereich heit.
for i=1:1:(length(randPunkte))
testPunkt=randPunkte(i,:);
neuGUs=sort_GU(GUs);
for j=1:1:(length(neuGUs))%ich nehme an dass GUs ein Matrix mit 3 Spalten ist.%% muss ich noch einbisschen verbessern
if test(testPunkt,neuGUs(j,:))==1% GUS ,die gefunden ,auf dem Page nach der TestPunkt hinzufgen
for i=1:1:(size(randPunkte,1))
testPunkt=randPunkte(i,:);
for j=1:1:(size(neuGUs,1))%ich nehme an dass GUs ein Matrix mit 3 Spalten ist.%% muss ich noch einbisschen verbessern
if test(testPunkt,neuGUs(j,:))==1
% GUS ,die gefunden ,auf dem Page nach der TestPunkt hinzufgen
standort(zeile,:,index)=testPunkt;
standort(zeile,4,index)=neuGUs(j,1);
standort(zeile,5,index)=neuGUs(j,2);
standort(zeile,6,index)=neuGUs(j,3);
index=index+1;
break;
break;%eins reicht schon.
end
end
end
if size(standort(zeile,:,2))~=[0,0]
if isempty(standort(zeile,:,2))~=1
sort_standorte(zeile);%aber nur ab 2.Page sortieren lassen
standort(zeile-1,1,1)=2;
standort(zeile,1,1)=2;
startpunkt(1,1)=standort(zeile,1,2);
startpunkt(1,2)=standort(zeile,2,2);
startpunkt(1,3)=standort(zeile,3,2);
else
zeile=zeile-1;
page=page+1;
standort(zeile,1,1)=page;
startpunkt(1,1)=standort(zeile,1,page);
startpunkt(1,2)=standort(zeile,2,page);
startpunkt(1,3)=standort(zeile,3,page);
end
end
end
end
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment