|
"sor" - Rotationskörper
|
"sor" = surface of revolution = Rotationskörper
allgemeiner Syntax:
sor{ n,
< x1, y1 >,
< x2, y2 >,
< x3, y3 >,
...
< xn, yn >
texture{ ... }
} |
|
Hierbei wird durch "n" Punkte < xi, yi > (i=1 ... n)
eine Umrißlinie des Körpers in der xy-Ebene definiert.
Diese Punkte werden durch eine Spline-Kurve verbunden. Der Körper entsteht durch Rotation dieser Kurve um
die y-Achse. Im Normalfall wird diese Kurve senkrecht zur y-Achse geschlossen, will man einen offenen Körper
erhalten, so muß der Zusatzbefehl "open" zugefügt werden. Eventuelle Rechenfehler, die sich durch Löcher
in der Körperoberfläche zeigen, lassen sich durch den Zusatz "sturm" reduzieren (dies erzwingt die Verwendung
des langsameren, aber genaueren Sturmschen Algorithmus zur Wurzelberechnung).
|
Will man eine andere Lage des Rotationskörpers erreichen, so muß den Rotationskörper mittels
"rotate< , , >" und "translate< , , >"
in die gewünschte Position gedreht und geschoben werden.
|
|
Beispiel links:
// Rotationskörper
// am Nullpunkt (closed, aufgeschnitten):
sor{ 8, //n=8 Punkte!
< 0.00, 0.00>,
< 0.60, 0.00>,
< 0.72, 0.44>,
< 0.31, 0.93>,
< 0.49, 1.26>,
< 0.48, 1.35>,
< 0.43, 1.56>,
< 0.16, 1.60>
texture{
pigment{color White}
finish { phong 0.5}
}
} // end of sor
//----------------------- |
|
Beispiel rechts:
// Rotationskörper
// rechts: (open)
sor{ 8, //n=8 Punkte!
< 0.00, 0.00>,
< 0.60, 0.00>,
< 0.72, 0.44>,
< 0.31, 0.93>,
< 0.49, 1.26>,
< 0.48, 1.35>,
< 0.43, 1.56>,
< 0.16, 1.60>
open // <--------------!!!
translate<2,0,0>
texture{
pigment{color White}
finish {phong 0.5}
}
} // end of sor
//----------------------- |
|
Anmerkung:
Warum "sor" statt "lathe" ?(letzeres erscheint meist sehr viel flexibler!)
Schnittberechnungen mit "sor"-Objekten führen lediglich auf quadratische Gleichungen,
wogegen Schnitttests mit "lathe"-Objekten auf Gleichungen 6.Grades führen. Quadratische Gleichungen
sind sowohl schneller als auch genauer lösbar. Da solche Objekte stets sehr viele Teilflächen besitzen,
ist dies von großer Bedeutung.
|
|
|