shapes-0.1.0.0: physics engine and other tools for 2D shapes

Safe HaskellNone
LanguageHaskell2010

Physics.World.Object

Description

A physical object that can inhabit a physical world. Contains a field to hold a reference to something outside the physical world.

Documentation

data WorldObj a Source #

Instances

Show (WorldObj a) Source # 

Methods

showsPrec :: Int -> WorldObj a -> ShowS #

show :: WorldObj a -> String #

showList :: [WorldObj a] -> ShowS #

Generic (WorldObj a) Source # 

Associated Types

type Rep (WorldObj a) :: * -> * #

Methods

from :: WorldObj a -> Rep (WorldObj a) x #

to :: Rep (WorldObj a) x -> WorldObj a #

NFData a => NFData (WorldObj a) Source # 

Methods

rnf :: WorldObj a -> () #

Contactable (WorldObj a) Source # 

Methods

woMu :: Functor f => (Double -> f Double) -> WorldObj a -> f (WorldObj a) Source #

woShape :: Functor f => (Shape -> f Shape) -> WorldObj a -> f (WorldObj a) Source #

woMuShape :: Functor f => ((Double, Shape) -> f (Double, Shape)) -> WorldObj a -> f (WorldObj a) Source #

Physical (WorldObj a) Source # 

Methods

woPhys :: Functor f => (PhysicalObj -> f PhysicalObj) -> WorldObj a -> f (WorldObj a) Source #

type Rep (WorldObj a) Source # 
type Rep (WorldObj a) = D1 * (MetaData "WorldObj" "Physics.World.Object" "shapes-0.1.0.0-E6UUiYRpOc15rGTlEn6KOE" False) (C1 * (MetaCons "WorldObj" PrefixI True) ((:*:) * ((:*:) * (S1 * (MetaSel (Just Symbol "_worldPhysObj") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * PhysicalObj)) (S1 * (MetaSel (Just Symbol "_worldObjMu") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * Double))) ((:*:) * (S1 * (MetaSel (Just Symbol "_worldShape") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * Shape)) (S1 * (MetaSel (Just Symbol "_worldUserData") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * a)))))

worldUserData :: forall a a. Lens (WorldObj a) (WorldObj a) a a Source #