Copyright | (c) 2013 diagrams-lib team (see LICENSE) |
---|---|
License | BSD-style (see LICENSE) |
Maintainer | diagrams-discuss@googlegroups.com |
Safe Haskell | None |
Language | Haskell2010 |
Types to specify lighting for 3D rendering.
- data PointLight n = PointLight (Point V3 n) (Colour Double)
- data ParallelLight n = ParallelLight (V3 n) (Colour Double)
- pointLight :: (Typeable n, Num n, Ord n, Renderable (PointLight n) b) => Colour Double -> QDiagram b V3 n Any
- parallelLight :: (Typeable n, OrderedField n, Renderable (ParallelLight n) b) => Direction V3 n -> Colour Double -> QDiagram b V3 n Any
Documentation
data PointLight n Source
A PointLight
radiates uniformly in all directions from a given
point.
PointLight (Point V3 n) (Colour Double) |
Fractional n => Transformable (PointLight n) | |
Typeable (* -> *) PointLight | |
type V (PointLight n) = V3 | |
type N (PointLight n) = n |
data ParallelLight n Source
A ParallelLight
casts parallel rays in the specified direction,
from some distant location outside the scene.
ParallelLight (V3 n) (Colour Double) |
Fractional n => Transformable (ParallelLight n) | |
Typeable (* -> *) ParallelLight | |
type V (ParallelLight n) = V3 | |
type N (ParallelLight n) = n |
:: (Typeable n, Num n, Ord n, Renderable (PointLight n) b) | |
=> Colour Double | The color of the light |
-> QDiagram b V3 n Any |
Construct a Diagram with a single PointLight at the origin, which takes up no space.
:: (Typeable n, OrderedField n, Renderable (ParallelLight n) b) | |
=> Direction V3 n | The direction in which the light travels. |
-> Colour Double | The color of the light. |
-> QDiagram b V3 n Any |
Construct a Diagram with a single ParallelLight, which takes up no space.