[Interest] Drawing dashed line with QSGSimpleMaterialShader

Artem Fedoskin afedoskin3 at gmail.com
Mon Jun 13 22:37:02 CEST 2016


Thank you guys for all your advices.

I implemented the thing I need by drawing textures with QPainter but
whenever I rotate my QQuickItem using setRotation() or rotate the transform
matrix the texture is displayed incorrectly.

This is the correct way of displaying - http://i.imgur.com/bZIsWHR.png
And an incorrect one - http://i.imgur.com/63y21up.png

What should be done to get texture displayed as on the first pic while
rotating the matrix of QSGTransformNode or rotating QQuickItem?
Switching antialiasing on and off doesn't change the situation.

Regards, Artem


2016-06-06 18:24 GMT+02:00 Shawn Rutledge <Shawn.Rutledge at qt.io>:

>
> > On 6 Jun 2016, at 12:29, Gunnar Sletta <gunnar at sletta.org> wrote:
> >
> >> On 06 Jun 2016, at 09:27, Artem Fedoskin <afedoskin3 at gmail.com> wrote:
> >> Another question - is there any way to draw text solely in Scene Graph
> using QSG classes? I need to draw a lot of text labels and what only came
> to my mind is to draw them using QPainter on a QImage and store it as a
> QSGSimpleTextureNode in the node itself.
> >
> > Nope, the text API is all internally, unfortunately. Going through the
> QImage + texture node code path shouldn't be too bad though.
>
> It’s not impossible to put text into the scenegraph from C++, but you will
> need to use private APIs, so you will be tied to a range of Qt versions
> where those private APIs don’t change.  You can use QTextLayout to generate
> QGlyphRuns, and create a QSGGlyphNode for each.  Some other QSG stuff is
> public (and there are examples in qtdeclarative/examples/quick/scenegraph),
> but QSGGlyphNode isn't.
>
> It may turn out that rendering textures with QPainter, as you suggest, is
> faster anyway.
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20160613/ad6fd636/attachment.html>


More information about the Interest mailing list