Module Mlpost__Spline_lib
type point= Mlpost__.Point_lib.ttype abscissa= Mlpost__.Spline.abscissatype path_={pl : Mlpost__.Spline.t list;cycle : bool;}type path=|Point of point|Path of path_
val is_closed : path -> boolval is_a_point : path -> point optionval create : point -> point -> point -> point -> pathcreate a b c d return a path with :
- point a as the starting point,
- point b as its control point,
- point d as the ending point,
- point c as its control point
val create_lines : point list -> pathcreate a path consisting of straight lines connecting the points in argument
val min_abscissa : path -> abscissaval max_abscissa : path -> abscissaval length : path -> intnumber of vertex
val add_end : path -> point -> point -> pathadd_end p a b return the path p with one more spline at the end.
val add_end_line : path -> point -> pathval add_end_spline : path -> point -> point -> point -> pathval append : path -> point -> point -> path -> pathval reverse : path -> pathreverse p return the path p reversed
val one_intersection : path -> path -> abscissa * abscissaval intersection : path -> path -> (abscissa * abscissa) listintersection p1 p2 return a list of pair of abscissa. In each pairs (a1,a2), a1 (resp. a2) is the abscissa in p1 (resp. p2) of one intersection point between p1 and p2. Additionnal point of intersection (two point for only one real intersection) can appear in degenerate case.
val fold_left : ('a -> point -> point -> point -> point -> 'a) -> 'a -> path -> 'afold on all the splines of a path
val iter : (point -> point -> point -> point -> unit) -> path -> unititer on all the splines of a path
val cut_before : path -> path -> pathval cut_after : path -> path -> pathremove the part of a path before the first intersection or after the last
val split : path -> abscissa -> path * pathval subpath : path -> abscissa -> abscissa -> pathval direction_of_abscissa : path -> abscissa -> pointval abscissa_to_point : path -> abscissa -> pointval bounding_box : path -> point * pointval unprecise_bounding_box : path -> point * pointval dist_min_point : path -> point -> float * abscissadist_min_point p scomputes the minimal distance ofptos, as well as the abscissa which corresponds to this minimal distance; the return value isdistance, abscissa.