Portability | portable |
---|---|

Stability | stable |

Maintainer | sven.panne@aedion.de |

This module corresponds to section 2.10 (Rectangles) of the OpenGL 2.1 specs.

# Documentation

`rect`

and `rectv`

support efficient specification of rectangles as two
corner points. Each rectangle command takes four arguments, organized either
as two consecutive pairs of (*x*, *y*) coordinates, or as two pointers to
arrays, each containing an (*x*, *y*) pair. The resulting rectangle is
defined in the *z* = 0 plane.

is exactly equivalent to the
following sequence:
`rect`

(`Vertex2`

x1 y1) (`Vertex2`

x2, y2)

`Graphics.Rendering.OpenGL.GL.BeginEnd.renderPrimitive`

`Graphics.Rendering.OpenGL.GL.BeginEnd.Polygon`

$ do`Graphics.Rendering.OpenGL.GL.VertexSpec.vertex`

(`Vertex2`

x1 y1)`Graphics.Rendering.OpenGL.GL.VertexSpec.vertex`

(`Vertex2`

x2 y1)`Graphics.Rendering.OpenGL.GL.VertexSpec.vertex`

(`Vertex2`

x2 y2)`Graphics.Rendering.OpenGL.GL.VertexSpec.vertex`

(`Vertex2`

x1 y2)

Note that if the second vertex is above and to the right of the first vertex, the rectangle is constructed with a counterclockwise winding.