Packages

  • package root
    Definition Classes
    root
  • package doodle
    Definition Classes
    root
  • package interact
    Definition Classes
    doodle
  • package syntax
    Definition Classes
    interact
  • trait AbstractAnimationRendererSyntax extends AnyRef

    Rendering works differently on different platforms.

    Rendering works differently on different platforms. The Javascript runtime must render asynchronously. The JVM runtime can render asychronously or sychronously. However, rendering in a Swing / Java2D context takes places on a daemon thread. This means the JVM will exit if this is the only thread running. The implication is that short Doodle program that does not block the main thread waiting for the Swing thread to complete will usually exit before the output appears. Therefore, at least in the common case, rendering should be synchronous on the JVM. People who want more control can work directly with IO.

    Definition Classes
    syntax
  • AnimateStreamOps
  • AnimateToStreamOps

implicit class AnimateStreamOps[Alg <: Algebra, A] extends AnyRef

This syntax is for streams producing pictures at a rate that is appropriate for animation.

Source
AbstractAnimationRendererSyntax.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. AnimateStreamOps
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new AnimateStreamOps(frames: Stream[IO, Picture[Alg, A]])

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def animate[Frame, Canvas](frame: Frame)(implicit a: AnimationRenderer[Canvas], e: Renderer[Alg, Frame, Canvas], m: Monoid[A], runtime: IORuntime): Unit

    Convenience to animate a Stream of pictures on a canvas created from the given frame.

  5. def animateToIO[Frame, Canvas](frame: Frame)(implicit a: AnimationRenderer[Canvas], e: Renderer[Alg, Frame, Canvas], m: Monoid[A]): IO[A]

    Create an effect that, when run, will render a Stream that is generating frames at an appropriate rate for animation.

  6. def animateWithCanvas[Canvas](canvas: Canvas)(implicit a: AnimationRenderer[Canvas], e: Renderer[Alg, _, Canvas], m: Monoid[A], runtime: IORuntime): Unit

    Convenience to animate a Stream that is generating frames at an appropriate rate for animation onto the given canvas.

  7. def animateWithCanvasToIO[Canvas](canvas: Canvas)(implicit a: AnimationRenderer[Canvas], e: Renderer[Alg, _, Canvas], m: Monoid[A]): IO[A]

    Create an effect that, when run, will render a Stream that is generating frames an appropriate rate for animation.

  8. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  9. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  10. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  11. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  12. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  13. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  14. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  15. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  16. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  17. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  18. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  19. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  20. def toString(): String
    Definition Classes
    AnyRef → Any
  21. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  22. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  23. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  24. def withFrameRate(period: FiniteDuration): Stream[IO, Picture[Alg, A]]

    Makes this Stream produce frames with the given period between frames.

    Makes this Stream produce frames with the given period between frames. This is useful if the Stream is producing frames too quickly or slowly for the desired animation.

    A convenience derived from the metered method on Stream.

Inherited from AnyRef

Inherited from Any

Ungrouped