[Interest] How to hide the QSGGeometryNode?

Denis Shienkov denis.shienkov at gmail.com
Mon Apr 15 13:11:05 CEST 2019


> Did you try already to use isSubTreeBlocked?

Hi. Yes, now I use this in a form of:

bool CurveNode::isSubtreeBlocked() const

{

    return QSGGeometryNode::isSubtreeBlocked() || !m_visible;

}

void CurveNode::setVisible(bool visible)
{    if (m_visible == visible)        return;    m_visible = visible;
  if (!m_visible)        m_dirtyState |= DirtySubtreeBlocked;    else
      m_dirtyState |= DirtyOpacity;
}


but, when I call the setVisible(true) infide of updatePaintNode(), then I
got an assert:

ASSERT: "shadowNode" in file scenegraph\coreapi\qsgbatchrenderer.cpp, line
1293


and, the node does not appeared again as a visible.









пт, 12 апр. 2019 г. в 12:09, Giuseppe D'Angelo via Interest <
interest at qt-project.org>:

> Hello,
>
> Il 12/04/19 09:19, Denis Shienkov ha scritto:
> > I have an own class, derived from the QQuIckItem. This class contains a
> > multiple child QSGGeometryNode-s. Each node has own fragment && vertex
> > shader. Each node draws a curves, which are specified by a points set to
> > a vertex array. So, I need possibility to hide any selected
> > QSGGeometryNode (i.e. do not draw it).
> >
> > How to do it in a right way?
>
> Did you try already to use isSubTreeBlocked?
>
> HTH,
> --
> Giuseppe D'Angelo | giuseppe.dangelo at kdab.com | Senior Software Engineer
> KDAB (France) S.A.S., a KDAB Group company
> Tel. France +33 (0)4 90 84 08 53, http://www.kdab.com
> KDAB - The Qt, C++ and OpenGL Experts
>
> _______________________________________________
> Interest mailing list
> Interest at qt-project.org
> https://lists.qt-project.org/listinfo/interest
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20190415/b13294fc/attachment.html>


More information about the Interest mailing list