OpenGL-3.0.3.0: A binding for the OpenGL graphics system

Copyright | (c) Sven Panne 2002-2019
License | BSD3
Maintainer | Sven Panne <svenpanne@gmail.com>
Stability | stable
Portability | portable
Safe Haskell | None
Language | Haskell2010

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 NURBSBeginCallback = PrimitiveMode -> IO () Source #

withNURBSBeginCallback :: NURBSObj -> NURBSBeginCallback -> IO a -> IO a Source #

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

withNURBSVertexCallback :: NURBSObj -> NURBSVertexCallback -> IO a -> IO a Source #

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

withNURBSNormalCallback :: NURBSObj -> NURBSNormalCallback -> IO a -> IO a Source #

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

withNURBSColorCallback :: NURBSObj -> NURBSColorCallback -> IO a -> IO a Source #

type NURBSEndCallback = IO () Source #

withNURBSEndCallback :: NURBSObj -> NURBSEndCallback -> IO a -> IO a Source #

checkForNURBSError :: NURBSObj -> IO a -> IO a Source #

nurbsBeginEndCurve :: NURBSObj -> IO a -> IO a Source #

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

nurbsBeginEndSurface :: NURBSObj -> IO a -> IO a Source #

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

class TrimmingPoint (p :: Type -> Type) 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

nurbsBeginEndTrim :: NURBSObj -> IO a -> IO a Source #

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 #

data NURBSMode Source #

Constructors

NURBSTessellator |
NURBSRenderer |

#### Instances

Instances details

Show NURBSMode Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GLU.NURBS Methods showsPrec :: Int -> NURBSMode -> ShowS Source # show :: NURBSMode -> String Source # showList :: [NURBSMode] -> ShowS Source #
Eq NURBSMode Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GLU.NURBS Methods (==) :: NURBSMode -> NURBSMode -> Bool Source # (/=) :: NURBSMode -> NURBSMode -> Bool Source #
Ord NURBSMode Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GLU.NURBS

Methods

compare :: NURBSMode -> NURBSMode -> Ordering Source #

(<) :: NURBSMode -> NURBSMode -> Bool Source #

(<=) :: NURBSMode -> NURBSMode -> Bool Source #

(>) :: NURBSMode -> NURBSMode -> Bool Source #

(>=) :: NURBSMode -> NURBSMode -> Bool Source #

max :: NURBSMode -> NURBSMode -> NURBSMode Source #

min :: NURBSMode -> NURBSMode -> NURBSMode Source #

setNURBSMode :: NURBSObj -> NURBSMode -> IO () Source #

setNURBSCulling :: NURBSObj -> Capability -> IO () Source #

data SamplingMethod Source #

Constructors

PathLength GLfloat |
ParametricError GLfloat |
DomainDistance GLfloat GLfloat |
ObjectPathLength GLfloat |
ObjectParametricError GLfloat |

#### Instances

Instances details

Show SamplingMethod Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GLU.NURBS Methods showsPrec :: Int -> SamplingMethod -> ShowS Source # show :: SamplingMethod -> String Source # showList :: [SamplingMethod] -> ShowS Source #
Eq SamplingMethod Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GLU.NURBS Methods (==) :: SamplingMethod -> SamplingMethod -> Bool Source # (/=) :: SamplingMethod -> SamplingMethod -> Bool Source #
Ord SamplingMethod Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GLU.NURBS

Methods

compare :: SamplingMethod -> SamplingMethod -> Ordering Source #

(<) :: SamplingMethod -> SamplingMethod -> Bool Source #

(<=) :: SamplingMethod -> SamplingMethod -> Bool Source #

(>) :: SamplingMethod -> SamplingMethod -> Bool Source #

(>=) :: SamplingMethod -> SamplingMethod -> Bool Source #

max :: SamplingMethod -> SamplingMethod -> SamplingMethod Source #

min :: SamplingMethod -> SamplingMethod -> SamplingMethod Source #

setSamplingMethod :: NURBSObj -> SamplingMethod -> IO () Source #

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

data DisplayMode' Source #

Constructors

Fill' |
OutlinePolygon |
OutlinePatch |

#### Instances

Instances details

Show DisplayMode' Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GLU.NURBS Methods showsPrec :: Int -> DisplayMode' -> ShowS Source # show :: DisplayMode' -> String Source # showList :: [DisplayMode'] -> ShowS Source #
Eq DisplayMode' Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GLU.NURBS Methods (==) :: DisplayMode' -> DisplayMode' -> Bool Source # (/=) :: DisplayMode' -> DisplayMode' -> Bool Source #
Ord DisplayMode' Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GLU.NURBS

Methods

compare :: DisplayMode' -> DisplayMode' -> Ordering Source #

(<) :: DisplayMode' -> DisplayMode' -> Bool Source #

(<=) :: DisplayMode' -> DisplayMode' -> Bool Source #

(>) :: DisplayMode' -> DisplayMode' -> Bool Source #

(>=) :: DisplayMode' -> DisplayMode' -> Bool Source #

max :: DisplayMode' -> DisplayMode' -> DisplayMode' Source #

min :: DisplayMode' -> DisplayMode' -> DisplayMode' Source #

setDisplayMode' :: NURBSObj -> DisplayMode' -> IO () Source #