| Safe Haskell | Safe-Infered |
|---|
RSAGL.Math.AbstractVector
Description
Provides generic typeclasses for common operations among many types: addition, subtraction, scalar multiplication, magnitude, and zero.
Documentation
class (AbstractZero v, AbstractAdd v v, AbstractSubtract v v, AbstractScale v) => AbstractVector v Source
Instances
class AbstractZero a whereSource
Instances
| AbstractZero Double | |
| AbstractZero Float | |
| AbstractZero Integer | |
| AbstractZero RSdouble | |
| AbstractZero RSfloat | |
| AbstractZero BoundAngle | |
| AbstractZero Angle | |
| AbstractZero Vector3D | |
| AbstractZero Point3D | |
| AbstractZero RGBA | |
| AbstractZero RGB | |
| AbstractZero Time | |
| HasResolution a => AbstractZero (Fixed a) | |
| AbstractZero a => AbstractZero (Rate a) | |
| (AbstractZero a, AbstractZero b) => AbstractZero (a, b) | |
| (Applicative f, AbstractZero p) => AbstractZero (ApplicativeWrapper f p) | ApplicativeWrapper |
class AbstractAdd p v | p -> v whereSource
Instances
| AbstractAdd Double Double | |
| AbstractAdd Float Float | |
| AbstractAdd Integer Integer | |
| AbstractAdd RSdouble RSdouble | |
| AbstractAdd RSfloat RSfloat | |
| AbstractAdd BoundAngle Angle | |
| AbstractAdd Angle Angle | |
| AbstractAdd Vector3D Vector3D | |
| AbstractAdd Point3D Vector3D | |
| AbstractAdd RGBA RGBA | |
| AbstractAdd RGB RGB | |
| AbstractAdd Time Time | |
| HasResolution a => AbstractAdd (Fixed a) (Fixed a) | |
| AbstractAdd a a => AbstractAdd (Rate a) (Rate a) | |
| (AbstractAdd a a', AbstractAdd b b') => AbstractAdd (a, b) (a', b') | |
| (Applicative f, AbstractAdd p v) => AbstractAdd (ApplicativeWrapper f p) (ApplicativeWrapper f v) |
class AbstractSubtract p v | p -> v whereSource
Instances
class AbstractScale v whereSource
Methods
scalarMultiply :: RSdouble -> v -> vSource
Instances
| AbstractScale Double | |
| AbstractScale Float | |
| AbstractScale RSdouble | |
| AbstractScale RSfloat | |
| AbstractScale Angle | |
| AbstractScale Vector3D | |
| AbstractScale RGBA | |
| AbstractScale RGB | |
| AbstractScale Time | |
| AbstractScale a => AbstractScale [a] | |
| HasResolution a => AbstractScale (Fixed a) | |
| AbstractScale a => AbstractScale (Rate a) | |
| (AbstractScale a, AbstractScale b) => AbstractScale (a, b) | |
| (Applicative f, AbstractScale v) => AbstractScale (ApplicativeWrapper f v) |
class AbstractMagnitude v whereSource
Instances
abstractScaleTo :: (AbstractScale v, AbstractMagnitude v) => RSdouble -> v -> vSource
abstractSum :: (AbstractAdd p v, AbstractZero p) => [v] -> pSource
abstractAverage :: (AbstractAdd p v, AbstractSubtract p v, AbstractVector v, AbstractZero p) => [p] -> pSource
abstractDistance :: (AbstractMagnitude v, AbstractSubtract p v) => p -> p -> RSdoubleSource