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