CanvasAlgebra

doodle.canvas.algebra.CanvasAlgebra

Attributes

Source
CanvasAlgebra.scala
Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Transform
trait Style
trait Size
trait Layout
trait Debug
trait Shape
trait Shape
trait Path
trait Path
trait Algebra
class Object
trait Matchable
class Any
Show all

Members list

Type members

Inherited classlikes

object PathApi extends PathApi

Attributes

Inherited from:
Path
Source
Path.scala
Supertypes
trait PathApi
class Object
trait Matchable
class Any
trait PathApi

Attributes

Inherited from:
GenericPath
Source
GenericPath.scala
Supertypes
class Object
trait Matchable
class Any
Known subtypes
object PathApi
object ShapeApi extends ShapeApi

Attributes

Inherited from:
Shape
Source
Shape.scala
Supertypes
trait ShapeApi
class Object
trait Matchable
class Any
trait ShapeApi

Attributes

Inherited from:
GenericShape
Source
GenericShape.scala
Supertypes
class Object
trait Matchable
class Any
Known subtypes
object ShapeApi

Types

type Drawing[A] = Drawing[A]

The effect type that methods on this algebra produce. Represents an effect that, when run, will draw something and produce a value.

The effect type that methods on this algebra produce. Represents an effect that, when run, will draw something and produce a value.

Attributes

Source
CanvasAlgebra.scala

Value members

Inherited methods

Attributes

Inherited from:
GenericLayout
Source
GenericLayout.scala

Displace img by the given landmark relative to the origin, expanding the bounding box if necessary to include the relocated image.

Displace img by the given landmark relative to the origin, expanding the bounding box if necessary to include the relocated image.

Attributes

Inherited from:
GenericLayout
Source
GenericLayout.scala
def at[A](img: Drawing[A], offset: Point): Drawing[A]

Attributes

Inherited from:
Layout
Source
Layout.scala
def at[A](img: Drawing[A], offset: Vec): Drawing[A]

Attributes

Inherited from:
Layout
Source
Layout.scala
def at[A](img: Drawing[A], r: Double, a: Angle): Drawing[A]

Attributes

Inherited from:
Layout
Source
Layout.scala
def at[A](img: Drawing[A], x: Double, y: Double): Drawing[A]

Attributes

Inherited from:
Layout
Source
Layout.scala
def below[A](bottom: Drawing[A], top: Drawing[A])(implicit s: Semigroup[A]): Drawing[A]

Attributes

Inherited from:
Layout
Source
Layout.scala

Attributes

Inherited from:
GenericLayout
Source
GenericLayout.scala

Get the bounding box enclosing the picture

Get the bounding box enclosing the picture

Attributes

Inherited from:
GenericSize
Source
GenericSize.scala

Attributes

Inherited from:
GenericPath
Source
GenericPath.scala
def catmulRom(points: Seq[Point], tension: Double): Drawing[Unit]

Attributes

Inherited from:
Path
Source
Path.scala
def circle(diameter: Double): Finalized[CanvasDrawing, Unit]

A circle with the given diameter. We use diamter rather than radius so circle(100) has the same size as square(100)

A circle with the given diameter. We use diamter rather than radius so circle(100) has the same size as square(100)

Attributes

Inherited from:
GenericShape
Source
GenericShape.scala

Draws the bounding box and origin of the given picture on top of the picture. The given color is used for the bounding box and origin.

Draws the bounding box and origin of the given picture on top of the picture. The given color is used for the bounding box and origin.

The bounding box and origin are not included in layout calculations and hence will not affect the picture's layout.

Attributes

Inherited from:
GenericDebug
Source
GenericDebug.scala

The empty shape, which is no shape at all.

The empty shape, which is no shape at all.

Attributes

Inherited from:
GenericShape
Source
GenericShape.scala
def equilateralTriangle(width: Double): Drawing[Unit]

Create an equilateral triangle with the given side length.

Create an equilateral triangle with the given side length.

Attributes

Inherited from:
Path
Source
Path.scala

Get the height of the bounding box enclosing the picture

Get the height of the bounding box enclosing the picture

Attributes

Inherited from:
GenericSize
Source
GenericSize.scala

Attributes

Inherited from:
Transform
Source
Transform.scala

Attributes

Inherited from:
Path
Source
Path.scala
def margin[A](img: Finalized[CanvasDrawing, A], top: Double, right: Double, bottom: Double, left: Double): Finalized[CanvasDrawing, A]

Expand the bounding box of img by the given amounts.

Expand the bounding box of img by the given amounts.

Attributes

Inherited from:
GenericLayout
Source
GenericLayout.scala
def margin[A](img: Drawing[A], width: Double): Drawing[A]

Attributes

Inherited from:
Layout
Source
Layout.scala
def margin[A](img: Drawing[A], width: Double, height: Double): Drawing[A]

Attributes

Inherited from:
Layout
Source
Layout.scala

Attributes

Inherited from:
GenericStyle
Source
GenericStyle.scala

Attributes

Inherited from:
GenericStyle
Source
GenericStyle.scala

Place the origin of top on the origin of bottom

Place the origin of top on the origin of bottom

Attributes

Inherited from:
GenericLayout
Source
GenericLayout.scala

Place the origin of img at the given landmark, expanding the bounding box if necessary to include the relocated origin.

Place the origin of img at the given landmark, expanding the bounding box if necessary to include the relocated origin.

Attributes

Inherited from:
GenericLayout
Source
GenericLayout.scala

Attributes

Inherited from:
Layout
Source
Layout.scala

Attributes

Inherited from:
Layout
Source
Layout.scala
def originAt[A](img: Drawing[A], r: Double, a: Angle): Drawing[A]

Attributes

Inherited from:
Layout
Source
Layout.scala
def originAt[A](img: Drawing[A], x: Double, y: Double): Drawing[A]

Attributes

Inherited from:
Layout
Source
Layout.scala

Attributes

Inherited from:
GenericPath
Source
GenericPath.scala

Attributes

Inherited from:
GenericPath
Source
GenericPath.scala
def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product
def rectangle(width: Double, height: Double): Finalized[CanvasDrawing, Unit]

A rectangle with the given width and height.

A rectangle with the given width and height.

Attributes

Inherited from:
GenericShape
Source
GenericShape.scala
def regularPolygon(sides: Int, radius: Double): Drawing[Unit]

Attributes

Inherited from:
Path
Source
Path.scala

Attributes

Inherited from:
Transform
Source
Transform.scala
def roundedRectangle(width: Double, height: Double, radius: Double): Drawing[Unit]

Attributes

Inherited from:
Path
Source
Path.scala
def scale[A](img: Drawing[A], x: Double, y: Double): Drawing[A]

Attributes

Inherited from:
Transform
Source
Transform.scala
def size[A](picture: Finalized[CanvasDrawing, A]): Finalized[CanvasDrawing, (Double, Double)]

Get the width and height of the bounding box enclosing the picture

Get the width and height of the bounding box enclosing the picture

Attributes

Inherited from:
GenericSize
Source
GenericSize.scala
def size[A](img: Finalized[CanvasDrawing, A], width: Double, height: Double): Finalized[CanvasDrawing, A]

Set the width and height of the given Drawing's bounding box to the given values. The new bounding box has the same origin as the original bounding box, and extends symmetrically above and below, and left and right of the origin.

Set the width and height of the given Drawing's bounding box to the given values. The new bounding box has the same origin as the original bounding box, and extends symmetrically above and below, and left and right of the origin.

Attributes

Inherited from:
GenericLayout
Source
GenericLayout.scala
def size[A](img: Drawing[A], extent: Double): Drawing[A]

Utility to set the width and height to the same value.

Utility to set the width and height to the same value.

Attributes

Inherited from:
Layout
Source
Layout.scala
def square(width: Double): Finalized[CanvasDrawing, Unit]

A square with the given side length.

A square with the given side length.

Attributes

Inherited from:
GenericShape
Source
GenericShape.scala
def star(points: Int, outerRadius: Double, innerRadius: Double): Drawing[Unit]

Attributes

Inherited from:
Path
Source
Path.scala

Specify the stroke dash pattern. The pattern gives the length, in local coordinates, of opaque and transparent sections. The first element is the length of an opaque section, the second of a transparent section, and so on.

Specify the stroke dash pattern. The pattern gives the length, in local coordinates, of opaque and transparent sections. The first element is the length of an opaque section, the second of a transparent section, and so on.

Attributes

Inherited from:
GenericStyle
Source
GenericStyle.scala

Attributes

Inherited from:
GenericStyle
Source
GenericStyle.scala
def translate[A](img: Drawing[A], vec: Vec): Drawing[A]

Attributes

Inherited from:
Transform
Source
Transform.scala
def translate[A](img: Drawing[A], x: Double, y: Double): Drawing[A]

Attributes

Inherited from:
Transform
Source
Transform.scala
def triangle(width: Double, height: Double): Finalized[CanvasDrawing, Unit]

An isoceles triangle with the given width and height.

An isoceles triangle with the given width and height.

Attributes

Inherited from:
GenericShape
Source
GenericShape.scala
def under[A](bottom: Drawing[A], top: Drawing[A])(implicit s: Semigroup[A]): Drawing[A]

Attributes

Inherited from:
Layout
Source
Layout.scala

Attributes

Inherited from:
Transform
Source
Transform.scala

Get the width of the bounding box enclosing the picture

Get the width of the bounding box enclosing the picture

Attributes

Inherited from:
GenericSize
Source
GenericSize.scala

Implicits

Implicits

implicit val drawingInstance: Monad[Drawing]

Attributes

Source
CanvasAlgebra.scala