package bogue

  1. Overview
  2. Docs

Animated variables

An Avar.t is a variable that evolves in time. It is updated at every frame (i.e. every iteration of the main loop). Bogue uses Avars for animations.

Dependency graph
type 'a t
type callback = unit -> unit

Avar creation

val create : ?duration:Time.t -> ?init:callback -> ?ending:callback -> ?finished:bool -> ?update:('a t -> float -> 'a) -> 'a -> 'a t

Generic Avar creation. If finished = true, the var never gets further updated, ie behaves like a normal variable. Otherwise, the update parameter is compulsory.

  • parameter update

    is a function such that update v s : 'a should give the value of the Avar v at the time s. The meaning of the time s is described in progress.

val fromto : ?duration:int -> ?ending:callback -> int -> int -> int t

fromto x1 x2 creates a integer Avar.t with initial value x1 and, as time elapses, moves continuously to x2, with a final slowdown.

Avar information

val progress : 'a t -> float

progress v is a float in 0,1 giving the percentage of the animation when the last v.value was computed. In case of infinite animation, this is just the elapsed Time (in ms).

Misc

type direction =
  1. | No
  2. | Left
  3. | Right
  4. | Top
  5. | Bottom
  6. | TopLeft
  7. | TopRight
  8. | BottomLeft
  9. | BottomRight
  10. | Random