Personal tools

Diagrams/Projects

From HaskellWiki

< Diagrams(Difference between revisions)
Jump to: navigation, search
(Potential projects)
(Potential projects)
Line 6: Line 6:
   
 
* Figure out an infrastructure for including animations in the gallery and/or user manual. See https://github.com/diagrams/diagrams-doc/issues/1 .
 
* Figure out an infrastructure for including animations in the gallery and/or user manual. See https://github.com/diagrams/diagrams-doc/issues/1 .
* Build some [[example animations]].
 
 
* Add extra intensional information to help do a better job with combining envelopes? e.g. inner and outer bounding boxes, circles, etc. e.g. if the outer bound of one lies completely inside the inner bound of another, the resulting combined envelope can be optimized to not actually do a max operation.
 
* Add extra intensional information to help do a better job with combining envelopes? e.g. inner and outer bounding boxes, circles, etc. e.g. if the outer bound of one lies completely inside the inner bound of another, the resulting combined envelope can be optimized to not actually do a max operation.
 
* contrib module for graph drawing.
 
* contrib module for graph drawing.
 
** roundtrip through Graphviz for graph layout?
 
** roundtrip through Graphviz for graph layout?
* Try reimplementing some existing cool graphics using diagrams, either to obtain some cool examples or to help drive new diagrams features.
+
* Try reimplementing some existing cool graphics or animations using diagrams, either to obtain some cool examples or to help drive new features in diagrams or active. Some possible sources of inspiration:
 
** http://web.williams.edu/Mathematics/devadoss/papers.html
 
** http://web.williams.edu/Mathematics/devadoss/papers.html
 
** http://www.bridgesmathart.org/
 
** http://www.bridgesmathart.org/
 
** http://recodeproject.com/
 
** http://recodeproject.com/
  +
* [http://www.joachim-breitner.de/blog/archives/557-A-copying-garbage-collector-animated.html Joachim Breitner's animation of a copying garbage collector]
  +
* [http://www.numbersimulation.com/ Cool animation demonstrating the concept of prime numbers with orbiting segments for each natural]
   
 
==Officially supported backends==
 
==Officially supported backends==

Revision as of 15:16, 14 May 2013

Contents

1 Potential projects

Looking for something to work on? Try one of these!

See also Diagrams/GSoC which has more ideas.

2 Officially supported backends

2.1 Native SVG

A Haskell-native backend generating SVG. As of diagrams-0.6 this is the default "out-of-the-box" diagrams backend.

  • hackage
  • github repo
  • Status: active development
  • Participants: Deepak Jois, Ryan Yates, Felipe Lessa, Brent Yorgey

2.2 Cairo

Full-featured backend using cairo.

2.3 GTK

Backend built on top of the cairo backend for rendering directly to GTK windows.

2.4 Native Postscript

Very similar to the Cairo backend but only outputting EPS.

3 Unofficial backends

3.1 HTML5 canvas

3.2 LaTeX/TikZ

  • original darcs repo by Scott Walck
  • updated version by Malte Harder on github
  • Status: dormant
  • Participants: Scott Walck, Malte Harder

3.3 POV-Ray

A POV-Ray backend for 3D diagrams.

  • github repo
  • Status: proof of concept only, needs someone to take it over!

3.4 Wanted backends

  • OpenGL

4 Related packages and tools

4.1 command-line/interactive

See also an earlier project in a similar direction:

4.2 Build service

diagrams-builder is a library providing the ability to dynamically interpret diagrams code snippets, including utilities for creating temporary files etc. as needed. Useful for making preprocessing tools for embedding diagrams code in other document formats (e.g. LaTeX).

4.3 Fonts

The SVGFonts package implements Haskell-native font support (for fonts in the SVG-font format) that can be plugged into diagrams.

5 Other projects

5.1 gtk-toy

Michael Sloan's gtk-toy project is a framework for creating interactive gtk/cairo applications. gtk-toy-diagrams provides tools for using diagrams in conjunction with gtk-toy.

5.2 LaTeXgrapher

LaTeXGrapher is a project by Ryan Yates providing a domain-specific language for producing mathematical graphs, backed by the diagrams-postscript backend.

Deepak Jois is working on a logo interpreter written in Haskell, using diagrams as a backend.

6 Packages using diagrams