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 :
    ('->
     Mlpost.Concrete.CPoint.t ->
     Mlpost.Concrete.CPoint.t ->
     Mlpost.Concrete.CPoint.t -> Mlpost.Concrete.CPoint.t -> '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 : Format.formatter -> Mlpost.Concrete.CPath.t -> unit
end