Thread growth to the renderer, draw blossom
[L-seed.git] / src / Lseed / Constants.hs
1 module Lseed.Constants where 
2
3 -- All relative to the screen width
4 groundLevel = 0.03
5 budSize     = 0.01
6 stipeLength = 0.05
7 blossomSize = 0.03
8 stipeWidth  = 0.01
9
10 -- | Light and growths interpolation frequency
11 ticksPerDay = 9
12
13 -- | Plant length growth per Day and Light
14 --
15 -- 1 means: Can grow one stipeLength during one day, when catching the sunlight with one branch of (projected) length screenwidth
16 growthPerDayAndLight = 15.0
17
18 -- | Default growth (for plants without light)
19 --growthPerDay = 0.5
20 growthPerDay = 3.0
21
22 -- | Cost (in light units) per (length for maintaining the plant)^2, to limit the growth of the plants
23 costPerLength = 0.002
24
25 -- | Cost (in length growths equivalent) per seed to be grown
26 seedGrowthCost = 1.0
27
28 -- | Length of one day, in seconds
29 dayLength = 10 
30
31 -- | ε
32 eps = 1e-9
33
34 -- | Minimum radial angular distance between two branches
35 minAngle = pi/20
36
37 -- | Derived constants
38 tickLength = fromIntegral dayLength / fromIntegral ticksPerDay