3D Pyramide

 

... eine kleine Spielerei aus meiner Zeit der ersten Schrittemit Graphing Calculator 3D, die eindrucksvoll die Leistungsfähigkeit des Programms zeigt (s.u.).

 

Mit einer Variable level kann die Höhe der Pyramide zwischen 0 (löschen) und 6 eingestellt werden.

 

Pro Würfel mit der Kantenlänge 2 und seinem Mittelpunkt (xc, yc, zc) ist eine Funktion definiert (s. auch Spezielle 3D Flächen / Würfel):

 

f i (x, y, z, xc, yc, zc) = max (max (| x - 2 xc |, | y – 2 yc |), | z – 2 zc | ) -1 ;level ≥ L

i = 1, ... 61

 

 

Dabei bestimmt L ϵ {1, …, 6} ab welcher Höhe der Würfel sichtbar sein soll.

Geplottet werden die Würfel mittels 61 impliziter Funktionen der Form

 

f i (x, y, z, ..., ..., ...) = 0

 

mit den aktuellen Mittelpunktskoordinaten und der Farbe des Würfels.

Für eine Pyramide der Höhe 6 werden also 61 implizite Funktionen berechnet.

 

 

Zeitaufwand

 

Eingabe der Funktionenliste:                          ~ 3 h        :-(

Rechenzeit für 61 Würfel mit Auflösung 2:    < 2 sec.   :-))

Dabei werden pro Würfel 1177 Datenpunkte erzeugt.

 

Bei einer Auflösung von 3 werden pro Würfel 2905 Datenpunkte berechnet, die Rechenzeit für 61 Würfel liegt dann bei ~ 12 Sekunden.

 

 

Alternativen

 

Würde man einen Würfel als Super-Ellipsoid erzeugen, hätte man scharfe Kanten, und die Rechenzeit würde sich deutlich reduzieren.

Allerdings müssten auf Grund der parametrischen Darstellung pro Würfel 6 Terme (Zeilen in der Funktionenliste) geschrieben würden, d.h. man hätte den dreifachen Aufwand zu den 122 Zeilen mit einer impliziten Funktion - dies wollte ich mir aber nicht antun ...  ;-)

 

Nett anzuschauen und ohne großen Aufwand durch Ersetzen der obigen Funktion mit

 

f i (x, y, z, xc, yc, zc) = (x - 2 xc)4 + (y - 2 yc)4 + (z - 2 zc)4 - 1 ;level ≥ L

 

entstehenden recht "knuffige" Würfel: