Safe Haskell | None |
---|---|
Language | Haskell98 |
Simulate mode is for producing an animation of some model who's picture
changes over finite time steps. The behavior of the model can also depent
on the current ViewPort
.
- module Graphics.Gloss.Data.Display
- module Graphics.Gloss.Data.Picture
- module Graphics.Gloss.Data.Color
- simulate :: Display -> Color -> Int -> model -> (model -> Picture) -> (ViewPort -> Float -> model -> model) -> IO ()
- data ViewPort = ViewPort {
- viewPortTranslate :: !(Float, Float)
- viewPortRotate :: !Float
- viewPortScale :: !Float
Documentation
module Graphics.Gloss.Data.Display
module Graphics.Gloss.Data.Picture
module Graphics.Gloss.Data.Color
:: Display | Display mode. |
-> Color | Background color. |
-> Int | Number of simulation steps to take for each second of real time. |
-> model | The initial model. |
-> (model -> Picture) | A function to convert the model to a picture. |
-> (ViewPort -> Float -> model -> model) | A function to step the model one iteration. It is passed the current viewport and the amount of time for this simulation step (in seconds). |
-> IO () |
Run a finite-time-step simulation in a window. You decide how the model is represented, how to convert the model to a picture, and how to advance the model for each unit of time. This function does the rest.
Once the window is open you can use the same commands as with display
.
The ViewPort
represents the global transformation applied to the displayed picture.
When the user pans, zooms, or rotates the display then this changes the ViewPort
.
ViewPort | |
|