Salut à tous,
Je développe une application qui permet de créer différentes formes et de les redimensionner.
Pour ceci, j'utilise des "ancres" aux coins et sur les cotés de mes formes qui ne sont en fait que de simples carrés (QGraphicsItem).
Pour zoomer, je me sers de la fonction scale() de QGraphicsView.
En faisant ainsi, tous les enfants de la scène sont redimensionnés et jusque là c'est le comportement que je souhaitais obtenir.
Mais j'ai un problème avec les formes de petite taille.
Si j'effectue un zoom important et que je dessine un tout petit cercle par exemple, les "ancres" sont trop grosses (car redimensionnées).
Ce que je souhaite, c'est que seules ces ancres ne soient pas rendimensionnées sur ma scène.
J'ai essayé d'appliquer une mise à l'échelle inverse sur chacune d'entre elles avec la fonction setScale et QGraphicsItem, sans résultat...
Une solution pourrait être de redimensionner chaque élément séparément, mais je souhaiterais conserver l'utilisation de la fonction scale() de QGraphicsView...
Voici une image du problème (à gauche, le petit cercle n'a pas le focus, à droite c'est l'inverse):
![]()
![]()
Partager