Files
loop/src/Dodge/Data/ForegroundShape.hs
T

27 lines
618 B
Haskell

{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
module Dodge.Data.ForegroundShape where
import LinearHelp
import Control.Lens
import Data.Aeson
import Data.Aeson.TH
import Geometry
import ShapePicture
import TH.Derive
import Data.Store
data ForegroundShape = ForegroundShape
{ _fsID :: Int
, _fsPos :: Point2
, _fsDir :: Float
, _fsRad :: Float -- This should probably be a bounding box
, _fsSPic :: SPic
}
deriving (Eq, Ord, Show, Read)
makeLenses ''ForegroundShape
deriveJSON defaultOptions ''ForegroundShape
$($(derive [d| instance Deriving (Store ForegroundShape) |]))