Verfasst am: 21.03.2011, 17:30
Titel: einfach animation bei plots
Hallo:)
habe ein problem:
ich hab ein paar plots erstellt und hab jetzt 4 bilder daraus erstellt.
Nun soll ich eine Animation draus basteln mit Matlab.
Nur hab ich keine Ahnung wie das gehen soll.
%4eck
x=[x1 x2]
y=[y1 y2] fill([12.513.513.512.5],[113.53.5],'g') hold on
plot(x,y,'k','LineWidth',2) axis([020020]) hold on
%arm_ausgangsposition
text(7,15,'\alpha=1.847 \beta=0.37487')
X1=8
X2=6.36
X3=10
Y1=1
Y2=6.77
Y3=1.99
X=[X1 X2 X3]
Y=[Y1 Y2 Y3] plot(X,Y,'LineWidth',2) hold on
r=0.55;x=8.11;y=1.16;
n=100;
alpha1=8.4;alpha2=6;
phi=linspace(alpha1,alpha2,n+10);
plot(x+r*cos(phi),y+r*sin(phi),'k') hold on
text(8.1,1.5,'\alpha') hold on
r=0.6;x=7.27;y=5.0;
n=100;
alpha1=4.3;alpha2=6;
phi=linspace(alpha1,alpha2,n+10);
plot(x+r*cos(phi),y+r*sin(phi),'k') hold on
text(7.0,5.3,'\beta') hold on
title('Roboterarm')
%__________________________________________
%arm_2.position text(7,15,'\alpha=2 \beta=0.7')
X1=8
X2=5.50311898
X3=10.9275518
Y1=1
Y2=6.45578456
Y3=3.89150528
X=[X1 X2 X3]
Y=[Y1 Y2 Y3] plot(X,Y,'LineWidth',2) hold on
r=0.55;x=8.0;y=1.16;
n=100;
alpha1=8.4;alpha2=6;
phi=linspace(alpha1,alpha2,n+10);
plot(x+r*cos(phi),y+r*sin(phi),'k') hold on
text(8.0,1.5,'\alpha') hold on
r=0.6;x=6.19;y=5.73;
n=100;
alpha1=4.6;alpha2=6.5;
phi=linspace(alpha1,alpha2,n+10);
plot(x+r*cos(phi),y+r*sin(phi),'k') hold on
text(6.0,5.8,'\beta') hold on
title('Roboterarm')
%_________________________________________
%arm_3.position text(7,15,'\alpha=1.4 \beta=1.4')
X1=8
X2=9.01980286
X3=14.6731369
Y1=1
Y2=6.91269838
Y3=4.90276948
X=[X1 X2 X3]
Y=[Y1 Y2 Y3] plot(X,Y,'LineWidth',2) hold on
r=0.5;x=8.37;y=1.16;
n=100;
alpha1=8.4;alpha2=6;
phi=linspace(alpha1,alpha2,n+10);
plot(x+r*cos(phi),y+r*sin(phi),'k') hold on
text(8.2,1.5,'\alpha') hold on
r=0.89;x=9.4;y=6.53;
n=100;
alpha1=6.2;alpha2=4.02;
phi=linspace(alpha1,alpha2,n+10);
plot(x+r*cos(phi),y+r*sin(phi),'k') hold on
text(9.3,6.2,'\beta') hold on
title('Roboterarm')
%____________________________________________
%arm_4.position text(7,15,'\alpha=0.95844 \beta=1.4734')
X1=8
X2=11.4487834
X3=15.9999218
Y1=1
Y2=5.90977528
Y3=1.999898246
X=[X1 X2 X3]
Y=[Y1 Y2 Y3] plot(X,Y,'LineWidth',2) hold on
r=0.5;x=8.61;y=1.154;
n=100;
alpha1=8.2;alpha2=6;
phi=linspace(alpha1,alpha2,n+10);
plot(x+r*cos(phi),y+r*sin(phi),'k') hold on
text(8.4,1.5,'\alpha') hold on
r=0.9;x=11.56;y=5.55;
n=100;
alpha1=3.8;alpha2=5.8;
phi=linspace(alpha1,alpha2,n+10);
plot(x+r*cos(phi),y+r*sin(phi),'k') hold on
text(11.36,5.3,'\beta') hold on
title('Roboterarm')
Unter Handle meine ich Zeiger auf Graphischen Objekt
z.B wenn man PLOT mit Rückgabewert aufruft, dann bekommt man handle zurück
Mit dem Handle kann man dann auf Eigenschaften des jeweiligen Objekts zugreifen.
Code:
% Aufruf mit Rückgabe, liefert Handle zurück
h=plot(1:5) % mit dem GET bekommt man eine Liste mit Objekt-Properties get(h)
% man kann auf einzelne Eigenschaften auch mit GET zugreifen get(h, 'XData')
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.