QGIS API Documentation  2.6.0-Brighton
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
qgsvectorsimplifymethod.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgsvectorsimplifymethod.h
3  ---------------------
4  begin : December 2013
5  copyright : (C) 2013 by Alvaro Huarte
6  email : http://wiki.osgeo.org/wiki/Alvaro_Huarte
7  ***************************************************************************
8  * *
9  * This program is free software; you can redistribute it and/or modify *
10  * it under the terms of the GNU General Public License as published by *
11  * the Free Software Foundation; either version 2 of the License, or *
12  * (at your option) any later version. *
13  * *
14  ***************************************************************************/
15 
16 #ifndef QGSVECTORSIMPLIFYMETHOD_H
17 #define QGSVECTORSIMPLIFYMETHOD_H
18 
19 #include <QFlags>
20 
24 class CORE_EXPORT QgsVectorSimplifyMethod
25 {
26  public:
32  QgsVectorSimplifyMethod& operator=( const QgsVectorSimplifyMethod& rh );
33 
36  {
37  NoSimplification = 0,
38  GeometrySimplification = 1,
39  AntialiasingSimplification = 2,
40  FullSimplification = 3,
41  };
42  Q_DECLARE_FLAGS( SimplifyHints, SimplifyHint )
43 
44 
45  void setSimplifyHints( SimplifyHints simplifyHints ) { mSimplifyHints = simplifyHints; }
47  inline SimplifyHints simplifyHints() const { return mSimplifyHints; }
48 
50  void setThreshold( float threshold ) { mThreshold = threshold; }
52  inline float threshold() const { return mThreshold; }
53 
55  void setForceLocalOptimization( bool localOptimization ) { mLocalOptimization = localOptimization; }
57  inline bool forceLocalOptimization() const { return mLocalOptimization; }
58 
60  void setMaximumScale( float maximumScale ) { mMaximumScale = maximumScale; }
62  inline float maximumScale() const { return mMaximumScale; }
63 
64  private:
66  SimplifyHints mSimplifyHints;
68  float mThreshold;
70  bool mLocalOptimization;
72  float mMaximumScale;
73 };
74 
75 Q_DECLARE_OPERATORS_FOR_FLAGS( QgsVectorSimplifyMethod::SimplifyHints )
76 
77 #endif // QGSVECTORSIMPLIFYMETHOD_H