1 //----------------------------------------------------------------------------
2 // Anti-Grain Geometry (AGG) - Version 2.5
3 // A high quality rendering engine for C++
4 // Copyright (C) 2002-2006 Maxim Shemanarev
5 // Contact: mcseem@antigrain.com
6 //          mcseemagg@yahoo.com
7 //          http://antigrain.com
8 //
9 // AGG is free software; you can redistribute it and/or
10 // modify it under the terms of the GNU General Public License
11 // as published by the Free Software Foundation; either version 2
12 // of the License, or (at your option) any later version.
13 //
14 // AGG is distributed in the hope that it will be useful,
15 // but WITHOUT ANY WARRANTY; without even the implied warranty of
16 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17 // GNU General Public License for more details.
18 //
19 // You should have received a copy of the GNU General Public License
20 // along with AGG; if not, write to the Free Software
21 // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
22 // MA 02110-1301, USA.
23 //----------------------------------------------------------------------------
24 
25 #ifndef AGG_CONV_SEGMENTATOR_INCLUDED
26 #define AGG_CONV_SEGMENTATOR_INCLUDED
27 
28 #include "agg_basics.h"
29 #include "agg_conv_adaptor_vpgen.h"
30 #include "agg_vpgen_segmentator.h"
31 
32 namespace agg
33 {
34 
35     //========================================================conv_segmentator
36     template<class VertexSource>
37     struct conv_segmentator : public conv_adaptor_vpgen<VertexSource, vpgen_segmentator>
38     {
39         typedef conv_adaptor_vpgen<VertexSource, vpgen_segmentator> base_type;
40 
conv_segmentatorconv_segmentator41         conv_segmentator(VertexSource& vs) :
42             conv_adaptor_vpgen<VertexSource, vpgen_segmentator>(vs) {}
43 
approximation_scaleconv_segmentator44         void approximation_scale(double s) { base_type::vpgen().approximation_scale(s);        }
approximation_scaleconv_segmentator45         double approximation_scale() const { return base_type::vpgen().approximation_scale();  }
46 
47     private:
48         conv_segmentator(const conv_segmentator<VertexSource>&);
49         const conv_segmentator<VertexSource>&
50             operator = (const conv_segmentator<VertexSource>&);
51     };
52 
53 
54 }
55 
56 #endif
57 
58