|Copyright||(c) 2011 diagrams-lib team (see LICENSE)|
|License||BSD-style (see LICENSE)|
Basic types for three-dimensional Euclidean space.
- data R3 = R3 !Double !Double !Double
- r3 :: (Double, Double, Double) -> R3
- unr3 :: R3 -> (Double, Double, Double)
- mkR3 :: Double -> Double -> Double -> R3
- type P3 = Point R3
- p3 :: (Double, Double, Double) -> P3
- unp3 :: P3 -> (Double, Double, Double)
- mkP3 :: Double -> Double -> Double -> P3
- type T3 = Transformation R3
- r3Iso :: Iso' R3 (Double, Double, Double)
- p3Iso :: Iso' P3 (Double, Double, Double)
- data Direction
- direction :: R3 -> Direction
- fromDirection :: Direction -> R3
- angleBetweenDirs :: Direction -> Direction -> Angle
- class Spherical t where
- class Cylindrical t where
- class HasPhi t where
3D Euclidean space
The three-dimensional Euclidean vector space R^3.
|type V R3 = R3|
|type Basis R3 = Either () (Either () ())|
|type Scalar R3 = Double|
|type FinalCoord R3 = Double|
|type PrevDim R3 = R2|
|type Decomposition R3 = (:&) ((:&) Double Double) Double|
Directions in 3D
Direction represents directions in R3. The constructor is
Directions can be used with
fromDirection and the
lenses provided by its instances.
direction v is the direction in which
v points. Returns an
unspecified value when given the zero vector as input.
compute the positive angle between the two directions in their common plane
other coördinate systems
Types which can be expressed in spherical 3D coordinates, as a triple (r,θ,φ), where θ is rotation about the Z axis, and φ is the angle from the Z axis.
Types which can be expressed in cylindrical 3D coordinates.