Tweak shell spin

This commit is contained in:
2025-01-08 22:07:04 +00:00
parent d952bd48cc
commit c355fe4f5f
9 changed files with 179 additions and 173 deletions
+11
View File
@@ -133,6 +133,17 @@ normalizeAngle f
floor' :: Float -> Float
floor' x = fromIntegral (floor x :: Int)
-- | Normalize an angle to be between -pi and pi radians
nearZeroAngle :: Float -> Float
{-# INLINE nearZeroAngle #-}
nearZeroAngle a
| a >= -pi && a < pi = a
| otherwise = a - 2 * pi * floor' ((a +pi) / (2 * pi))
where
floor' :: Float -> Float
floor' x = fromIntegral (floor x :: Int)
-- | Rotate vector by pi/2 clockwise.
vNormal :: Point2 -> Point2
{-# INLINE vNormal #-}