/************************************************************************
 * This file has been generated automatically from                      *
 *                                                                      *
 * src/core/qgsvectorsimplifymethod.h                                   *
 *                                                                      *
 * Do not edit manually ! Edit header and run scripts/sipify.pl again   *
 ************************************************************************/




class QgsVectorSimplifyMethod
{
%Docstring
This class contains information how to simplify geometries fetched from a vector layer

.. versionadded:: 2.2
%End

%TypeHeaderCode
#include "qgsvectorsimplifymethod.h"
%End
  public:
    static const QMetaObject staticMetaObject;

  public:
    QgsVectorSimplifyMethod();
%Docstring
construct a default object
%End

    enum SimplifyHint
    {
      NoSimplification,
      GeometrySimplification,
      AntialiasingSimplification,
      FullSimplification,
    };
    typedef QFlags<QgsVectorSimplifyMethod::SimplifyHint> SimplifyHints;


    void setSimplifyHints( SimplifyHints simplifyHints );
%Docstring
Sets the simplification hints of the vector layer managed
%End
    SimplifyHints simplifyHints() const;
%Docstring
Gets the simplification hints of the vector layer managed
%End

    enum SimplifyAlgorithm
    {
      Distance,
      SnapToGrid,
      Visvalingam,
    };

    void setSimplifyAlgorithm( SimplifyAlgorithm simplifyAlgorithm );
%Docstring
Sets the local simplification algorithm of the vector layer managed
%End
    SimplifyAlgorithm simplifyAlgorithm() const;
%Docstring
Gets the local simplification algorithm of the vector layer managed
%End

    void setTolerance( double tolerance );
%Docstring
Sets the tolerance of simplification in map units. Represents the maximum distance in map units between two coordinates which can be considered equal
%End
    double tolerance() const;
%Docstring
Gets the tolerance of simplification in map units. Represents the maximum distance in map units between two coordinates which can be considered equal
%End

    void setThreshold( float threshold );
%Docstring
Sets the simplification threshold of the vector layer managed
%End
    float threshold() const;
%Docstring
Gets the simplification threshold of the vector layer managed
%End

    void setForceLocalOptimization( bool localOptimization );
%Docstring
Sets where the simplification executes, after fetch the geometries from provider, or when supported, in provider before fetch the geometries
%End
    bool forceLocalOptimization() const;
%Docstring
Gets where the simplification executes, after fetch the geometries from provider, or when supported, in provider before fetch the geometries
%End

    void setMaximumScale( float maximumScale );
%Docstring
Sets the maximum scale at which the layer should be simplified
%End
    float maximumScale() const;
%Docstring
Gets the maximum scale at which the layer should be simplified
%End

};

QFlags<QgsVectorSimplifyMethod::SimplifyHint> operator|(QgsVectorSimplifyMethod::SimplifyHint f1, QFlags<QgsVectorSimplifyMethod::SimplifyHint> f2);


/************************************************************************
 * This file has been generated automatically from                      *
 *                                                                      *
 * src/core/qgsvectorsimplifymethod.h                                   *
 *                                                                      *
 * Do not edit manually ! Edit header and run scripts/sipify.pl again   *
 ************************************************************************/