WebGLRenderingContext: scissor()-Methode

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

Hinweis: Diese Funktion ist in Web Workers verfügbar.

Die WebGLRenderingContext.scissor()-Methode der WebGL-API setzt eine "Scissor Box", die das Zeichnen auf ein angegebenes Rechteck begrenzt.

Syntax

js
scissor(x, y, width, height)

Parameter

x

Ein GLint, der die horizontale Koordinate für die linke untere Ecke der Box angibt. Standardwert: 0.

y

Ein GLint, der die vertikale Koordinate für die linke untere Ecke der Box angibt. Standardwert: 0.

width

Ein nicht-negativer GLsizei, der die Breite der "Scissor Box" angibt. Standardwert: Breite der Leinwand.

height

Ein nicht-negativer GLsizei, der die Höhe der "Scissor Box" angibt. Standardwert: Höhe der Leinwand.

Rückgabewert

Keiner (undefined).

Ausnahmen

Wenn entweder width oder height ein negativer Wert ist, wird ein gl.INVALID_VALUE-Fehler ausgelöst.

Beispiele

Wenn der "Scissor Test" aktiviert ist, können nur Pixel innerhalb der "Scissor Box" durch Zeichenbefehle verändert werden.

js
// turn on scissor test
gl.enable(gl.SCISSOR_TEST);

// set the scissor rectangle
gl.scissor(x, y, width, height);

// execute drawing commands in the scissor box (e.g. clear)

// turn off scissor test again
gl.disable(gl.SCISSOR_TEST);

Um die aktuellen Abmessungen der "Scissor Box" zu erhalten, fragen Sie die SCISSOR_BOX-Konstante ab, die ein Int32Array zurückgibt.

js
gl.scissor(0, 0, 200, 200);
gl.getParameter(gl.SCISSOR_BOX);
// Int32Array[0, 0, 200, 200]

Spezifikationen

Specification
WebGL Specification
# 5.14.4

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch