Vis-0.7.7.0: Painless 3D graphics, no affiliation with gloss
Safe HaskellSafe-Inferred
LanguageHaskell2010

Vis.Interface

Synopsis

Documentation

display Source #

Arguments

:: Real b 
=> Options

user options

-> VisObject b

object to draw

-> IO () 

draw a static image

animate Source #

Arguments

:: Real b 
=> Options

user options

-> (Float -> VisObject b)

draw function (takes time since start as input)

-> IO () 

animateIO Source #

Arguments

:: Real b 
=> Options

user options

-> (Float -> IO (VisObject b))

draw function (takes time since start as input)

-> IO () 

display an animation impurely

simulate Source #

Arguments

:: Real b 
=> Options

user options

-> Double

sample rate

-> world

initial state

-> (world -> VisObject b)

draw function

-> (Float -> world -> world)

state propogation function (takes time since start and state as inputs)

-> IO () 

run a simulation

simulateIO Source #

Arguments

:: Real b 
=> Options

user options

-> Double

sample rate

-> world

initial state

-> (world -> IO (VisObject b))

draw function

-> (Float -> world -> IO world)

state propogation function (takes time since start and state as inputs)

-> IO () 

run a simulation impurely

play Source #

Arguments

:: Real b 
=> Options

user options

-> Double

sample time

-> world

initial state

-> (world -> (VisObject b, Maybe Cursor))

draw function, can give a different cursor

-> (Float -> world -> world)

state propogation function (takes time since start and state as inputs)

-> (world -> IO ())

set where camera looks

-> Maybe (world -> Key -> KeyState -> Modifiers -> Position -> world)

keyboard/mouse press callback

-> Maybe (world -> Position -> world)

mouse drag callback

-> Maybe (world -> Position -> world)

mouse move callback

-> IO () 

playIO Source #

Arguments

:: Real b 
=> Options

user options

-> Double

sample time

-> world

initial state

-> (world -> IO (VisObject b, Maybe Cursor))

draw function, can give a different cursor

-> (Float -> world -> IO world)

state propogation function (takes time since start and state as inputs)

-> (world -> IO ())

set where camera looks

-> Maybe (world -> Key -> KeyState -> Modifiers -> Position -> world)

keyboard/mouse press callback

-> Maybe (world -> Position -> world)

mouse drag callback

-> Maybe (world -> Position -> world)

mouse move callback

-> IO ()