1 #ifndef _SOLVE_SBASIS_H
2 #define _SOLVE_SBASIS_H
3 #include <2geom/point.h>
4 #include <2geom/sbasis.h>
6 namespace Geom{
8 class Point;
10 unsigned
11 crossing_count(Geom::Point const *V, /* Control pts of Bezier curve */
12 unsigned degree); /* Degree of Bezier curve */
13 void
14 find_parametric_bezier_roots(
15 Geom::Point const *w, /* The control points */
16 unsigned degree, /* The degree of the polynomial */
17 std::vector<double> & solutions, /* RETURN candidate t-values */
18 unsigned depth); /* The depth of the recursion */
20 unsigned
21 crossing_count(double const *V, /* Control pts of Bezier curve */
22 unsigned degree, /* Degree of Bezier curve */
23 double left_t, double right_t);
24 void
25 find_bernstein_roots(
26 double const *w, /* The control points */
27 unsigned degree, /* The degree of the polynomial */
28 std::vector<double> & solutions, /* RETURN candidate t-values */
29 unsigned depth, /* The depth of the recursion */
30 double left_t=0, double right_t=1);
32 };
33 #endif
35 /*
36 Local Variables:
37 mode:c++
38 c-file-style:"stroustrup"
39 c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
40 indent-tabs-mode:nil
41 fill-column:99
42 End:
43 */
44 // vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :