Portability | GHC |
---|---|
Stability | highly unstable |
Maintainer | Stephen Tetley <stephen.tetley@gmail.com> |
A variant of the tree drawing algorithm from Andrew Kennedy - Functional Pearls Drawing Trees 1996.
Acknowledgment - although based on Andrew Kennedy's algorithm, this version uses absolute extents rather than relative ones and is a somewhat different in detail if not in spirit to the original.
Any mistakes are mine of course.
- design :: (Fractional u, Ord u) => Point2 u -> ScalingContext u Int u -> Tree a -> CoordTree u a
- rotateAboutRoot :: (Real u, Floating u) => Radian -> CoordTree u a -> CoordTree u a
Documentation
design :: (Fractional u, Ord u) => Point2 u -> ScalingContext u Int u -> Tree a -> CoordTree u aSource
Design a tree, properly balancing the child nodes oriented at root.
As the design has no y-positions (but by recursion they can be counted) and x-positions are respective to the unit distance 1.0 separating nodes it is rescaled as a post-processing step into drawable coordinates.