Smoke

object Smoke
class Object
trait Matchable
class Any

Value members

Concrete methods

def cool(color: Color): Random[Color]
def particle(point: Point, color: Color, radius: Double): Image
def perturb(point: Point): Random[Point]
def randomWalk(steps: Int): Random[Image]
def step(point: Point, color: Color, radius: Double): Random[(Point, Color, Double)]
def widen(radius: Double): Random[Double]

Concrete fields

val drift: Vec
val emitter: Free[[A] =>> RandomOp[A], Point]
val image: Free[[A] =>> RandomOp[A], Image]