Timing und Animationen
Zeit und Datum¶
CindyScript hat eine interne Uhr, die Zugriff auf das aktuelle Datum und die aktuelle Uhrzeit bietet. Die Uhr kann auch verwendet werden, um einige automatisierte Animationen zu synchronisieren. Darüber hinaus wird ein Operator bereitgestellt, der mit dem aktuellen Zeitstempel einer laufenden Animation oder Physiksimulation synchronisiert ist.
Auf Zeit zugreifen: time()¶
Beschreibung: Dieser Operator gibt eine Liste [h,m,s,ms] aus vier Ganzzahlen zurück. Die vier Werte entsprechen „Stunde", „Minute", „Sekunde", „Millisekunde" auf der Uhr des Computers.
Beispiel: Der folgende Code erzeugt eine einfache Uhr in einer Cinderella-Ansicht. Die Variable t enthält die Zeitinformationen. Der nachfolgende Code wird verwendet, um eine uhrähliche Zeichnung in der Ansicht zu erzeugen. Eine Hilfsfunktion p(w) wird definiert, die Punkte auf dem Einheitskreis erzeugt. Der Code muss im Abschnitt "Tick" von CindyScript platziert werden, damit er kontinuierlich ausgeführt wird.
t=time();
p(x):=[sin(2*pi*x),cos(2*pi*x)];
O=[0,0];
S=p(t_3/60)*4;
M=p(t_2/60)*5;
H=p((t_1*60+t_2)/(12*60))*3.5;
draw(O,S);
draw(O,M,size->2);
draw(O,H,size->3);
apply(1..12,draw(p(#/12)*5));
apply(1..60,draw(p(#/60)*5,size->1`;

drawtext`3,5),t);
Auf Datum zugreifen: date()¶
Beschreibung: Dieser Operator gibt eine Liste [y,m,d] aus drei Ganzzahlen zurück. Die drei Werte entsprechen „Jahr", „Monat" und „Tag" im Kalender des Computers.
Zeitstempel: seconds()¶
Beschreibung: Gibt die verstrichene Zeit seit der letzten Auswertung von resetclock() zurück. Die Zeit wird so skaliert, dass eine Einheit einer Sekunde entspricht. Die Auflösung der Zeit liegt auf der Millisekundenebene.
Zurücksetzen der internen Sekunden: resetclock()¶
Beschreibung: Setzt den Wert des Operators seconds() zurück.
Auf den Zeitstempel einer Simulation zugreifen: simulationtime()¶
Beschreibung: Dieser Operator gibt ein Handle zur laufenden Uhr zurück, die mit dem Fortschritt einer Animation oder Simulation synchronisiert ist.
Vorsicht: Dieser Operator ist noch experimentell.
Das Skript für eine bestimmte Zeit anhalten: wait(<real>)¶
Beschreibung: Stoppt die gesamte Skriptausführung für eine Anzahl von Millisekunden, wie durch den Parameter angegeben.
Beispiel: Der folgende Code erzeugt einen akustischen Klingelton.
Animationssteuerung¶
Starten der Animation: playanimation()¶
Beschreibung: Diese Anweisung startet die Animation. Auch Physiksimulationen in CindyLab hängen von laufenden Animationen ab.
Pausieren der Animation: pauseanimation()¶
Beschreibung: Diese Anweisung pausiert die Animation.
Stoppen der Animation: stopanimation()¶
Beschreibung: Diese Anweisung stoppt die Animation. Das Stoppen einer Animation führt auch dazu, dass die geometrischen Elemente in ihre ursprüngliche Position zurückgesetzt werden.
Diese Seite wurde automatisch mit KI (Claude) übersetzt und wartet noch auf Überprüfung.
→ Alle KI-übersetzten Seiten