16 #ifndef QGSTESSELLATOR_H 
   17 #define QGSTESSELLATOR_H 
   19 #include "qgis_core.h" 
   44     QgsTessellator( 
double originX, 
double originY, 
bool addNormals, 
bool invertNormals = 
false, 
bool addBackFaces = 
false, 
bool noZ = 
false,
 
   45                     bool addTextureCoords = 
false, 
int facade = 3, 
float textureRotation = 0.0f );
 
   56     QgsTessellator( 
const QgsRectangle &bounds, 
bool addNormals, 
bool invertNormals = 
false, 
bool addBackFaces = 
false, 
bool noZ = 
false,
 
   57                     bool addTextureCoords = 
false, 
int facade = 3, 
float textureRotation = 0.0f );
 
   60     void addPolygon( 
const QgsPolygon &polygon, 
float extrusionHeight );
 
   67     QVector<float> 
data()
 const { 
return mData; }
 
   70     int dataVerticesCount() 
const;
 
   73     int stride()
 const { 
return mStride; }
 
   78     std::unique_ptr< QgsMultiPolygon > asMultiPolygon() const 
SIP_SKIP;
 
   84     float zMinimum()
 const { 
return mZMin; }
 
   96     double mOriginX = 0, mOriginY = 0;
 
   97     bool mAddNormals = 
false;
 
   98     bool mInvertNormals = 
false;
 
   99     bool mAddBackFaces = 
false;
 
  100     bool mAddTextureCoords = 
false;
 
  101     QVector<float> mData;
 
  104     int mTessellatedFacade = 3;
 
  105     float mTextureRotation = 0.0f;
 
  107     float mZMin = std::numeric_limits<float>::max();
 
  108     float mZMax = std::numeric_limits<float>::min();
 
Multi polygon geometry collection.
A rectangle specified with double values.
Class that takes care of tessellation of polygons into triangles.
QVector< float > data() const
Returns array of triangle vertex data.
int stride() const
Returns size of one vertex entry in bytes.
float zMaximum() const
Returns maximal Z value of the data (in world coordinates)