for schleife < Matlab < Mathe-Software < Mathe < Vorhilfe
|
Hallo und einen guten Tag zusammen...
und zwar habe ich eine for schleife in einem m.file geschrieben....
for i=1:1:n,
bbbbllllaaaaa;
end;
jetzt möchte ich mit der Funktion ginput die for schleife rückwärts laufen lassen... wie kann ich das bewerkstelligen..???habe folgendes ausprobiert....
for i=1:1:n,
[x,y,a]=ginput(1);
bbbbbllllaaaaa;
if a==3, ?????;end;
%wenn man die rechte maustaste drückt soll die schleife rückwärts laufen...??
end;
danke für die hilfe
|
|
|
|
Hallo,
eine laufende for-Schleife kann man aus ihrem Inneren leider nicht mehr beeinflussen. Was aber geht ist folgende Lösung mit einer while-Schleife:
imax = 10; imin = 1; i = imin;
while((i>=imin) && (i<=imax)),
[x,y,mb] = ginput(1);
i = i+(2-mb);
end;
Gruß
Martin
|
|
|
|
|
ok alles klar...danke erstmal für die Hilfe...
Ich möchte jedoch einmal die rechte Maustaste drücken und dann soll die schleife nur noch rückwärts laufen, sobald ich dann die linke maustaste drücke soll die schleife wieder vorwärts laufen..ist das irgendwie machbar ?
kann ich eigentlich auch durch ne andere funktion das keyboard einlesen sodass ich vorwärts und rückwärts durch tasten steuern kann ? mir fiel nämlich gerade nichts besseres als ginput ein....
danke für deine hilfe
|
|
|
|
|
Hallo,
ich bin recht sicher, dass nichtblockierende Abfragen in Matlab nicht möglich sind. Das geht weder mit der Maus noch mit der Tastatur...
Gruß
Martin
|
|
|
|