PicassoPicasso is an Abstract element drawing library. It handles most of the boilerplate you usually write to draw abstract elements and allows you to view those.
module Colors : sig ... endColors handling
module Drawable : sig ... endModule of drawable abstractions
module Rendering : sig ... endModule for 2d drawing of abstract elements, handles the 'camera' settings, 2D projection, and some graphical options
module Rendering3d : sig ... endModule for 3D model generation of abstract elements
raised by rendering function when a backend is not installed or when an internal error occurs
val show : Rendering.t -> unitMain drawing function. Displays a Rendering.t using one of the backend available. It first tries with gtk, and if lablgtk is not installed, retries using graphics. If none of the backend is installed, outputs a .svg file in the current directory, named after the title of the window if specified, otherwise named "picassonumber.svg"
val to_latex : ?filename:string -> ?tikz_only:bool -> Rendering.t -> unitOutputs a tex file with a tikz figure corresponding to a Rendering.t. If the tikz_only option is set to false (default is true), it outputs the full tex document and not only the tikz figure
val to_svg : ?filename:string -> Rendering.t -> unitOutputs a svg file with a figure corresponding to a Rendering.t
val to_obj : ?filename:string -> Rendering3d.t -> unitBuilds an obj file corresponding to a Rendering3D context
val in_gtk_canvas : Rendering.t -> unitDisplays a Rendering.t within a scrollable, zoomable gtk canvas.
val in_graphics_canvas : Rendering.t -> unitDisplays a Rendering.t within a graphics window. The window created can be exited cleanly by pressing any key.