This module is mostly a general dump...
- timeSpanFraction :: Double -> ClockTime -> ClockTime -> Double
- formatTimeInfo :: Integer -> Double -> String
- lightAngle :: Double -> Angle
- remainingGrowth :: (a -> GrowthState) -> Planted a -> Double
- growGarden :: RandomGen g => Angle -> g -> GrowingGarden -> Double -> GrowingGarden
- applyGenome :: RandomGen g => Angle -> g -> GrowingGarden -> GrowingGarden
- growPlanted :: GrowingPlanted -> Double -> Double -> GrowingPlanted
- applyGrowth :: Double -> GrowingPlanted -> GrowingPlanted
- applyGrowth' :: (Double -> Double -> Double) -> GrowingPlant -> GrowingPlant
Documentation
formatTimeInfo :: Integer -> Double -> StringSource
lightAngle :: Double -> AngleSource
Given the fraction of the time passed, returnes the angle of the sunlight
remainingGrowth :: (a -> GrowthState) -> Planted a -> DoubleSource
Calculates the length to be grown
growGarden :: RandomGen g => Angle -> g -> GrowingGarden -> Double -> GrowingGardenSource
applyGenome :: RandomGen g => Angle -> g -> GrowingGarden -> GrowingGardenSource
For all Growing plants that are done, find out the next step This involves creating new plants if some are done
growPlanted :: GrowingPlanted -> Double -> Double -> GrowingPlantedSource
Applies an L-System to a Plant, putting the new length in the additional information field
applyGrowth :: Double -> GrowingPlanted -> GrowingPlantedSource
Applies Growth at given fraction, leaving the target length in place
applyGrowth' :: (Double -> Double -> Double) -> GrowingPlant -> GrowingPlantSource