OpenGL-3.0.3.0: A binding for the OpenGL graphics system
Copyright(c) Sven Panne 2002-2019
LicenseBSD3
MaintainerSven Panne <svenpanne@gmail.com>
Stabilitystable
Portabilityportable
Safe HaskellSafe-Inferred
LanguageHaskell2010

Graphics.Rendering.OpenGL.GLU.NURBS

Description

This module corresponds to chapter 7 (NURBS) of the GLU specs.

Documentation

type NURBSObj = Ptr GLUnurbs Source #

withNURBSObj :: a -> (NURBSObj -> IO a) -> IO a Source #

type NURBSVertexCallback = Vertex3 GLfloat -> IO () Source #

type NURBSNormalCallback = Normal3 GLfloat -> IO () Source #

type NURBSColorCallback = Color4 GLfloat -> IO () Source #

nurbsCurve :: ControlPoint c => NURBSObj -> GLint -> Ptr GLfloat -> GLint -> Ptr (c GLfloat) -> GLint -> IO () Source #

nurbsSurface :: ControlPoint c => NURBSObj -> GLint -> Ptr GLfloat -> GLint -> Ptr GLfloat -> GLint -> GLint -> Ptr (c GLfloat) -> GLint -> GLint -> IO () Source #

class TrimmingPoint p Source #

Minimal complete definition

trimmingTarget

Instances

Instances details
TrimmingPoint Vertex2 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GLU.NURBS

Methods

trimmingTarget :: Vertex2 GLfloat -> GLenum

TrimmingPoint Vertex3 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GLU.NURBS

Methods

trimmingTarget :: Vertex3 GLfloat -> GLenum

pwlCurve :: TrimmingPoint p => NURBSObj -> GLint -> Ptr (p GLfloat) -> GLint -> IO () Source #

trimmingCurve :: TrimmingPoint c => NURBSObj -> GLint -> Ptr GLfloat -> GLint -> Ptr (c GLfloat) -> GLint -> IO () Source #

loadSamplingMatrices :: (Matrix m1, Matrix m2) => NURBSObj -> Maybe (m1 GLfloat, m2 GLfloat, (Position, Size)) -> IO () Source #