Screen artifact when drag scene

Issue #50 resolved
Angus Yeh repo owner created an issue

Scene foreground painting bug, only when no color variable.

Edit, actually this is only when the colorbar is hidden! (had nothing to do with color variable or not!

artifact-after-0.6.7.png

Comments (6)

  1. Angus Yeh reporter
    self.setViewportUpdateMode(QGraphicsView.FullViewportUpdate)
    

    (was originally SmartViewportUpdate) Made it work, but I think it become very slow.

  2. Angus Yeh reporter

    Observation: scroll scene is slower if the colorbar is shown, which makes sense, because it's redrawing whole scene all the time, unlike when it's hidden, the scrolling only redraws the part that wasn't shown, hence the artifacts.

    I can resolve this by force it to update whole scene by self.updateScene([self.mapToScene(self.contentsRect()).boundingRect()]) but this causes the same slowness when colorbar (a child widget) is shown.

    Problems to solve here: - slowness due to redraw whole scene when with children widget - if not redraw whole scene, artifacts is there, the grid label and scene title probably shouldn't be drawn inside foreground.

  3. Angus Yeh reporter

    Fix issue #50 of foreground artifact, but created issue #51.

    This is temporarily fixed at performence cost. Graphicsview foreground not designed to draw viewport decorations. Also should check floating colorbar causing performence drop as it refresh whole, which is why it didn't have artifact.

    → <<cset d34a40d26390>>

  4. Log in to comment