Safe Haskell | None |
---|---|
Language | Haskell2010 |
- newtype VerticesT a m b = Vertices {
- unVertices :: StateT (Vector a) m b
- runVerticesT :: (Monad m, Unbox a) => VerticesT a m b -> m (Vector a)
- type Vertices a = VerticesT a Identity ()
- runVertices :: Unbox a => Vertices a -> Vector a
- tri :: (Monad m, Unbox a) => a -> a -> a -> VerticesT a m ()
- bez :: (Monad m, Unbox a) => a -> a -> a -> VerticesT a m ()
- to :: (Monad m, Unbox a) => a -> VerticesT a m ()
- addVertexList :: (Monad m, Unbox a) => [a] -> VerticesT a m ()
- segment :: (Monad m, Unbox a) => a -> a -> VerticesT a m ()
- mapVertices :: (Monad m, Unbox a, Unbox c) => (a -> c) -> VerticesT a m b -> VerticesT c m ()
- data RawGeometry a
- = RawTriangles (Vector a)
- | RawBeziers (Vector a)
- | RawTriangleStrip (Vector a)
- | RawTriangleFan (Vector a)
- | RawLine (Vector a)
- mapRawGeometry :: (Unbox a, Unbox b) => (a -> b) -> RawGeometry a -> RawGeometry b
- newtype GeometryT a m b = Geometry {
- unGeometry :: StateT (Vector (RawGeometry a)) m b
- runGeometryT :: Monad m => GeometryT a m b -> m (Vector (RawGeometry a))
- type Geometry a = GeometryT a Identity ()
- runGeometry :: Geometry a -> Vector (RawGeometry a)
- triangles :: (Unbox a, Monad m) => VerticesT a m () -> GeometryT a m ()
- beziers :: (Monad m, Unbox a) => VerticesT a m () -> GeometryT a m ()
- strip :: (Monad m, Unbox a) => VerticesT a m () -> GeometryT a m ()
- fan :: (Monad m, Unbox a) => VerticesT a m () -> GeometryT a m ()
- line :: (Monad m, Unbox a) => VerticesT a m () -> GeometryT a m ()
- mapGeometry :: (Monad m, Unbox a, Unbox c) => (a -> c) -> GeometryT a m b -> GeometryT c m ()
- type PictureT tex vert = StateT (PictureData tex vert)
- runPictureT :: PictureT t v m a -> m (a, PictureData t v)
- type Picture t v = PictureT t v Identity
- runPicture :: Picture t v a -> (a, PictureData t v)
- setRawGeometry :: Monad m => Vector (RawGeometry v) -> PictureT t v m ()
- getRawGeometry :: Monad m => PictureT t v m (Vector (RawGeometry v))
- setGeometry :: Monad m => GeometryT v m () -> PictureT t v m ()
- setStroke :: Monad m => [StrokeAttr] -> PictureT t v m ()
- getStroke :: Monad m => PictureT t v m [StrokeAttr]
- setTextures :: Monad m => [t] -> PictureT t v m ()
- getTextures :: Monad m => PictureT t v m [t]
- setRenderingOptions :: Monad m => [RenderingOption] -> PictureT t v m ()
- getRenderingOptions :: Monad m => PictureT t v m [RenderingOption]
- mapToSpaceVec :: (Monad m, Unbox v, Unbox s) => (v -> s) -> PictureT t v m (Vector s)
- pictureBounds2 :: (Monad m, Unbox v) => (v -> V2 Float) -> PictureT t v m (V2 Float, V2 Float)
- pictureSize2 :: (Monad m, Unbox v) => (v -> V2 Float) -> PictureT t v m (V2 Float)
- pictureOrigin2 :: (Monad m, Unbox v) => (v -> V2 Float) -> PictureT t v m (V2 Float)
- pictureCenter2 :: (Monad m, Unbox v) => (v -> V2 Float) -> PictureT t v m (V2 Float)
- pictureBounds3 :: (Monad m, Unbox v) => (v -> V3 Float) -> PictureT t v m BCube
- pictureSize3 :: (Monad m, Unbox v) => (v -> V3 Float) -> PictureT t v m (V3 Float)
- pictureOrigin3 :: (Monad m, Unbox v) => (v -> V3 Float) -> PictureT t v m (V3 Float)
- pictureCenter3 :: (Monad m, Unbox v) => (v -> V3 Float) -> PictureT t v m (V3 Float)
- data RenderingOption = StencilMaskOption
- data PictureData texture vertex = PictureData {
- _picDataGeometry :: Vector (RawGeometry vertex)
- _picDataStroke :: [StrokeAttr]
- _picDataTextures :: [texture]
- _picDataOptions :: [RenderingOption]
Defining Vertex Data
mapVertices :: (Monad m, Unbox a, Unbox c) => (a -> c) -> VerticesT a m b -> VerticesT c m () Source #
Making shapes
Defining Geometry (Vertex Data + Drawing Operation)
data RawGeometry a Source #
RawTriangles (Vector a) | |
RawBeziers (Vector a) | |
RawTriangleStrip (Vector a) | |
RawTriangleFan (Vector a) | |
RawLine (Vector a) |
mapRawGeometry :: (Unbox a, Unbox b) => (a -> b) -> RawGeometry a -> RawGeometry b Source #
newtype GeometryT a m b Source #
Geometry | |
|
runGeometryT :: Monad m => GeometryT a m b -> m (Vector (RawGeometry a)) Source #
runGeometry :: Geometry a -> Vector (RawGeometry a) Source #
mapGeometry :: (Monad m, Unbox a, Unbox c) => (a -> c) -> GeometryT a m b -> GeometryT c m () Source #
The Picture API
type PictureT tex vert = StateT (PictureData tex vert) Source #
runPictureT :: PictureT t v m a -> m (a, PictureData t v) Source #
runPicture :: Picture t v a -> (a, PictureData t v) Source #
setRawGeometry :: Monad m => Vector (RawGeometry v) -> PictureT t v m () Source #
getRawGeometry :: Monad m => PictureT t v m (Vector (RawGeometry v)) Source #
setTextures :: Monad m => [t] -> PictureT t v m () Source #
getTextures :: Monad m => PictureT t v m [t] Source #
setRenderingOptions :: Monad m => [RenderingOption] -> PictureT t v m () Source #
getRenderingOptions :: Monad m => PictureT t v m [RenderingOption] Source #
Measuring Pictures (2d)
pictureBounds2 :: (Monad m, Unbox v) => (v -> V2 Float) -> PictureT t v m (V2 Float, V2 Float) Source #
Measuring Pictures (3d)
Underlying PictureData Exported for renderers
data PictureData texture vertex Source #
PictureData | |
|