glVertex: Unterschied zwischen den Versionen

Aus DGL Wiki
Wechseln zu: Navigation, Suche
(=Beschreibung=)
K (Kategorisierung)
 
(16 dazwischenliegende Versionen von 5 Benutzern werden nicht angezeigt)
Zeile 2: Zeile 2:
  
 
== Name ==
 
== Name ==
'''glVertex''' - Ein Vertex (Mehrzahl: Vertice(s)) ist ein Punkt im Raum.
+
'''glVertex''' - Bestimmt die Koordinaten eines Vertex. Ein Vertex (Mehrzahl: Vertice(s)) ist ein Punkt im Raum.
  
 
== Delphi-Spezifikation ==
 
== Delphi-Spezifikation ==
 +
procedure '''glVertex2d'''(''x'',''y'': TGLdouble);
 +
procedure '''glVertex2f'''(''x'',''y'': TGLfloat);
 +
procedure '''glVertex2i'''(''x'',''y'': TGLint);
 +
procedure '''glVertex2s'''(''x'',''y'': TGLshort);
 +
procedure '''glVertex3d'''(''x'',''y'',''z'': TGLdouble);
 +
procedure '''glVertex3f'''(''x'',''y'',''z'': TGLfloat);
 +
procedure '''glVertex3i'''(''x'',''y'',''z'': TGLint);
 +
procedure '''glVertex3s'''(''x'',''y'',''z'': TGLshort);
 +
procedure '''glVertex4d'''(''x'',''y'',''z'',''w'': TGLdouble);
 +
procedure '''glVertex4f'''(''x'',''y'',''z'',''w'': TGLfloat);
 +
procedure '''glVertex4i'''(''x'',''y'',''z'',''w'': TGLint);
 +
procedure '''glVertex4s'''(''x'',''y'',''z'',''w'': TGLshort);
 +
 +
== Parameter ==
 +
<table border=1 rules=all>
 +
<tr>
 +
<td>''x'',''y'',''z'' und ''w''</td>
 +
<td>Bezeichnen die X-, Y-, Z-, bzw. W-Koordinaten eines Punktes im Raum.<br>
 +
(Wenn ''z'' bzw. ''w'' nicht spezifiziert werden haben sie die '''Vorgabewerte z = 0.0''' und '''w = 1.0''' .)</td>
 +
</tr>
 +
</table>
 +
 +
 +
 +
== Delphi-Spezifikation ==
 +
procedure '''glVertex2dv'''(const ''v'': PGLdouble);
 +
procedure '''glVertex2fv'''(const ''v'': PGLfloat);
 +
procedure '''glVertex2iv'''(const ''v'': PGLint);
 +
procedure '''glVertex2sv'''(const ''v'': PGLshort);
 +
procedure '''glVertex3dv'''(const ''v'': PGLdouble);
 +
procedure '''glVertex3fv'''(const ''v'': PGLfloat);
 +
procedure '''glVertex3iv'''(const ''v'': PGLint);
 +
procedure '''glVertex3sv'''(const ''v'': PGLshort);
 +
procedure '''glVertex4dv'''(const ''v'': PGLdouble);
 +
procedure '''glVertex4fv'''(const ''v'': PGLfloat);
 +
procedure '''glVertex4iv'''(const ''v'': PGLint);
 +
procedure '''glVertex4sv'''(const ''v'': PGLshort);
 +
  
procedure '''glVertex2d''' ('''x''','''y''' :GLdouble); overload; <br>
 
procedure '''glVertex2f''' ('''x''','''y''' :GLfloat); overload;<br>
 
procedure '''glVertex2i''' ('''x''','''y''' :GLint); overload;<br>
 
procedure '''glVertex2s''' ('''x''','''y''' :GLshort); overload;<br>
 
procedure '''glVertex3d''' ('''x''','''y''','''z''' :GLdouble); overload;<br>
 
procedure '''glVertex3f''' ('''x''','''y''','''z''' :GLfloat); overload;<br>
 
procedure '''glVertex3i''' ('''x''','''y''','''z''' :GLint); overload;<br>
 
procedure '''glVertex3s''' ('''x''','''y''','''z''' :GLshort); overload;<br>
 
procedure '''glVertex4d''' ('''x''','''y''','''z''','''w''' :GLdouble); overload;<br>
 
procedure '''glVertex4f''' ('''x''','''y''','''z''','''w''' :GLfloat); overload;<br>
 
procedure '''glVertex4i''' ('''x''','''y''','''z''','''w''' :GLint); overload;<br>
 
procedure '''glVertex4s''' ('''x''','''y''','''z''','''w''' :GLshort); overload;<br>
 
  
 
== Parameter ==
 
== Parameter ==
 +
<table border=1 rules=all>
 +
<tr>
 +
<td>''v''</td>
 +
<td>Ist ein Zeiger auf ein Feld mit 2, 3 oder 4 Elementen. Diese Elemente bezeichnen <br>
 +
# bei 2 elementigen Feldern die x- bzw. y-Koordinate eines Vertex.
 +
# bei 3 elementigen Feldern die x-, y- bzw. z-Koordinate eines Vertex.
 +
# bei 4 elementigen Feldern die x-, y-, z- bzw. w-Koordinate eines Vertex.
 +
</td>
 +
</tr>
 +
</table>
 +
  
''x'',''y'',''z'' und ''w'' bezeichnen die X-, Y-, Z-, bzw. W-Koordinaten eines Punktes im Raum.
 
(Wenn ''z'' bzw. ''w'' nicht spezifiziert werden haben sie die Vorgabewerte<br> z = 0.0 und w = 1.0 .)
 
  
 
== Beschreibung ==
 
== Beschreibung ==
  
Vertices stellen das absolute Basisprimitv dar. Alle anderen [[Primitive]] (wie z.B. Linie, Dreieck, Viereck oder Polygone) bestehen aus Vertices. Ein Vertex ist gleichbedeutent mit den Eckpunkten eines Körpers oder einer Fläche.
+
Vertices stellen das absolute Basisprimitv dar. Alle anderen [[Primitive]] (wie z.B. Linie, Dreieck, Viereck oder Polygone) bestehen aus Vertices. Ein Vertex ist gleichbedeutend mit einem Eckpunkt eines Körpers oder einer Fläche.
  
Vertices werden innerhalb von [[glBegin]]-[[glEnd]]-Blöcken benutzt um die Eckpunkte zu definieren aus denen Primitive gebildet werden sollen.
+
Vertices werden innerhalb von [[glBegin]]-[[glEnd]]-Blöcken benutzt, um die Eckpunkte zu definieren, aus denen Primitive gebildet werden sollen.
  
 
Ein Vertex wird mit der aktuell gesetzten Farbe, Normale und Texturkoordinate gezeichnet.
 
Ein Vertex wird mit der aktuell gesetzten Farbe, Normale und Texturkoordinate gezeichnet.
 +
 +
Nicht bei jeder '''glVertex'''-Funktion werden allen möglichen Parametern Werte zugewiesen.
 +
 +
Wenn ''z'' nichts anderes zugewiesen bekommt, ist der '''Standardwert z = 0.0'''.
 +
 +
Wenn ''w'' nichts anderes zugewiesen bekommt, ist der '''Standardwert w = 1.0'''.
 +
 +
== Hinweise ==
 +
Ein Aufruf von '''glVertex''' außerhalb eines [[glBegin]]-[[glEnd]]-Blocks verursacht ein undefiniertes Verhalten.
 +
 +
  
 
== Beispielcode ==
 
== Beispielcode ==
 +
{|{{Prettytable_B1}} width="100%"
 +
!width="60%"|Code
 +
!Ausgabe
 +
|-
 +
|
 +
<source lang="pascal">glBegin(GL_TRIANGLES);
 +
    glVertex3f(1,0,0);
 +
    glVertex3f(0,1,0);
 +
    glVertex3f(0,0,0);
 +
glEnd;</source>
 +
|[[Bild:GlBegin_Bsp1.jpg|center]]
 +
|}
 +
 +
== Links ==
 +
http://www.opengl.org/sdk/docs/man/xhtml/glVertex.xml
 +
  
glBegin(GL_TRIANGLES);
 
  glVertex3f(-1,0,0);
 
  glVertex3f( 0,1,0);
 
  glVertex3f( 1,0,0);
 
glEnd;
 
  
 
== Siehe auch ==
 
== Siehe auch ==
 +
[[glBegin]], [[glCallList]], [[glColor]], [[glEdgeFlag]], [[glEvalCoord]], [[glFogCoord]], [[glIndex]], [[glMaterial]], [[glMultiTexCoord]], [[glNormal]], [[glRect]], [[glTexCoord]], [[glVertexPointer]]
  
[[glBegin]], [[glCallList]], [[glColor]], [[glEdgeFlag]], [[glEvalCoord]], [[glIndex]], [[glMaterial]], [[glNormal]], [[glRect]], [[glTexCoord]]
+
[[Kategorie:GL|Vertex]]
 +
[[Kategorie:GL1.0|Vertex]]

Aktuelle Version vom 18. Juni 2011, 15:51 Uhr

glVertex

Name

glVertex - Bestimmt die Koordinaten eines Vertex. Ein Vertex (Mehrzahl: Vertice(s)) ist ein Punkt im Raum.

Delphi-Spezifikation

procedure glVertex2d(x,y: TGLdouble);
procedure glVertex2f(x,y: TGLfloat); 
procedure glVertex2i(x,y: TGLint); 
procedure glVertex2s(x,y: TGLshort); 
procedure glVertex3d(x,y,z: TGLdouble); 
procedure glVertex3f(x,y,z: TGLfloat); 
procedure glVertex3i(x,y,z: TGLint); 
procedure glVertex3s(x,y,z: TGLshort); 
procedure glVertex4d(x,y,z,w: TGLdouble); 
procedure glVertex4f(x,y,z,w: TGLfloat); 
procedure glVertex4i(x,y,z,w: TGLint); 
procedure glVertex4s(x,y,z,w: TGLshort);

Parameter

x,y,z und w Bezeichnen die X-, Y-, Z-, bzw. W-Koordinaten eines Punktes im Raum.
(Wenn z bzw. w nicht spezifiziert werden haben sie die Vorgabewerte z = 0.0 und w = 1.0 .)


Delphi-Spezifikation

procedure glVertex2dv(const v: PGLdouble);
procedure glVertex2fv(const v: PGLfloat); 
procedure glVertex2iv(const v: PGLint); 
procedure glVertex2sv(const v: PGLshort); 
procedure glVertex3dv(const v: PGLdouble);
procedure glVertex3fv(const v: PGLfloat); 
procedure glVertex3iv(const v: PGLint); 
procedure glVertex3sv(const v: PGLshort);
procedure glVertex4dv(const v: PGLdouble);
procedure glVertex4fv(const v: PGLfloat); 
procedure glVertex4iv(const v: PGLint); 
procedure glVertex4sv(const v: PGLshort);


Parameter

v Ist ein Zeiger auf ein Feld mit 2, 3 oder 4 Elementen. Diese Elemente bezeichnen
  1. bei 2 elementigen Feldern die x- bzw. y-Koordinate eines Vertex.
  2. bei 3 elementigen Feldern die x-, y- bzw. z-Koordinate eines Vertex.
  3. bei 4 elementigen Feldern die x-, y-, z- bzw. w-Koordinate eines Vertex.


Beschreibung

Vertices stellen das absolute Basisprimitv dar. Alle anderen Primitive (wie z.B. Linie, Dreieck, Viereck oder Polygone) bestehen aus Vertices. Ein Vertex ist gleichbedeutend mit einem Eckpunkt eines Körpers oder einer Fläche.

Vertices werden innerhalb von glBegin-glEnd-Blöcken benutzt, um die Eckpunkte zu definieren, aus denen Primitive gebildet werden sollen.

Ein Vertex wird mit der aktuell gesetzten Farbe, Normale und Texturkoordinate gezeichnet.

Nicht bei jeder glVertex-Funktion werden allen möglichen Parametern Werte zugewiesen.

Wenn z nichts anderes zugewiesen bekommt, ist der Standardwert z = 0.0.

Wenn w nichts anderes zugewiesen bekommt, ist der Standardwert w = 1.0.

Hinweise

Ein Aufruf von glVertex außerhalb eines glBegin-glEnd-Blocks verursacht ein undefiniertes Verhalten.


Beispielcode

Code Ausgabe
glBegin(GL_TRIANGLES);
    glVertex3f(1,0,0);
    glVertex3f(0,1,0);
    glVertex3f(0,0,0);
glEnd;
GlBegin Bsp1.jpg

Links

http://www.opengl.org/sdk/docs/man/xhtml/glVertex.xml


Siehe auch

glBegin, glCallList, glColor, glEdgeFlag, glEvalCoord, glFogCoord, glIndex, glMaterial, glMultiTexCoord, glNormal, glRect, glTexCoord, glVertexPointer