summaryrefslogtreecommitdiff
path: root/src/cairo-traps-private.h
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2012-08-24 17:22:34 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2013-01-03 15:07:18 +0000
commit5bc1b1f6aac108d9a3963352ad774bb4fcd69e28 (patch)
treebb5cded7a588e82b5481a0486f76c4c7bf7dca40 /src/cairo-traps-private.h
parent74941f822015cc50cd8477d0cf97f1a70dbff60b (diff)
downloadcairo-5bc1b1f6aac108d9a3963352ad774bb4fcd69e28.tar.gz
stroke: Make the incremental trapezoid stroker optionally available again
Whilst it cannot handle self-intersecting strokes (which includes the antialias region of neighbouring lines and joints), it is about 3x faster to use than the more robust algorithm. As some backends delegate the rendering, the quality may still be preserved and so they should be responsible for choosing the appropriate method for generation of the stroke geometry. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'src/cairo-traps-private.h')
-rw-r--r--src/cairo-traps-private.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/cairo-traps-private.h b/src/cairo-traps-private.h
index 62c0fe723..7fef062a4 100644
--- a/src/cairo-traps-private.h
+++ b/src/cairo-traps-private.h
@@ -47,6 +47,7 @@ CAIRO_BEGIN_DECLS
struct _cairo_traps {
cairo_status_t status;
+ cairo_box_t bounds;
const cairo_box_t *limits;
int num_limits;
@@ -89,6 +90,14 @@ _cairo_traps_fini (cairo_traps_t *traps);
cairo_private void
_cairo_traps_translate (cairo_traps_t *traps, int x, int y);
+cairo_private void
+_cairo_traps_tessellate_triangle (cairo_traps_t *traps,
+ const cairo_point_t t[3]);
+
+cairo_private void
+_cairo_traps_tessellate_convex_quad (cairo_traps_t *traps,
+ const cairo_point_t q[4]);
+
cairo_private cairo_status_t
_cairo_traps_tessellate_rectangle (cairo_traps_t *traps,
const cairo_point_t *top_left,