hier schon mal meine neue Idee:
- Ich erstelle alle 60° einen Kreisbogen, solange bis ich einen Kreis habe
- nach jedem Kreisbogen wird geprüft, ob er die Bediengung erfüllt
- falls ja --> grün, falls gerade noch --> gelb, falls nein --> rot
Code:
% Kreisbogenschleife function kreisbogen = getKreisbogen
r=20; %Radius
a=i+0; % Winkel Start
b=i+60; % Winkel Ende
x_m=0; % Mittelpunkt
y_m=0;
n=10; % Anzahl der Punkte
phi1=linspace(deg2rad(a),deg2rad(b),n);
phi2=linspace(0,2*pi,360);
x1=x_m+r*cos(phi1); % x Koordinaten
y1=y_m+r*sin(phi1); % y Koordinaten der Punkte des Segments
x2=x_m+r*cos(phi2);
y2=y_m+r*sin(phi2);
plot(x_m,y_m,'b');
hold on;
plot(x2,y2,':');
axis equal;
grid on;
werte =[1;0.5;0.8;0.9;1;0.85];
for k = 1:1:length(werte)
y = werte(k,1)
if y <= 0.8
kreisbogen = plot(x1,y1,'g-','LineWidth',2,'MarkerSize',8);
hold on
elseif y>=1
kreisbogen = plot(x1,y1,'r-','LineWidth',2,'MarkerSize',8);
hold on
else
kreisbogen = plot(x1,y1,'y-','LineWidth',2,'MarkerSize',8) hold on
% Kreisbogenschleife function kreisbogen = getKreisbogen
for k = 1:1:6
werte =[1.1;0.5;.9;2;0.5;.80];
y = werte(k,1)
r=20; %Radius
a=60*(k-1); % Winkel Start
b=60*k; % Winkel Ende
x_m=0; % Mittelpunkt
y_m=0;
n=2; % Anzahl der Punkte
phi1=linspace(deg2rad(a),deg2rad(b),n);
phi2=linspace(0,2*pi,360);
x1=x_m+r*cos(phi1); % x Koordinaten
y1=y_m+r*sin(phi1); % y Koordinaten der Punkte des Segments
x2=x_m+r*cos(phi2);
y2=y_m+r*sin(phi2);
plot(x_m,y_m,'rx');
hold on
plot(x2,y2,':');
axis equal;
grid on;
hold on
if y <= 0.8
kreisbogen = plot(x1,y1,'g-','LineWidth',2,'MarkerSize',8);
hold on
elseif y>=1
kreisbogen = plot(x1,y1,'r-','LineWidth',2,'MarkerSize',8);
hold on
else
kreisbogen = plot(x1,y1,'y-','LineWidth',2,'MarkerSize',8) hold on
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.