Quadrik

Aus DGL Wiki
Wechseln zu: Navigation, Suche

Quadriken

Was ist das?

Quadriken (engl.: Quadrics) sind Container für geometrische Objekte in OpenGL.
Sie werden eingesetzt, wenn ohne großen Aufwand komplexere geom. Objekte (Kugel, Zylinder, ...) gerendert werden sollen.

Mathematische Information für interessierte: Bei Quadriken oder auch quadratischen Hyperflächen im <math>\mathbb{K}^n \quad (2 \neq 0)</math> handelt es sich um die Lösungsmenge eines Polynoms zweiten Grades der Gestalt <math>f(x_1,x_2, ..., x_n) = 0</math>. Dieses kann man auch schreiben als: <math>f(x) = x^t \times A \times x + a^t \times x + \alpha = 0</math>, wobei <math>A \in \mathbb{K}^{n \times n}, a \in mathbb{K}^n, \alpha \in \mathbb{K}</math> ist.

Zu was brauche ich Quadriken?

Wie bereits erwähnt sind Quadriken Container für geometrische Objekte. Quadriken bestehen aus ganz normalen OpenGL-Primitiven. Man kann ihnen vorgeben, welche Form Sie annhemen sollen (Kugel, Zylinder, Kegel, Torus, Scheibe...). Außerdem besitzen Quadricen Methoden zum zeichnen (man kann ihnen also den Befehl geben "Zeichne dich selbst!") sowie zum erstellen von Texturkoordinaten (Quadriken kann man somit auch Texturieren).

Gibt es Nachteile?

  • Die geometrischen Objekte die Quadriken darstellen sind noch nicht vollständig Optimiert. D.h. eine selbst geschriebene Procedure die eine Kugel rendert ist unter umständen schneller als eine Quadrik die sich selbst als Kugel rendert.
  • Nicht alle Funktionen die eine Quadrik hat benötigt man immer.

Was sind die Vorteile?

  • Wenn man schnell mal eine Kugel oder andere komplexe Geometrieobjekte benötigt, stehen Quadriken immer bereit.
  • Sie sind leicht verfügbar und
  • Sie funktionieren.
  • Zum Testen und Experimentieren sind Sie ideal geeignet.

Wie erstelle ich Quadriken?

Quadriken sind Teil der GLU die mit OpenGL ausgeliefert wird. Wenn als OpenGL-Header der Header von DelphiGL.com (DGLOpenGL.pas) eingesetzt wird, sind die entsprechenden Funktionen immer dann verfügbar, wenn auch die normalen OpenGL Funktionen (GL) zur Verfügung stehen.
Nachfolgend alle Befehle die speziell mit Quadriken zusammenhängen.

OpenGL Befehle

gluNewQuadric
gluDeleteQuadric

gluQuadricCallback
gluQuadricDrawStyle
gluQuadricNormals
gluQuadricOrientation
gluQuadricTexture

gluCylinder
gluDisk
gluPartialDisk
gluSphere