14.11.2012 Aufrufe

Anforderungen an einen kartographischen Viewer für ... - Carto:net

Anforderungen an einen kartographischen Viewer für ... - Carto:net

Anforderungen an einen kartographischen Viewer für ... - Carto:net

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.

3 Technologien<br />

- ECMA 262 Spezifikation (vgl. ECMA 1999)<br />

- ECMAScript L<strong>an</strong>guage Binding for DOM2 Core (vgl. LE HORS A. et al 2000, Anh<strong>an</strong>g E)<br />

- ECMAScript L<strong>an</strong>guage Binding for SVG1 (vgl. FERRAIOLO J. et al 2001, Anh<strong>an</strong>g E)<br />

- Current Support for SVG – Adobe SVG <strong>Viewer</strong> (vgl. ADOBE 2001)<br />

Die Referenzen sind aufgrund der fehlenden Entwicklungsumgebung besonders hilfreich. Sie<br />

unterstützen den Entwickler in großem Maße.<br />

Um Skripte verwenden zu können, müssen diese in den SVG Baum eingebunden werden. Das<br />

Element erlaubt interne sowie externe Scriptdefinition. Dabei muss zusätzlich die<br />

Scriptsprache sowie der einzusetzende Scriptinterpreter <strong>an</strong>gegeben werden.<br />

Sind Scripte eingebunden, können diese durch Events aufgerufen werden. SVG unterstützt<br />

verschiedene Events, die das Ausführen bzw. Starten von Scriptroutinen auslösen. FERRAIOLO et<br />

al geben eine ausführliche Übersicht aller unterstützen Events sowie deren Eventh<strong>an</strong>dler (vgl.<br />

FERRAIOLO J. et al 2001, 16.2 Complete list of supported events). Die Wichtigsten sind User<br />

Interface Events, die beispielsweise durch das Betätigen einer Taste oder der Maus, ausgelöst<br />

werden. SVG lässt das Deklarieren von Events als Attribut direkt in einem Element zu.<br />

Treten bei der Interpretation der Funktionen Syntaxfehler auf, ersch<strong>einen</strong> diese in einer<br />

Nachrichtbox. Aufgrund der fehlenden Entwicklungsumgebung gestaltet sich das Auffinden von<br />

Fehlermeldungen äußerst schwierig.<br />

Die Implementierung des Prototypen nutzt das Grundkonzept der Objektorientierung. Diese ist in<br />

JavaScript, im Vergleich zu dem Konzept der Klassen und dem der Objekte höherer<br />

Programmiersprachen (z.B. in C++ oder Java), durch das Konzept der Prototypen implementiert.<br />

Es dient also nicht eine Klasse als Vorlage <strong>für</strong> ein Objekt, sondern ein prototypisches Objekt. Jedes<br />

Objekt k<strong>an</strong>n zur Laufzeit durch Attribute und Methoden erweitert werden. Eine derartige<br />

Erweiterung betrifft aber ausschließlich das referenzierte Objekt. Soll die Veränderung alle<br />

Inst<strong>an</strong>zen modifizieren, so erfordert dies eine Erweiterung des Prototypen durch die Eigenschaft<br />

prototype. Diese Eigenschaft k<strong>an</strong>n genutzt werden, die Vererbung von Methoden und<br />

Eigenschaften, die im Sprachumf<strong>an</strong>g von Javascript nicht unmittelbar vorgesehen ist,<br />

nachzuempfinden (vgl. ZIEGLER C. 2001; LINDSEY K. 2002).<br />

3.2.2.6 Animationsmöglichkeiten<br />

Für zeitgemäßes Design ist es wichtig, auch dynamische Vorgänge beschreiben zu können. Da<strong>für</strong><br />

sind Elemente der W3C Empfehlung <strong>für</strong> Multimedia SMIL in SVG implementiert. Weitere SVGinterne<br />

Animationselemente erweitern die Möglichkeit, Bewegungen darzustellen.<br />

Animationselemente werden als Kinder des zu <strong>an</strong>imierenden Elementes deklariert. Dabei werden<br />

fast alle Elemente und Attribute unterstützt. SVG definiert echte zeitbasierte Animation. Daher ist<br />

alleine der User Agent <strong>für</strong> die Renderingzeit ver<strong>an</strong>twortlich.<br />

Eine Vielzahl von Animationsmöglichkeiten mit zugehörigen Beispielen beschreibt QUINT (vgl.<br />

QUINT A. 2002a). Teilweise k<strong>an</strong>n durch geschickt programmierte Animation auf Scripting<br />

verzichtet werden. Ein beeindruckendes Beispiel zeigt HIRTZLER. Dabei ist eine Drop-Down<br />

Liste nur mit Elementen der Animation realisiert worden. Auf Scripting konnte deswegen komplett<br />

verzichtet werden (vgl. HIRTZLER M. 2002).<br />

3.2.2.7 Sonstiges<br />

Rastergraphiken werden mit dem Element in den SVG Baum eingebunden. Viele der<br />

gängigen Graphikformate (dazu zählt auch SVG selbst) werden unterstützt. Auch base64 kodierte<br />

57

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!