Freigeben über


glClipPlane-Funktion

Die glClipPlane-Funktion gibt eine Ebene an, auf der die gesamte Geometrie abgeschnitten wird.

Syntax

void WINAPI glClipPlane(
         GLenum   plane,
   const GLdouble *equation
);

Parameter

Flugzeug

Die Clippingebene, die positioniert wird. Symbolische Namen der Form GL_CLIP_PLANEi, wobei i eine ganze Zahl zwischen 0 und GL_MAX_CLIP_PLANES - 1 ist, werden akzeptiert.

Gleichung

Die Adresse eines Arrays mit vier Gleitkommawerten mit doppelter Genauigkeit. Diese Werte werden als Ebenengleichung interpretiert.

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Fehlercodes

Die folgenden Fehlercodes können von der glGetError-Funktion abgerufen werden.

Name Bedeutung
GL_INVALID_ENUM
ebene war kein akzeptierter Wert.
GL_INVALID_OPERATION
Die Funktion wurde zwischen einem Aufruf von glBegin und dem entsprechenden Aufruf von glEnd aufgerufen.

Bemerkungen

Geometrie wird immer an den Grenzen eines frustums mit sechs Ebenen in x, y und z abgeschnitten. Die glClipPlane-Funktion ermöglicht die Spezifikation zusätzlicher Ebenen, die nicht unbedingt senkrecht zur x-Achse, y-Achse oder Z-Achse stehen, gegen die die gesamte Geometrie abgeschnitten wird. Es können bis zu GL_MAX_CLIP_PLANES Ebenen angegeben werden, wobei GL_MAX_CLIP_PLANES in allen Implementierungen mindestens sechs ist. Da der resultierende Abschneidebereich die Schnittmenge der definierten Halbräume ist, ist er immer konvex.

Die glClipPlane-Funktion gibt einen halben Raum mithilfe einer Vierkomponentenebenengleichung an. Wenn Sie glClipPlane aufrufen, wird die Formel durch die Inverse der Modellansichtsmatrix transformiert und in den resultierenden Augenkoordinaten gespeichert. Nachfolgende Änderungen an der Modellansichtsmatrix haben keine Auswirkungen auf die gespeicherten Ebenengleichungskomponenten. Wenn das Punktprodukt der Augenkoordinaten eines Scheitelpunkts mit den gespeicherten Ebenengleichungskomponenten positiv oder null ist, ist der Scheitelpunkt in Bezug auf diese Clippingebene. Andernfalls ist es out.

Verwenden Sie die Funktionen glEnable und glDisable , um Clippingebenen zu aktivieren und zu deaktivieren. Rufen Sie Abschneideebenen mit dem Argument GL_CLIP_PLANEi auf, wobei i die Ebenennummer ist.

Standardmäßig sind alle Abschneideebenen als (0,0,0,0) in Augenkoordinaten definiert und deaktiviert.

Es ist immer so, dass GL_CLIP_PLANEi = GL_CLIP_PLANE0 + i.

Die folgenden Funktionen rufen Informationen im Zusammenhang mit glClipPlane ab:

glGetClipPlane

glIsEnabled mit Argument GL_CLIP_PLANE i

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows 2000 Server [nur Desktop-Apps]
Header
Gl.h
Bibliothek
Opengl32.lib
DLL
Opengl32.dll

Weitere Informationen

glBegin

glDisable

glEnable

glEnd

glGetClipPlane

glIsEnabled