16 #ifndef Qgs3DExportObject_H 
   17 #define Qgs3DExportObject_H 
   20 #include <QTextStream> 
   24 #include <Qt3DRender/QAttribute> 
   59     QString 
name()
 const { 
return mName; }
 
   61     void setName( 
const QString &name ) { mName = name; }
 
   74     void setupPositionCoordinates( 
const QVector<float> &positionsBuffer, 
float scale = 1.0f, 
const QVector3D &translation = QVector3D( 0, 0, 0 ) );
 
   76     void setupFaces( 
const QVector<uint> &facesIndexes );
 
   78     void setupLine( 
const QVector<uint> &facesIndexes );
 
   81     void setupNormalCoordinates( 
const QVector<float> &normalsBuffer );
 
   83     void setupTextureCoordinates( 
const QVector<float> &texturesBuffer );
 
   97     void objectBounds( 
float &minX, 
float &minY, 
float &minZ, 
float &maxX, 
float &maxY, 
float &maxZ );
 
  100     void setMaterialParameter( 
const QString ¶meter, 
const QString &value ) { mMaterialParameters[parameter] = value; }
 
  103     void saveTo( QTextStream &out, 
float scale, 
const QVector3D ¢er );
 
  105     QString saveMaterial( QTextStream &mtlOut, 
const QString &folder );
 
  109     ObjectType mType = ObjectType::TriangularFaces;
 
  111     QVector<float> mVertexPosition;
 
  112     QVector<float> mNormals;
 
  113     QVector<float> mTexturesUV;
 
  114     QVector<unsigned int> mIndexes;
 
  115     QMap<QString, QString> mMaterialParameters;
 
  117     QImage mTextureImage;
 
  119     bool mSmoothEdges = 
false;
 
Manages the data of each object of the scene (positions, normals, texture coordinates ....
void setMaterialParameter(const QString ¶meter, const QString &value)
Sets a material parameter to be exported in the .mtl file.
QImage textureImage()
Returns the texture image used by the object.
void setType(ObjectType type)
Sets the object type.
Qgs3DExportObject(const QString &name)
Qgs3DExportObject Constructs an export object that will be filled with coordinates later.
ObjectType type() const
Returns the object type.
ObjectType
The type of exported geometry.
QString name() const
Returns the object name.
void setTextureImage(const QImage &image)
Sets the texture image used by the object.
bool smoothEdges()
Returns whether object edges will look smooth.
void setName(const QString &name)
Sets the object name.
void setSmoothEdges(bool smoothEdges)
Sets whether triangles edges will look smooth.
@ Points
Point based rendering, requires point data.