mars 0.1.0.3 → 0.1.0.4
raw patch · 9 files changed
+23/−27 lines, 9 filesdep ~arraydep ~random
Dependency ranges changed: array, random
Files
- Graphics/Mars/Array.hs +2/−1
- Graphics/Mars/Example.hs +1/−1
- Graphics/Mars/Graph.hs +3/−3
- Graphics/Mars/Paint.hs +6/−7
- Graphics/Mars/Ply.hs +3/−6
- Graphics/Mars/ReaderStateRandom.hs +2/−4
- Graphics/Mars/Stamp.hs +2/−2
- Graphics/Mars/Walk.hs +1/−0
- mars.cabal +3/−3
Graphics/Mars/Array.hs view
@@ -12,8 +12,9 @@ import Prelude( (+), (-), (*), Num, Bool, (==), return, Maybe(..), map, sequence_)-import Data.Array.IArray+import Data.Array.IArray(IArray, bounds) import Data.Array.IO+ (Ix, MArray, getBounds, inRange, readArray, getBounds, inRange, writeArray) safeReadArray :: (Ix i, MArray a e m) => a i e -> i -> m (Maybe e) safeReadArray a i = do r <- getBounds a
Graphics/Mars/Example.hs view
@@ -12,7 +12,7 @@ import Prelude(IO, (.), ($), writeFile) import Graphics.Gloss (black)-import Data.Array.Unboxed+import Data.Array.Unboxed (elems) import Graphics.Mars.Paint import Graphics.Mars.Graph import Graphics.Mars.Display2D
Graphics/Mars/Graph.hs view
@@ -11,11 +11,11 @@ module Graphics.Mars.Graph where import Prelude((+), (*), fromIntegral, round, Float, Int, take, IO)-import Data.Array.IO-import Data.Array.Unboxed+import Data.Array.IO (newArray, IOUArray, freeze)+import Data.Array.Unboxed (UArray) import Graphics.Mars.Stamp import Graphics.Mars.Walk-import System.Random+import System.Random (mkStdGen) -- |Beginning in the center, follows a random walk path, and stamps a circle -- shape onto the array at each step. Internally uses a mutable unboxed array
Graphics/Mars/Paint.hs view
@@ -15,15 +15,14 @@ import Prelude( (+), Bool(..), fmap, Float, Int, (<), (>), (-), (/), Ord, Num, RealFrac, round, (*))-import Data.ByteString-import Data.Colour.RGBSpace-import Data.Colour.RGBSpace.HSL hiding (hue, lightness)-import Data.Word+import Data.ByteString (ByteString, pack, concat)+import Data.Colour.RGBSpace (channelRed, channelGreen, channelBlue)+import Data.Colour.RGBSpace.HSL (hsl)+import Data.Word (Word8) import Graphics.Gloss( Picture, bitmapOfByteString )-import Data.Array.IArray-import Data.Foldable-import Data.Array.Unboxed+import Data.Foldable (Foldable, foldr)+import Data.Array.Unboxed (elems, bounds, UArray) ratioToByte :: RealFrac a => a -> Word8 ratioToByte r = round (r * 255) :: Word8
Graphics/Mars/Ply.hs view
@@ -20,13 +20,10 @@ import Prelude( show, (++), String, concat, Int, map, (+), (-), filter, length, or, Float, fromIntegral)-import Data.Array.IArray-import Data.Array.MArray-import Data.Array.IO import Graphics.Mars.Array-import Data.Maybe-import Data.Array.Unboxed as U-import Data.Array as A+import Data.Maybe (Maybe(..), fromJust, isJust)+import Data.Array.Unboxed as U (UArray, bounds, indices, assocs)+import Data.Array as A (Array, elems, bounds, listArray, array) data Vertex = Vertex Float Float Float data Face = Face Int Int Int Int
Graphics/Mars/ReaderStateRandom.hs view
@@ -11,8 +11,7 @@ Stacks the Reader, Lazy State, and Random monads together. -} module Graphics.Mars.ReaderStateRandom (- module System.Random- , module Control.Monad.Reader+ module Control.Monad.Reader , module Control.Monad.State.Lazy , module Control.Monad.Random , ReaderStateRandom(..)@@ -22,8 +21,7 @@ ) where import Prelude((.), fst, snd)-import System.Random-import Control.Applicative+import Control.Applicative (Applicative) import Control.Monad.Random import Control.Monad.State.Lazy import Control.Monad.Reader
Graphics/Mars/Stamp.hs view
@@ -17,8 +17,8 @@ import Prelude( map, sequence_, Num, (+), fromIntegral, abs, (<=), (-), (*), ceiling, Float, Integral, (**), sqrt)-import Data.Array.IArray-import Data.Array.IO+import Data.Array.IArray (assocs, IArray, listArray)+import Data.Array.IO (MArray, Ix) import Graphics.Mars.Array type Point = (Float, Float)
Graphics/Mars/Walk.hs view
@@ -25,6 +25,7 @@ import Prelude(repeat, Float, (/), (+), (*), (-)) import Graphics.Mars.ReaderStateRandom+ (ask, put, get, RandomGen, getRandomR, evalRSR, sequence, ReaderStateRandom) type RandomWalk g = ReaderStateRandom Float (Float, Float) g (Float, Float)
mars.cabal view
@@ -10,7 +10,7 @@ -- PVP summary: +-+------- breaking API changes -- | | +----- non-breaking API additions -- | | | +--- code changes with no API change-version: 0.1.0.3+version: 0.1.0.4 -- A short (one-line) description of the package. synopsis: Generates mountainous terrain using a random walk algorithm.@@ -74,10 +74,10 @@ -- Other library packages from which modules are imported. build-depends: base >=4.6 && <4.10 , gloss >=1.7 && <1.10- , random >=1.0 && <1.1+ , random >=1.0 && <1.2 , MonadRandom >=0.4 && <0.5 , mtl >=2.2 && <2.3- , array >=0.4 && <0.5+ , array >=0.4 && <0.6 , bytestring >=0.10 && <0.11 , colour >=2.3 && <2.4