Doodle - The standard for Origami diagramming


Doodle is a descriptive language to produce Origami (paper folding) diagrams. Doodle is the software which translates the source code written in its language into a ready-to-print diagram (PS, GIF, PDF, HTML...).

Doodle takes in input a Doodle file, then analyzes it and generates a graphic file. At the present time, Doodle can only produce PostScript files, other formats are aimed.

The language uses only ASCII characters and no other symbol. A simple text editor is enough, and the Doodle diagram can be sent by mail easily.

A Doodle source code is composed of a general description, followed by one or more steps (like a traditional diagram). Each step is a succession of operators making it possible to calculate control points or to describe the movements to carry out the step using these points. For example, a geometrical operator as \point_to_point calculates the points necessary to bring a point on another by a fold. An operator as \valley_fold draws a valley fold between two points (like those previously calculated). 

Doodle allows a purely geometrical description of folding : each point is located in relation to the others in a precise and geometrical way. But the compiler (current version) does not control feasibility, nor the folding coherence. All is possible if it can be described geometrically. 

The operators are rather explicit, it is thus possible to fold while following the text. But it is easier to transform it into diagram using the compiler. 


The Doodle diagram file is a simple ASCII file and can be edited with your favorite text editor (Notepad under Windows for instance or XEmacs under Unix). 

Then, on command line, launch the program in the following way: 

Doodle -- J. Gout, X. Fouchet and V. Osele -- Copyright 2000-2001

Usage: doodle [-h] [-v] [-f format] [-o file] file
   -h        : this short usage help
   -v        : verbose mode
   -f format : specifies output format (default ps)
               known formats are : ps, text, graph
   -o file   : uses `file' as the output file
               by default produces extension .ps
   file      : input diagram file (.doo)

Example: if your file is called crane.doo, type the following command "doodle crane.doo". In the current version, you will obtain by default a file derived from the input file name with ps extension.
Some information is given at the end of the conversion: 
  • name of the output file
  • number of steps for the model
  • number of pages


The following short example:

\diagram_header {
  \title("Traditional crane");
  \diagramer("Jerome Gout");
  \color_back(100, 8, 58);
\step {
  \diamond(a, b, c, d);
  [mid_ab, mid_dc] = \line_to_line([b,c], [a,d], [a, b], [d,c]);
  [mid_da, mid_bc] = \line_to_line([a, b], [d,c], [a,d], [b,c]);
  \valley_fold(mid_ab, mid_dc);
  \simple_arrow(mid_da, mid_bc, unfold, valley, right);
  \valley_fold(mid_da, mid_bc);
  \simple_arrow(mid_ab, mid_dc, unfold, valley, left);
  \caption("Fold unfold medians and return"); 

gives this result : example.pdf example.jpg

Jump to the resources page to see other examples of what you can expect with this system.


This project is hosted by Sourceforge, you can get more information
on open source projects hosting to the sourceforge homepage:
©2000-2001 Doodle