summaryrefslogtreecommitdiffstats
path: root/src/2geom/basic-intersection.h
diff options
context:
space:
mode:
authorJohan B. C. Engelen <jbc.engelen@swissonline.ch>2008-09-12 23:07:54 +0000
committerjohanengelen <johanengelen@users.sourceforge.net>2008-09-12 23:07:54 +0000
commit7d48017ed5ea6372b943275fdf31ed871d76e67e (patch)
tree70219858b1564978b46bed452e44a8ec71b2ca72 /src/2geom/basic-intersection.h
parentfix curve test. curve with empty pathvector is *not* closed. (diff)
downloadinkscape-7d48017ed5ea6372b943275fdf31ed871d76e67e.tar.gz
inkscape-7d48017ed5ea6372b943275fdf31ed871d76e67e.zip
update 2geom to rev1583
(bzr r6796)
Diffstat (limited to 'src/2geom/basic-intersection.h')
-rw-r--r--src/2geom/basic-intersection.h21
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: