Verfasst am: 08.09.2014, 13:19
Titel: "line" Funktion unterbrechen, mit einer anderen fo
Hallo Leute,
ich muss derzeit einen Verlauf in ein Diagramm zeichnen, indem auch Abbrüche von "line"-Funktionen notwendig sind. Der notwendige Teil des Programms ist:
Code:
for i=0:14 if f710Hz(a(2,7)-29,2)+i<f900Hz(a(2,8)-29,2); %Vergleich der y-Werte
x8 = f710Hz(a(2,7)-29,1):f900Hz(a(2,8)-29,1); %Bereich der x-Werte
T2 = [439.7896585.4245]; %Beispielpunkte für...
S2 = [335.1877406.3376]; %den Anstieg der Schrägen
m8 = (T2(2)-T2(1))/(S2(2)-S2(1))*(1); %Anstieg der Schrägen
n8 = f560Hz(a(2,7)-29,2)-m8*f710Hz(a(2,8)-29,1);
y8 = @(x8) m8*x8+n8; %Funktion der Schrägen
h = line(x8,y8(x8)); %Zeichnung der Schrägen
if f710Hz(a(2,7)-29,2)>f900Hz(a(2,8)-29,2); %Abbruchkriterium
%y8(x8)==f900Hz(a(2,8)-29,2) %Synonym für Abbruchk.
break end;
end;
set(h,'LineWidth',4.1) %Linie verbreitern
if y8(f900Hz(a(2,8)-29,1))>f900Hz(a(2,8)-29,2) %waagerechte Linie
h=line([f710Hz(a(2,8)-29,1),f900Hz(a(2,8)-29,1)],[f710Hz(a(2,8)-29,2),f710Hz(a(2,8)-29,2)]);
end;
Mein Problem ist es, dass die schräg einfallenden Linie dort enden müsste, bei dem sich die waagerechte befindet mit einem fließenden Übergang, sodass eine Ecke entsteht. Jedoch wird die Funktion nicht unterbrochen, sondern normal ausgeführt.
Ich schätze es liegt daran, dass nicht wirklich eine Schleife durchlaufen wird und nur eine simple Abfrage am Anfang, ob der eine Wert größer als der andere ist. Nun soll aber für den Fall, dass der eine Wert nicht mehr größer sondern kleiner als der andere ist, die Linienfunktion unterbrochen und mit der waagerechten Linienfunktion fort gefahren werden.
Zur Verdeutlichung habe ich noch eine Abbildung beigefügt, bei dem die gewollte Ecke zu erkennen ist, jedoch auch Weiterführung der Linien, die nicht gewollt sind.
Vielen Dank für eure Hilfe!
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.