Die Mathe-Redaktion - 18.12.2017 07:45 - Registrieren/Login
Auswahl
ListenpunktHome
ListenpunktAktuell und Interessant ai
ListenpunktArtikelübersicht/-suche
ListenpunktAlle Links / Mathe-Links
ListenpunktFach- & Sachbücher
ListenpunktMitglieder / Karte
ListenpunktRegistrieren/Login
ListenpunktArbeitsgruppen
ListenpunktSchwätz / Top 15
ListenpunktWerde Mathe-Millionär!
ListenpunktFormeleditor fedgeo
Schwarzes Brett
Aktion im Forum
Suche
Stichwortsuche in Artikeln und Links von Matheplanet
Suchen im Forum
Suchtipps

Bücher
Englische Bücher
Software
Suchbegriffe:
Mathematik bei amazon
Naturwissenschaft & Technik
In Partnerschaft mit Amazon.de
Kontakt
Mail an Matroid
[Keine Übungsaufgaben!]
Impressum

Bitte beachten Sie unsere Nutzungsbedingungen, die Distanzierung, unsere Datenschutzerklärung und
die Forumregeln.

Sie können Mitglied werden oder den Newsletter bestellen.

Der Newsletter Okt. 2017

Für Mitglieder
Mathematisch für Anfänger
Wer ist Online
Aktuell sind 382 Gäste und 6 Mitglieder online.

Sie können Mitglied werden:
Klick hier.

Über Matheplanet
 
Zum letzten Themenfilter: Themenfilter:
Matroids Matheplanet Forum Index
Moderiert von mire2 gaussmath
Mathematische Software & Apps » Matlab » Animation einer Sternkurve
Druckversion
Druckversion
Antworten
Antworten
Autor
Universität/Hochschule Animation einer Sternkurve
chako
Wenig Aktiv Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 21.10.2013
Mitteilungen: 82
Aus:
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Themenstart: 2017-02-17


Hallo Matroid-Gemeinde,

ich stehe vor einer Aufgabe, in der ich die Animation einer Sternkurve programmieren soll. Die Sternkurve entsteht, wenn man in einem Einheitskreis ein kleineren Kreis mit dem Radius 0,25 abrollen lässt und dabei einen P auf dessen Umfang verfolgt.

So sollte es aussehen.
hier


Wie fange denn da am besten an?

MfG chako



  Profil  Quote  Link auf diesen Beitrag Link
lula
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 17.12.2007
Mitteilungen: 10612
Aus: Sankt Augustin NRW
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.1, eingetragen 2017-02-17


Hallo
 a) direkt die Gleichung für die Astroide, (cos^3(t),sin^3(t) ) plotten für laufendes t
oder parametrisieren in dem du eben  die Epizycloide parametrisierst, das ist noch netter weil du dann mit demselben Programm auch andere Hypo und Epizykloiden hast, indem du nur den Radius des Rollkreises änderst.
bis dann lula


-----------------
Mein Leben ist zwar recht teuer,  aber dafür bekomm ich jedes Jahr umsonst eine Reise einmal um die Sonne



  Profil  Quote  Link auf diesen Beitrag Link
chako
Wenig Aktiv Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 21.10.2013
Mitteilungen: 82
Aus:
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.2, vom Themenstarter, eingetragen 2017-02-19


2017-02-17 18:41 - lula in Beitrag No. 1 schreibt:
Hallo
 a) direkt die Gleichung für die Astroide, (cos^3(t),sin^3(t) ) plotten für laufendes t
oder parametrisieren in dem du eben  die Epizycloide parametrisierst, das ist noch netter weil du dann mit demselben Programm auch andere Hypo und Epizykloiden hast, indem du nur den Radius des Rollkreises änderst.
bis dann lula

Vielen Dank für den Hinweis, habe es hinbekommen.

Jetzt stellt sich aber noch die Frage, wie ich den kleinen Kreis synchron zur Konstruktion der Sternkurve entlang des Einheitskreises bewegen lasse.
Irgendwelche Tipps?



  Profil  Quote  Link auf diesen Beitrag Link
majoka
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 25.02.2014
Mitteilungen: 717
Aus:
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.3, eingetragen 2017-02-20


Du musst dazu den kleinen Kreis nach jedem Schritt wieder löschen. Das geht mit dem Befehl "delete".
Matlab
clf
t = 0:0.05:2*pi;
t = [t 2*pi];
 
n = length(t);
 
a = 2;
 
x = a*cos(t).^3;
y = a*sin(t).^3;
 
figure(1)
plot(a*cos(t),a*sin(t)) % Kreis aussen
del = 0.2;
axis([-(a+del) a+del -(a+del) a+del])
axis equal
hold on
for i = 2 : n
    %plot(x(i),y(i),'r') %astroide
    line([x(i-1) x(i)], [y(i-1) y(i)],'color','r','linewidth',3.5)
    handle_circle_small = plot(a/4*cos(t)+a*3/4*cos(t(i)),a/4*sin(t)+a*3/4*sin(t(i))); % kleiner Kreis
    handle_line  = line([a*3/4*cos(t(i)) x(i)],[a*3/4*sin(t(i)) y(i)]); % Strich
    pause(0.05)
    delete(handle_circle_small)
    delete(handle_line)
end
hold off
 





  Profil  Quote  Link auf diesen Beitrag Link
chako
Wenig Aktiv Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 21.10.2013
Mitteilungen: 82
Aus:
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.4, vom Themenstarter, eingetragen 2017-02-20


2017-02-20 10:37 - majoka in Beitrag No. 3 schreibt:
Du musst dazu den kleinen Kreis nach jedem Schritt wieder löschen. Das geht mit dem Befehl "delete".
Matlab
clf
t = 0:0.05:2*pi;
t = [t 2*pi];
 
n = length(t);
 
a = 2;
 
x = a*cos(t).^3;
y = a*sin(t).^3;
 
figure(1)
plot(a*cos(t),a*sin(t)) % Kreis aussen
del = 0.2;
axis([-(a+del) a+del -(a+del) a+del])
axis equal
hold on
for i = 2 : n
    %plot(x(i),y(i),'r') %astroide
    line([x(i-1) x(i)], [y(i-1) y(i)],'color','r','linewidth',3.5)
    handle_circle_small = plot(a/4*cos(t)+a*3/4*cos(t(i)),a/4*sin(t)+a*3/4*sin(t(i))); % kleiner Kreis
    handle_line  = line([a*3/4*cos(t(i)) x(i)],[a*3/4*sin(t(i)) y(i)]); % Strich
    pause(0.05)
    delete(handle_circle_small)
    delete(handle_line)
end
hold off
 




Vielen Dank majoka, aber ich hab es schon anders gelöst.  biggrin



  Profil  Quote  Link auf diesen Beitrag Link
Frasier
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 13.03.2009
Mitteilungen: 1029
Aus:
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.5, eingetragen 2017-02-21


Hallo chako,

wie hast Du es gelöst?

lg
F.



  Profil  Quote  Link auf diesen Beitrag Link
Folgende Antworten hat der Fragesteller vermutlich noch nicht gesehen.
julian-apostata
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 24.04.2016
Mitteilungen: 48
Aus:
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.6, eingetragen 2017-03-18


Wenn's nur um den Punkt geht, der die Kurve zeichnen soll, dann reichen in "Geogebra" ganz locker 2 Befehle.

Schieber für α einrichten.

M=Drehe[(0.75, 0), α]
P=Drehe[M + (0.25, 0), -3α, M]

Man kann's noch auf die Spitze treiben und nur einen Befehl verwenden!

Drehe[Drehe[(0.75, 0), α] + (0.25, 0), -3α, Drehe[(0.75, 0), α]]

help.geogebra.org/topic/punkt-wird-nicht-im-kartesischen-koordinaten-angegeben

Grad erst seh ich: Es geht noch viel einfacher, wenn man Polarkoordinaten, statt kartesischer verwenden. Anstatt"," verwendet man ";"

M=(0.75; α)
P=M + (0.25; -3α)

oder

P=(0.75; α) + (0.25; -3α)



  Profil  Quote  Link auf diesen Beitrag Link
Neues Thema [Neues Thema] Antworten [Antworten]    Druckversion [Druckversion]

 


Wechsel in ein anderes Forum:
 Suchen    
 
All logos and trademarks in this site are property of their respective owner. The comments are property of their posters, all the rest © 2001-2017 by Matroids Matheplanet
This web site was made with PHP-Nuke, a web portal system written in PHP. PHP-Nuke is Free Software released under the GNU/GPL license.
Ich distanziere mich von rechtswidrigen oder anstößigen Inhalten, die sich trotz aufmerksamer Prüfung hinter hier verwendeten Links verbergen mögen.
Lesen Sie die Nutzungsbedingungen, die Distanzierung, die Datenschutzerklärung und das Impressum.
[Seitenanfang]