Module Mlpost__Path
include Mlpost.MetaPath.BaseDefs
type direction= Mlpost__.Types.direction
val vec : Mlpost__.Types.point -> Mlpost__.Types.directionval curl : float -> Mlpost__.Types.directionval noDir : Mlpost__.Types.direction
type joint= Mlpost__.Types.joint
val jLine : Mlpost__.Types.jointval jCurve : Mlpost__.Types.jointval jCurveNoInflex : Mlpost__.Types.jointval jTension : float -> float -> Mlpost__.Types.jointval jControls : Mlpost__.Types.point -> Mlpost__.Types.point -> Mlpost__.Types.joint
type knot= Mlpost__.Types.knot
val of_path : Mlpost__.Types.path -> Mlpost__.Types.metapathval of_metapath : Mlpost__.Types.metapath -> Mlpost__.Types.pathval to_path : Mlpost__.Types.metapath -> Mlpost__.Types.pathval to_metapath : Mlpost__.Types.path -> Mlpost__.Types.metapathval start : Mlpost__.Types.knot -> Mlpost__.Types.metapathval metacycle : Mlpost__.Types.direction -> Mlpost__.Types.joint -> Mlpost__.Types.metapath -> Mlpost__.Types.pathval fullcircle : Mlpost__.Types.pathval halfcircle : Mlpost__.Types.pathval quartercircle : Mlpost__.Types.pathval unitsquare : Mlpost__.Types.pathval cut_after : Mlpost__.Types.path -> Mlpost__.Types.path -> Mlpost__.Types.pathval cut_before : Mlpost__.Types.path -> Mlpost__.Types.path -> Mlpost__.Types.pathval build_cycle : Mlpost__.Types.path list -> Mlpost__.Types.pathval subpath : float -> float -> Mlpost__.Types.path -> Mlpost__.Types.pathval subpathn : float -> float -> Mlpost__.Types.path -> Mlpost__.Types.pathval length : Mlpost__.Types.path -> floatval defaultjoint : Mlpost__.Types.jointval defaultdir : Mlpost__.Types.direction
val transform : Mlpost__.Types.transform -> Mlpost__.Types.path -> Mlpost__.Types.pathval start : Mlpost__.Types.knot -> Mlpost__.Types.pathval append : ?style:Mlpost__.Types.joint -> Mlpost__.Types.path -> Mlpost__.Types.path -> Mlpost__.Types.path
type t= Mlpost__.Types.pathtype metapath= Mlpost__.Types.metapath
val knotp : ?l:Mlpost__.Types.direction -> ?r:Mlpost__.Types.direction -> Mlpost__.Types.point -> Mlpost__.Types.knotval knot : ?l:Mlpost__.Types.direction -> ?r:Mlpost__.Types.direction -> ?scale:(float -> float) -> (float * float) -> Mlpost__.Types.knotval knotn : ?l:Mlpost__.Types.direction -> ?r:Mlpost__.Types.direction -> (float * float) -> Mlpost__.Types.knotval knotlist : (Mlpost__.Types.direction * Mlpost__.Types.point * Mlpost__.Types.direction) list -> Mlpost__.Types.knot listval cycle_tmp : ?dir:Mlpost__.Types.direction -> ?style:Mlpost__.Types.joint -> Mlpost__.Types.path -> Mlpost__.Types.pathval cycle : ?dir:Mlpost__.Types.direction -> ?style:Mlpost__.Types.joint -> Mlpost__.Types.path -> Mlpost__.Types.pathval concat : ?style:Mlpost__.Types.joint -> Mlpost__.Types.path -> Mlpost__.Types.knot -> Mlpost__.Types.pathval pathk : ?style:Mlpost__.Types.joint -> ?cycle:Mlpost__.Types.joint -> Mlpost__.Types.knot list -> Mlpost__.Types.pathval pathp : ?style:Mlpost__.Types.joint -> ?cycle:Mlpost__.Types.joint -> Mlpost__.Types.point list -> Mlpost__.Types.pathval pathn : ?style:Mlpost__.Types.joint -> ?cycle:Mlpost__.Types.joint -> (float * float) list -> Mlpost__.Types.pathval path : ?style:Mlpost__.Types.joint -> ?cycle:Mlpost__.Types.joint -> ?scale:(float -> float) -> (float * float) list -> Mlpost__.Types.pathval jointpathk : Mlpost__.Types.knot list -> Mlpost__.Types.joint list -> Mlpost__.Types.pathval jointpathp : Mlpost__.Types.point list -> Mlpost__.Types.joint list -> Mlpost__.Types.pathval jointpathn : (float * float) list -> Mlpost__.Types.joint list -> Mlpost__.Types.pathval jointpath : ?scale:(float -> float) -> (float * float) list -> Mlpost__.Types.joint list -> Mlpost__.Types.pathval scale : float -> Mlpost__.Types.path -> Mlpost__.Types.pathval rotate : float -> Mlpost__.Types.path -> Mlpost__.Types.pathval shift : Mlpost__.Matrix.point -> Mlpost__.Types.path -> Mlpost__.Types.pathval yscale : float -> Mlpost__.Types.path -> Mlpost__.Types.pathval xscale : float -> Mlpost__.Types.path -> Mlpost__.Types.pathval point : float -> Mlpost__.Types.path -> Mlpost__.Spline_lib.pointval direction : float -> Mlpost__.Types.path -> Mlpost__.Spline_lib.pointval pointn : float -> Mlpost__.Types.path -> Mlpost__.Spline_lib.pointval directionn : float -> Mlpost__.Types.path -> Mlpost__.Spline_lib.pointval strip : float -> Mlpost__.Types.path -> Mlpost__.Types.path
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 divise_dir : orientation list -> orientation list * orientation list * orientation list
val dist_horizontal : orientation list -> float -> float -> float listval dist_vertical : orientation list -> float -> float -> float listval smart_path : ?style:Mlpost__.Types.joint -> orientation list -> Mlpost__.Point_lib.t -> Mlpost__.Point_lib.t -> Mlpost__.Types.pathval draw : ?brush:Mlpost__.Types.brush -> ?color:Mlpost__.Types.color -> ?pen:Mlpost__.Types.pen -> ?dashed:Mlpost__.Types.dash -> Mlpost__.Types.path -> Mlpost__.Types.commandpicval fill : ?color:Mlpost__.Types.color -> Mlpost__.Types.path -> Mlpost__.Types.commandpic