rsagl-0.2.1: The RogueStar Animation and Graphics LibrarySource codeContentsIndex
RSAGL.Model
Documentation
type Model attr = [ModeledSurface attr]Source
type Modeling attr = ModelingM attr ()Source
data ModelingM attr a Source
show/hide Instances
MonadMaterial ModelingM
Monad (ModelingM attr)
MonadAffine (ModelingM attr)
MonadState ([] (ModeledSurface attr)) (ModelingM attr)
AffineTransformable (ModelingM attr ())
data MaterialM attr a Source
show/hide Instances
MonadMaterial MaterialM
Monad (MaterialM attr)
MonadAffine (MaterialM attr)
MonadState ([] Quasimaterial) (MaterialM attr)
AffineTransformable (MaterialM attr ())
data IntermediateModel Source
show/hide Instances
parIntermediateModel :: Strategy IntermediateModelSource
generalSurface :: Monoid attr => Either (Surface Point3D) (Surface (Point3D, Vector3D)) -> Modeling attrSource
extractModel :: Modeling attr -> Model attrSource
toIntermediateModel :: Integer -> Modeling attr -> IntermediateModelSource
intermediateModelToOpenGL :: IntermediateModel -> IO ()Source
intermediateModelToVertexCloud :: IntermediateModel -> [SurfaceVertex3D]Source
splitOpaques :: IntermediateModel -> (IntermediateModel, [IntermediateModel])Source
modelingToOpenGL :: Integer -> Modeling attr -> IO ()Source
sphere :: Monoid attr => Point3D -> Double -> Modeling attrSource
torus :: Monoid attr => Double -> Double -> Modeling attrSource
openCone :: Monoid attr => (Point3D, Double) -> (Point3D, Double) -> Modeling attrSource
closedCone :: Monoid attr => (Point3D, Double) -> (Point3D, Double) -> Modeling attrSource
openDisc :: Monoid attr => Double -> Double -> Modeling attrSource
closedDisc :: Monoid attr => Point3D -> Vector3D -> Double -> Modeling attrSource
quadralateral :: Monoid attr => Point3D -> Point3D -> Point3D -> Point3D -> Modeling attrSource
triangle :: Monoid attr => Point3D -> Point3D -> Point3D -> Modeling attrSource
box :: Monoid attr => Point3D -> Point3D -> Modeling attrSource
sor :: Monoid attr => Curve Point3D -> Modeling attrSource
tube :: Monoid attr => Curve (Double, Point3D) -> Modeling attrSource
prism :: Monoid attr => Vector3D -> (Point3D, Double) -> (Point3D, Double) -> Curve Point3D -> Modeling attrSource
adaptive :: Modeling attrSource
fixed :: (Integer, Integer) -> Modeling attrSource
tesselationHintComplexity :: Monoid attr => Integer -> Modeling attrSource
twoSided :: Monoid attr => Bool -> Modeling attrSource
attribute :: Monoid attr => attr -> Modeling attrSource
withAttribute :: (attr -> Bool) -> Modeling attr -> Modeling attrSource
model :: Modeling attr -> Modeling attrSource
type RGBFunction = ApplicativeWrapper ((->) SurfaceVertex3D) RGBSource
type RGBAFunction = ApplicativeWrapper ((->) SurfaceVertex3D) RGBASource
material :: MonadMaterial m => MaterialM attr () -> m attr ()Source
pigment :: RGBFunction -> MaterialM attr ()Source
specular :: GLfloat -> RGBFunction -> MaterialM attr ()Source
emissive :: RGBFunction -> MaterialM attr ()Source
transparent :: RGBAFunction -> MaterialM attr ()Source
class MonadAffine m whereSource
Methods
affine :: AffineTransformation -> m ()Source
show/hide Instances
turbulence :: (SurfaceVertex3D -> SurfaceVertex3D) -> MaterialM attr ()Source
deform :: DeformationClass dc => dc -> Modeling attrSource
sphericalCoordinates :: ((Angle, Angle) -> a) -> Surface aSource
cylindricalCoordinates :: ((Angle, Double) -> a) -> Surface aSource
toroidalCoordinates :: ((Angle, Angle) -> a) -> Surface aSource
planarCoordinates :: Point3D -> Vector3D -> ((Double, Double) -> (Double, Double)) -> Surface (Point3D, Vector3D)Source
transformUnitCubeToUnitSphere :: Point3D -> Point3DSource
transformUnitSquareToUnitCircle :: (Double, Double) -> (Double, Double)Source
Produced by Haddock version 2.1.0