Copyright | (c) Antony Courtney and Henrik Nilsson Yale University 2003 |
---|---|
License | BSD-style (see the LICENSE file in the distribution) |
Maintainer | ivan.perez@keera.co.uk |
Stability | provisional |
Portability | non-portable (GHC extensions) |
Safe Haskell | Safe |
Language | Haskell98 |
Affine space type relation.
Synopsis
- class (Floating a, VectorSpace v a) => AffineSpace p v a | p -> v, v -> a where
Documentation
class (Floating a, VectorSpace v a) => AffineSpace p v a | p -> v, v -> a where Source #
Affine Space type relation.
An affine space is a set (type) p
, and an associated vector space v
over
a field a
.
Origin of the affine space.
(.+^) :: p -> v -> p infix 6 Source #
Addition of affine point and vector.
(.-^) :: p -> v -> p infix 6 Source #
Subtraction of affine point and vector.
(.-.) :: p -> p -> v infix 6 Source #
Subtraction of two points in the affine space, giving a vector.
distance :: p -> p -> a Source #
Distance between two points in the affine space, same as the norm
of
the vector they form (see '(.-.)'.