diff options
Diffstat (limited to 'src/2geom/basic-intersection.h')
| -rw-r--r-- | src/2geom/basic-intersection.h | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/src/2geom/basic-intersection.h b/src/2geom/basic-intersection.h index d464891f9..a7750e015 100644 --- a/src/2geom/basic-intersection.h +++ b/src/2geom/basic-intersection.h @@ -35,14 +35,31 @@ find_self_intersections(std::vector<Point> const & A); * at which crossing happens * * This routine is based on the Bezier Clipping Algorithm, - * see: Sederberg - Computer Aided Geometric Design + * see: Sederberg, Nishita, 1990 - Curve intersection using Bezier clipping */ void find_intersections (std::vector< std::pair<double, double> > & xs, std::vector<Point> const& A, std::vector<Point> const& B, double precision = 1e-5); -}; +/* + * find_collinear_normal + * + * input: A, B - set of control points of two Bezier curve + * input: precision - required precision of computation + * output: xs - set of pairs of parameter values + * at which there are collinear normals + * + * This routine is based on the Bezier Clipping Algorithm, + * see: Sederberg, Nishita, 1990 - Curve intersection using Bezier clipping + */ +void find_collinear_normal (std::vector< std::pair<double, double> >& xs, + std::vector<Point> const& A, + std::vector<Point> const& B, + double precision = 1e-5); + + +} /* Local Variables: |
