Module Povray

type camera
type surface
val color : Playground.color -> surface
val glassy : Playground.number -> surface -> surface
type obj
val sphere : surface -> obj
val plane : surface -> obj
val box : surface -> obj
val cylinder : surface -> obj
val cone : surface -> obj
val torus : Playground.number -> surface -> obj
val union : obj list -> obj
val inter : obj list -> obj
val diff : obj -> obj -> obj
type light
val area_lamp : Playground.number -> light -> light
type scene
val scene : ?ambient:Playground.number -> ?sky:Playground.color -> camera:camera -> light list -> obj list -> scene
type model
val still : ?export:< Cap.open_out > -> ?file:string -> ?rays_per_frame:int -> ?size:(int * int) -> ?algorithm:Raytrace.algorithm -> ?samples:int -> scene -> (model Playground.game, Playground.msg) Playground.app
val orbit : ?export:< Cap.open_out > -> ?file:string -> ?rays_per_frame:int -> ?size:(int * int) -> ?algorithm:Raytrace.algorithm -> ?samples:int -> scene -> (model Playground.game, Playground.msg) Playground.app
val raytrace_scene : scene -> Raytrace.scene
val pick : scene -> width:int -> height:int -> Playground.number -> Playground.number -> obj option