aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'x11-libs/agg/files/2.5/0004-Make-rasterizer_outline_aa-ignore-close_polygon-when.patch')
-rw-r--r--x11-libs/agg/files/2.5/0004-Make-rasterizer_outline_aa-ignore-close_polygon-when.patch138
1 files changed, 0 insertions, 138 deletions
diff --git a/x11-libs/agg/files/2.5/0004-Make-rasterizer_outline_aa-ignore-close_polygon-when.patch b/x11-libs/agg/files/2.5/0004-Make-rasterizer_outline_aa-ignore-close_polygon-when.patch
deleted file mode 100644
index 0cecaf794..000000000
--- a/x11-libs/agg/files/2.5/0004-Make-rasterizer_outline_aa-ignore-close_polygon-when.patch
+++ /dev/null
@@ -1,138 +0,0 @@
-From b9c4b1c72b4ad6b24c37f402d3eec39ef393b0eb Mon Sep 17 00:00:00 2001
-From: Tom Hughes <tom@compton.nu>
-Date: Sun, 19 May 2013 14:17:43 +0100
-Subject: [PATCH 04/15] Make rasterizer_outline_aa ignore close_polygon when
- vertex count < 3
-
----
- include/agg_rasterizer_outline_aa.h | 107 ++++++++++++++++++------------------
- 1 file changed, 52 insertions(+), 55 deletions(-)
-
-diff --git a/include/agg_rasterizer_outline_aa.h b/include/agg_rasterizer_outline_aa.h
-index 4d6dd57..24301d5 100644
---- a/include/agg_rasterizer_outline_aa.h
-+++ b/include/agg_rasterizer_outline_aa.h
-@@ -333,68 +333,65 @@ namespace agg
- int y2;
- int lprev;
-
-- if(close_polygon)
-+ if(close_polygon && (m_src_vertices.size() >= 3))
- {
-- if(m_src_vertices.size() >= 3)
-+ dv.idx = 2;
-+
-+ v = &m_src_vertices[m_src_vertices.size() - 1];
-+ x1 = v->x;
-+ y1 = v->y;
-+ lprev = v->len;
-+
-+ v = &m_src_vertices[0];
-+ x2 = v->x;
-+ y2 = v->y;
-+ dv.lcurr = v->len;
-+ line_parameters prev(x1, y1, x2, y2, lprev);
-+
-+ v = &m_src_vertices[1];
-+ dv.x1 = v->x;
-+ dv.y1 = v->y;
-+ dv.lnext = v->len;
-+ dv.curr = line_parameters(x2, y2, dv.x1, dv.y1, dv.lcurr);
-+
-+ v = &m_src_vertices[dv.idx];
-+ dv.x2 = v->x;
-+ dv.y2 = v->y;
-+ dv.next = line_parameters(dv.x1, dv.y1, dv.x2, dv.y2, dv.lnext);
-+
-+ dv.xb1 = 0;
-+ dv.yb1 = 0;
-+ dv.xb2 = 0;
-+ dv.yb2 = 0;
-+
-+ switch(m_line_join)
- {
-- dv.idx = 2;
--
-- v = &m_src_vertices[m_src_vertices.size() - 1];
-- x1 = v->x;
-- y1 = v->y;
-- lprev = v->len;
--
-- v = &m_src_vertices[0];
-- x2 = v->x;
-- y2 = v->y;
-- dv.lcurr = v->len;
-- line_parameters prev(x1, y1, x2, y2, lprev);
--
-- v = &m_src_vertices[1];
-- dv.x1 = v->x;
-- dv.y1 = v->y;
-- dv.lnext = v->len;
-- dv.curr = line_parameters(x2, y2, dv.x1, dv.y1, dv.lcurr);
--
-- v = &m_src_vertices[dv.idx];
-- dv.x2 = v->x;
-- dv.y2 = v->y;
-- dv.next = line_parameters(dv.x1, dv.y1, dv.x2, dv.y2, dv.lnext);
--
-- dv.xb1 = 0;
-- dv.yb1 = 0;
-- dv.xb2 = 0;
-- dv.yb2 = 0;
--
-- switch(m_line_join)
-- {
-- case outline_no_join:
-- dv.flags = 3;
-- break;
-+ case outline_no_join:
-+ dv.flags = 3;
-+ break;
-
-- case outline_miter_join:
-- case outline_round_join:
-- dv.flags =
-- (prev.diagonal_quadrant() == dv.curr.diagonal_quadrant()) |
-- ((dv.curr.diagonal_quadrant() == dv.next.diagonal_quadrant()) << 1);
-- break;
-+ case outline_miter_join:
-+ case outline_round_join:
-+ dv.flags =
-+ (prev.diagonal_quadrant() == dv.curr.diagonal_quadrant()) |
-+ ((dv.curr.diagonal_quadrant() == dv.next.diagonal_quadrant()) << 1);
-+ break;
-
-- case outline_miter_accurate_join:
-- dv.flags = 0;
-- break;
-- }
-+ case outline_miter_accurate_join:
-+ dv.flags = 0;
-+ break;
-+ }
-
-- if((dv.flags & 1) == 0 && m_line_join != outline_round_join)
-- {
-- bisectrix(prev, dv.curr, &dv.xb1, &dv.yb1);
-- }
-+ if((dv.flags & 1) == 0 && m_line_join != outline_round_join)
-+ {
-+ bisectrix(prev, dv.curr, &dv.xb1, &dv.yb1);
-+ }
-
-- if((dv.flags & 2) == 0 && m_line_join != outline_round_join)
-- {
-- bisectrix(dv.curr, dv.next, &dv.xb2, &dv.yb2);
-- }
-- draw(dv, 0, m_src_vertices.size());
-+ if((dv.flags & 2) == 0 && m_line_join != outline_round_join)
-+ {
-+ bisectrix(dv.curr, dv.next, &dv.xb2, &dv.yb2);
- }
-+ draw(dv, 0, m_src_vertices.size());
- }
- else
- {
---
-1.8.1.4
-