16#ifndef QGSTESSELLATOR_H
17#define QGSTESSELLATOR_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>::max();
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)