19.01.2015 Aufrufe

Projektgruppe Visual Analytics - Medieninformatik und Multimedia ...

Projektgruppe Visual Analytics - Medieninformatik und Multimedia ...

Projektgruppe Visual Analytics - Medieninformatik und Multimedia ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

160 Kapitel 9 Entwurf<br />

Die Klasse Legend sorgt für das Layout <strong>und</strong> die Funktionalität der Legende. Das<br />

DiagramDataModel stellt mit dem ColorModel bereits eine Datenstruktur zur Verfügung,<br />

aus der der Inhalt des Farbreiters automatisch generiert werden kann. Zum Befüllen<br />

des Größenreiters dient das in Legend durch die Methode GenerateSizeModel<br />

erstellte Modell, das äquivalent zum ColorModel Größe-Bezeichner-Paare erstellt.<br />

Abbildung 9.4 stellt die Klassenstruktur 2 der Legende dar.<br />

INotifyPropertyChanged<br />

DiagramDataModel<br />

Class<br />

CellSet<br />

CellSet<br />

Class<br />

IEnumerable<br />

IEnumerable<br />

Fields<br />

cellSet<br />

colorModel<br />

Methods<br />

OnPropertyChange<br />

Legend<br />

Class<br />

UserControl<br />

ColorModel<br />

ColorModel<br />

Class<br />

Dictionary<br />

Methods<br />

diagramDataModel_PropertyChanged<br />

DiagramLegend_DataContextChanged<br />

generateSizeModel<br />

Legend_SizeChanged<br />

Abbildung 9.4: Klassendiagramm der an der Legende beteiligten Klassen<br />

9.1.9 AnimationModel <strong>und</strong> AnimationPlayer<br />

Das AnimationModel kapselt die Operationen, welche für die Animation der Diagrammpunkte<br />

benötigt werden. Eine Animation wird erzeugt, sobald ein Anwender ein<br />

Level auf die Animations-Dropzone zieht. Am anschaulichsten ist dies, wenn es sich<br />

um ein Level einer Zeitdimension handelt, dann spiegelt die Animation der Punkte den<br />

Verlauf der Daten über die Zeit wieder. Da es stark von der Datenbank abhängt, bei<br />

welcher Dimension es sich um eine Zeitdimension handelt <strong>und</strong> da dies nicht – ohne einen<br />

zusätzlichen Mechanismus einzuführen – abfragbar ist, ist die Auswahl von Level, die<br />

für die Animation verwendet werden, nicht auf bestimmte Dimensionen beschränkt. Eine<br />

Animation entsteht aus mehreren Diagrammen, die dem Anwender in einer zeitlichen<br />

Abfolge angezeigt werden. Für jedes der Einzelbilder werden die Eigenschaften<br />

Größe, Position, Farbe <strong>und</strong> Sichtbarkeit aller Diagrammpunkte neu berechnet <strong>und</strong><br />

in das Diagramm eingefügt. Das AnimationModel hat Interaktionsfunktionen, die es<br />

2 Die Darstellung der Klassen DiagramDataModel, ColorModel <strong>und</strong> CellSet sind in dieser Abbildung<br />

der Übersicht halber auf die im Rahmen der Legende benötigten Funktionen <strong>und</strong> Properties beschränkt.

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!