Wie animiert man eine Fahrradkette?
Wir beziehen uns hier auf das vorherige Tutorial zur Animations eine abrollende Kette!
Zu Details der Animation siehe hier:
Eine abrollende Kette.
Detailiertere Informationen über die Geometrie siehe hier:
Externe Tangenten an zwei Kreise.
Mit Fahrradketten oder Motorradketten haben wir zwei zusätzliche Probleme:
Es gibt hier zwei Arten von Kettengliedern und der Zahnabstand ('pitch') ist ein vorgegebener Wert.
Wie verwendet man
alternierende Kettenglieder?
Zunächst benötigen wir eine
gerade Anzahl von Kettengliedern!
Sodann ersetzen wir die vorherige Deklaration von 'Link' durch etwas wie dies:
// --------- the chain links ----------
#declare Link_0 =
sphere{ <0,0,0>,0.0075
pigment{ color rgb<1,0.75,0>}}
#declare Link_1 =
sphere{ <0,0,0>,0.010
pigment{ color rgb<0.7,1,0>}}
//------------------------------------- |
Nun müssen wir zwischen diesen beiden Arten von Gliedern wechseln,
und zwar innerhalb der Schleife vor der Platzierung der Kettenglieder:
// --------- alternating links --------
union{ //------------------------------
#local Nr = 0; // start loop
#while (Nr < Link_N)
#local Pos = mod(Nr*Link_L+Ani,C_Len);
#if( Nr/2 = int(Nr/2))// even numbers
#local Link = object{ Link_0)};
#else // odd numbers
#local Link = object{ Link_1 };
#end //
// .... continue with loop .... |
Wie adaptiert man eine Kette an einen vorgegebenen Zahnabstand?
Bisher wurde der Zahnabstand (= Länge der Glieder vom Achse zu Achse) automatisch berechnet.
Wenn wir Kettenglieder mit einer vorgegebenen Gliederlänge einfügen wollen, müssen wir die Anzahl der Kettenglieder
und/oder die Geometrie der Kette (Radien der Kettenräder und/oder Abstand der Achsen) anpassen.
Nun, hier ist
eine Methode zur Adaption der Anzahl der Kettenglieder
und/oder der Geometrie der Kettenräder an einen vorgegebenen Zahnabstand:
Dank des rötlich gefärbten Teiles im folgenden Text können wir den Szenentext in POV-Ray starten
und auf der Message-Seite von POV-Ray etwas wie dieses lesen:
Von POV-Ray kalkulierter Pitch-Wert
Wenn dieser Wert nicht zur gewünschten Größe der Kettenglieder passt,
dann sollten wir unsere Kettengeometrie oder die verwendete (gerade!) Anzahl der Kettenglieder anpassen.
(Zur Demonstration wird das Makro Bike_Chain_Link_1 verwendet.)
// -------------- dimensions -----------
#local R1 = 0.08; // big wheel radius
#local R2 = 0.04; // small wheel radius
#local Dist = 0.25;// axis distance
#local Link_N = 72;// number of links
// -------------- calculations ---------
... like here:
'How to Make a Roller Chain'.
//--------------------------------------
#debug concat( "\n","pitch: ",
str(Link_L,12,8),"\n" )
#declare Real_Pitch = 0.01275612; //
//--------------------------------------
#include "Bike_Chain_Link_1.inc"
#macro CLink (LinkType_) // 0 or 1
object{ Bike_Chain_Link_1(
LinkType_,// 0= inner, 1= outer link
0.0127, // pitch, axis to axis
0.0051, // link radius y
0.0081, // cut radius
0.0032, // roller radius
0.0106, // link width z
0.0009, // steel thickness
0.0003, // tween thickness
0.00013,// border radius
) // -----------------------
scale Real_Pitch/0.0127
} // ----------------------------------
#end //-------------------- end of macro
//--------------------------------------
#local Ani=clock*Link_Len;// animation!
union{ //-------------------------------
#local Nr = 0; // start loop
#while (Nr < Link_N)
#local Pos = mod(Nr*Link_L+Ani,C_Len);
#if(Nr/2 = int(Nr/2)) // even numbers
#local Link = object{CLink(0)};
#else // odd numbers
#local Link = object{CLink(1)};
#end //------------------------------
//-------------------------------------
... The rest of the loop like here:
'Eine abrollende Kette'.
|
|
Eine Kette mit verschiedenen Kettengliedern!
Animierte Kette mit alternierenden Kettenglieder.
Eine Fahrradkette besteht aus zweierlei Kettengliedern!
Fahrradkette
Szenenbeschreibung für POV-Ray: "Bike_Chain_1.ini",
"Bike_Chain_1.pov" und
hier verwendet: "Bike_Chain_Link_1.inc"
Fahrradkette - Animation mit POV-Ray
Fahrradkette + Kettenräder
Animation mit POV-Ray
Betreffs Animationen von rollenden Fahrradketten siehe hier:
3D-Animations - Engineering.
|