module LSystem.Render.PS where
import Graphics.PS
import LSystem.LSystem
import LSystem.Turtle
renderL :: (LSystem,Double,Double) -> Int -> Double -> [(Pt,Pt)]
renderL (l,ta',ls') i ll' =
let a = Turtle (radians ta') 1 origin (pi / 2) ll' ls' []
in render [] (\ll'' p1 p2 -> (p1,p2) : ll'') (expand l i) a
draw :: Double -> Path -> Image
draw z p =
let g = greyGS 0.5
in (translate 200 200 . scale z z) (Stroke g p)
renderLL,renderLO :: (LSystem,Double,Double) -> Int -> Double -> Path
renderLL a b = renderLines . renderL a b
renderLO a b = renderLines' . renderL a b