sig
module Signature :
sig
type point
module type Boxlike =
sig
type t
val width : Mlpost.Signature.Boxlike.t -> float
val height : Mlpost.Signature.Boxlike.t -> float
val set_pos :
Mlpost.Signature.point ->
Mlpost.Signature.Boxlike.t -> Mlpost.Signature.Boxlike.t
end
end
module File :
sig
type t
val from_string : string -> Mlpost.File.t
val to_string : Mlpost.File.t -> string
end
module Ctypes :
sig
type matrix =
Cairo.matrix = {
xx : float;
yx : float;
xy : float;
yy : float;
x0 : float;
y0 : float;
}
type point = Cairo.point = { x : float; y : float; }
end
module Num :
sig
type t = float
val of_float : float -> Mlpost.Num.t
val bp : float -> Mlpost.Num.t
val pt : float -> Mlpost.Num.t
val cm : float -> Mlpost.Num.t
val mm : float -> Mlpost.Num.t
val inch : float -> Mlpost.Num.t
val em : float -> Mlpost.Num.t
val ex : float -> Mlpost.Num.t
val addn : Mlpost.Num.t -> Mlpost.Num.t -> Mlpost.Num.t
val subn : Mlpost.Num.t -> Mlpost.Num.t -> Mlpost.Num.t
val multn : Mlpost.Num.t -> Mlpost.Num.t -> Mlpost.Num.t
val multf : float -> Mlpost.Num.t -> Mlpost.Num.t
val divf : Mlpost.Num.t -> float -> Mlpost.Num.t
val neg : Mlpost.Num.t -> Mlpost.Num.t
val divn : Mlpost.Num.t -> Mlpost.Num.t -> Mlpost.Num.t
val maxn : Mlpost.Num.t -> Mlpost.Num.t -> Mlpost.Num.t
val minn : Mlpost.Num.t -> Mlpost.Num.t -> Mlpost.Num.t
val gmean : Mlpost.Num.t -> Mlpost.Num.t -> Mlpost.Num.t
val if_null :
Mlpost.Num.t -> Mlpost.Num.t -> Mlpost.Num.t -> Mlpost.Num.t
module Infix :
sig
val ( +/ ) : Mlpost.Num.t -> Mlpost.Num.t -> Mlpost.Num.t
val ( -/ ) : Mlpost.Num.t -> Mlpost.Num.t -> Mlpost.Num.t
val ( */ ) : Mlpost.Num.t -> Mlpost.Num.t -> Mlpost.Num.t
val ( // ) : Mlpost.Num.t -> Mlpost.Num.t -> Mlpost.Num.t
val ( *./ ) : float -> Mlpost.Num.t -> Mlpost.Num.t
val ( /./ ) : Mlpost.Num.t -> float -> Mlpost.Num.t
end
val zero : Mlpost.Num.t
val one : Mlpost.Num.t
val two : Mlpost.Num.t
val pi : float
val deg2rad : float -> float
type scale = float -> Mlpost.Num.t
module Scale :
sig
val bp : float -> Mlpost.Num.scale
val pt : float -> Mlpost.Num.scale
val cm : float -> Mlpost.Num.scale
val mm : float -> Mlpost.Num.scale
val inch : float -> Mlpost.Num.scale
end
end
module Color :
sig
type t
val default : Mlpost.Color.t
val rgb : float -> float -> float -> Mlpost.Color.t
val rgb8 : int -> int -> int -> Mlpost.Color.t
val cmyk : float -> float -> float -> float -> Mlpost.Color.t
val rgba : float -> float -> float -> float -> Mlpost.Color.t
val rgb8a : int -> int -> int -> int -> Mlpost.Color.t
val cmyka : float -> float -> float -> float -> float -> Mlpost.Color.t
val is_opaque : Mlpost.Color.t -> bool
val opaque : Mlpost.Color.t -> Mlpost.Color.t
val transparent : float -> Mlpost.Color.t -> Mlpost.Color.t
val hsv : float -> float -> float -> Mlpost.Color.t
val color_gen : float -> float -> unit -> Mlpost.Color.t
val white : Mlpost.Color.t
val black : Mlpost.Color.t
val red : Mlpost.Color.t
val blue : Mlpost.Color.t
val green : Mlpost.Color.t
val cyan : Mlpost.Color.t
val yellow : Mlpost.Color.t
val magenta : Mlpost.Color.t
val lightred : Mlpost.Color.t
val lightblue : Mlpost.Color.t
val lightgreen : Mlpost.Color.t
val lightcyan : Mlpost.Color.t
val lightyellow : Mlpost.Color.t
val lightmagenta : Mlpost.Color.t
val gray : float -> Mlpost.Color.t
val lightgray : Mlpost.Color.t
val mediumgray : Mlpost.Color.t
val darkgray : Mlpost.Color.t
val orange : Mlpost.Color.t
val purple : Mlpost.Color.t
val color : string -> Mlpost.Color.t
end
module rec Point :
sig
type t = Mlpost.Signature.point
val pt : Mlpost.Num.t * Mlpost.Num.t -> Mlpost.Point.t
val dir : float -> Mlpost.Point.t
val up : Mlpost.Point.t
val down : Mlpost.Point.t
val left : Mlpost.Point.t
val right : Mlpost.Point.t
val origin : Mlpost.Point.t
val length : Mlpost.Point.t -> Mlpost.Num.t
val xpart : Mlpost.Point.t -> Mlpost.Num.t
val ypart : Mlpost.Point.t -> Mlpost.Num.t
val transform : Mlpost.Transform.t -> Mlpost.Point.t -> Mlpost.Point.t
val segment :
float -> Mlpost.Point.t -> Mlpost.Point.t -> Mlpost.Point.t
val add : Mlpost.Point.t -> Mlpost.Point.t -> Mlpost.Point.t
val shift : Mlpost.Point.t -> Mlpost.Point.t -> Mlpost.Point.t
val sub : Mlpost.Point.t -> Mlpost.Point.t -> Mlpost.Point.t
val mult : Mlpost.Num.t -> Mlpost.Point.t -> Mlpost.Point.t
val scale : Mlpost.Num.t -> Mlpost.Point.t -> Mlpost.Point.t
val rotate : float -> Mlpost.Point.t -> Mlpost.Point.t
val rotate_around :
Mlpost.Point.t -> float -> Mlpost.Point.t -> Mlpost.Point.t
val xscale : Mlpost.Num.t -> Mlpost.Point.t -> Mlpost.Point.t
val yscale : Mlpost.Num.t -> Mlpost.Point.t -> Mlpost.Point.t
val normalize : Mlpost.Point.t -> Mlpost.Point.t
val bpp : float * float -> Mlpost.Point.t
val inp : float * float -> Mlpost.Point.t
val cmp : float * float -> Mlpost.Point.t
val mmp : float * float -> Mlpost.Point.t
val ptp : float * float -> Mlpost.Point.t
val map_bp : (float * float) list -> Mlpost.Point.t list
val map_in : (float * float) list -> Mlpost.Point.t list
val map_cm : (float * float) list -> Mlpost.Point.t list
val map_mm : (float * float) list -> Mlpost.Point.t list
val map_pt : (float * float) list -> Mlpost.Point.t list
val p :
?scale:(float -> Mlpost.Num.t) -> float * float -> Mlpost.Point.t
val ptlist :
?scale:(float -> Mlpost.Num.t) ->
(float * float) list -> Mlpost.Point.t list
val draw :
?brush:Mlpost.Brush.t ->
?color:Mlpost.Color.t ->
?pen:Mlpost.Pen.t -> Mlpost.Point.t -> Mlpost.Command.t
end
and MetaPath :
sig
type direction = Mlpost.Path.direction
val vec : Mlpost.Point.t -> Mlpost.MetaPath.direction
val curl : float -> Mlpost.MetaPath.direction
val noDir : Mlpost.MetaPath.direction
type knot = Mlpost.Path.knot
val knotp :
?l:Mlpost.MetaPath.direction ->
?r:Mlpost.MetaPath.direction ->
Mlpost.Point.t -> Mlpost.MetaPath.knot
val knotlist :
(Mlpost.MetaPath.direction * Mlpost.Point.t *
Mlpost.MetaPath.direction)
list -> Mlpost.MetaPath.knot list
type joint = Mlpost.Path.joint
val jLine : Mlpost.MetaPath.joint
val jCurve : Mlpost.MetaPath.joint
val jCurveNoInflex : Mlpost.MetaPath.joint
val jTension : float -> float -> Mlpost.MetaPath.joint
val jControls :
Mlpost.Point.t -> Mlpost.Point.t -> Mlpost.MetaPath.joint
type t
type path = Mlpost.Path.t
val knot :
?l:Mlpost.MetaPath.direction ->
?r:Mlpost.MetaPath.direction ->
?scale:(float -> Mlpost.Num.t) ->
float * float -> Mlpost.MetaPath.knot
val knotn :
?l:Mlpost.MetaPath.direction ->
?r:Mlpost.MetaPath.direction ->
Mlpost.Num.t * Mlpost.Num.t -> Mlpost.MetaPath.knot
val path :
?style:Mlpost.MetaPath.joint ->
?scale:(float -> Mlpost.Num.t) ->
(float * float) list -> Mlpost.MetaPath.t
val pathn :
?style:Mlpost.MetaPath.joint ->
(Mlpost.Num.t * Mlpost.Num.t) list -> Mlpost.MetaPath.t
val pathk :
?style:Mlpost.MetaPath.joint ->
Mlpost.MetaPath.knot list -> Mlpost.MetaPath.t
val pathp :
?style:Mlpost.MetaPath.joint ->
Mlpost.Point.t list -> Mlpost.MetaPath.t
val jointpathk :
Mlpost.MetaPath.knot list ->
Mlpost.MetaPath.joint list -> Mlpost.MetaPath.t
val jointpathp :
Mlpost.Point.t list ->
Mlpost.MetaPath.joint list -> Mlpost.MetaPath.t
val jointpathn :
(Mlpost.Num.t * Mlpost.Num.t) list ->
Mlpost.MetaPath.joint list -> Mlpost.MetaPath.t
val jointpath :
?scale:(float -> Mlpost.Num.t) ->
(float * float) list ->
Mlpost.MetaPath.joint list -> Mlpost.MetaPath.t
val cycle :
?dir:Mlpost.MetaPath.direction ->
?style:Mlpost.MetaPath.joint ->
Mlpost.MetaPath.t -> Mlpost.MetaPath.path
val concat :
?style:Mlpost.MetaPath.joint ->
Mlpost.MetaPath.t -> Mlpost.MetaPath.knot -> Mlpost.MetaPath.t
val start : Mlpost.MetaPath.knot -> Mlpost.MetaPath.t
val append :
?style:Mlpost.MetaPath.joint ->
Mlpost.MetaPath.t -> Mlpost.MetaPath.t -> Mlpost.MetaPath.t
val defaultjoint : Mlpost.MetaPath.joint
val to_path : Mlpost.MetaPath.t -> Mlpost.MetaPath.path
val of_path : Mlpost.MetaPath.path -> Mlpost.MetaPath.t
end
and Path :
sig
type direction
val vec : Mlpost.Point.t -> Mlpost.Path.direction
val curl : float -> Mlpost.Path.direction
val noDir : Mlpost.Path.direction
type knot
val knotp :
?l:Mlpost.Path.direction ->
?r:Mlpost.Path.direction -> Mlpost.Point.t -> Mlpost.Path.knot
val knotlist :
(Mlpost.Path.direction * Mlpost.Point.t * Mlpost.Path.direction) list ->
Mlpost.Path.knot list
type joint
val jLine : Mlpost.Path.joint
val jCurve : Mlpost.Path.joint
val jCurveNoInflex : Mlpost.Path.joint
val jTension : float -> float -> Mlpost.Path.joint
val jControls : Mlpost.Point.t -> Mlpost.Point.t -> Mlpost.Path.joint
type t
val knot :
?l:Mlpost.Path.direction ->
?r:Mlpost.Path.direction ->
?scale:(float -> Mlpost.Num.t) -> float * float -> Mlpost.Path.knot
val knotn :
?l:Mlpost.Path.direction ->
?r:Mlpost.Path.direction ->
Mlpost.Num.t * Mlpost.Num.t -> Mlpost.Path.knot
val path :
?style:Mlpost.Path.joint ->
?cycle:Mlpost.Path.joint ->
?scale:(float -> Mlpost.Num.t) ->
(float * float) list -> Mlpost.Path.t
val pathn :
?style:Mlpost.Path.joint ->
?cycle:Mlpost.Path.joint ->
(Mlpost.Num.t * Mlpost.Num.t) list -> Mlpost.Path.t
val pathk :
?style:Mlpost.Path.joint ->
?cycle:Mlpost.Path.joint -> Mlpost.Path.knot list -> Mlpost.Path.t
val pathp :
?style:Mlpost.Path.joint ->
?cycle:Mlpost.Path.joint -> Mlpost.Point.t list -> Mlpost.Path.t
val jointpathk :
Mlpost.Path.knot list -> Mlpost.Path.joint list -> Mlpost.Path.t
val jointpathp :
Mlpost.Point.t list -> Mlpost.Path.joint list -> Mlpost.Path.t
val jointpathn :
(Mlpost.Num.t * Mlpost.Num.t) list ->
Mlpost.Path.joint list -> Mlpost.Path.t
val jointpath :
?scale:(float -> Mlpost.Num.t) ->
(float * float) list -> Mlpost.Path.joint list -> Mlpost.Path.t
val cycle :
?dir:Mlpost.Path.direction ->
?style:Mlpost.Path.joint -> Mlpost.Path.t -> Mlpost.Path.t
val concat :
?style:Mlpost.Path.joint ->
Mlpost.Path.t -> Mlpost.Path.knot -> Mlpost.Path.t
val start : Mlpost.Path.knot -> Mlpost.Path.t
val append :
?style:Mlpost.Path.joint ->
Mlpost.Path.t -> Mlpost.Path.t -> Mlpost.Path.t
val length : Mlpost.Path.t -> Mlpost.Num.t
val point : float -> Mlpost.Path.t -> Mlpost.Point.t
val pointn : Mlpost.Num.t -> Mlpost.Path.t -> Mlpost.Point.t
val direction : float -> Mlpost.Path.t -> Mlpost.Point.t
val directionn : Mlpost.Num.t -> Mlpost.Path.t -> Mlpost.Point.t
val subpath : float -> float -> Mlpost.Path.t -> Mlpost.Path.t
val subpathn :
Mlpost.Num.t -> Mlpost.Num.t -> Mlpost.Path.t -> Mlpost.Path.t
val transform : Mlpost.Transform.t -> Mlpost.Path.t -> Mlpost.Path.t
val scale : Mlpost.Num.t -> Mlpost.Path.t -> Mlpost.Path.t
val rotate : float -> Mlpost.Path.t -> Mlpost.Path.t
val shift : Mlpost.Point.t -> Mlpost.Path.t -> Mlpost.Path.t
val yscale : Mlpost.Num.t -> Mlpost.Path.t -> Mlpost.Path.t
val xscale : Mlpost.Num.t -> Mlpost.Path.t -> Mlpost.Path.t
val cut_after : Mlpost.Path.t -> Mlpost.Path.t -> Mlpost.Path.t
val cut_before : Mlpost.Path.t -> Mlpost.Path.t -> Mlpost.Path.t
val strip : Mlpost.Num.t -> Mlpost.Path.t -> Mlpost.Path.t
val build_cycle : Mlpost.Path.t list -> Mlpost.Path.t
val defaultjoint : Mlpost.Path.joint
val fullcircle : Mlpost.Path.t
val halfcircle : Mlpost.Path.t
val quartercircle : Mlpost.Path.t
val unitsquare : Mlpost.Path.t
type metapath = Mlpost.MetaPath.t
val of_metapath : Mlpost.Path.metapath -> Mlpost.Path.t
val to_metapath : Mlpost.Path.t -> Mlpost.Path.metapath
type orientation =
Up
| Down
| Left
| Right
| Upn of Mlpost.Num.t
| Downn of Mlpost.Num.t
| Leftn of Mlpost.Num.t
| Rightn of Mlpost.Num.t
val smart_path :
?style:Mlpost.Path.joint ->
Mlpost.Path.orientation list ->
Mlpost.Point.t -> Mlpost.Point.t -> Mlpost.Path.t
val draw :
?brush:Mlpost.Brush.t ->
?color:Mlpost.Color.t ->
?pen:Mlpost.Pen.t ->
?dashed:Mlpost.Dash.t -> Mlpost.Path.t -> Mlpost.Command.t
val fill : ?color:Mlpost.Color.t -> Mlpost.Path.t -> Mlpost.Command.t
end
and Pen :
sig
type t
val transform : Mlpost.Transform.t -> Mlpost.Pen.t -> Mlpost.Pen.t
val default : Mlpost.Pen.t
val circle : Mlpost.Pen.t
val square : Mlpost.Pen.t
val from_path : Mlpost.Path.t -> Mlpost.Pen.t
val scale : Mlpost.Num.t -> Mlpost.Pen.t -> Mlpost.Pen.t
val rotate : float -> Mlpost.Pen.t -> Mlpost.Pen.t
val shift : Mlpost.Point.t -> Mlpost.Pen.t -> Mlpost.Pen.t
val yscale : Mlpost.Num.t -> Mlpost.Pen.t -> Mlpost.Pen.t
val xscale : Mlpost.Num.t -> Mlpost.Pen.t -> Mlpost.Pen.t
end
and Dash :
sig
type t = Mlpost.Brush.Dash.t
val evenly : Mlpost.Dash.t
val withdots : Mlpost.Dash.t
val scaled : float -> Mlpost.Dash.t -> Mlpost.Dash.t
val shifted : Mlpost.Point.t -> Mlpost.Dash.t -> Mlpost.Dash.t
type on_off
val on : Mlpost.Num.t -> Mlpost.Dash.on_off
val off : Mlpost.Num.t -> Mlpost.Dash.on_off
val pattern : Mlpost.Dash.on_off list -> Mlpost.Dash.t
end
and Brush :
sig
module Pen :
sig
type t = Mlpost.Pen.t
val transform :
Mlpost.Transform.t -> Mlpost.Brush.Pen.t -> Mlpost.Brush.Pen.t
val default : Mlpost.Brush.Pen.t
val circle : Mlpost.Brush.Pen.t
val square : Mlpost.Brush.Pen.t
val from_path : Mlpost.Path.t -> Mlpost.Brush.Pen.t
val scale :
Mlpost.Num.t -> Mlpost.Brush.Pen.t -> Mlpost.Brush.Pen.t
val rotate : float -> Mlpost.Brush.Pen.t -> Mlpost.Brush.Pen.t
val shift :
Mlpost.Point.t -> Mlpost.Brush.Pen.t -> Mlpost.Brush.Pen.t
val yscale :
Mlpost.Num.t -> Mlpost.Brush.Pen.t -> Mlpost.Brush.Pen.t
val xscale :
Mlpost.Num.t -> Mlpost.Brush.Pen.t -> Mlpost.Brush.Pen.t
end
module Dash :
sig
type t
val evenly : Mlpost.Brush.Dash.t
val withdots : Mlpost.Brush.Dash.t
val scaled :
Mlpost.Num.t -> Mlpost.Brush.Dash.t -> Mlpost.Brush.Dash.t
val shifted :
Mlpost.Point.t -> Mlpost.Brush.Dash.t -> Mlpost.Brush.Dash.t
type on_off
val on : Mlpost.Num.t -> Mlpost.Brush.Dash.on_off
val off : Mlpost.Num.t -> Mlpost.Brush.Dash.on_off
val pattern : Mlpost.Brush.Dash.on_off list -> Mlpost.Brush.Dash.t
end
type t
val t :
?color:Mlpost.Color.t ->
?pen:Mlpost.Brush.Pen.t ->
?dash:Mlpost.Brush.Dash.t ->
?scale:Mlpost.Num.t ->
?brush:Mlpost.Brush.t -> unit -> Mlpost.Brush.t
val pen : Mlpost.Brush.t -> Mlpost.Brush.Pen.t option
val dash : Mlpost.Brush.t -> Mlpost.Brush.Dash.t option
val color : Mlpost.Brush.t -> Mlpost.Color.t option
type brush_colored =
?pen:Mlpost.Brush.Pen.t ->
?dash:Mlpost.Brush.Dash.t ->
?scale:Mlpost.Num.t ->
?brush:Mlpost.Brush.t -> unit -> Mlpost.Brush.t
val white : Mlpost.Brush.brush_colored
val black : Mlpost.Brush.brush_colored
val red : Mlpost.Brush.brush_colored
val blue : Mlpost.Brush.brush_colored
val green : Mlpost.Brush.brush_colored
val cyan : Mlpost.Brush.brush_colored
val yellow : Mlpost.Brush.brush_colored
val magenta : Mlpost.Brush.brush_colored
val lightred : Mlpost.Brush.brush_colored
val lightblue : Mlpost.Brush.brush_colored
val lightgreen : Mlpost.Brush.brush_colored
val lightcyan : Mlpost.Brush.brush_colored
val lightyellow : Mlpost.Brush.brush_colored
val lightmagenta : Mlpost.Brush.brush_colored
val gray : float -> Mlpost.Brush.brush_colored
val lightgray : Mlpost.Brush.brush_colored
val mediumgray : Mlpost.Brush.brush_colored
val darkgray : Mlpost.Brush.brush_colored
val orange : Mlpost.Brush.brush_colored
val purple : Mlpost.Brush.brush_colored
end
and Transform :
sig
type t'
val scaled : Mlpost.Num.t -> Mlpost.Transform.t'
val rotated : float -> Mlpost.Transform.t'
val shifted : Mlpost.Point.t -> Mlpost.Transform.t'
val slanted : Mlpost.Num.t -> Mlpost.Transform.t'
val xscaled : Mlpost.Num.t -> Mlpost.Transform.t'
val yscaled : Mlpost.Num.t -> Mlpost.Transform.t'
val zscaled : Mlpost.Point.t -> Mlpost.Transform.t'
val reflect : Mlpost.Point.t -> Mlpost.Point.t -> Mlpost.Transform.t'
val rotate_around : Mlpost.Point.t -> float -> Mlpost.Transform.t'
type matrix = Mlpost.Ctypes.matrix
val explicit : Mlpost.Transform.matrix -> Mlpost.Transform.t'
type t = Mlpost.Transform.t' list
val id : Mlpost.Transform.t
end
and Picture :
sig
type t = Mlpost.Command.t
val make : Mlpost.Command.t -> Mlpost.Picture.t
val tex : string -> Mlpost.Picture.t
val transform :
Mlpost.Transform.t -> Mlpost.Picture.t -> Mlpost.Picture.t
val bbox : Mlpost.Picture.t -> Mlpost.Path.t
val corner_bbox :
?dx:Mlpost.Num.t ->
?dy:Mlpost.Num.t -> Mlpost.Picture.t -> Mlpost.Path.t
val center : Mlpost.Point.t -> Mlpost.Picture.t -> Mlpost.Picture.t
val place_up_left :
Mlpost.Point.t -> Mlpost.Picture.t -> Mlpost.Picture.t
val place_up_right :
Mlpost.Point.t -> Mlpost.Picture.t -> Mlpost.Picture.t
val place_bot_left :
Mlpost.Point.t -> Mlpost.Picture.t -> Mlpost.Picture.t
val place_bot_right :
Mlpost.Point.t -> Mlpost.Picture.t -> Mlpost.Picture.t
val beside : Mlpost.Picture.t -> Mlpost.Picture.t -> Mlpost.Picture.t
val below : Mlpost.Picture.t -> Mlpost.Picture.t -> Mlpost.Picture.t
val ctr : Mlpost.Picture.t -> Mlpost.Point.t
val north : Mlpost.Picture.t -> Mlpost.Point.t
val south : Mlpost.Picture.t -> Mlpost.Point.t
val west : Mlpost.Picture.t -> Mlpost.Point.t
val east : Mlpost.Picture.t -> Mlpost.Point.t
val north_west : Mlpost.Picture.t -> Mlpost.Point.t
val south_west : Mlpost.Picture.t -> Mlpost.Point.t
val north_east : Mlpost.Picture.t -> Mlpost.Point.t
val south_east : Mlpost.Picture.t -> Mlpost.Point.t
val corner :
Mlpost.Command.position -> Mlpost.Picture.t -> Mlpost.Point.t
val ulcorner : Mlpost.Picture.t -> Mlpost.Point.t
val llcorner : Mlpost.Picture.t -> Mlpost.Point.t
val urcorner : Mlpost.Picture.t -> Mlpost.Point.t
val lrcorner : Mlpost.Picture.t -> Mlpost.Point.t
val clip : Mlpost.Picture.t -> Mlpost.Path.t -> Mlpost.Picture.t
val width : Mlpost.Picture.t -> Mlpost.Num.t
val height : Mlpost.Picture.t -> Mlpost.Num.t
val scale : Mlpost.Num.t -> Mlpost.Picture.t -> Mlpost.Picture.t
val rotate : float -> Mlpost.Picture.t -> Mlpost.Picture.t
val shift : Mlpost.Point.t -> Mlpost.Picture.t -> Mlpost.Picture.t
val yscale : Mlpost.Num.t -> Mlpost.Picture.t -> Mlpost.Picture.t
val xscale : Mlpost.Num.t -> Mlpost.Picture.t -> Mlpost.Picture.t
val spin : float -> Mlpost.Picture.t -> Mlpost.Picture.t
type escaped = [ `Backslash | `Underscore ]
val escape_latex : Mlpost.Picture.escaped list -> string -> string
val escape_all : string -> string
val set_pos : Mlpost.Point.t -> Mlpost.Picture.t -> Mlpost.Picture.t
end
and Command :
sig
type t
val draw :
?brush:Mlpost.Brush.t ->
?color:Mlpost.Color.t ->
?pen:Mlpost.Pen.t ->
?dashed:Mlpost.Dash.t -> Mlpost.Path.t -> Mlpost.Command.t
val fill : ?color:Mlpost.Color.t -> Mlpost.Path.t -> Mlpost.Command.t
val draw_pic : Mlpost.Picture.t -> Mlpost.Command.t
val externalimage :
string ->
[ `Exact of Mlpost.Num.t * Mlpost.Num.t
| `Height of Mlpost.Num.t
| `Inside of Mlpost.Num.t * Mlpost.Num.t
| `None
| `Width of Mlpost.Num.t ] -> Mlpost.Command.t
val nop : Mlpost.Command.t
val append : Mlpost.Command.t -> Mlpost.Command.t -> Mlpost.Command.t
val ( ++ ) : Mlpost.Command.t -> Mlpost.Command.t -> Mlpost.Command.t
val seq : Mlpost.Command.t list -> Mlpost.Command.t
val iter : int -> int -> (int -> Mlpost.Command.t) -> Mlpost.Command.t
val iterl : ('a -> Mlpost.Command.t) -> 'a list -> Mlpost.Command.t
type hposition = [ `Center | `East | `Left | `Right | `West ]
type vposition = [ `Bot | `Bottom | `Center | `North | `South | `Top ]
type position =
[ `Bot
| `Bottom
| `Bottomleft
| `Bottomright
| `Center
| `East
| `Left
| `Lowerleft
| `Lowerright
| `Lowleft
| `Lowright
| `North
| `Northeast
| `Northwest
| `Right
| `South
| `Southeast
| `Southwest
| `Top
| `Topleft
| `Topright
| `Upleft
| `Upperleft
| `Upperright
| `Upright
| `West ]
val label :
?pos:Mlpost.Command.position ->
Mlpost.Picture.t -> Mlpost.Point.t -> Mlpost.Command.t
val dotlabel :
?pos:Mlpost.Command.position ->
Mlpost.Picture.t -> Mlpost.Point.t -> Mlpost.Command.t
end
module Shapes :
sig
val round_rect :
Mlpost.Num.t ->
Mlpost.Num.t -> Mlpost.Num.t -> Mlpost.Num.t -> Mlpost.Path.t
val rectangle : Mlpost.Num.t -> Mlpost.Num.t -> Mlpost.Path.t
val ellipse : Mlpost.Num.t -> Mlpost.Num.t -> Mlpost.Path.t
val circle : Mlpost.Num.t -> Mlpost.Path.t
val patatoid : Mlpost.Num.t -> Mlpost.Num.t -> Mlpost.Path.t
val patatoid2 : Mlpost.Num.t -> Mlpost.Num.t -> Mlpost.Path.t
end
module Box :
sig
type t
type style =
Rect
| Circle
| RoundRect
| Patatoid
| Patatoid2
| Ellipse
| RoundBox
| Custom of
(Mlpost.Num.t ->
Mlpost.Num.t -> Mlpost.Num.t * Mlpost.Num.t * Mlpost.Path.t)
type 'a box_creator =
?dx:Mlpost.Num.t ->
?dy:Mlpost.Num.t ->
?name:string ->
?brush:Mlpost.Brush.t ->
?stroke:Mlpost.Color.t option ->
?pen:Mlpost.Pen.t ->
?dash:Mlpost.Dash.t -> ?fill:Mlpost.Color.t -> 'a -> Mlpost.Box.t
val empty :
?width:Mlpost.Num.t ->
?height:Mlpost.Num.t ->
?style:Mlpost.Box.style ->
?name:string ->
?brush:Mlpost.Brush.t ->
?stroke:Mlpost.Color.t option ->
?pen:Mlpost.Pen.t ->
?dash:Mlpost.Dash.t -> ?fill:Mlpost.Color.t -> unit -> Mlpost.Box.t
val empty_from_box :
?style:Mlpost.Box.style ->
?name:string ->
?brush:Mlpost.Brush.t ->
?stroke:Mlpost.Color.t option ->
?pen:Mlpost.Pen.t ->
?dash:Mlpost.Dash.t ->
?fill:Mlpost.Color.t -> Mlpost.Box.t -> Mlpost.Box.t
val pic :
?style:Mlpost.Box.style -> Mlpost.Picture.t Mlpost.Box.box_creator
val path :
?style:Mlpost.Box.style -> Mlpost.Path.t Mlpost.Box.box_creator
val tex : ?style:Mlpost.Box.style -> string Mlpost.Box.box_creator
val box :
?style:Mlpost.Box.style -> Mlpost.Box.t Mlpost.Box.box_creator
val circle : Mlpost.Box.t Mlpost.Box.box_creator
val ellipse : Mlpost.Box.t Mlpost.Box.box_creator
val rect : Mlpost.Box.t Mlpost.Box.box_creator
val round_rect : Mlpost.Box.t Mlpost.Box.box_creator
val patatoid : Mlpost.Box.t Mlpost.Box.box_creator
val patatoid2 : Mlpost.Box.t Mlpost.Box.box_creator
val round_box : Mlpost.Box.t Mlpost.Box.box_creator
val bpath : Mlpost.Box.t -> Mlpost.Path.t
val set_bpath : Mlpost.Path.t -> Mlpost.Box.t -> Mlpost.Box.t
val ctr : Mlpost.Box.t -> Mlpost.Point.t
val north : Mlpost.Box.t -> Mlpost.Point.t
val south : Mlpost.Box.t -> Mlpost.Point.t
val west : Mlpost.Box.t -> Mlpost.Point.t
val east : Mlpost.Box.t -> Mlpost.Point.t
val north_west : Mlpost.Box.t -> Mlpost.Point.t
val south_west : Mlpost.Box.t -> Mlpost.Point.t
val north_east : Mlpost.Box.t -> Mlpost.Point.t
val south_east : Mlpost.Box.t -> Mlpost.Point.t
type vposition =
[ `Bot
| `Bottom
| `Center
| `Custom of Mlpost.Box.t -> Mlpost.Num.t
| `North
| `South
| `Top ]
type hposition =
[ `Center
| `Custom of Mlpost.Box.t -> Mlpost.Num.t
| `East
| `Left
| `Right
| `West ]
type position =
[ `Bot
| `Bottom
| `Bottomleft
| `Bottomright
| `Center
| `Custom of Mlpost.Box.t -> Mlpost.Point.t
| `East
| `Left
| `Lowerleft
| `Lowerright
| `Lowleft
| `Lowright
| `North
| `Northeast
| `Northwest
| `Right
| `South
| `Southeast
| `Southwest
| `Top
| `Topleft
| `Topright
| `Upleft
| `Upperleft
| `Upperright
| `Upright
| `West ]
val corner : Mlpost.Box.position -> Mlpost.Box.t -> Mlpost.Point.t
val opposite_position : Mlpost.Box.position -> Mlpost.Box.position
val height : Mlpost.Box.t -> Mlpost.Num.t
val width : Mlpost.Box.t -> Mlpost.Num.t
val center : Mlpost.Point.t -> Mlpost.Box.t -> Mlpost.Box.t
val draw : ?debug:bool -> Mlpost.Box.t -> Mlpost.Command.t
val group :
?style:Mlpost.Box.style -> Mlpost.Box.t list Mlpost.Box.box_creator
val halign :
?pos:Mlpost.Box.vposition ->
Mlpost.Num.t -> Mlpost.Box.t list -> Mlpost.Box.t list
val valign :
?pos:Mlpost.Box.hposition ->
Mlpost.Num.t -> Mlpost.Box.t list -> Mlpost.Box.t list
val hplace :
?padding:Mlpost.Num.t ->
?pos:Mlpost.Box.position ->
?min_width:Mlpost.Num.t ->
?same_width:bool -> Mlpost.Box.t list -> Mlpost.Box.t list
val vplace :
?padding:Mlpost.Num.t ->
?pos:Mlpost.Box.position ->
?min_height:Mlpost.Num.t ->
?same_height:bool -> Mlpost.Box.t list -> Mlpost.Box.t list
val hbox :
?padding:Mlpost.Num.t ->
?pos:Mlpost.Box.position ->
?style:Mlpost.Box.style ->
?min_width:Mlpost.Num.t ->
?same_width:bool -> Mlpost.Box.t list Mlpost.Box.box_creator
val hbox_list :
?padding:Mlpost.Num.t ->
?pos:Mlpost.Box.position ->
?min_width:Mlpost.Num.t ->
?same_width:bool -> Mlpost.Box.t list -> Mlpost.Box.t list
val vbox :
?padding:Mlpost.Num.t ->
?pos:Mlpost.Box.position ->
?style:Mlpost.Box.style ->
?min_height:Mlpost.Num.t ->
?same_height:bool -> Mlpost.Box.t list Mlpost.Box.box_creator
val vbox_list :
?padding:Mlpost.Num.t ->
?pos:Mlpost.Box.position ->
?min_height:Mlpost.Num.t ->
?same_height:bool -> Mlpost.Box.t list -> Mlpost.Box.t list
val tabular :
?hpadding:Mlpost.Num.t ->
?vpadding:Mlpost.Num.t ->
?pos:Mlpost.Command.position ->
?style:Mlpost.Box.style ->
?name:string ->
?stroke:Mlpost.Color.t option ->
?pen:Mlpost.Pen.t ->
?dash:Mlpost.Dash.t ->
?fill:Mlpost.Color.t -> Mlpost.Box.t array array -> Mlpost.Box.t
val tabularl :
?hpadding:Mlpost.Num.t ->
?vpadding:Mlpost.Num.t ->
?pos:Mlpost.Command.position ->
?style:Mlpost.Box.style ->
?name:string ->
?stroke:Mlpost.Color.t option ->
?pen:Mlpost.Pen.t ->
?dash:Mlpost.Dash.t ->
?fill:Mlpost.Color.t -> Mlpost.Box.t list list -> Mlpost.Box.t
val tabulari :
?hpadding:Mlpost.Num.t ->
?vpadding:Mlpost.Num.t ->
?pos:Mlpost.Command.position ->
?style:Mlpost.Box.style ->
?name:string ->
?stroke:Mlpost.Color.t option ->
?pen:Mlpost.Pen.t ->
?dash:Mlpost.Dash.t ->
?fill:Mlpost.Color.t ->
int -> int -> (int -> int -> Mlpost.Box.t) -> Mlpost.Box.t
val hblock :
?padding:Mlpost.Num.t ->
?pos:Mlpost.Command.position ->
?name:string ->
?stroke:Mlpost.Color.t option ->
?pen:Mlpost.Pen.t ->
?dash:Mlpost.Dash.t ->
?min_width:Mlpost.Num.t ->
?same_width:bool -> Mlpost.Box.t list -> Mlpost.Box.t
val vblock :
?padding:Mlpost.Num.t ->
?pos:Mlpost.Command.position ->
?name:string ->
?stroke:Mlpost.Color.t option ->
?pen:Mlpost.Pen.t ->
?dash:Mlpost.Dash.t ->
?min_height:Mlpost.Num.t ->
?same_height:bool -> Mlpost.Box.t list -> Mlpost.Box.t
val grid :
?hpadding:Mlpost.Num.t ->
?vpadding:Mlpost.Num.t ->
?pos:Mlpost.Command.position ->
?stroke:Mlpost.Color.t option ->
?pen:Mlpost.Pen.t ->
?dash:Mlpost.Dash.t -> Mlpost.Box.t array array -> Mlpost.Box.t
val gridl :
?hpadding:Mlpost.Num.t ->
?vpadding:Mlpost.Num.t ->
?pos:Mlpost.Command.position ->
?stroke:Mlpost.Color.t option ->
?pen:Mlpost.Pen.t ->
?dash:Mlpost.Dash.t -> Mlpost.Box.t list list -> Mlpost.Box.t
val gridi :
?hpadding:Mlpost.Num.t ->
?vpadding:Mlpost.Num.t ->
?pos:Mlpost.Command.position ->
?stroke:Mlpost.Color.t option ->
?pen:Mlpost.Pen.t ->
?dash:Mlpost.Dash.t ->
int -> int -> (int -> int -> Mlpost.Box.t) -> Mlpost.Box.t
val place :
Mlpost.Box.position ->
?pos:Mlpost.Box.position ->
?padding:Mlpost.Num.t -> Mlpost.Box.t -> Mlpost.Box.t -> Mlpost.Box.t
val relative : Mlpost.Box.t -> Mlpost.Box.t -> Mlpost.Box.t
val nth : int -> Mlpost.Box.t -> Mlpost.Box.t
val get : string -> Mlpost.Box.t -> Mlpost.Box.t
val sub : Mlpost.Box.t -> Mlpost.Box.t -> Mlpost.Box.t
val elts : Mlpost.Box.t -> Mlpost.Box.t array
val setp : string -> Mlpost.Point.t -> Mlpost.Box.t -> Mlpost.Box.t
val getp : string -> Mlpost.Box.t -> Mlpost.Point.t
val getpx : string -> Mlpost.Box.t -> Mlpost.Num.t
val getpy : string -> Mlpost.Box.t -> Mlpost.Num.t
val get_fill : Mlpost.Box.t -> Mlpost.Color.t option
val set_fill : Mlpost.Color.t -> Mlpost.Box.t -> Mlpost.Box.t
val get_stroke : Mlpost.Box.t -> Mlpost.Color.t option
val set_stroke : Mlpost.Color.t -> Mlpost.Box.t -> Mlpost.Box.t
val clear_stroke : Mlpost.Box.t -> Mlpost.Box.t
val get_name : Mlpost.Box.t -> string option
val set_name : string -> Mlpost.Box.t -> Mlpost.Box.t
val get_pen : Mlpost.Box.t -> Mlpost.Pen.t option
val set_pen : Mlpost.Pen.t -> Mlpost.Box.t -> Mlpost.Box.t
val set_height :
Mlpost.Command.vposition ->
Mlpost.Num.t -> Mlpost.Box.t -> Mlpost.Box.t
val set_width :
Mlpost.Command.hposition ->
Mlpost.Num.t -> Mlpost.Box.t -> Mlpost.Box.t
val get_dash : Mlpost.Box.t -> Mlpost.Dash.t option
val set_dash : Mlpost.Dash.t -> Mlpost.Box.t -> Mlpost.Box.t
val clear_dash : Mlpost.Box.t -> Mlpost.Box.t
val set_height2 :
Mlpost.Box.vposition ->
Mlpost.Num.t ->
Mlpost.Box.vposition -> Mlpost.Num.t -> Mlpost.Box.t -> Mlpost.Box.t
val set_width2 :
Mlpost.Box.hposition ->
Mlpost.Num.t ->
Mlpost.Box.hposition -> Mlpost.Num.t -> Mlpost.Box.t -> Mlpost.Box.t
val set_size :
Mlpost.Command.position ->
width:Mlpost.Num.t ->
height:Mlpost.Num.t -> Mlpost.Box.t -> Mlpost.Box.t
val same_height :
?pos:Mlpost.Box.vposition -> Mlpost.Box.t list -> Mlpost.Box.t list
val same_width :
?pos:Mlpost.Box.hposition -> Mlpost.Box.t list -> Mlpost.Box.t list
val same_size :
?pos:Mlpost.Box.position -> Mlpost.Box.t list -> Mlpost.Box.t list
val henlarge : Mlpost.Box.t list -> Mlpost.Box.t list
val venlarge : Mlpost.Box.t list -> Mlpost.Box.t list
val set_post_draw :
(Mlpost.Box.t -> Mlpost.Command.t) -> Mlpost.Box.t -> Mlpost.Box.t
val add_post_draw :
(Mlpost.Box.t -> Mlpost.Command.t) -> Mlpost.Box.t -> Mlpost.Box.t
val clear_post_draw : Mlpost.Box.t -> Mlpost.Box.t
val set_pre_draw :
(Mlpost.Box.t -> Mlpost.Command.t) -> Mlpost.Box.t -> Mlpost.Box.t
val clear_pre_draw : Mlpost.Box.t -> Mlpost.Box.t
val shadow : Mlpost.Box.t -> Mlpost.Box.t
val cpath :
?style:Mlpost.Path.joint ->
?outd:Mlpost.Path.direction ->
?ind:Mlpost.Path.direction ->
?sep:Mlpost.Num.t -> Mlpost.Box.t -> Mlpost.Box.t -> Mlpost.Path.t
val cpath_left :
?style:Mlpost.Path.joint ->
?outd:Mlpost.Path.direction ->
?ind:Mlpost.Path.direction ->
?sep:Mlpost.Num.t -> Mlpost.Box.t -> Mlpost.Point.t -> Mlpost.Path.t
val cpath_right :
?style:Mlpost.Path.joint ->
?outd:Mlpost.Path.direction ->
?ind:Mlpost.Path.direction ->
?sep:Mlpost.Num.t -> Mlpost.Point.t -> Mlpost.Box.t -> Mlpost.Path.t
val transform : Mlpost.Transform.t -> Mlpost.Box.t -> Mlpost.Box.t
val scale : Mlpost.Num.t -> Mlpost.Box.t -> Mlpost.Box.t
val rotate : float -> Mlpost.Box.t -> Mlpost.Box.t
val shift : Mlpost.Point.t -> Mlpost.Box.t -> Mlpost.Box.t
val yscale : Mlpost.Num.t -> Mlpost.Box.t -> Mlpost.Box.t
val xscale : Mlpost.Num.t -> Mlpost.Box.t -> Mlpost.Box.t
val set_pos : Mlpost.Point.t -> Mlpost.Box.t -> Mlpost.Box.t
end
module Triangle :
sig
type t = Mlpost.Box.t
val create :
?brush:Mlpost.Brush.t ->
?stroke:Mlpost.Color.t option ->
?pen:Mlpost.Pen.t ->
?dash:Mlpost.Dash.t ->
?fill:Mlpost.Color.t ->
?left:float ->
?right:float ->
?width:Mlpost.Num.t -> depth:Mlpost.Num.t -> unit -> Mlpost.Box.t
val pic :
?brush:Mlpost.Brush.t ->
?stroke:Mlpost.Color.t option ->
?pen:Mlpost.Pen.t ->
?dash:Mlpost.Dash.t ->
?fill:Mlpost.Color.t ->
?dx:float -> ?dy:float -> Mlpost.Picture.t -> Mlpost.Triangle.t
val tex :
?brush:Mlpost.Brush.t ->
?stroke:Mlpost.Color.t option ->
?pen:Mlpost.Pen.t ->
?dash:Mlpost.Dash.t ->
?fill:Mlpost.Color.t ->
?dx:float -> ?dy:float -> string -> Mlpost.Triangle.t
val root : Mlpost.Triangle.t -> Mlpost.Point.t
val bottom_left : Mlpost.Triangle.t -> Mlpost.Point.t
val bottom_right : Mlpost.Triangle.t -> Mlpost.Point.t
val draw : ?debug:bool -> Mlpost.Triangle.t -> Mlpost.Command.t
val root_label :
?pos:Mlpost.Command.position ->
Mlpost.Picture.t -> Mlpost.Triangle.t -> Mlpost.Triangle.t
val tex_root_label :
?pos:Mlpost.Command.position ->
string -> Mlpost.Triangle.t -> Mlpost.Triangle.t
val x_depth :
?x:float -> ?depth:float -> Mlpost.Triangle.t -> Mlpost.Point.t
val label :
?x:float ->
?depth:float ->
?pos:Mlpost.Command.position ->
Mlpost.Picture.t -> Mlpost.Triangle.t -> Mlpost.Triangle.t
val tex_label :
?x:float ->
?depth:float ->
?pos:Mlpost.Command.position ->
string -> Mlpost.Triangle.t -> Mlpost.Triangle.t
val anchor :
?x:float ->
?depth:float ->
Mlpost.Triangle.t -> Mlpost.Triangle.t -> Mlpost.Triangle.t
val pose :
?x:float ->
?depth:float ->
Mlpost.Triangle.t -> Mlpost.Triangle.t -> Mlpost.Triangle.t
val pose_left :
?x:float ->
?depth:float ->
Mlpost.Triangle.t -> Mlpost.Triangle.t -> Mlpost.Triangle.t
val pose_right :
?x:float ->
?depth:float ->
Mlpost.Triangle.t -> Mlpost.Triangle.t -> Mlpost.Triangle.t
end
module Arrow :
sig
type kind
val simple :
?color:Mlpost.Color.t ->
?brush:Mlpost.Brush.t ->
?pen:Mlpost.Pen.t ->
?dashed:Mlpost.Dash.t -> Mlpost.Path.t -> Mlpost.Command.t
val draw :
?kind:Mlpost.Arrow.kind ->
?tex:string ->
?pos:float ->
?anchor:Mlpost.Command.position -> Mlpost.Path.t -> Mlpost.Command.t
type ('a, 'b) arrow_from_to =
?kind:Mlpost.Arrow.kind ->
?tex:string ->
?pos:float ->
?anchor:Mlpost.Command.position ->
?style:Mlpost.Path.joint ->
?outd:Mlpost.Path.direction ->
?ind:Mlpost.Path.direction ->
?sep:Mlpost.Num.t -> 'a -> 'b -> Mlpost.Command.t
val point_to_point :
(Mlpost.Point.t, Mlpost.Point.t) Mlpost.Arrow.arrow_from_to
val box_to_box :
(Mlpost.Box.t, Mlpost.Box.t) Mlpost.Arrow.arrow_from_to
val point_to_box :
(Mlpost.Point.t, Mlpost.Box.t) Mlpost.Arrow.arrow_from_to
val box_to_point :
(Mlpost.Box.t, Mlpost.Point.t) Mlpost.Arrow.arrow_from_to
val classic : Mlpost.Arrow.kind
val triangle : Mlpost.Arrow.kind
val triangle_full : Mlpost.Arrow.kind
val implies : Mlpost.Arrow.kind
val iff : Mlpost.Arrow.kind
type head_description
val make_head :
?cut:Mlpost.Path.t ->
Mlpost.Command.t -> Mlpost.Arrow.head_description
type head =
Mlpost.Point.t -> Mlpost.Point.t -> Mlpost.Arrow.head_description
val head_classic :
?color:Mlpost.Color.t ->
?brush:Mlpost.Brush.t ->
?pen:Mlpost.Pen.t ->
?dashed:Mlpost.Dash.t ->
?angle:float -> ?size:Mlpost.Num.t -> Mlpost.Arrow.head
val head_triangle :
?color:Mlpost.Color.t ->
?brush:Mlpost.Brush.t ->
?pen:Mlpost.Pen.t ->
?dashed:Mlpost.Dash.t ->
?angle:float -> ?size:Mlpost.Num.t -> Mlpost.Arrow.head
val head_triangle_full :
?color:Mlpost.Color.t ->
?angle:float -> ?size:Mlpost.Num.t -> Mlpost.Arrow.head
val empty : Mlpost.Arrow.kind
val add_line :
?brush:Mlpost.Brush.t ->
?dashed:Mlpost.Dash.t ->
?color:Mlpost.Color.t ->
?pen:Mlpost.Pen.t ->
?from_point:float ->
?to_point:float ->
?dist:Mlpost.Num.t -> Mlpost.Arrow.kind -> Mlpost.Arrow.kind
val add_head :
?head:Mlpost.Arrow.head -> Mlpost.Arrow.kind -> Mlpost.Arrow.kind
val add_foot :
?head:Mlpost.Arrow.head -> Mlpost.Arrow.kind -> Mlpost.Arrow.kind
val add_belt :
?clip:bool ->
?rev:bool ->
?point:float ->
?head:Mlpost.Arrow.head -> Mlpost.Arrow.kind -> Mlpost.Arrow.kind
val draw_thick :
?style:Mlpost.Path.joint ->
?boxed:bool ->
?line_color:Mlpost.Color.t ->
?fill_color:Mlpost.Color.t ->
?outd:Mlpost.Path.direction ->
?ind:Mlpost.Path.direction ->
?width:Mlpost.Num.t ->
?head_length:Mlpost.Num.t ->
?head_width:Mlpost.Num.t ->
Mlpost.Point.t -> Mlpost.Point.t -> Mlpost.Command.t
end
module Helpers :
sig
val dotlabels :
?pos:Mlpost.Command.position ->
string list -> Mlpost.Point.t list -> Mlpost.Command.t
val draw_simple_arrow :
?color:Mlpost.Color.t ->
?pen:Mlpost.Pen.t ->
?dashed:Mlpost.Dash.t ->
?style:Mlpost.Path.joint ->
?outd:Mlpost.Path.direction ->
?ind:Mlpost.Path.direction ->
?sep:Mlpost.Num.t ->
Mlpost.Point.t -> Mlpost.Point.t -> Mlpost.Command.t
val draw_label_arrow :
?color:Mlpost.Color.t ->
?pen:Mlpost.Pen.t ->
?dashed:Mlpost.Dash.t ->
?style:Mlpost.Path.joint ->
?outd:Mlpost.Path.direction ->
?ind:Mlpost.Path.direction ->
?pos:Mlpost.Command.position ->
?sep:Mlpost.Num.t ->
Mlpost.Picture.t ->
Mlpost.Point.t -> Mlpost.Point.t -> Mlpost.Command.t
val draw_labelbox_arrow :
?color:Mlpost.Color.t ->
?pen:Mlpost.Pen.t ->
?dashed:Mlpost.Dash.t ->
?style:Mlpost.Path.joint ->
?outd:Mlpost.Path.direction ->
?ind:Mlpost.Path.direction ->
?pos:Mlpost.Command.position ->
?sep:Mlpost.Num.t ->
Mlpost.Box.t -> Mlpost.Point.t -> Mlpost.Point.t -> Mlpost.Command.t
val box_arrow :
?within:Mlpost.Box.t ->
?color:Mlpost.Color.t ->
?pen:Mlpost.Pen.t ->
?dashed:Mlpost.Dash.t ->
?style:Mlpost.Path.joint ->
?outd:Mlpost.Path.direction ->
?ind:Mlpost.Path.direction ->
?sep:Mlpost.Num.t -> Mlpost.Box.t -> Mlpost.Box.t -> Mlpost.Command.t
val box_line :
?within:Mlpost.Box.t ->
?color:Mlpost.Color.t ->
?pen:Mlpost.Pen.t ->
?dashed:Mlpost.Dash.t ->
?style:Mlpost.Path.joint ->
?outd:Mlpost.Path.direction ->
?ind:Mlpost.Path.direction ->
?sep:Mlpost.Num.t -> Mlpost.Box.t -> Mlpost.Box.t -> Mlpost.Command.t
val box_label_arrow :
?within:Mlpost.Box.t ->
?color:Mlpost.Color.t ->
?pen:Mlpost.Pen.t ->
?dashed:Mlpost.Dash.t ->
?style:Mlpost.Path.joint ->
?outd:Mlpost.Path.direction ->
?ind:Mlpost.Path.direction ->
?sep:Mlpost.Num.t ->
?pos:Mlpost.Command.position ->
Mlpost.Picture.t -> Mlpost.Box.t -> Mlpost.Box.t -> Mlpost.Command.t
val box_label_line :
?within:Mlpost.Box.t ->
?color:Mlpost.Color.t ->
?pen:Mlpost.Pen.t ->
?dashed:Mlpost.Dash.t ->
?style:Mlpost.Path.joint ->
?outd:Mlpost.Path.direction ->
?ind:Mlpost.Path.direction ->
?sep:Mlpost.Num.t ->
?pos:Mlpost.Command.position ->
Mlpost.Picture.t -> Mlpost.Box.t -> Mlpost.Box.t -> Mlpost.Command.t
val box_labelbox_arrow :
?within:Mlpost.Box.t ->
?color:Mlpost.Color.t ->
?pen:Mlpost.Pen.t ->
?dashed:Mlpost.Dash.t ->
?style:Mlpost.Path.joint ->
?outd:Mlpost.Path.direction ->
?ind:Mlpost.Path.direction ->
?sep:Mlpost.Num.t ->
?pos:Mlpost.Command.position ->
Mlpost.Box.t -> Mlpost.Box.t -> Mlpost.Box.t -> Mlpost.Command.t
val box_pointer_arrow :
?within:Mlpost.Box.t ->
?color:Mlpost.Color.t ->
?pen:Mlpost.Pen.t ->
?dashed:Mlpost.Dash.t ->
?style:Mlpost.Path.joint ->
?outd:Mlpost.Path.direction ->
?ind:Mlpost.Path.direction ->
Mlpost.Box.t -> Mlpost.Box.t -> Mlpost.Command.t
end
module Tree :
sig
type t
type arrow_style = Directed | Undirected
type edge_style = Straight | Curve | Square | HalfSquare
val leaf : Mlpost.Box.t -> Mlpost.Tree.t
val node :
?ls:Mlpost.Num.t ->
?cs:Mlpost.Num.t ->
?arrow_style:Mlpost.Tree.arrow_style ->
?edge_style:Mlpost.Tree.edge_style ->
?stroke:Mlpost.Color.t ->
?brush:Mlpost.Brush.t ->
?pen:Mlpost.Pen.t ->
?sep:Mlpost.Num.t ->
Mlpost.Box.t -> Mlpost.Tree.t list -> Mlpost.Tree.t
val nodel :
?ls:Mlpost.Num.t ->
?cs:Mlpost.Num.t ->
?arrow_style:Mlpost.Tree.arrow_style ->
?edge_style:Mlpost.Tree.edge_style ->
?stroke:Mlpost.Color.t ->
?brush:Mlpost.Brush.t ->
?pen:Mlpost.Pen.t ->
?sep:Mlpost.Num.t ->
Mlpost.Box.t ->
(Mlpost.Tree.t * (Mlpost.Command.position * Mlpost.Picture.t)) list ->
Mlpost.Tree.t
val bin :
?ls:Mlpost.Num.t ->
?cs:Mlpost.Num.t ->
?arrow_style:Mlpost.Tree.arrow_style ->
?edge_style:Mlpost.Tree.edge_style ->
?stroke:Mlpost.Color.t ->
?brush:Mlpost.Brush.t ->
?pen:Mlpost.Pen.t ->
?sep:Mlpost.Num.t ->
Mlpost.Box.t -> Mlpost.Tree.t -> Mlpost.Tree.t -> Mlpost.Tree.t
val to_box : Mlpost.Tree.t -> Mlpost.Box.t
val draw : ?debug:bool -> Mlpost.Tree.t -> Mlpost.Command.t
module Simple :
sig
type t
val leaf : Mlpost.Box.t -> Mlpost.Tree.Simple.t
val node :
?ls:Mlpost.Num.t ->
?cs:Mlpost.Num.t ->
?arrow_style:Mlpost.Tree.arrow_style ->
?edge_style:Mlpost.Tree.edge_style ->
?stroke:Mlpost.Color.t ->
?brush:Mlpost.Brush.t ->
?pen:Mlpost.Pen.t ->
?sep:Mlpost.Num.t ->
?valign:Mlpost.Command.position ->
?halign:Mlpost.Command.position ->
Mlpost.Box.t -> Mlpost.Tree.Simple.t list -> Mlpost.Tree.Simple.t
val bin :
?ls:Mlpost.Num.t ->
?cs:Mlpost.Num.t ->
?arrow_style:Mlpost.Tree.arrow_style ->
?edge_style:Mlpost.Tree.edge_style ->
?stroke:Mlpost.Color.t ->
?brush:Mlpost.Brush.t ->
?pen:Mlpost.Pen.t ->
?sep:Mlpost.Num.t ->
Mlpost.Box.t ->
Mlpost.Tree.Simple.t ->
Mlpost.Tree.Simple.t -> Mlpost.Tree.Simple.t
val to_box : Mlpost.Tree.Simple.t -> Mlpost.Box.t
val draw : ?debug:bool -> Mlpost.Tree.Simple.t -> Mlpost.Command.t
end
end
module Tree_adv :
sig
type 'a t = Node of 'a * 'a Mlpost.Tree_adv.t list
module Place :
functor (X : Signature.Boxlike) ->
sig
val gen_place :
place:(Mlpost.Box.t Mlpost.Tree_adv.t -> Mlpost.Box.t) ->
X.t Mlpost.Tree_adv.t -> X.t Mlpost.Tree_adv.t
val place :
?ls:Mlpost.Num.t ->
?cs:Mlpost.Num.t ->
?valign:Mlpost.Box.position ->
?halign:Mlpost.Box.position ->
X.t Mlpost.Tree_adv.t -> X.t Mlpost.Tree_adv.t
end
val gen_draw_arrows :
'c ->
style:(Mlpost.Point.t -> Mlpost.Point.t -> 'c) ->
corner:(Mlpost.Box.position -> 'a -> Mlpost.Point.t) ->
'a Mlpost.Tree_adv.t -> 'c Mlpost.Tree_adv.t
val draw :
('a -> Mlpost.Box.t) -> 'a Mlpost.Tree_adv.t -> Mlpost.Command.t
val map : ('a -> 'b) -> 'a Mlpost.Tree_adv.t -> 'b Mlpost.Tree_adv.t
val map2 :
('a -> 'b -> 'c) ->
'a Mlpost.Tree_adv.t -> 'b Mlpost.Tree_adv.t -> 'c Mlpost.Tree_adv.t
val combine :
'a Mlpost.Tree_adv.t ->
'b Mlpost.Tree_adv.t -> ('a * 'b) Mlpost.Tree_adv.t
val split :
('a * 'b) Mlpost.Tree_adv.t ->
'a Mlpost.Tree_adv.t * 'b Mlpost.Tree_adv.t
val root_map :
('a option -> 'a -> 'b) ->
'a Mlpost.Tree_adv.t -> 'b Mlpost.Tree_adv.t
val map_children :
('a -> 'a list -> 'b) -> 'a Mlpost.Tree_adv.t -> 'b Mlpost.Tree_adv.t
val fold : ('a -> 'b -> 'a) -> 'a -> 'b Mlpost.Tree_adv.t -> 'a
val fold_child :
('a -> 'b -> 'b -> 'a) -> 'a -> 'b Mlpost.Tree_adv.t -> 'a
val filter :
('a -> bool) -> 'a Mlpost.Tree_adv.t -> 'a Mlpost.Tree_adv.t
val filter_option :
('a -> 'b option) -> 'a Mlpost.Tree_adv.t -> 'b Mlpost.Tree_adv.t
val wrap_corner_box :
('a -> Mlpost.Box.t) ->
(corner:(Mlpost.Box.position -> 'a -> Mlpost.Point.t) -> 'c) -> 'c
module Overlays :
sig
type interval =
Bet of int * int
| Bef of int
| Aft of int
| Nev
| Alw
val in_interval : int -> Mlpost.Tree_adv.Overlays.interval -> bool
val min_interval : int -> Mlpost.Tree_adv.Overlays.interval -> int
val max_interval : int -> Mlpost.Tree_adv.Overlays.interval -> int
val min_tree :
('a -> Mlpost.Tree_adv.Overlays.interval) ->
'a Mlpost.Tree_adv.t -> int
val max_tree :
('a -> Mlpost.Tree_adv.Overlays.interval) ->
'a Mlpost.Tree_adv.t -> int
type 'a spec = (Mlpost.Tree_adv.Overlays.interval * 'a) list
val assoq : int -> 'a Mlpost.Tree_adv.Overlays.spec -> 'a
val max : ('a -> Mlpost.Num.t) -> ('b * 'a) list -> Mlpost.Num.t
val set_pos :
(Mlpost.Point.t -> 'a -> 'b) ->
Mlpost.Point.t ->
'a Mlpost.Tree_adv.Overlays.spec ->
'b Mlpost.Tree_adv.Overlays.spec
end
module Overlays_Boxlike :
functor (X : Signature.Boxlike) ->
sig
type t = X.t Overlays.spec
val width : t -> float
val height : t -> float
val set_pos : Signature.point -> t -> t
end
end
module Diag :
sig
type node
type node_style = Mlpost.Box.t -> Mlpost.Box.t
val node :
?style:Mlpost.Diag.node_style ->
?fill:Mlpost.Color.t ->
?boxed:bool -> float -> float -> Mlpost.Box.t -> Mlpost.Diag.node
type t
val create : Mlpost.Diag.node list -> Mlpost.Diag.t
type dir = Up | Down | Left | Right | Angle of float
val arrow :
Mlpost.Diag.t ->
?lab:string ->
?line_width:Mlpost.Num.t ->
?boxed:bool ->
?line_color:Mlpost.Color.t ->
?fill_color:Mlpost.Color.t ->
?pos:Mlpost.Command.position ->
?head:bool ->
?dashed:Mlpost.Dash.t ->
?outd:Mlpost.Diag.dir ->
?ind:Mlpost.Diag.dir -> Mlpost.Diag.node -> Mlpost.Diag.node -> unit
val draw :
?scale:(float -> Mlpost.Num.t) ->
?style:Mlpost.Diag.node_style ->
?boxed:bool ->
?fill:Mlpost.Color.t ->
?stroke:Mlpost.Color.t ->
?pen:Mlpost.Pen.t -> Mlpost.Diag.t -> Mlpost.Command.t
end
module Plot :
sig
type skeleton
val mk_skeleton :
int -> int -> Mlpost.Num.t -> Mlpost.Num.t -> Mlpost.Plot.skeleton
type labels = int -> Mlpost.Num.t -> Mlpost.Picture.t option
type ticks = (Mlpost.Num.t * Mlpost.Pen.t) option
type drawing = Stepwise | Normal
val draw_grid :
?hdash:(int -> Mlpost.Dash.t) ->
?vdash:(int -> Mlpost.Dash.t) ->
?hpen:(int -> Mlpost.Pen.t) ->
?vpen:(int -> Mlpost.Pen.t) ->
?color:Mlpost.Color.t -> Mlpost.Plot.skeleton -> Mlpost.Command.t
val draw_axes :
?hpen:Mlpost.Pen.t ->
?vpen:Mlpost.Pen.t ->
?hlabel:Mlpost.Plot.labels ->
?vlabel:Mlpost.Plot.labels ->
?ticks:Mlpost.Plot.ticks ->
?closed:bool ->
?hcaption:Mlpost.Picture.t ->
?vcaption:Mlpost.Picture.t ->
Mlpost.Plot.skeleton -> Mlpost.Command.t
val draw_simple_axes :
?hpen:Mlpost.Pen.t ->
?vpen:Mlpost.Pen.t ->
string -> string -> Mlpost.Plot.skeleton -> Mlpost.Command.t
val draw_func :
?pen:Mlpost.Pen.t ->
?drawing:Mlpost.Plot.drawing ->
?style:Mlpost.Path.joint ->
?dashed:Mlpost.Dash.t ->
?color:Mlpost.Color.t ->
?label:Mlpost.Picture.t * Mlpost.Command.position * int ->
?from_x:int ->
?to_x:int ->
(int -> float) -> Mlpost.Plot.skeleton -> Mlpost.Command.t
end
module Real_plot :
sig
type 'a curve
val curve : (float -> float) -> 'a -> 'a Mlpost.Real_plot.curve
val curve_opt :
(float -> float option) -> 'a -> 'a Mlpost.Real_plot.curve
val curve_l :
(float -> float option) list -> 'a -> 'a Mlpost.Real_plot.curve
val draw :
?logarithmic:bool ->
?curve_brush:('a -> Mlpost.Brush.t) ->
?label:('a -> string) ->
?ymin:float ->
?ymax:float ->
xmin:float ->
xmax:float ->
pitch:float ->
width:Mlpost.Num.t ->
height:Mlpost.Num.t ->
'a Mlpost.Real_plot.curve list -> Mlpost.Command.t
end
module Hist :
sig
type 'a labels = Values | User of 'a list
val simple :
?width:Mlpost.Num.t ->
?height:Mlpost.Num.t ->
?padding:Mlpost.Num.t ->
?fill:Mlpost.Color.t list ->
?perspective:bool ->
?hcaption:Mlpost.Picture.t ->
?vcaption:Mlpost.Picture.t ->
?histlabel:Mlpost.Command.vposition *
Mlpost.Picture.t Mlpost.Hist.labels ->
?vlabel:Mlpost.Plot.labels ->
?hlabel:Mlpost.Picture.t list -> float list -> Mlpost.Command.t
val compare :
?width:Mlpost.Num.t ->
?height:Mlpost.Num.t ->
?padding:Mlpost.Num.t ->
?fill:Mlpost.Color.t list ->
?perspective:bool ->
?hcaption:Mlpost.Picture.t ->
?vcaption:Mlpost.Picture.t ->
?histlabel:Mlpost.Command.vposition *
Mlpost.Picture.t list Mlpost.Hist.labels ->
?vlabel:Mlpost.Plot.labels ->
?hlabel:Mlpost.Picture.t list -> float list list -> Mlpost.Command.t
val stack :
?width:Mlpost.Num.t ->
?height:Mlpost.Num.t ->
?padding:Mlpost.Num.t ->
?fill:Mlpost.Color.t list ->
?perspective:bool ->
?hcaption:Mlpost.Picture.t ->
?vcaption:Mlpost.Picture.t ->
?histlabel:Mlpost.Command.vposition *
Mlpost.Picture.t list Mlpost.Hist.labels ->
?vlabel:Mlpost.Plot.labels ->
?hlabel:Mlpost.Picture.t list -> float list list -> Mlpost.Command.t
end
module Radar :
sig
val stack :
?radius:Mlpost.Num.t ->
?color:Mlpost.Color.t list ->
?pen:Mlpost.Pen.t ->
?style:Mlpost.Dash.t list ->
?ticks:float ->
?label:string list ->
?scale:float list -> float list list -> Mlpost.Picture.t
val compare :
?radius:Mlpost.Num.t ->
?color:Mlpost.Color.t list ->
?fill:bool ->
?pen:Mlpost.Pen.t ->
?style:Mlpost.Dash.t list ->
?ticks:float ->
?label:string list ->
?scale:float list -> float list list -> Mlpost.Picture.t list
end
module Legend :
sig
val legend :
?ensstroke:Mlpost.Color.t ->
?colstroke:Mlpost.Color.t ->
?fill:Mlpost.Color.t ->
(Mlpost.Color.t * string) list -> Mlpost.Picture.t
end
module Misc :
sig
val print_option :
string ->
(Stdlib.Format.formatter -> 'a -> unit) ->
Stdlib.Format.formatter -> 'a option -> unit
val print_list :
('a -> unit -> 'b) -> ('a -> 'c -> unit) -> 'a -> 'c list -> unit
val space : Stdlib.Format.formatter -> unit -> unit
val comma : Stdlib.Format.formatter -> unit -> unit
val fold_from_to : ('a -> int -> 'a) -> 'a -> int -> int -> 'a
val call_cmd :
?inv:bool -> ?outv:bool -> ?verbose:bool -> string -> int
end
module Metapost :
sig
val set_filename_prefix : string -> unit
val generate :
?prelude:string ->
?verbose:bool ->
?clean:bool -> string -> (string * Mlpost.Command.t) list -> unit
val emit : string -> Mlpost.Command.t -> unit
val dump :
?prelude:string ->
?pdf:bool ->
?eps:bool -> ?verbose:bool -> ?clean:bool -> string -> unit
type job = string * Mlpost.Command.t
type jobs = Mlpost.Metapost.job list
val mps :
?prelude:string ->
?verbose:bool -> string -> Mlpost.Metapost.jobs -> Mlpost.File.t list
val pdf :
?prelude:string ->
?verbose:bool -> string -> Mlpost.Metapost.jobs -> Mlpost.File.t list
val png :
?prelude:string ->
?verbose:bool -> string -> Mlpost.Metapost.jobs -> Mlpost.File.t list
val temp_mps :
?prelude:string ->
?verbose:bool ->
?clean:bool -> string -> Mlpost.Metapost.jobs -> Mlpost.File.t list
val temp_pdf :
?prelude:string ->
?verbose:bool ->
?clean:bool -> string -> Mlpost.Metapost.jobs -> Mlpost.File.t list
val temp_png :
?prelude:string ->
?verbose:bool ->
?clean:bool -> string -> Mlpost.Metapost.jobs -> Mlpost.File.t list
val dump_mp :
?prelude:string -> ?verbose:bool -> ?clean:bool -> string -> unit
val dump_mps :
?prelude:string -> ?verbose:bool -> ?clean:bool -> string -> unit
val dump_png :
?prelude:string -> ?verbose:bool -> ?clean:bool -> string -> unit
val dump_pdf :
?prelude:string -> ?verbose:bool -> ?clean:bool -> string -> unit
val read_prelude_from_tex_file : string -> string
val dump_tex : ?prelude:string -> string -> unit
val slideshow :
Mlpost.Command.t list -> int -> (int * Mlpost.Command.t) list
val emit_slideshow : string -> Mlpost.Command.t list -> unit
val dumpable : unit -> unit
val depend : string -> unit
end
module Concrete :
sig
val supported : bool
module CPoint :
sig
type t = Mlpost.Ctypes.point
val add :
Mlpost.Concrete.CPoint.t ->
Mlpost.Concrete.CPoint.t -> Mlpost.Concrete.CPoint.t
val sub :
Mlpost.Concrete.CPoint.t ->
Mlpost.Concrete.CPoint.t -> Mlpost.Concrete.CPoint.t
val opp : Mlpost.Concrete.CPoint.t -> Mlpost.Concrete.CPoint.t
val mult :
float -> Mlpost.Concrete.CPoint.t -> Mlpost.Concrete.CPoint.t
val div :
Mlpost.Concrete.CPoint.t -> float -> Mlpost.Concrete.CPoint.t
module Infix :
sig
val ( +/ ) :
Mlpost.Concrete.CPoint.t ->
Mlpost.Concrete.CPoint.t -> Mlpost.Concrete.CPoint.t
val ( -/ ) :
Mlpost.Concrete.CPoint.t ->
Mlpost.Concrete.CPoint.t -> Mlpost.Concrete.CPoint.t
val ( */ ) :
float -> Mlpost.Concrete.CPoint.t -> Mlpost.Concrete.CPoint.t
val ( // ) :
Mlpost.Concrete.CPoint.t -> float -> Mlpost.Concrete.CPoint.t
end
val print :
Stdlib.Format.formatter -> Mlpost.Concrete.CPoint.t -> unit
end
module CPath :
sig
type t
type abscissa = float
val length : Mlpost.Concrete.CPath.t -> float
val is_closed : Mlpost.Concrete.CPath.t -> bool
val is_a_point :
Mlpost.Concrete.CPath.t -> Mlpost.Concrete.CPoint.t option
val intersection :
Mlpost.Concrete.CPath.t ->
Mlpost.Concrete.CPath.t ->
(Mlpost.Concrete.CPath.abscissa * Mlpost.Concrete.CPath.abscissa)
list
val one_intersection :
Mlpost.Concrete.CPath.t ->
Mlpost.Concrete.CPath.t ->
Mlpost.Concrete.CPath.abscissa * Mlpost.Concrete.CPath.abscissa
val reverse : Mlpost.Concrete.CPath.t -> Mlpost.Concrete.CPath.t
val iter :
(Mlpost.Concrete.CPoint.t ->
Mlpost.Concrete.CPoint.t ->
Mlpost.Concrete.CPoint.t -> Mlpost.Concrete.CPoint.t -> unit) ->
Mlpost.Concrete.CPath.t -> unit
val fold_left :
('a ->
Mlpost.Concrete.CPoint.t ->
Mlpost.Concrete.CPoint.t ->
Mlpost.Concrete.CPoint.t -> Mlpost.Concrete.CPoint.t -> 'a) ->
'a -> Mlpost.Concrete.CPath.t -> 'a
val cut_before :
Mlpost.Concrete.CPath.t ->
Mlpost.Concrete.CPath.t -> Mlpost.Concrete.CPath.t
val cut_after :
Mlpost.Concrete.CPath.t ->
Mlpost.Concrete.CPath.t -> Mlpost.Concrete.CPath.t
val split :
Mlpost.Concrete.CPath.t ->
Mlpost.Concrete.CPath.abscissa ->
Mlpost.Concrete.CPath.t * Mlpost.Concrete.CPath.t
val subpath :
Mlpost.Concrete.CPath.t ->
Mlpost.Concrete.CPath.abscissa ->
Mlpost.Concrete.CPath.abscissa -> Mlpost.Concrete.CPath.t
val direction_of_abscissa :
Mlpost.Concrete.CPath.t ->
Mlpost.Concrete.CPath.abscissa -> Mlpost.Concrete.CPoint.t
val point_of_abscissa :
Mlpost.Concrete.CPath.t ->
Mlpost.Concrete.CPath.abscissa -> Mlpost.Concrete.CPoint.t
val bounding_box :
Mlpost.Concrete.CPath.t ->
Mlpost.Concrete.CPoint.t * Mlpost.Concrete.CPoint.t
val dist_min_point :
Mlpost.Concrete.CPath.t ->
Mlpost.Concrete.CPoint.t ->
float * Mlpost.Concrete.CPath.abscissa
val dist_min_path :
Mlpost.Concrete.CPath.t ->
Mlpost.Concrete.CPath.t ->
float *
(Mlpost.Concrete.CPath.abscissa * Mlpost.Concrete.CPath.abscissa)
val print :
Stdlib.Format.formatter -> Mlpost.Concrete.CPath.t -> unit
end
module CTransform : sig type t = Mlpost.Ctypes.matrix end
val float_of_num : Mlpost.Num.t -> float
val cpoint_of_point : Mlpost.Point.t -> Mlpost.Concrete.CPoint.t
val cpath_of_path : Mlpost.Path.t -> Mlpost.Concrete.CPath.t
val ctransform_of_transform :
Mlpost.Transform.t -> Mlpost.Concrete.CTransform.t
val baselines : string -> float list
val num_of_float : float -> Mlpost.Num.t
val point_of_cpoint : Mlpost.Concrete.CPoint.t -> Mlpost.Point.t
val path_of_cpath : Mlpost.Concrete.CPath.t -> Mlpost.Path.t
val transform_of_ctransform :
Mlpost.Concrete.CTransform.t -> Mlpost.Transform.t
val set_verbosity : bool -> unit
val set_prelude : string -> unit
val set_prelude2 : string option -> unit
val set_t1disasm : string option -> unit
end
module Cairost :
sig
val supported : bool
val emit_pdf : ?msg_error:float -> string -> Mlpost.Command.t -> unit
val emit_ps : string -> Mlpost.Command.t -> unit
val emit_png : string -> Mlpost.Command.t -> unit
val emit_svg : string -> Mlpost.Command.t -> unit
val emit_pdfs : string -> Mlpost.Command.t list -> unit
val dump_pdf : unit -> unit
val dump_ps : unit -> unit
val dump_png : unit -> unit
val dump_svg : unit -> unit
val dump_pdfs : string -> unit
val generate_pdfs : string -> (int * Mlpost.Command.t) list -> unit
type cairo_t = Cairo.t
val emit_cairo :
Mlpost.Cairost.cairo_t -> float * float -> Mlpost.Command.t -> unit
end
module Metapost_tool :
sig val read_prelude_from_tex_file : string -> string end
module Version : sig val version : string val date : string end
module Mps :
sig
val dump : unit -> unit
val generate : (string * Mlpost.Command.t) list -> unit
end
module Defaults :
sig
val set_prelude : string -> unit
val set_filename_prefix : string -> unit
val set_required_files : string list -> unit
val set_verbosity : bool -> unit
val set_t1disasm : string option -> unit
end
end