schnelles Verschieben einer Maske?



  • mein Programm zeigt ein maskiertes Bild auf folgende Weise:
    1. Erzeugen eines QGraphicsScene Objektes
    2. Durch QGraphicsScene::addPixmap wird ein Bild hinzugefügt.
    3. Durch erneute QGraphicsScene::addPixmap wird eine Maske hinzugefügt.

    Jedesmal wenn die Maske verschoben werden muss, erzeuge ich eine neue Maske mit einem neuen Origin und ersetze die alte. Leider dauert Erzeugen der neue Masken sogar ein paar Sekunden. Hier fragt sich, ob das Pixmap irgendwie schneller verschoben werden kann. Gibt es eine bessere Routine von QT, die eine Bildmaske effizienter dargestellt werden kann?



  • warum verschiebst du nicht einfach das bereits hinzugefügte Pixmap?



  • myMask->moveBy(offset);
    

    lässt transparenten Randbereich hinter. Ich wollte nur einen durchsichtlichen Kreis an einer gezielten Stelle, außerhalb des Kreises muss stockdunkel sein.



  • Die Frage hätte im richtigen Unterforum vielleicht eine Chance, beantwortet zu werden. Schade.


Anmelden zum Antworten