OpenGL-2.12.0.1: A binding for the OpenGL graphics system

Copyright(c) Sven Panne 2002-2013
LicenseBSD3
MaintainerSven Panne <svenpanne@gmail.com>
Stabilitystable
Portabilityportable
Safe HaskellNone
LanguageHaskell2010

Graphics.Rendering.OpenGL.GL.Rectangles

Description

This module corresponds to section 10.9 (Rectangles) of the OpenGL 4.4 specs.

Synopsis

Documentation

class Rect a where Source

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.

rect (Vertex2 x1 y1) (Vertex2 x2, y2) is exactly equivalent to the following sequence:

   renderPrimitive Polygon $ do
       vertex (Vertex2 x1 y1)
       vertex (Vertex2 x2 y1)
       vertex (Vertex2 x2 y2)
       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.

Methods

rect :: Vertex2 a -> Vertex2 a -> IO () Source

rectv :: Ptr a -> Ptr a -> IO () Source