Hi,

 

Iam using Qt5 beta2 on ubuntu desktop Linux  and latest Qt3D sources to
render text in 3D space.

 

Iam not sure how can we render text in drawItem(QGLPainter *painter) as
there are incorrect codes in this function TextItem3D::drawItem().

Please let me know in this regard.

 

Class TextItem3D: public QQuickItem3D

{

Q_OBJECT

 

Q_PROPERTY(qreal xPos READ xPos WRITE setXPos NOTIFY positionChanged)

 

Q_PROPERTY(qreal yPos READ yPos WRITE setYPos NOTIFY positionChanged)

 

Q_PROPERTY(QString textString READ textString WRITE setTextString NOTIFY
textStringChanged)

 

Public:

 

Explicit TextItem3D(QObject *parent=0);

~TextItem3D() { }

 

qreal xPos() const { return x;}

void setXPos(const qreal &xPos);

 

qreal yPos() const { return y;}

void setYPos(const qreal &yPos)

 

qreal zPos() const { return z;}

void setZPos(const qreal &zPos);

 

QString textString() const { return mTextString;}

Void setTextString(const QString &);

 

Q_SIGNALS: 

void positionChanged();

void textStringChanged();

 

protected: 

void drawItem(QGLPainter *painter)

 

private:

qreal x,y,z;

QString m_TextString;

QGLSceneNode *m_geometry;

bool m_ChangeFlag;

};QML_DECLARE_TYPE(TextItem3D)

 

 

void TextItem3D::setXPos(qreal xPosition)

{

If(x!=XPosition)

{

   x= XPosition ;

m_ChangeFlag = true;

emit PositionChanged();

update();

}

 

Void TextItem3D::drawItem(QGLPainter *painter)

{

    If(m_ChangeFlag || m_Geometry) {

        If(m_Geometry) delete m_Geometry;

 

QGLBuilder builder;

QGeometryData textCollection;

 

builder.newSection();

 

//INSERT Bitmap text OpenGL code like Points or Line

builder.appendAttribute() //wrong....?

builder.CurrentNode() ->setX(x);

builder.CurrentNode() ->setY(y);

builder.CurrentNode() ->setZ(z);

 

builder.CurrentNode() ->setDrawingMode();//wrong ...?

 

 

m_Geometry = builder.finalizedSceneNode();

m_ChangeFlag = false;

}

m_Geomtery->draw(painter);

}

 

Thanks and Regards,

Satya

_______________________________________________
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest

Reply via email to