diff options
Diffstat (limited to 'agg/inc/agg_conv_clip_polyline.h')
-rwxr-xr-x | agg/inc/agg_conv_clip_polyline.h | 69 |
1 files changed, 0 insertions, 69 deletions
diff --git a/agg/inc/agg_conv_clip_polyline.h b/agg/inc/agg_conv_clip_polyline.h deleted file mode 100755 index 4ac66276891c..000000000000 --- a/agg/inc/agg_conv_clip_polyline.h +++ /dev/null @@ -1,69 +0,0 @@ -//---------------------------------------------------------------------------- -// Anti-Grain Geometry - Version 2.3 -// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com) -// -// Permission to copy, use, modify, sell and distribute this software -// is granted provided this copyright notice appears in all copies. -// This software is provided "as is" without express or implied -// warranty, and with no claim as to its suitability for any purpose. -// -//---------------------------------------------------------------------------- -// Contact: mcseem@antigrain.com -// mcseemagg@yahoo.com -// http://www.antigrain.com -//---------------------------------------------------------------------------- -// -// polyline clipping converter -// There an optimized Liang-Basky algorithm is used. -// The algorithm doesn't optimize the degenerate edges, i.e. it will never -// break a closed polyline into two or more ones, instead, there will be -// degenerate edges coinciding with the respective clipping boundaries. -// This is a sub-optimal solution, because that optimization would require -// extra, rather expensive math while the rasterizer tolerates it quite well, -// without any considerable overhead. -// -//---------------------------------------------------------------------------- -#ifndef AGG_CONV_CLIP_polyline_INCLUDED -#define AGG_CONV_CLIP_polyline_INCLUDED - -#include "agg_basics.h" -#include "agg_conv_adaptor_vpgen.h" -#include "agg_vpgen_clip_polyline.h" -#include "agg_vertex_iterator.h" - -namespace agg -{ - - //=======================================================conv_clip_polyline - template<class VertexSource> - struct conv_clip_polyline : public conv_adaptor_vpgen<VertexSource, vpgen_clip_polyline> - { - typedef conv_adaptor_vpgen<VertexSource, vpgen_clip_polyline> base_type; - - conv_clip_polyline(VertexSource& vs) : - conv_adaptor_vpgen<VertexSource, vpgen_clip_polyline>(vs) {} - - void clip_box(double x1, double y1, double x2, double y2) - { - base_type::vpgen().clip_box(x1, y1, x2, y2); - } - - double x1() const { return base_type::vpgen().x1(); } - double y1() const { return base_type::vpgen().y1(); } - double x2() const { return base_type::vpgen().x2(); } - double y2() const { return base_type::vpgen().y2(); } - - typedef conv_clip_polyline<VertexSource> source_type; - typedef vertex_iterator<source_type> iterator; - iterator begin(unsigned id) { return iterator(*this, id); } - iterator end() { return iterator(path_cmd_stop); } - - private: - conv_clip_polyline(const conv_clip_polyline<VertexSource>&); - const conv_clip_polyline<VertexSource>& - operator = (const conv_clip_polyline<VertexSource>&); - }; - -} - -#endif |