WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Problem bei Malab Programmierungsaufgabe

 

Hawk2004
Forum-Newbie

Forum-Newbie


Beiträge: 1
Anmeldedatum: 14.07.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.07.2014, 10:38     Titel: Problem bei Malab Programmierungsaufgabe
  Antworten mit Zitat      
Hallo,

ich habe folgendes Problem in Matlab zu lösen.

Kann mir einer das Programm machen?
Wäre super lieb!


Gruß

Aufgabe
Die Kardioide hat die Parametrisierung
x(t) = 2 cos(t) - cos(2t); y(t) = 2 sin(t) - sin(2t)
für t 2 [0; 2].
Sie entsteht, wenn man auf dem Einheitskreis einen weiteren Kreis mit Radius eins
abrollen lässt und einen Punkt P auf dessen Umfang verfolgt.
Erstellen Sie in MATLAB mit Hilfe der Befehle getframe und movie eine Animation,
die diesen Sachverhalt illustriert (vgl. http://en.wikipedia.org/wiki/Cardioid).

Zuletzt bearbeitet von Hawk2004 am 14.07.2014, 11:35, insgesamt einmal bearbeitet
Private Nachricht senden Benutzer-Profile anzeigen


Nras
Forum-Meister

Forum-Meister


Beiträge: 608
Anmeldedatum: 21.02.12
Wohnort: ---
Version: 7.12.0.635 (R2011a)
     Beitrag Verfasst am: 14.07.2014, 11:08     Titel:
  Antworten mit Zitat      
Hallo,

woran hapert es denn? Vermutlich sollst du diese Animation nachbauen: http://commons.wikimedia.org/wiki/File:EpitrochoidOn1.gif

Was hast du denn bisher probiert?
Grundsätzlich musst du ja nur den Mittelkreis zeichnen, dann n-mal den abrollenden Kreis zeichnen und da dann eine Verbindungslinie einzeichnen....
Als Ansatz mal folgendes:
Code:
t = linspace(0,2*pi);
% plot Basiskreis
plot(cos(t), sin(t),'b-'), hold on, axis([-3,3,-3,3])

% abrollender Kreis
ti = t(1);
x_m = 2*cos(ti);
y_m = 2*sin(ti);
h_mitte = plot(x_m,y_m,'ko','markerfacecolor','black'); % die Mitte
h_kreis = plot(cos(t) + x_m, sin(t) + y_m,'k-');    % der Kreisbogen

% Mitte und Kreisbogen aktualisieren
for ti = t
    x_m = 2*cos(ti);
    y_m = 2*sin(ti);
    set(h_mitte, 'xdata', x_m, 'ydata', y_m)    
    set(h_kreis, 'xdata',cos(t) + x_m, 'ydata', sin(t) + y_m)
    pause(0.1)
end


Da fehlen noch Linien und die getframe geschichte, aber hiervon kannst du weitermachen.

Viele Grüße,
Nras.
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

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.