gluCylinder: Unterschied zwischen den Versionen

Aus DGL Wiki
Wechseln zu: Navigation, Suche
K (Bildwunsch)
K (Beschreibung: Bilder hinzugefügt)
Zeile 58: Zeile 58:
 
* t läuft linear von 0.0 bei z = 0 zu 1.0 bei z = height
 
* t läuft linear von 0.0 bei z = 0 zu 1.0 bei z = height
 
* s läuft von 0.0 bei der pos. Y-Achse über 0.25 bei der pos. X-Achse weiter über 0.5 bei der neg. Y-Achse über 0.75 bei der neg. X-Achse und zurück zu 1.0 bei der pos. Y-Achse. (Quasi wenn man von z = ''height'' zu (0,0,0) in Uhrzeigerrichtung schaut.)
 
* s läuft von 0.0 bei der pos. Y-Achse über 0.25 bei der pos. X-Achse weiter über 0.5 bei der neg. Y-Achse über 0.75 bei der neg. X-Achse und zurück zu 1.0 bei der pos. Y-Achse. (Quasi wenn man von z = ''height'' zu (0,0,0) in Uhrzeigerrichtung schaut.)
 
+
<br/>
 
+
<gallery caption="gluCylinder mit verschiedenen Parametern" align="center">
 
+
  Bild:Cylinder1.jpg|Normaler Zylinder im [[glPolygonMode|Drahtgittermodus]]
 +
  Bild:Kegel.jpg|Kegel (topradius=0)
 +
  Bild:Pyramide.jpg|Pyramide (topradius=0, slices=4, stacks=1)
 +
  Bild:Cubedisk.jpg|Würfel (topradius=bottomradius, slices=4, stacks=1)
 +
</gallery>
  
 
== Hinweise ==
 
== Hinweise ==

Version vom 30. August 2006, 16:25 Uhr

Hinweis: Diesem Artikel sollten folgende Bilder beigefügt werden:

(Mehr Informationen/weitere Artikel)
Bildwunsch.jpg
Ein Bild welches die Parameter verdeutlicht

gluCylinder

Name

gluCylinder - zeichnet einen Zylinder.


Delphi-Spezifikation

procedure gluCylinder(quadObject: PGLUquadric; 
                      baseRadius, topRadius, height: TGLdouble; 
                      slices, stacks: TGLint);


Parameter

quadObject Gibt das Quadrik-Objekt an. (erstellt mit gluNewQuadric)
baseRadius Definiert den Radius des Zylinders bei z = 0.
topRadius Definiert den Radius des Zylinders bei z = height.
height Gibt die Höhe des Zylinders an.
slices Gibt die Anzahl der Unterteilungen um die Z-Achse an. (Vergl. Pizzastücke)
stacks Gibt die Anzahl der Unterteilungen entlang der Z-Achse an.


Beschreibung

gluCylinder zeichnet einen Zylinder, der an der Z-Achse ausgerichtet ist. Der Boden des Zylinders befindet sich dabei bei z = 0 und der Deckel bei z = height.
Wie auch die Kugel (gluSphere), wird der Zylinder um die Z-Achse in Stücken (slices) und entlang der Z-Achse in Stockwerke (stacks) unterteilt. Die Stücken bestimmen dabei wie rund der Zylinder tatsächlich erscheint (viele Stücken -> rundere Form).

Die Stockwerke, aber auch die Stücken, haben eine direkte Auswirkung auf die Wirkung des Zylinders bei angeschaltetem OpenGL-Licht (glLight). Je mehr es von beiden gibt, desto besser wirkt die Beleuchtung. (Nachteil: viele Polygone)

Wenn die Orientierung der Normalen mittels gluQuadricOrientation auf GLU_OUTSIDE gesetzt wurde, zeigen alle Normalen von der Z-Achse weg. Ansonsten zeigen sie zur Z-Achse.

Wenn mittels gluQuadricTexture Texturierung aktiviert ist, werden automatisch Texturkoordinaten in folgender Weise erstellt:

  • t läuft linear von 0.0 bei z = 0 zu 1.0 bei z = height
  • s läuft von 0.0 bei der pos. Y-Achse über 0.25 bei der pos. X-Achse weiter über 0.5 bei der neg. Y-Achse über 0.75 bei der neg. X-Achse und zurück zu 1.0 bei der pos. Y-Achse. (Quasi wenn man von z = height zu (0,0,0) in Uhrzeigerrichtung schaut.)


Hinweise

Wenn topRadius = 0 ist, wird ein Kegel anstatt eines Zylinders erstellt.



Siehe auch

gluDisk, gluNewQuadric, gluPartialDisk, gluQuadricTexture, gluSphere