Blended Shelf - Human-Computer Interaction - Universität Konstanz
Blended Shelf - Human-Computer Interaction - Universität Konstanz
Blended Shelf - Human-Computer Interaction - Universität Konstanz
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Umsetzung<br />
Stellt ein <strong>Shelf</strong>Control während der Befüllung mit ItemControls oder während eines Sortiervorgangs<br />
fest, dass der Platz für die Darstellung der ItemControls nicht ausreicht, legt es einen rechten<br />
Nachbarn an, welcher sich wiederum seinen Auftraggeber als linken Nachbarn merkt. Dies wiederholt<br />
sich so oft, bis entweder die Anzahl der maximal zulässigen ItemControls für die Regallandschaft<br />
erreicht ist oder alle ItemControls dargestellt werden können. Dieses recht einfache Prinzip<br />
hat sich als effektiv und flexibel herausgestellt. So können die Regale zur Laufzeit je nach Bedarf<br />
und je nach Datenlage verkleinert und vergrößert werden. Die wenig komplexe Datenstruktur der<br />
verketteten Liste erlaubt zusätzlich die rekursive Implementierung von schlanken Algorithmen zum<br />
effizienten Ablaufen der Regallandschaft.<br />
Im <strong>Shelf</strong>Control sind zahlreiche Methoden zur Navigation verortet. Diese Methoden können über<br />
die Navigator-Klasse öffentlich aufgerufen werden, so dass die Navigation unabhängig von der<br />
Eingabemodalität gesteuert werden kann. Navigation in BS bedeutet letztlich nur, dass eine virtuelle<br />
Kamera in der 3D-Regallandschaft bewegt wird. Wird das BS aufgefordert, die Kamera um ein<br />
Regal nach rechts zu bewegen, wird erst geprüft, ob überhaupt ein rechter Nachbar vorhanden ist.<br />
Ist dies der Fall, wird anschließend die neue Kameraposition berechnet und die Kamera zur neuen<br />
Position animiert.<br />
Abbildung 27: Beispielhafter Ablauf einer Fingereingabe (Manipulation)<br />
Im <strong>Shelf</strong>Control sind ebenfalls die Manipulation-Events (siehe Abbildung 27) implementiert. Eine<br />
Manipulation wird z. B. über Fingereingaben ausgelöst. Ebenso kann die Inertia – das sind durch<br />
digital simulierte Trägheit geschaffene Bewegungen im Anschluss an eine Interaktion – Manipula-<br />
65