try et except pour gérer automatiquement les cas où Metafor n'a pas été compilé avec la visualisation et ne possède donc pas l'objet VizWinThis is an old revision of the document!
VizWin est capable d'afficher des objets type VectorDataCurve. Celles-ci sont composées de 2 vecteurs (abscisse, ordonnée). Ces vecteurs peuvent être le résultat de l'extraction de résultat en cours de simulation (courbes) mettant à jour la visualisation de la courbe en temps réel, mais peuvent aussi être construit à partir de résultats relus sur disque. Ce qui permet de tracer une courbe résultat expérimentale et de voir se construire la courbe de simulation correspondante durant le déroulement de la simulation.
Pour visualiser plusieurs VectorDataCurve sur une seule fenêtre, il suffit de créer un ensemble de VectorDataCurve (nommé DataCurveSet).
Exemple: supposons avoir défini dans le ValuesManager les courbes #1, #2 et #3, et vouloir afficher des “courbes graphiques” :
VectorDataCurve #1 : abscisse = courbe #1, ordonnée = courbe #2VectorDataCurve #2 : abscisse = courbe #1, ordonnée = courbe #3
Les 2 VectorDataCurve à visualiser sont définies par:
vlm = metafor.getValuesManager() cur1 = VectorDataCurve(1, vlm.getDataVector(1), vlm.getDataVector(2),'curveName') cur2 = VectorDataCurve(2, vlm.getDataVector(1), vlm.getDataVector(3),vlm.getDataVector(3).getName())
Ces deux VectorDataCurve sont alors stockées dans un DataCurveSet pour pouvoir les visualiser ensemble dans une seule fenêtre:
dataCurveSet1 = DataCurveSet() dataCurveSet1.add(cur1) dataCurveSet1.add(cur2)
Finalement, ce DataCurveSet est ajouté à une fenêtre VizWin1):
try:
winc1 = VizWin()
winc1.add(dataCurveSet1)
metafor.addObserver(winc1)
except NameError:
pass
try et except pour gérer automatiquement les cas où Metafor n'a pas été compilé avec la visualisation et ne possède donc pas l'objet VizWin