recherche de chemin.
Note > Les graphiques 3D sont supportés depuis Qt4 par des modules et classes Qt
dédiés qui permettent notamment l'accélération matérielle via OpenGL. Ainsi, le
module Qt OpenGL dont les classes sont préfixées par QGL (par exemple :
QGLWidget). Depuis Qt 5.4, ce module est rendu obsolète par un ensemble de
nouvelles classes intégrées au module Qt GUI (elles ont le préfixe QOpenGL, par
exemple : QOpenGLWidget) ; ces dernières classes sont à utiliser pour tout nouveau
projet.
Qu'en est-il aujourd'hui pour nous, programmeurs Python/PyQt5 qui voulons réaliser
des graphiques ? Quelque part, nous avons l'embarras du choix mais chaque technique
a, grosso modo, son domaine d'application et chacune propose au programmeur des
abstractions très différentes. La couche graphique basée sur la classe QPainter est
toujours présente et accessible ; elle permet de tout faire… pour qui veut programmer
avec des primitives de bas niveau. On a par ailleurs un framework Graphics View mûr
et performant, qui offre des fonctions de très haut niveau. Pour la 3D, les classes
QOpenGL conviendront sans doute aux programmeurs rompus à l'API OpenGL; enfin,
pour les programmeurs qui n'ont pas peur d'apprendre une nouvelle technologie, il y a
le nouveau module Qt 3D, qui propose une API moderne et extensible (voir Affichage
3D avec Qt 3D).
Dans ce chapitre, nous allons nous pencher sur le framework Graphics View, qui
répond efficacement aux besoins de dessins 2D.
[12] Nommé originellement "Arthur", même si ce nom n'apparaît presque plus dans la
documentation.
175
Précédent

- 176/494

Suivant