spatial-math 0.1.6 → 0.1.7
raw patch · 3 files changed
+6/−6 lines, 3 files
Files
- Quat.hs +2/−3
- SpatialMath.hs +3/−2
- spatial-math.cabal +1/−1
Quat.hs view
@@ -1,6 +1,7 @@ {-# OPTIONS_GHC -Wall #-} {-# Language StandaloneDeriving #-} {-# Language DeriveDataTypeable #-}+{-# Language DeriveFunctor #-} module Quat ( Quat(..) , zipWithQuat@@ -18,9 +19,7 @@ deriving instance Typeable1 Quat deriving instance Data a => Data (Quat a)--instance Functor Quat where- fmap f (Quat q0 q1 q2 q3) = Quat (f q0) (f q1) (f q2) (f q3)+deriving instance Functor Quat zipWithQuat :: (a -> b -> c) -> Quat a -> Quat b -> Quat c zipWithQuat f (Quat p0 p1 p2 p3) (Quat q0 q1 q2 q3) = Quat (f p0 q0) (f p1 q1) (f p2 q2) (f p3 q3)
SpatialMath.hs view
@@ -1,6 +1,7 @@ {-# OPTIONS_GHC -Wall #-} {-# Language StandaloneDeriving #-} {-# Language DeriveDataTypeable #-}+{-# Language DeriveFunctor #-} module SpatialMath ( module Xyz , module Quat@@ -36,11 +37,11 @@ import Data.Data ( Data ) import Data.Typeable ( Typeable1 ) --data Euler a = Euler a a a deriving (Eq, Show)+data Euler a = Euler a a a deriving (Eq, Show) -- {yaw, pitch, roll} deriving instance Typeable1 Euler deriving instance Data a => Data (Euler a)+deriving instance Functor Euler rotateXyzAboutX :: Floating a => Xyz a -> a -> Xyz a rotateXyzAboutX (Xyz ax ay az) rotAngle = Xyz bx by bz
spatial-math.cabal view
@@ -1,5 +1,5 @@ name: spatial-math-version: 0.1.6+version: 0.1.7 synopsis: 3d math including quaternions/euler angles/dcms and utility functions description: This is a port of my 'mathlib' C library: https://github.com/ghorn/mathlib license: BSD3