diagrams-contrib- Collection of user contributions to diagrams EDSL

Safe HaskellNone



Combinators to allow writing Metafont-style paths embedded in Haskell, with the usual Diagrams types for points and directions.



(.-) :: P2 -> MFPathData J -> MFPathData P infixr 5 Source

point .- join -. path adds point to the left end of the metafont path, connected by join.

(-.) :: Join -> MFPathData P -> MFPathData J infixr 5 Source

See .- above.

(.--.) :: P2 -> MFPathData P -> MFPathData P infixr 5 Source

Add a point to the left of a Metafont path using a simple join. That is, neither direction is specified, and both tensions are 1.

endpt :: P2 -> MFPathData P Source

Terminate the right-end of a Metafont path at the given point.

cyclePath :: MFPathData P Source

Wrap the right-end of the Metafont path back to the left-end. When converted to a Diagrams Trail', this will be a Loop.

simpleJoin :: Join Source

simpleJoin is the same as mempty, with a more specific type. It is provided for convenience in situations where explicit type signatures would otherwise be needed, such as when building up a join using lenses.

tension :: Double -> Join Source

A join with both tensions the same.

tensions :: Double -> Double -> Join Source

A join with two tension values.

controls :: P2 -> P2 -> Join Source

A join with explicit control points. Note that these are in the same coordinate system as the endpoints, not relative to the latter.

leaving :: R2 -> Join Source

A join with the left-end direction specified.

arriving :: R2 -> Join Source

A join with the right-end direction specified.