module SpatialMath.Internal (
libm_atan2
, libm_atan2f
) where
import Foreign.C.Types ( CDouble(..), CFloat(..) )
foreign import ccall unsafe "math.h atan2" c_atan2
:: CDouble -> CDouble -> CDouble
foreign import ccall unsafe "math.h atan2f" c_atan2f
:: CFloat -> CFloat -> CFloat
libm_atan2 :: Double -> Double -> Double
libm_atan2 y x = ret
where
CDouble ret = c_atan2 (CDouble y) (CDouble x)
libm_atan2f :: Float -> Float -> Float
libm_atan2f y x = ret
where
CFloat ret = c_atan2f (CFloat y) (CFloat x)