3D Kerze

 

Die Kerze besteht aus mehreren Parameterflächen für die folgenden Komponenten:

  • Körper (Zylinder)
  • Kreisscheibe in obiger linker Animation bzw. flacher Kegel in obiger rechter Animation)
  • Docht (Zylinder)
  • Tropfen und Flamme.

Letztere werden mit der gleichen parametrischen Funktion erzeugt:

 

x = a (c - cos(u)) sin(u) cos(v)          

y = a (c - cos(u)) sin(u) sin(v)

z = b cos(u)

 

mit  u = 0, ..., π  und  v = 0, ..., 2 π.

 

Hierbei bestimmen für c = 1 die Parameter a die "Dicke" und b die Höhe. Für Werte von c > 1 entstehen Formen mit abgerundeten Spitzen, wie die folgenden Beispiele zeigen.

 

Modellierung der Flamme und Tropfen

Flamme/Tropfen mit

a = 0.4   b = 1.5   c = 1

Flamme Tropfen abgerundet

Flamme/Tropfen mit

a = 0.4   b = 1.5   c = 1.5

dicke Flamme Tropfen

Flamme/Tropfen mit

a = 0.8   b = 1.5   c = 1

dicke Flamme Tropfen abgerundet

Flamme/Tropfen mit

a = 0.8   b = 1.5   c = 1.5


Das "Tanzen" der Flamme wird erreicht, indem eine Variable t zeitlich animiert wird und das Produkt aus t und einer Zufallszahl (0...1, Funktion rand) zur x-/y-Komponente der Flamme addiert werden, welches einer waagerechten Verschiebung bezüglich der Dochtposition entspricht; zusätzlich wird die z-Koponente mit einer kleinen Zufallszahl multipliziert, wodurch die Flamme mehr oder weniger gestreckt wird.

 

Hier noch eine kleine Spielerei zum 3. Advent ...

Simulation brennender 3D Adventskerzen