Verfasst am: 04.10.2011, 18:58
Titel: Wie Matrix zeilenweise in einer Schleife füllen?
Hallo Forum,
wie kann ich eine Matrix zeilenweise innerhalb einer Schleife füllen?
Es geht darum Werte für den Befehl patch() in eine Matrix zu schreiben. Damit dieser Befehl mehrere Objekte (bei mir Kästchen) zeichnen kann, müssen die x-Werte der Eckpunkte in einer Matrix stehen, die y-Werte der Eckpunkte in einer zweiten. Wenn nun mehrere Objekte gezeichnet werden sollen, müssen die vier Eckpunkte eines Objektes in einer Zeile der Matrix stehen.
Wie kann ich in einer Schleife diese Matrix zeilenweise erweitern?
Damit kann ich den Vektor zwar immer weiter vollschreiben, aber halt keine Matrix erstellen, bei der bei jedem Aufruf eine neue Zeile erzeugt wird. Das bedeutet dann für den patch()-Befehl, dass er eine Fläche mit ganz vielen Eckpunkten erzeugt, statt vieler Objekte mit je 4 Ecken.
das sieht recht umständlich aus. Warum nimmst du nicht die Schleifenvariable j zur Hilfe? Wie man eine Matrix zeilenweise befüllt, sollte aus meinem Beispiel hervorgehen.
versuche es doch erst mal mit einem Patch?
Insbesondere solltest du, wenn du eine geschlossene Fläche möchtest, am Ende zum ersten Punkt zurückkehren, z.B.
ich habe mal eine Frage zum schreiben von Vektoren in andere Vektoren, wobei nur Teilsummen in den neuen Vektor geschrieben werden. Dies ist abhängig von einer Bedingung.
Aber hier ein Auszug aus dem Code:
Code:
Tage = 1
Zeilen = 1;
Spalten = 96;
Anfang = (Zeilen-1)*96+1 disp(Anfang);
Ende = (Zeilen-1)*96+Spalten*Tage
disp(Ende);
disp(Differenz = Ende-Anfang+1);
for i = Anfang:Ende
if value(i)>Schwellwert
Vektor = value(i)
mprintf('Wert für Vektor\n') disp(Vektor);
disp(i);
end
Nochmal konkret: Wie schaffe ich es den Vektor unter Einbehalt der Bedingungen mit den Werten von value nacheinander zu füllen, sodass ich am Ende der Schleife einen Vektor habe mit unbekannter Länge.
Vielen Dank im Voraus
Christian
Einstellungen und Berechtigungen
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.