Table of Contents

Commit 2014-02-24

Modifications de la visualisation

Fenêtre Vizwin - Graphe en temps réel - Bug

J'ai corrigé un bug de la visualisation lors du chargement d'un jeu de données.

En effet, dans les fenêtres “Vizwin” des graphes en temps réel, il y avait le système d'axes, le texte VizWin et l'échelle de couleur qui apparaissaient dans chaque fenêtre. Lors du lancement de l'intégration temporelle, ces derniers disparaissaient ! Maintenant, tous ces objets ne sont plus instanciés du tout !

Exemple du Bug de visualisation dans le jeux de donnée “apps.qs.cont2” :

Fenêtre BWin - Onglet Axes - Nouvelles options d'affichage

Sous l'onglet Axes de la fenêtre BWin, nous pouvons désormais enlever les informations du pas de temps sur la fenêtre de visualisation principale et choisir l'emplacement du système d'axes parmi les quatre coins de cette fenêtre.

Il y a des informations supplémentaires qui apparaissent lorsque le curseur de la souris se trouve en face de l'option.

Fenêtre BWin - Onglet ShowHide - Nouvelles fonctionnalités

J'ai implémenté la suppression des drawables. Maintenant, il suffit de sélectionner le drawable et de taper “Delete” pour le supprimer de la liste des drawables affichés ! N'oubliez pas de faire un Update après avoir effectué l'opération, comme à chaque fois que l'on change une option de la fenêtre de visualisation !

J'ai empêché de représenter deux fois le même drawable (lors d'un drag et drop de l'objet Browser vers l'onglet ShowHideWidgets) et j'ai ajouté le numéro utilisateur au nom des drawables affichés, dès qu'il y en a un !

Cette dernière approche est discutable … Pour faire mieux, il faudrait mettre en évidence le drawable sélectionné dans la fenêtre de visualisation (par exemple en rouge !).

Fenêtre BWin - Onglet VectorValues/ScalarValues

La grande nouveauté dans la fenêtre de visualisation de Metafor est la possibilité d'afficher les champs vectoriels avec des flèches ou des traits, avec une échelle de couleur ou non. Ces flèches peuvent être de taille uniforme ou de taille proportionnel à la magnitude du champ vectoriel. Il y a une information supplémentaire sur l'option lors que l'on place le curseur de la souris sur l'option.

J'ai scindé l'affichage d'un champ scalaire de l'affichage d'un champ vectoriel, d'où la présence de deux onglets désormais.

Il y a une gestion automatique de la position de chaque échelle de couleur, dans le cas d'une seule échelle de couleur ou de deux échelles de couleur. Chaque échelle de couleur est toujours centré dans l'espace autorisé de la fenêtre principale.

Pour la configuration des échelles de couleur, la taille et la hauteur sont exprimés en pourcentage de la taille et la hauteur maximales autorisées dans le cas d'une seule échelle de couleur ou deux échelles de couleur.

L'ensemble des options sera présenté lors de la prochaine réunion de service.

Voici quelques exemples d'affichage de champ vectoriel du cas test “apps.qs.cont2”

Visualisation des forces externes - Flèche de longueur constant et échelle de couleur (norme du vecteur affichée).

Visualisation des forces externes - Flèche de longueur proportionnelle à la norme du vecteur et échelle de couleur (norme du vecteur affichée).

Fenêtre BWin - Onglet Contact

J'ai déplacé l'option de l'affichage des “bounding box” de contact dans un nouvel onglet. C'est pour la suite, car je vais ajouter des options de visualisation propre aux interactions de contact.

Suite à mon expérience et aux conseils de Romain, je conseille vivement à toute personne qui désire programmer dans la visualisation de recompiler les librairies VTK avec l'option “VTK_DEBUG_LEAKS”. La raison est que cette option permet de vérifier que l'ensemble des objets VTK a été bel et bien désalloué correctement lors de la fermeture de Metafor.

Fichiers/Dossiers ajoutés/supprimés

[a]:mtDrawables/ArrowOrientedGlyph.cpp
[a]:mtDrawables/ArrowOrientedGlyph.h
[a]:mtQt/icons/contact.png
[a]:mtQt/ContactWidget.h
[a]:mtQt/ContactWidget.cpp
[a]:mtQt/ContactWidget.ui
[a]:mtQt/DrawableItem.h
[a]:mtQt/DrawableItem.cpp
[a]:mtQt/ScalarValuesWidget.h
[a]:mtQt/ScalarValuesWidget.cpp
[a]:mtQt/ScalarValuesWidget.ui
[a]:mtQt/VectorValuesWidget.h
[a]:mtQt/VectorValuesWidget.cpp
[a]:mtQt/VectorValuesWidget.ui
[r]:mtQt/ValuesWidget.cpp
[r]:mtQt/ValuesWidget.h
[r]:mtQt/ValuesWidget.ui
[a]:mtViz/ScalarFieldScalarBar.h
[a]:mtViz/ScalarFieldScalarBar.cpp
[a]:mtViz/ScalarBarsManager.h
[a]:mtViz/ScalarBarsManager.cpp
[a]:mtViz/VectorFieldScalarBar.h
[a]:mtViz/VectorFieldScalarBar.cpp

Tests ajoutés/supprimés

[r]:
[a]: 

Gaëtan WAUTELET 2014/02/24