Safe Haskell | None |
---|---|
Language | Haskell98 |
This module contains the necessary calls to the other modules of Metafont'
to compute the outlines of a given number of pen strokes. The normal way of
using it is by calling outlines
. One other possible way would be :
let curves=cutAll curvesList in remerge $ contour curves $ intersections curves
Synopsis
- cutAll :: [[Curve]] -> Vector (Vector Curve)
- intersections :: Vector (Vector Curve) -> Map (Int, Int, Double) [(Int, Int, Double, Double)]
- contour :: Vector (Vector Curve) -> Map (Int, Int, Double) [(Int, Int, Double, Double)] -> [[(Int, Int, Double, Double)]]
- remerge :: Vector (Vector Curve) -> [(Int, Int, Double, Double)] -> [Curve]
- outlines :: [[Curve]] -> [[Curve]]
Documentation
cutAll :: [[Curve]] -> Vector (Vector Curve) Source #
is the array of all the curves, cut such that
each part does not intersect itself.cutAll
curves
intersections :: Vector (Vector Curve) -> Map (Int, Int, Double) [(Int, Int, Double, Double)] Source #
Computes the intersections between any pair of curves given
as input, in parallel in GHC using +RTS -N
.
contour :: Vector (Vector Curve) -> Map (Int, Int, Double) [(Int, Int, Double, Double)] -> [[(Int, Int, Double, Double)]] Source #
contour
takes the curves and the intersections computed as in intersections
,
and outputs a list of all simple closed paths defined by the curves in the input.