module Dodge.Wall.Reflect where import Geometry import Dodge.Data reflDirWall :: Point2 -> Point2 -> Wall -> Float reflDirWall sp ep wl = argV (reflectIn (uncurry (-.-) (_wlLine wl)) (ep -.- sp)) -- point free nonsense reflVelWallDamp :: Float -> Wall -> Point2 -> Point2 reflVelWallDamp x = reflectInParam x . uncurry (-.-) . _wlLine -- point free nonsense reflVelWall :: Wall -> Point2 -> Point2 reflVelWall = reflectIn . uncurry (-.-) . _wlLine