DE10030765A1 - Verfahren, Computerprogrammprodukt, Computersystem, Netzwerkserver und Netzwerkclient zum Einbinden eines Programmelementes in eine Browserseite - Google Patents
Verfahren, Computerprogrammprodukt, Computersystem, Netzwerkserver und Netzwerkclient zum Einbinden eines Programmelementes in eine BrowserseiteInfo
- Publication number
- DE10030765A1 DE10030765A1 DE2000130765 DE10030765A DE10030765A1 DE 10030765 A1 DE10030765 A1 DE 10030765A1 DE 2000130765 DE2000130765 DE 2000130765 DE 10030765 A DE10030765 A DE 10030765A DE 10030765 A1 DE10030765 A1 DE 10030765A1
- Authority
- DE
- Germany
- Prior art keywords
- browser
- image
- computer
- program element
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Ein Verfahren zum Einbinden eines Programmelementes in eine Browserseite (320), sowie ein Computersystem (230-280), ein Computerprogrammprodukt, ein Netzwerkserver (260) und ein Netzwerkclient (200) zum Betreiben eines solchen Verfahrens wird vorgestellt. Der Code (310) der Browserseite (320) enthält zunächst einen Platzhalter (800) mit einer Kennung zur Identifikation des Platzhalters (800). Die Browserseite (320) wird in einem Browserfenster, sowie als Teil der Browserseite (320) der Platzhalter (800) in einem Bereich des Browserfensters dargestellt. Bei Vorliegen der Ausführbarkeitsvoraussetzungen und/oder bei vollständiger Übertragung des Programmelementes, sowie von hierfür erforderlichen Daten (600-640) in einen Arbeitsspeicher (240) wird eine Einfüge-Routine oder ein Teil einer Einfüge-Routine aktiviert. Der Browser (300) führt die Einfüge-Routine oder den Teil der Einfüge-Routine aus und macht hierbei den Platzhalter (800) unter Verwendung der Kennung des Platzhalters (800) im Code (310) der Webseite (320) ausfindig. Der Browser (300) führt das Programmelement aus und führt eine Darstellung im Bereich des Platzhalters (800) im Browserfenster durch.
Description
Die Erfindung betrifft ein Verfahren zum Einbinden eines Pro
grammelementes in eine Browserseite, sowie ein Computersystem,
ein Computerprogrammprodukt, einen Netzwerkserver und einen
Netzwerkclient zum Betreiben eines solchen Verfahrens.
Als Browserseiten werden hier wie im folgenden Darstellungen
bezeichnet, welche beispielsweise mit einem Internetbrowser er
zeugt werden. Der Code einer solchen Seite kann beispielsweise
ein HTML-Code oder eine entsprechende Weiterentwicklung sein.
Er enthält im wesentlichen eine inhaltliche Repräsentation der
Browserseite, d. h. beispielsweise Texte und Steuerzeichen für
die Textgestaltung. Bei neueren HTML-Versionen enthält der
HTML-Code allgemein Angaben darüber, was an welcher Stelle der
Browserseite wie angezeigt werden soll.
Programmelemente werden in diesem Rahmen beispielsweise benö
tigt, um in der Browserseite eine Animation darzustellen. Zu
diesem Zweck können "Applets" oder "Embedded Objects" in den
Code eingefügt werden (hierunter sind jeweils Angaben zu ver
stehen, welche den Browser veranlassen, ein Programmelement
aufzurufen, abzuspielen und eine entsprechende Darstellung auf
eine bestimmte Weise in die Browserseite einzufügen). Alterna
tiv besteht auch die Möglichkeit, die entsprechenden Animati
onsroutinen explizit in den Code der Browserseite einzufügen.
Durch das Einbinden von Programmelementen auf die beschriebene
Weise werden inhaltlicher und funktionaler Code vermischt.
Hierdurch werden der Code unübersichtlich und der Programmier
aufwand entsprechend erhöht. Hinzu kommt, daß im Falle von
nicht ausführbaren Programmroutinen im Browser lediglich eine
entsprechende Meldung bzw. ein Icon angezeigt wird. Dies ist
etwa dann der Fall, wenn die Animation nur unter Verwendung ei
nes Plug-Ins abgespielt werden kann, welches auf dem Rechner
nicht installiert ist, oder wenn Elemente der Animation etwa
aufgrund von Netzwerkproblemen nicht übertragen werden können.
In einem solchen Fall erscheint in der Browserseite kein Hin
weis auf den. Inhaltsoder die Ausgestaltung der Animation.
Die vorliegende Erfindung hat die Aufgabe, ein verbessertes
Verfahren zum Einbinden eines Programmelementes in eine
Browserseite, sowie ein Computersystem, ein Computerprogramm
produkt, einen Netzwerkserver und einen Netzwerkclient zum Be
treiben eines solchen Verfahrens, zur Verfügung zu stellen.
Sie erreicht dieses Ziel durch den Gegenstand der Ansprüche 1
bzw. 8-12, also durch ein Verfahren zum Einbinden eines Pro
grammelementes in eine Browserseite, sowie ein Computersystem,
ein Computerprogrammprodukt, einen Netzwerkserver und einen
Netzwerkclient zum Betreiben eines solchen Verfahrens. Der Code
der Browserseite enthält zunächst einen Platzhalter mit einer
Kennung zur Identifikation des Platzhalters. Die Browserseite
wird in einem Browserfenster, sowie als Teil der Browserseite
der Platzhalter in einem Bereich des Browserfensters darge
stellt. Bei Vorliegen der Ausführbarkeitsvoraussetzungen
und/oder bei vollständiger Übertragung des Programmelementes,
sowie von hierfür erforderlichen Daten in einen Arbeitsspeicher
wird eine Einfüge-Routine oder ein Teil einer Einfügeroutine
aktiviert. Der Browser führt die Einfüge-Routine oder den Teil
der Einfügeroutine aus und macht hierbei den Platzhalter unter
Verwendung der Kennung des Platzhalters im Code der Webseite
ausfindig. Der Browser führt das Programmelement aus und führt
eine Darstellung im Bereich des Platzhalters im Browserfenster
durch.
Gegenüber dem Stand der Technik hat die Erfindung insbesondere
den Vorteil, daß bei Übertragungs- und/oder Darstellungsproble
men zumindest ein erster Eindruck vom darzustellenden Objekt
vermittelt werden kann. Weitere Vorteile ergeben sich aus der
nachstehenden Beschreibung von Ausführungsbeispielen und den
beigefügten Figuren. Die Ansprüche 2-7 betreffen vorteilhafte
Ausgestaltungen den Erfindung.
Die Erfindung wird im folgenden anhand von Ausführungsbeispie
len und der beigefügten Zeichnung noch näher erläutert. In der
Zeichnung sind:
Fig. 1a-e schematische Darstellungen möglicher veränderli
cher Objektsansichten und/oder -zustände, welche
unter Verwendung der Erfindung vorteilhaft dar
gestellt werden können;
Fig. 2a-c schematische Darstellungen von Computersystemen,
in welche die vorliegende Erfindung implemen
tiert ist;
Fig. 3 eine schematische Darstellung der Arbeitsweise
eines Browsers;
Fig. 4 eine schematische Darstellung einer Übersicht
über ein Verfahren, in welchem die vorliegende
Erfindung zum Einsatz kommt;
Fig. 5a-c Illustrationen für die Definition von Bildfol
gen;
Fig. 6a, b schematische Darstellungen der Aufbereitung der
Bilddaten für eine Übertragung; .
Fig. 7a-c Illustrationen einer bevorzugten Verarbeitung
übertragener Bilddaten;
Fig. 8a, b Illustrationen eines bevorzugten Verfahrens zur
Einbindung von Programmelementen in eine
Browserseite;
Fig. 9a-c Illustrationen eines bevorzugten Verfahrens zur
Ermittlung einer darzustellenden Objektansicht;
und
Fig. 10a-d Illustrationen eines bevorzugten Verfahrens zum
Einfügen interaktiver Flächen in die veränderli
che Darstellung.
Im folgenden werden zunächst anhand der Fig. 1a-1e verschiede
ne beispielhafte Aufgabenstellungen erläutert, bei welchen je
weils Objekte in veränderlichen Ansichten und/oder Zuständen
darzustellen sind. Die vorliegende Erfindung kommt insbesondere
bei Verfahren, Computerprogrammprodukten und/oder Computersy
stemen zur Realisierung solcher Darstellungen vorteilhaft zum
Einsatz. Anhand der Fig. 8a und 8b werden vorteilhafte Ausge
staltungen der Erfindung geschildert. Die Fig. 2a-7c und 9a-10d
betreffen schließlich ein Beispiel für ein technisches Um
feld, in welchem die Erfindung vorteilhaft zum Einsatz kommt.
Fig. 1a zeigt ein erstes Objekt 100, welches die Gestalt eines
Würfels hat. Das erste Objekt 100 ist in einer Außenansicht
dargestellt. Daneben ist ein dreidimensionales kartesisches Ko
ordinatensystem mit drei zueinander senkrechten Achsen X, Y und
Z eingezeichnet. Gegenstand einer veränderlichen Objektdarstel
lung kann die Drehung des ersten Objektes 100 um die senkrechte
Achse Z (angedeutet durch einen ersten und einen zweiten Pfeil
P1, P2) sein. Zusätzlich oder stattdessen können Drehungen des
Objektes 100 um eine der horizontalen Achsen X und/oder Y
(angedeutet durch einen dritten und einen vierten Pfeil P3 und
P4; in gleicher Weise möglich sind auch Drehungen um eine be
liebige andere Achse) darzustellen sein. Das erste Objekt 100
wäre also in veränderlicher räumlicher Ansicht zu zeigen.
Fig. 1b zeigt ein zweites Objekt 110, welches die Gestalt des
Aufrisses eines Raumes hat. Das zweite Objekt 110 ist in einer
kombinierten Innen- und Außenansicht dargestellt. Gegenstand
einer veränderlichen Objektdarstellung können Drehungen des
zweiten Objektes 110 um die gleichen Achsen wie beim ersten Ob
jekt 100 sein. Dabei kann eine kombinierte Innen- und Außenan
sicht ebenso wie eine bloße Innenansicht gezeigt werden. Das
zweite Objekt 110 wäre also ebenfalls in veränderlicher räumli
cher Ansicht zu zeigen.
Fig. 1c zeigt ein drittes Objekt 120, welches die Gestalt einer
Hauswand hat. Gegenstand einer veränderlichen Objektdarstellung
können Verschiebungen des dritten Objektes 120 längs der hori
zontalen, zum dritten Objekt parallelen Achse Y oder einer be
liebigen anderen Achse sein (angedeutet durch einen fünften und
sechsten Pfeil P5 und P6).
Fig. 1d zeigt ein viertes Objekt 130 und ein fünftes Objekt
140. Beide Objekte 130 und 140 haben die gleiche Gestalt und
Position, aber eine unterschiedliche Farbe. Gegenstand einer
veränderlichen Objektdarstellung kann die Überführung des vier
ten Objektes 130 in das fünfte Objekt 140 sein (angedeutet
durch einen siebten Pfeil P7).
Fig. 1e zeigt ein sechstes Objekt 150, welches die Gestalt ei
nes Zahnrades hat, und ein siebtes Objekt 160, welches die Ge
stalt einer Feder hat. Zahnrad 150 und Feder 160 greifen inein
ander. Bei einer Verdrehung des Zahnrades 150 (angedeutet durch
einen achten Pfeil P8) werden die Objekte 150 und 160 in einen
gegenüber dem Ausgangszustand veränderten Zustand überführt
(angedeutet durch einen neunten Pfeil P9), in welchem das Zahn
rad 150' gegenüber seinem Ausgangszustand verdreht und die Fe
der 160' verbogen erscheint. Diese Überführung kann Gegenstand
einer veränderlichen Objektdarstellung sein. Zu zeigen wäre al
so eine zeitliche Veränderung des Zustandes der Objekte 150 und
160.
Die beschriebenen Gegenstände veränderlicher Objektdarstellun
gen beschränken sich nicht auf die dargestellten Objekte 100,
110, 120, 130, 140 und 150. Diese können vielmehr durch belie
bige andere Objekte ersetzt werden. Die beispielhaft angeführ
ten Objekte 100, 110, 120, 130, 140 und 150 dienen also nur der
Illustration. Auch können die unterschiedlichen Veränderungen
von Objektansichten und -zuständen beliebig miteinander kombi
niert werden. Ferner sind weitere Veränderungen denkbar.
Für das Folgende kommt es nur darauf an, daß überhaupt Verände
rungen von Objektansichten und/oder -zuständen darzustellen
sind. Wie diese im einzelnen vonstatten gehen, ist bedeutungs
los. Soweit auf konkrete Änderungen Bezug genommen wird, dient
dies stets nur dem leichteren Verständnis der Darstellung der
Erfindung.
Fig. 2a zeigt einen erstes Computersystem in der Form eines er
sten Computers 200 mit einem Monitor 210 und einer Computermaus
220. Anstelle des Monitors 210 können beliebige andere Anzeige
mittel, wie beispielsweise ein Projektor, verwendet werden. An
stelle der Computermaus können beliebige andere Cursorpositio
nierungsmittel, wie beispielsweise ein Track-Ball, ein Touch-
Pad, ein Maus-Stick, ein Touch-Screen oder Pfeiltasten einer
Computertastatur (nicht dargestellt) eingesetzt werden.
Der erste Computer 200 weist einen ersten Datenspeicher in der
Form eines Plattenspeichers 230, wie etwa einer Festplatte, CD
oder Diskette, und einen zweiten Datenspeicher in der Form ei
nes Haupt- und/oder Arbeitsspeichers 240 auf (angedeutet durch
einen gestrichelten zehnten Pfeil P10). Zwischen dem Plattm-
und dem Arbeitsspeicher 230 und 240 werden Daten übertragen
(angedeutet durch einen elften Pfeil P11). Die Übertragung er
folgt beispielsweise über übliche Schnittstellen, Bussysteme
und/oder Netzwerkkomponenten (nicht dargestellt). Die Be-
und/oder Verarbeitung von Daten erfolgt über eine CPU (Central
Processing Unit), welche ebenfalls nicht dargestellt ist.
Schließlich kann der erste Computer 200 alle weiteren üblichen
Komponenten wie etwa weitere Plattenspeicher, eine Graphikkarte
etc. umfassen.
Auf dem Plattenspeicher 230 befinden sich Daten. Auf diese Da
ten kann der erste Computer 200 über Kontrollmittel zugreifen.
Hierzu werden jeweils ein Lesekopf (nicht dargestellt) in den
Bereich des gewünschten Plattensektors gefahren, und dann die
gesuchten Daten ausgelesen. Dieser Vorgang ist wegen des dafür
notwendigen Verfahrens des Lesekopfes zum Auffinden der Daten
zeitintensiv. Eine realistische Zugriffszeit liegt in der Grö
ßenordnung von 200 ms für Floppy-Disketten, 5-20 ms für Fest
platten und 50 ms für CD-ROM.
Fig. 2b zeigt eine weiteres Computersystem, in welches die vor
liegende Erfindung implementiert ist. Das System umfaßt wieder
um den ersten Computer 200 mit Monitor 210 und Computermaus
220. Insoweit gilt das oben Gesagte. Auch weist der erste Com
puter 200 wiederum einen Arbeitsspeicher 240 auf. Ein Platten
speicher 230 ist hingegen in diesem Beispiel nicht erforderlich
(kann aber vorgesehen sein). Stattdessen ist der erste Computer
200 nun beispielsweise über eine serielle oder parallele
Schnittstelle oder über eine Netzwerkkarte mit einem zweiten
Computer 250 verbunden.
Der zweite Computer 250 kann Teil einer direkten PC-Verbindung,
weiterer Computer eines Clusters oder Server eines Netzwerks
sein. Der zweite Computer 250 weist einen Datenspeicher (nicht
dargestellt) auf, auf welchem Daten abgelegt sein können. Zwi
schen diesem Datenspeicher und dem Arbeitsspeicher 240 auf dem
ersten Computer 200 werden Daten übermittelt (angedeutet durch
einen zwölften Pfeil P12). Hierzu wird ein übliches Protokoll
benutzt, beispielsweise ein Basisprotokoll für eine einfache
physische Netzwerkverbindung wie Ethernet oder Token Ring oder
ein Internetprotokoll wie ein TCP/IP- oder das http-Protokoll.
Bedingt durch die Übertragungsraten und Auslesezeiten aus dem
Datenspeicher in dem zweiten Computer 250 sind auch diese Vor
gänge zeitintensiv.
Fig. 2c zeigt schließlich ein drittes Computersystem, in wel
ches die vorliegende Erfindung implementiert ist. Auch dieses
System umfaßt den ersten Computer 200 nebst Monitor 210 und
Computermaus 220 entsprechend den obigen Ausführungen. Anstelle
eines zweiten Computers 250 ist der erste Computer 200 nunmehr
an ein übergreifendes Netzwerk, beispielsweise das Internet an
geschlossen. Dieses umfaßt eine Mehrzahl von Computern, ange
deutet durch einen dritten, vierten und n-ten Computer 260, 270
bzw. 280. Zwischen dem ersten Computer 200 und den weiteren
Computern 260, 270 und 280 werden Daten übertragen (angedeutet
durch dreizehnte Pfeile P13, P13/1, P13/2 und P13/n). Außerdem
werden zwischen den weiteren Computern 260, 270 und 280 Daten
übertragen (angedeutet durch eine vierzehnten Pfeil P14). In
folgedessen kann die Datenübertragung zwischen dem ersten Com
puter 200 und einem der weiteren Computer 260, 270 und 280 auch
mittelbar über andere Computer 260, 270 und/oder 280 erfolgen.
Die Übertragungen erfolgen beispielsweise nach einem Internet-
Protokoll wie ein TCP/IP-Protokoll. Dabei agiert der erste Com
puter 200 beispielsweise als Clientrechner, und der dritte Com
puter 260 als Server. Für jede Übertragung wird zwischen dem
ersten Computer 200 und dem dritten Computer 260 dann eine Ver
bindung durch mehrfachen Paketaustausch ausgehandelt. Dann erst
werden die Daten übertragen, so daß auch dieser Vorgang zeitin
tensiv ist.
Der genannte Paketaustausch für Übertragungen umfaßt insbeson
dere die folgenden Schritte: zunächst muß eine sogenannte URL
(ein Uniform Resource Locator, also eine eindeutige Adresse wie
http:/ / www.adresse.com/filename.html) in den Protokolltyp, den
Rechnernamen und den Filmamen getrennt werden. Aus dem Domain-
Klartextnamen des Rechners (hier: www.adresse.com) muß die zu
gehörige IP-Adresse (Internet Protokoll Adresse, also die nume
rische Adresse, unter der ein bestimmter Rechner im Internet
erreichbar ist, wie etwa 145.96.123.97) ermittelt werden. Hier
zu werden in aufsteigender Reihenfolge immer umfassendere Doma
in Name Server solange per Anfragedatenpaket abgefragt, bis in
einer Datenbank die zur URL gehörige IP-Adresse gefunden wird.
Sodann muß ein verfügbarer Weg durch das Internet gefunden wer
den, über welchen der Clientrechner 200 und der Severrechner
260 miteinander Daten austauschen können. Hierzu muß der Cli
entrechner 200 an den Serverrechner über einen möglichen Weg
zunächst ein Datenpaket schicken, mit dem er seine Absicht an
kündigt, eine TCP (Transmission Control Protocol) Verbindung
aufzubauen. Dieses wird vom Sever 260 per Datenpaket quittiert,
sofern er die Verbindung akzeptiert. Hierbei treten weitere
Verzögerungen auf, bis der Server die erforderlichen Vorberei
tungen abgeschlossen hat. Der Empfang der Quittung wird wieder
um vom Client 200 quittiert. Erst dann werden die eigentlichen
Daten übertragen. Sofern eines der Anfragepakete verlorengeht,
beginnt die gesamte Prozedur auf einem anderen möglichen Ver
bindungsweg von neuem.
Die oben genannten Beispiele für Computersysteme, in welche die
vorliegende Erfindung - wie unten näher ausgeführt wird - imple
mentiert ist, sind keine abschließende Aufzählung und können
auch untereinander beliebig kombiniert werden. Sie dienen le
diglich als Illustrationen für ein verbessertes Verständnis der
Erfindung.
Fig. 3 zeigt eine schematische Darstellung der Arbeitsweise ei
nes Browsers 300. Hierbei handelt es sich um einen üblichen
Browser wie den Netscape Navigator 4.x, den Netscape 6.0, den
Microsoft Internet Explorer 4.x, 5.x, eine Vorläufer- oder
Nachfolgerversion hiervon, oder ein anderes Browser-
Softwareprodukt. Der Browser 300 ist als Software auf einem der
beschriebenen Computersysteme implementiert und hat Zugriff auf
den Arbeitsspeicher 240 des ersten Computers 200. Hierüber er
hält er vom Plattenspeicher 230, vom zweiten Computer 250
und/oder von einem der weiteren Computer 260, 270, 280 den Code
310 einer Browserseite einschließlich aller darzustellenden In
formationen. Dieser Code 310 basiert üblicherweise auf einer
einfachen Dokumentbeschreibungs-Sprache namens HTML (HyperText
Markup Language; in Betracht kommt auch eine beliebige Weiter-
oder Alternativentwicklung hiervon), die ihrerseits auf einem
Subset einer allgemeineren Sprache namens SGML (Standardized
Generalized Markup Language) beruhen kann. Er wird daher im
folgenden aus Gründen der Einfachheit aber ohne eine Einschrän
kung der Erfindung als HTML-Code 310 bezeichnet.
Ein HTML-Code enthält als solcher keine Konstrukte zur Pro
grammsteuerung (für Abfragen, Sprünge, Subroutinen etc.) und
keine exakte Beschreibung einer Dokumentansicht. Stattdessen
legt er nur einige globale Attribute für Überschriften, Fließ
text, Positionierung etc. fest, die auf unterschiedlichen
Plattformen oder Browsern zu recht verschiedenen Darstellungen
ein- und desselben Dokuments führen können. HTML gibt einem
Browser also nur Hinweise, wie er ein entsprechend abgefaßtes
Dokument darstellen kann; über die tatsächliche Ausgabe ent
scheidet jeder Browser je nach Implementation und Benutzerein
stellungen weitgehend selbst. Die Darstellung erfolgt als
Browserseite 320 auf einem Anzeigemittel wie dem Monitor 210.
Die Browserseite 320 enthält neben den oder statt der Textzei
len 322 auch Graphiken 324. Hierzu werden zusätzlich zu dem
HTML-Code 310 auch Graphiken in den Arbeitsspeicher 240 gela
den. Der HTML-Code 310 enthält Informationen darüber, welche
Graphiken 360 in welchem Bereich der Browserseite 320 wie ange
zeigt werden sollen. Solange die Graphik 360 nicht oder nicht
vollständig im Arbeitsspeicher 240 zur Verfügung steht, wird
üblicherweise stattdessen ein Icon oder eine Leerfläche im ent
sprechenden Bereich angezeigt.
Die Graphiken 360 werden in einem vom Browser unterstützten
Bilddatenkomprimierungsformat wie JPG (Joint Photographic Ex
pert Group; ein nach der dafür zuständigen ISO/CCITT-Kommission
benanntes Grafikformat), GIF (Graphics Interchange Format) oder
PNG (Portable Network Graphics) geladen. Ein solches unter
stütztes Format kann vom Browser ohne Zuhilfenahme weiterer
Programme wieder dekomprimiert und auf einen unmittelbar dar
stellbaren Binärcode übertragen werden.
Der HTML-Code umfaßt außerdem bzw. greift außerdem zu auf ver
schiedene HTML-Erweiterungen 330, 340 und 350. Hierbei handelt
es sich beispielsweise um Dynamic HTML, welches Technologien
wie JavaScript, Jscript, VBScript, CSS oder Layer umfaßt und
welche miteinander verknüpft werden können. Solche HTML-
Erweiterungen erlauben es, dynamische Inhalte in HTML-Seiten
einzufügen. Bei JavaScript, JScript und VBScript handelt es
sich um nicht all zu komplexe Script-Sprachen, mit welchen eine
HTML-Seite um echte Programme erweitert werden kann. Die Spra
chen sind jedoch weder für komplexe Anwendungen noch für eigen
ständige Programme gedacht. JavaScript-, Jscript- oder
VBScript-Programme werden im Klartext in eine HTML-Seite inte
griert, mit ihr in den Arbeitsspeicher 240 geladen und auf dem
ersten Computer 200 durch einen Script-Interpreter ausgeführt.
Einem Browser, dem der zugehörige Script-Interpreter fehlt,
kann mit dem Script nichts anfangen. Aktuelle Browser wie die
oben bezeichneten verfügen aber üblicherweise über solche
Script-Interpreter. CSS beinhaltet eine Formatvorlagentechnolo
gie. Layer sind solche Teile einer Browserseite, die relativ
oder absolut positioniert und unabhängig von anderen Elementen
auf der Seite bewegt werden können. Mehrere Layer können sich
wie Transparenzfolien überlappen und gegenseitig verdecken.
Alle vorstehend als Beispiele aufgeführten, vom Browser ohne
Erweiterungen verarbeitbaren bzw. darstellbaren Datenformate,
wie auch alle weiteren Datenformate mit dieser Eigenschaft,
werden im folgenden als Browserdatenformate bezeichnete.
Die genannten und weitere HTML-Erweiterungen können - wie ge
sagt - von aktuellen Browsern üblicherweise unmittelbar, d. h.
ohne Notwendigkeit zusätzlicher Plug-Ins (ein Plug-In ist ein
dynamisch hinzuladbares Modul, das einen Browser um bestimmte
Fähigkeiten erweitert) oder von Virtual Java Machines (eine
Virtual Machine ist ein Interpreter für Java Anwendungen, wel
cher ähnlich wie ein Plug-In in einen Browser implementiert
werden kann), verarbeitet werden. Darüber hinaus kann eine
HTML-Seite den Browser veranlassen, Java Applets oder Programme
auszuführen, welche solche Virtual Machines bzw. Plug-Ins als
Ergänzung für den Browser erforderlich machen.
Ein Java-Programm üblicherweise wird einmalig kompiliert. Der
resultierende binäre Bytecode wird durch einen Befehl im HTML
Code vom Browser nachgeladen und ausgeführt. Hierzu ist ein Ja
va Interpreter, etwa eine Virtual Machine erforderlich. Wesent
licher Vorteil eines Java-Programms ist seine Prozessor- und
Plattformunabhängigkeit. Das gleiche Compilat kann also auf In
tel-PCs unter Windows oder Linux, auf Power Macs oder auf Al
pha-Maschinen ausgeführt werden. Plug-Ins sind demgegenüber üb
licherweise plattformabhängig. Ergänzend sei angemerkt, daß
ebenso wie Java-Programme auch HTML-Codes und Java-Script
plattformunabhängig sind.
Zusammenfassend zeigt Fig. 3, wie der HTML-Code 310, welcher
HTML-Erweiterungen 330, 340 und 350 umfaßt (angedeutet durch
gestrichelte Pfeile P15, P16 und P17), im Arbeitsspeicher 240
für den Browser 300 verfügbar gemacht wird (angedeutet durch
einen achtzehnten Pfeil P18). Zusätzlich erhält der Browser 300
dort Bilder 360 (angedeutet durch Pfeil P20). Hieraus erzeugt
der Browser 300 die Browserseite 320, welche auf dem Monitor
210 angezeigt wird und welche Textzeilen 322 und ein Bild 324
umfaßt.
Fig. 4 zeigt eine Übersicht über ein Verfahren, in welchem die
Erfindung zum Einsatz kommt. Das Verfahren dient der Erzeugung
einer veränderlichen Darstellung eines Objektes, insbesondere
in veränderlicher räumlicher Ansicht. Beispielhaft wird dabei
das erste Objekt 100 aus Fig. 1a in veränderlicher räumlicher
Ansicht dargestellt. Es könnte aber auch jedes andere Objekt
aus den Fig. 1a-1e, oder ein beliebiges weiteres Objekt, in
beliebig veränderlicher Weise nach den gleichen Grundsätzen
dargestellt werden.
Das erfindungsgemäße Verfahren ist in eines der Computersysteme
aus Fig. 2a-2c implementiert und wird im ersten Computer 200
ausgeführt. Zur Implementierung wird das Verfahren z. B. ganz
oder teilweise in einem entsprechenden JavaScript, Jscript,
VBScript oder einem anderen geeigneten ScriptCode abgebildet,
welcher in den HTML-Code 310 eingefügt wird. Der Scriptcode
wird unter Verwendung weiterer Browserroutinen von dem Browser
300 auf dem Computer 200 ausgeführt. Als Anzeigemittel dienen
der Monitor 210 und als Cursorpositionierungsmittel die Compu
termaus 220.
Die einzelnen Verfahrensschritte werden nachfolgend unter wei
terer Bezugnahme auf die Fig. 5a-9c erläutert.
In einem ersten Schritt werden Daten einer Mehrzahl von Bildern
400, 402 und 404, welche jeweils das erste Objekt 100 in unter
schiedlicher Ansicht oder in einem unterschiedlichen Zustand
darstellen, in einem Browserdatenformat, insbesondere in einem
vom Browser unterstützten Bilddatenkomprimierungsformat wie
JPG, GIF oder PNG, im ersten Datenspeicher 230 oder auf einem
Datenspeicher in einem der weiteren Computer 250, 260, 270
und/oder 280 bereitgestellt (angedeutet durch einen einundzwan
zigsten Pfeil P21).
Die Anzahl der Bilder 400, 402, 404 richtet sich dabei nach dem
Darstellungszweck und den äußeren Gegebenheiten (von den glei
chen Faktoren hängen letztlich auch die Auswahl einer geeigne
ten Bildgröße oder der Komprimierungsfaktor bei verlustbehafte
ten Komprimierungsverfahren wie JPG ab):
Je nach Darstellungszweck kann das Verfahren grundsätzlich
auch mit nur zwei Bildern durchgeführt werden. Damit können be
reits alle Seiten des würfelförmigen ersten Objektes 100 ge
zeigt werden. Um eine vollständige Drehung des ersten Objekts
100 um eine Achse Z darzustellen und dabei bei einem Beobachter
einen überhaupt ausreichenden Eindruck einer Drehung (und nicht
einfach der Anzeige mehrerer Bilder) hervorzurufen, hat sich
eine Zahl von wenigstens 12 Bildern als zweckmäßig herausge
stellt. Um einen guten Eindruck einer kontinuierlichen Drehung
zu erzeugen, ist eine Zahl von wenigstens 24 Bildern gut geeig
net. Wenn das Objekt viele Details aufweist, welche im Laufe
der Drehung genau dargestellt werden sollen, wird eine größere
Zahl von Bildern benötigt. Wenn anstelle der Außenansicht eines
Objektes wie im Falle des ersten Objektes 100 die Innenansicht
eines Raumes wie im Falle des zweiten Objektes 110 während ei
ner vollen Umdrehung um eine Achse Z gezeigt werden soll, er
hält man ab einer Zahl von 36 Bildern einen guten Dreheindruck.
Auf der anderen Seite ist für eine erfindungsgemäße Darstel
lungstechnik als wichtigste äußere Gegebenheit die erforderli
che Übertragungszeit für die Daten zu berücksichtigen, zumal
diese ja von dem ersten Datenspeicher 230 (oder 250, 260, 270,
280) in den Arbeitsspeicher 240 geladen werden müssen. Sofern
die Darstellung etwa zu Werbezwecken in eine Webseite eingebet
tet werden soll und zu erwarten ist, daß ein Benutzer diese
Seite nur kurz betrachtet, so empfiehlt sich eine geringere
Zahl von Bildern. Sofern umgekehrt etwa eine veränderliche Dar
stellung eines Objektes in einer Business- to Business Anwen
dung mit hoher Übertragungsrate zum Tragen kommt, kann eine
größere Anzahl von Bildern zweckmäßig sein (beispielsweise kann
es hier günstiger sein, einem auswärtigen Techniker eine de
taillierte Ansicht eines zu reparierenden Objektes mit relativ
hohem Aufwand zu übertragen, als ihm telefonisch Anweisungen zu
geben).
Bei anderen Darstellungen als Drehungen ist die geeignete Bil
derzahl schließlich weitgehend abhängig vom Einzelfall.
Im vorliegend beschriebenen Ausführungsbeispiel wird eine volle
Drehung des ersten Objektes 100 um die Z-Achse dargestellt.
Hierfür werden 24 Bilder verwendet. Die Bilder können mittels
eines Computers erzeugt, von einem realen Objekt per Foto auf
genommen oder als Zeichnungen etc. zur Verfügung gestellt wer
den. Aus Gründen der Einfachheit wird im folgenden nur die Vor
gehensweise bei der Aufnahme der Photos beschrieben. Eine Simu
lation müßte stattdessen entsprechende Bilder erzeugen; eine
Zeichnung müßte entsprechende Bilder umfassen. Die genannten
Möglichkeiten, Bilder zu erzeugen, wie auch alle weiteren Mög
lichkeiten können ohne Einfluß auf die Erfindung auch beliebig
miteinander kombiniert werden.
Für die Aufnahme der Photos wird das Objekt 100 beispielsweise
auf einem um die Z-Achse drehbaren Untergrund gelagert. Dann
wird eine Kamera in einem gewünschten Abstand und Blickwinkel
fest positioniert. Für jede einzelne Aufnahme wird das Objekt
100 um einen gleichmäßigen Drehwinkel in gleicher Drehrichtung
um die Z-Achse weitergedreht. Um dabei mit 24 Bildern eine
Rundumdrehung darzustellen (wobei das Bild zum Ausgangsdrehwin
kel von 0° gleich dem Bild zum Enddrehwinkel von 360° ist), be
trägt der Drehwinkel dabei 360°/24 = 15°.
Für eine entsprechende Darstellung der Innenansicht des zweiten
Objektes 110 müßte man umgekehrt verfahren, d. h. die Kamera wä
re an einer gewünschten Position im Raum 110 drehbar um die Z-
Achse gelagert. Da es aber im Ergebnis stets nur auf die Rela
tivdrehung ankommt, ist im folgenden allgemein nur von einer
Drehung des Objektes 100 oder 110 um die Z-Achse die Rede.
Eine solche zusammengehörige Mehrzahl von Bildern wird im fol
genden als Bildfolge bezeichnet. Im Beispiel umfaßt eine solche
Bildfolge stets eine Mehrzahl von Objektansichten aus einer
Rundumdrehung um die Z-Achse. Es ist aber möglich, das Verfah
ren nach den gleichen Grundsätzen mit beliebig anders definier
ten Bildfolgen auszuführen. Beispielsweise können sich die Bil
der innerhalb einer Bildfolge auch durch farbliche Modifikatio
nen, Modifikationen der Gestaltung und/oder unterschiedliche
Zustände des dargestellten Objektes unterscheiden. Auf diese
Weise ist es beispielsweise möglich, eine Maschine in der Form
veränderlich darzustellen, daß man die Maschine vorwärts und
rückwärts laufen lassen kann. Allgemein wäre es möglich, eine
zeitliche Entwicklung eines Objektes darzustellen.
Um das Verfahren auszuweiten, kann auch eine Mehrzahl von Bild
folgen verwendet werden. Dies wird anhand der Fig. 5a-5c
verdeutlicht.
So kann eine erste Bildfolge entsprechend Fig. 5a eine volle
Drehung des ersten Objektes 100 um die Z-Achse in einer ersten
Relativlage des ersten Objektes 100 zur Z-Achse in Schritten
von jeweils 15° wie oben beschrieben darstellen (angedeutet
durch den ersten Pfeil P1). Eine zweite Bildfolge kann entspre
chend Fig. 5b eine volle Drehung des ersten Objektes 100' um
die Z-Achse in einer zweiten Relativlage des ersten Objektes
100' zur Z-Achse in Schritten von jeweils 15° wie oben be
schrieben darstellen (wiederum angedeutet durch den ersten
Pfeil P1). Wird eine Mehrzahl von Bildfolgen entsprechend den
Fig. 5a und 5b definiert, so ist es möglich, im Ergebnis eine
4-Π-Drehung, d. h. jeweils eine volle Drehung um wenigstens
zwei verschiedene Raumachsen und somit eine Drehung in jede be
liebige räumliche Lage, darzustellen. Für die einzelnen Bild
folgen wird dabei jeweils das erste Objekt 100 gegenüber der Z-
Achse um eine zweite, insbesondere zur Z-Achse senkrechte Dreh
achse verkippt. Alternativ kann eine Bildfolge auch nur eine
Teildrehung und/oder eine andere Bewegung des dargestellten Ob
jektes 100' umfassen.
Zusätzlich oder stattdessen kann eine zweite Bildfolge das Ob
jekt 100" wie in Fig. 5c angedeutet in einer anderen Farbe
oder allgemein nach einer Veränderung, aber in der gleichen Re
lativlage zur Z-Achse darstellen. Beispielsweise bei der Dar
stellung eines Autos kann eine Bildfolge das Auto mit geschlos
senen Türen und Motorhaube darstellen. Weitere Bildfolgen kön
nen jeweils das Objekt mit einer oder mit mehreren geöffneten
Türen und/oder Motorhaube darstellen. Wieder weitere Bildfolgen
entsprechen dann etwa den bisher genannten Bildfolgen, zeigen
aber das Objekt in unterschiedlicher Farbe. Schließlich können
diese Veränderungen auch mit denen entsprechend Fig. 5a und 5b
kombiniert werden, so daß das Objekt in unterschiedlichen Rela
tivlagen zur Z-Achse und in unterschiedlichen Zuständen gezeigt
wird. Daneben ist es - wie schon gesagt - auch möglich, ganz an
ders definierte Bildfolgen zu verwenden.
In einem zweiten Verfahrensschritt werden die Bilder 400, 402,
404 insbesondere unter Verwendung einer Datenübertragungsrouti
ne des Browsers 300 aus dem ersten Datenspeicher 230 (bzw. 250,
260, 270 und/oder 280) in einen zweiten Datenspeicher, nämlich
den Arbeitsspeicher 240, übertragen (angedeutet durch einen
zweiundzwanzigsten Pfeil P22).
Bei der Übertragung treten zwangsläufig die oben geschilderten
Verzögerungen auf. Diese wirken sich insbesondere bei der Ein
zelübertragung von beispielsweise 24 Bildern 400, 402, 404 aus
einer Bildfolge negativ aus. Hierdurch verbietet sich in den
meisten Fällen eine veränderliche Objektdarstellung, welche
darauf basiert, jeweils das Bild nachzuladen, welches eine dar
zustellende Objektansicht beinhaltet. Eine solche Darstellung
wäre ruckhaft und nicht fließend, so daß ein Dreheindruck aus
bliebe.
Um dem abzuhelfen, kann man zunächst alle Bilder 400, 402, 404
einer Bildfolge einzeln übertragen und nach Abschluß der Über
tragung die Darstellung beginnen. Auf diese Weise würde man
zwar eine fließende Darstellung erhalten. Die vorgeschaltete
Ladezeit ist jedoch relativ lang.
Eine verbesserte Lösung besteht darin, die Bilder 400, 402 und
404 zu einem Paket zusammenzupacken und dann im Arbeitsspeicher
240 wieder zu entpacken. Hierzu ist jedoch nach dem Stand der
Technik ein gesondertes Entpackungsprogramm erforderlich, wel
ches zu weiteren Umständen (nämlich die Installation, der zu
sätzliche Einsatz, sowie weitere Kosten) und Kompatibilitäts
problemen führt. Vorzugsweise wird daher im beschriebenen Aus
führungsbeispiel der nachfolgend anhand von Fig. 6a und 6b dar
gestellte Ansatz gewählt.
Zunächst werden im Beispiel - wie in Fig. 6a durch Pfeile P23,
P24 und P25 angedeutet - die Bilder 400, 402 und 404 zu einem
Bildstreifen 600 zusammengefügt. Dies kann beispielsweise mit
tels eines vorzugsweise insofern automatisierten Graphikpro
gramms erfolgen. Der Bildstreifen 600 entspricht also einem
breiten Bild, welches sich aus den Einzelbildern 400, 402 und
404 zusammensetzt (anstelle des Bildstreifens 600 können auch
eine Bildebene, d. h. mehrere Bildstreifen nebeneinander, so daß
die Bilder eine n.m Bilder große Fläche überdecken, oder eine
beliebige andere Zusammensetzung gewählt werden). Der Bild
streifen 600 wird dann als solcher in einem Browserdatenformat,
insbesondere in einem vom Browser unterstützten Bilddatenkom
primierungsformat wie JPG, GIF oder PNG, im ersten Datenspei
cher 230 oder auf einem Datenspeicher in einem der weiteren
Computer 250, 260, 270 und/oder 280 zut Übertragung bereitge
stellt. Allgemeiner gesagt werden nach diesem Ansatz also meh
rere Datensätze, z. B. Bilddatensätze, in einem Browserdatenfor
mat zu einem Datenpaket zusammengefaßt und im ersten Datenspei
cher 230 bzw. 250, 260, 270 und/oder 280 zur Übertragung be
reitgehalten.
Denkbar ist es nun, wie in Fig. 6a angedeutet, stets alle Bil
der einer Bildfolge oder gar von mehreren Bildfolgen zu einem
Bildstreifen 600 zusammenzufügen. Hierdurch werden durch einen
Verbindungsaufbau bzw. durch die Einstellung eines Lesekopfes
bedingte Verzögerungen minimiert. Es sind jedoch regelmäßig
auch noch andere Aspekte zu berücksichtigen. So können bei ei
ner Internetübertragung gerade in Stoßzeiten einzelne ausgehan
delte Verbindungen unterschiedlich schnell sein. Es besteht al
so die Gefahr, daß das gesamte Datenpaket über eine besonders
langsame Verbindung übertragen wird (dieser Aspekt ist aber nur
bei einer Internetübertragung und nicht beim Laden von einem
Plattenspeicher 230 zu berücksichtigen). Daneben wird dem Be
nutzer bei einer Übertragung mehrerer Pakete anstelle eines
großen Paketes mehr Aktivität vermittelt, was dazu führen kann,
daß er eher eine größere Wartezeit in Kauf nimmt. Vor diesem
Hintergrund wird im beschriebenen Beispiel vorgeschlagen, wie
in Fig. 6b angedeutet, jeweils 6 Bilder zu einem Bildstreifen
zusammenzufügen (angedeutet durch Pfeile P26, P27 und P28), so
daß eine Bildfolge von 24 Bildern in 4 Bildstreifen 610, 620,
630 und 640 zu je 6 Bildern übertragen wird.
Zusätzlich oder als Teil des Datenpaketes werden Informationen
über die Struktur des Datenpaketes im Hinblick auf die einzel
nen Datensätze im ersten Datenspeicher zur Übertragung bereit
gehalten. Dabei können die Strukturinformationen Abstandsanga
ben und/oder Koordinatenangaben jeweils bezogen auf den Bild
streifen und/oder die Bildebene umfassen. Diese Informationen
können explizit vorliegen. Es ist aber auch möglich, etwa in
einem Javascript, einem Jscript oder einem VBScript innerhalb
einer HTML-Seite 310, welche ebenfalls in den Arbeitsspeicher
240 übertragen wird, nur die äquivalente Information vorzuse
hen, daß beispielsweise ein Bildstreifen 610, 620, 630 oder 640
aus sechs nebeneinander liegenden, gleich großen Bildern be
steht.
In entsprechender Weise wie die beschriebenen Bilder 400, 402,
404 können grundsätzlich alle Arten von Daten zusammengefaßt
werden, insbesondere Audiodatensätze zu Audiostreifen etc.
Um nach der Übertragung in den Arbeitsspeicher 240 die Daten
sätze 610, 620, 630, 640, welche in einem vom Browser 300 un
terstützten Bilddatenkomprimierungsformat vorliegen, verwenden
zu können, werden sie zunächst vom Browser 300 ohne Zuhilfenah
me zusätzlicher Programme dekomprimiert. Um dann aus den Bild
streifen 610, 620, 630 bzw. 640 und mittels der zugehörigen
Strukturinformationen einzelne Datensätze, d. h. die Daten ein
zelner Bilder 400, 402 und 404, auszusondern und diese einzeln
darzustellen, kann man nun beispielsweise eine Clipping-Routine
und die übertragenen Strukturinformationen verwenden. Hierbei
kann man beispielsweise wie nachfolgend anhand von Fig. 7a bis
7c beschrieben, vorgehen:
Zunächst wird ein erstes Bild 400 des Bildstreifens 610 in ei nem Browserfenster angezeigt (angedeutet durch Pfeil P29). Hierzu wird in dem Browserfenster ein Darstellungsbereich für das Bild 400 definiert. Dieser Darstellungsbereich entspricht den Ausmessungen eines Bildes und wird in den Fig. 7a-7c durch zwei vertikale Begrenzungslinien b1 und b2 und zwei horizontale Begrenzungslinien b3 und b4 eingegrenzt. Der Bildstreifen 610 (oder eine entsprechende Bildebene etc.) wird in Bezug auf das Browserfenster mittels einer Schieberoutine und unter Verwen dung der Strukturinformationen so positioniert, daß die Positi on eines darzustellenden Bildes 400 mit der Position des Dar stellungsbereichs, begrenzt durch die Begrenzungslinien b1, b2, b3 und b4, übereinstimmt. Hierfür, sowie für die Festlegung der Abmessungen des Darstellungsbereichs werden die Strukturinfor mationen verwendet. Das darzustellende Bild 400 wird dann unter Verwendung der Clippingroutine aus dem Datenpaket 610 ausgeson dert und im Darstellungsbereich unter Verwendung einer Darstel lungsroutine des Browsers 300 dargestellt. Ein Objekt innerhalb eines erweiterten HTML-Dokumentes, welches ein Bild auf diese Weise darstellen kann und eine solche Clippingroutine aufweist, wird im Netscape Navigator beispielsweise unter der Bezeichnung "Layer" und im Internet Explorer unter der Bezeichnung "Div" zur Verfügung gestellt. Die Auswahl des ersten Bildes 400 kann nach beliebigen Kriterien erfolgen. Am einfachsten wäre es, stets das erste Bild einer Bildfolge als Startbild zu verwen den.
Zunächst wird ein erstes Bild 400 des Bildstreifens 610 in ei nem Browserfenster angezeigt (angedeutet durch Pfeil P29). Hierzu wird in dem Browserfenster ein Darstellungsbereich für das Bild 400 definiert. Dieser Darstellungsbereich entspricht den Ausmessungen eines Bildes und wird in den Fig. 7a-7c durch zwei vertikale Begrenzungslinien b1 und b2 und zwei horizontale Begrenzungslinien b3 und b4 eingegrenzt. Der Bildstreifen 610 (oder eine entsprechende Bildebene etc.) wird in Bezug auf das Browserfenster mittels einer Schieberoutine und unter Verwen dung der Strukturinformationen so positioniert, daß die Positi on eines darzustellenden Bildes 400 mit der Position des Dar stellungsbereichs, begrenzt durch die Begrenzungslinien b1, b2, b3 und b4, übereinstimmt. Hierfür, sowie für die Festlegung der Abmessungen des Darstellungsbereichs werden die Strukturinfor mationen verwendet. Das darzustellende Bild 400 wird dann unter Verwendung der Clippingroutine aus dem Datenpaket 610 ausgeson dert und im Darstellungsbereich unter Verwendung einer Darstel lungsroutine des Browsers 300 dargestellt. Ein Objekt innerhalb eines erweiterten HTML-Dokumentes, welches ein Bild auf diese Weise darstellen kann und eine solche Clippingroutine aufweist, wird im Netscape Navigator beispielsweise unter der Bezeichnung "Layer" und im Internet Explorer unter der Bezeichnung "Div" zur Verfügung gestellt. Die Auswahl des ersten Bildes 400 kann nach beliebigen Kriterien erfolgen. Am einfachsten wäre es, stets das erste Bild einer Bildfolge als Startbild zu verwen den.
Um ein weiteres Bild 402 des Bildstreifens 610 im Darstellungs
bereich anzuzeigen, wird der Bildstreifen 610 entsprechend ge
genüber dem Darstellungsbereich verschoben und auf das nun dar
zustellende Bild 402 beschnitten (in Fig. 7b angedeutet durch
einen Pfeil P30). Um dabei ein Flackern zu vermeiden, wird vor
zugsweise ein Doppelpuffersystem verwendet, so daß der Schiebe-
und der Schneidevorgang im Hintergrund durchführbar sind und
ein dargestelltes Bild durch ein darzustellendes Bild erst er
setzt wird, wenn der Schiebe- und der Schneidevorgang abge
schlossen sind. Entsprechend wird gemäß Fig. 7b während des
Verschiebevorgangs weiterhin das erste Bild 400 angezeigt. So
bald das zweite Bild 402 im Darstellungsbereich positioniert
und beschnitten ist, wird anstelle des ersten Bildes in der
Browserseite 320 im definierten Darstellungsbereich anstelle
des ersten Bildes 400 das zweite Bild 402 angezeigt (angedeutet
durch Pfeil P31 in Fig. 7c).
Für die Anzeige weiterer oder des ursprünglichen Bildes 404,
400 wird das vorstehend beschriebene Verfahren entsprechend an
gewendet. Im Falle von Audiodaten wird entsprechend vor- und
zurückgespult bzw. die Startposition angesprungen etc.
Bei der Übertragung der Bildstreifen 610, 620, 630 und 640, wie
auch allgemein bei der Übertragung von Daten, insbesondere auch
bei der Übertragung von Applets oder sonstigen Programmrouti
nen, kann es geschehen, daß entweder die Übertragung nicht oder
nicht vollständig durchgeführt werden kann, lange dauert, oder
aber daß ein Browser im Beispiel keinen Script-Interpreter,
oder im Falle eines Java Applets keine Virtual Machine oder im
Falle eins sonstigen Programms ein benötigtes Plug-In nicht
aufweist. In solchen Fällen wird, wie bereits oben dargelegt,
in der Browserseite 320 nach dem Stand der Technik lediglich
ein Icon oder eine graue Fläche angezeigt. Um diese Nachteile
zu vermeiden, werden vorzugsweise im vorliegenden Beispiel die
zur Erzeugung der veränderlichen Darstellung benötigten Pro
grammelemente in die Browserseite 320 (wie auch allgemein vor
zugsweise Programmelemente in Browserseiten) auf die nachfol
gend anhand von Fig. 8a und 8b beschriebene Weise eingebunden:
Zunächst enthält der erste Datenspeicher 230 (bzw. 250, 260, 270 und/oder 280) neben dem HTML-Code 310 einer Browserseite 320 und den Bildstreifen 610, 620, 630 und 640 wenigstens einer Bildfolge noch ein zusätzliches Bild 800. Dieses zusätzliche Bild 800 kann der ersten darzustellenden Objektansicht entspre chen. Es kann darüber hinaus ein Hinweis auf eine laufende Da tenübertragung beinhalten. Es kann aber auch einen völlig ande ren Inhalt wie beispielsweise eine Werbung aufweisen.
Zunächst enthält der erste Datenspeicher 230 (bzw. 250, 260, 270 und/oder 280) neben dem HTML-Code 310 einer Browserseite 320 und den Bildstreifen 610, 620, 630 und 640 wenigstens einer Bildfolge noch ein zusätzliches Bild 800. Dieses zusätzliche Bild 800 kann der ersten darzustellenden Objektansicht entspre chen. Es kann darüber hinaus ein Hinweis auf eine laufende Da tenübertragung beinhalten. Es kann aber auch einen völlig ande ren Inhalt wie beispielsweise eine Werbung aufweisen.
Außerdem ist im HTML-Code 310 der Browserseite 320 ein Darstel
lungsbereich für die Darstellung des zusätzlichen Bildes 800
definiert, sowie ein Verweis auf das zusätzliche Bild 800 über
eine Bildkennung (wie den File-Namen oder Bildnamen) enthalten.
Der Darstellungsbereich entspricht dabei dem Bereich, in wel
chem später die angestrebte veränderliche Darstellung angezeigt
werden soll. Ein Aufruf hierfür erforderlicher Programmelemente
ist im HTML-Code 310 zunächst nur implizit enthalten, d. h. er
ist noch nicht auf die Programmelemente gelinkt, was durch die
entsprechend richtige Besetzung benötigter Variablen jedoch je
derzeit nachgeholt werden kann, Der HTML-Code 310 der Browser
seite 320 enthält somit zunächst einen Platzhalter in der Form
des zusätzlichen Bildes 800 mit einer Kennung zur Identifikati
on des Platzhalters 800.
Der HTML-Code 310 und der Platzhalter 800 werden als erster
Teil einer Datenübertragung vom ersten Speicher 230 (bzw. 250,
260, 270 und/oder 280) in den Arbeitsspeicher 240 übertragen
(angedeutet in Fig. 8a durch Pfeile P32 und P33, sowie Symbole
310' und 800' im Arbeitsspeicher 240). Hierauf greift der
Browser 300 durch den HTML-Code 310 gesteuert zu (angedeutet
durch Pfeil P34). Er entnimmt dem HTML-Code 310' den Verweis
(andeutet durch Pfeil P36) auf den Platzhalter 800' und stellt
in einem Bereich der Browserseite 320 auf dem Monitor 210 den
Gegenstand des Platzhalterbildes, im Beispiel die erste Ob
jektansicht, dar.
Nach dem Laden des HTML-Codes (und damit nach, während oder vor
dem Laden des Platzhalterbildes 800') wird eine Einfügeroutine
aktiviert. Die Einfügeroutine ist im HTML-Code 310 vorzugsweise
in der Form eines Javascriptes, Jscriptes oder VBScriptes ent
halten. Sie entnimmt dem HTML-Code Informationen über den
Platzhalter 800', wie z. B. über dessen Höhe, Breite, Position,
Namen und Position innerhalb der Elementeliste des Browserfen
sters. Außerdem startet die Einfügeroutine die Übertragung bei
spielsweise von den vier Bildstreifen 610, 620, 630 und 640 ei
ner Bildfolge in den Arbeitsspeicher 240 (in Fig. 8b angedeutet
durch Pfeile P37, P38, P39 und P40, sowie durch Symbole 610',
620', 630' und 640' im Arbeitsspeicher 240).
Die Einfügeroutine überwacht, wann der Ladevorgang abgeschlos
sen ist. Nach Abschluß der Übertragung aktiviert sie, sofern
außerdem die Ausführungsvoraussetzungen für die veränderliche
Darstellung vorliegen, die hierfür benötigten Programmelemente.
Vorzugsweise sind die Einfügeroutine und die Programmelemente
für die veränderliche Darstellung in derselben Script-Art abge
bildet, da dann die Feststellung des Vorliegens der Ausfüh
rungsvoraussetzungen für die veränderliche Darstellung (also im
Beispiel das Vorhandensein eines entsprechenden Script-
Intergreters) einfach dadurch erfolgt, daß die Einfügeroutine
nur in diesem Fall ausgeführt wird und werden kann. Beim Star
ten der veränderlichen Darstellung wird der Platzhalter 800 un
ter Verwendung der Kennung des Platzhalters im HTML-Code 310
der Browserseite 320 ausfindig gemacht und durch das Programme
lement zur Erzeugung der veränderlichen Darstellung in der
Browserseite 320 ersetzt. Dabei kann der HTML-Code 310 der
Browserseite 320 als solcher unverändert bleiben, so daß der.
Platzhalter 800 - bildlich gesprochen - in der Darstellung über
malt wird; es ist aber auch möglich, den HTML-Code 310 voll
ständig neu zu generieren. Der Platzhalter 800' wird im Ergeb
nis nicht mehr dargestellt (angedeutet durch Pfeil P36 in Fig.
8b). Stattdessen führt der Browser 300 das Programmelement aus
und zeigt die angestrebte veränderliche Objektdarstellung im
Bereich des Platzhalters in der Browserseite 320 im Browserfen
ster an (angedeutet durch das Cursorzeichen 810 in der Browser
seite 320). Ist das Programmelement jedoch nicht ausführbar, so
bleibt der Platzhalter 800 sichtbar.
Als Kennung für den Platzhalter 800 wird vorzugsweise der File-
Name des Platzhalters 800 ganz oder teilweise, oder aber ein
anderes entsprechendes Identifikationsmerkmal wie der Element
name verwendet.
Die geschilderte Vorgehensweise hat den Vorteil, daß, je nach
Art des verwendeten Platzhalters 800, eine längere Ladedauer
für einen ersten Eindruck des darzustellenden Objektes, eine
Werbung, eine Lademitteilung oder eine Kombination hieraus ver
wendet werden kann. Auch können mehrere Bilder zeitliche ge
steuert hintereinander angezeigt werden. Im ersten Fall wird
außerdem auch auf Browsern, welche die veränderliche Darstel
lung nicht ausführen können, ein Eindruck vom Inhalt der Dar
stellung vermittelt. Zudem werden keine unvollständigen
Browserseiten angezeigt. Schließlich ist es bei der Erstellung
der Browserseite 320 möglich, ohne besonderen Aufwand und nur
durch Benennung des Platzhalternamens mehrere Animationen in
eine Seite einzubinden.
Nach Abschluß der Datenübertragung für wenigstens eine voll
ständige Bildfolge wird wenigstens ein erstes Bild 400 unter
Verwendung einer Darstellungsroutine des Browsers 300 in einem
Bereich einer Browserseite 320 in einem Browserfenster auf dem
Monitor 210 dargestellt (angedeutet in Fig. 4 durch Pfeil P43).
Dies ist möglich, weil der Browser 300 Daten aus dem Arbeits
speicher 240 verarbeiten kann (angedeutet durch Pfeil P44 in
Fig. 4). Da die Übertragung mehrerer Bildfolgen entsprechend
länger dauert, wird vorzugsweise dieser Schritt ausgeführt, so
bald die erste Bildfolge vollständig übertragen ist, und nicht
auf weitere Bildfolgen gewartet. Diese werden vielmehr nach Be
darf nachgeladen. Man kann auch schon nach der Übertragung des
ersten Bildstreifens 610 einer Bildfolge oder gar eines Einzel
bildes 400, 402 oder 404 mit der Darstellung beginnen. Dies
würde jedoch im Laufe des weiteren Verfahrens zu Problemen füh
ren, da verzögertes Nachladen zu einer ruckhaften statt flie
ßenden Darstellung führt. Vorzugsweise wird das erste Bild 400,
402, 404 einer Bildfolge (bzgl. der Ordnung der Bilder 400,
402, 404 innerhalb einer Bildfolge siehe unten) jeweils zuerst
und damit als Startbild dargestellt.
Der vierte Verfahrensschritt kann grundsätzlich vor oder nach
der Übertragung der Bilder 400, 402, 404, etwa in Form von
Bildstreifen 610, 620, 630, 640 und/oder vor der Darstellung
des ersten Bildes 400 ausgeführt werden. Er beinhaltet die Zu
ordnung der einzelnen Bilder 400, 402, 404 jeweils zu einem Ob
jektansichtsbereich, welcher die jeweils dargestellte Objekts
ansicht umfaßt (siehe im einzelnen weiter unten). Sofern dieser
Schritt vor der Übertragung ausgeführt wird, müssen dabei er
mittelte Zuordnungsdaten ebenfalls auf den zweiten Datenspei
cher, d. h. in den Arbeitsspeicher 240, übertragen werden.
Der Begriff des Objektansichtsbereiches ist in diesem Zusammen
hang weit aufzufassen. Im Falle einer veränderlichen räumlichen
Darstellung eines Objektes 100, 110 bezieht er sich beispiels
weise auf den Drehwinkelbereich, für welchen ein Bild 400, 402,
404 angezeigt wird (wie oben bereits ausgeführt, werden ja nur
bestimmte Ansichten in Bildern 400, 402 und 404 abgebildet;
demzufolge erfolgt eine Drehung in der Darstellung immer in
Schritten, d. h. ein einzelnes Bild wird jeweils für einen be
stimmten Drehwinkelbereich angezeigt). Im Falle der Darstellung
einer Hin- und Herbewegung längs eines Motives wie in Fig. 1c
gilt das Entsprechende in Bezug auf einen Verschiebebereich,
sofern nicht ein kontinuierliches langes Bild erzeugt wird, aus
welchem Ausschnitte gezeigt werden. Im Falle einer Veränderung
von Farben etc. (vgl. Fig. 1d) oder einer zeitlichen Zustand
sänderung (vgl. Fig. 1e) entspricht der Objektansichtsbereich
dem Ausschnitt des Farbraumes oder dem zeitlichen Bereich, für
welchen ein Bild angezeigt wird. Aus Gründen der Einfachheit,
aber ohne Einschränkung, beziehen sich die folgenden Erläute
rungen nur auf den Fall der drehbaren Darstellung eines Objek
tes 100 bzw. 110. Die Objektansichtsbereiche werden also je
weils für eine Bildfolge als Drehwinkelbereiche bezogen auf die
erste Drehachse, namentlich die Z-Achse, definiert.
Im Falle der Darstellung einer vollen Umdrehung um die Z-Achse
in zweckmäßigerweise gleichmäßigen Schritten wird der Betrag
der Drehwinkelbereiche für eine Bildfolge jeweils durch Divisi
on von 360° durch die Anzahl der Bilder 400, 402, 404 ermit
telt, d. h. bei 24 Bildern ergibt sich ein Bereich von
360°/24 = 15°.
Wie oben dargelegt, stellt jedes Bild 400, 402, 404 eine Ob
jektansicht dar, zu welcher ein Drehwinkel gehört. Diese Dreh
winkel lauten 0°, 15°, 30°, . . . und 345°. Mit anderen Worten
sind dies die Drehwinkel bzw. die zugehörigen Objektansichten,
welche in den einzelnen Bildern 400, 402, 404 exakt dargestellt
sind. Bei der Darstellung müssen jedoch, zumal nur eine endli
che Zahl von Bildern zur Verfügung steht, die einzelnen Bilder
400, 402, 404 jeweils auch noch angezeigt werden, wenn über
Eingabemittel wie die Computermaus 220 (dazu im einzelnen un
ten) an sich ein leicht veränderter Drehwinkel vorgegeben wird.
Zu diesem Zweck wird vorzugsweise jedem Bild 400, 402, 404 ein
Drehwinkelbereich zugeordnet, in dessen Mitte der zur Objekts
ansicht gehörige Drehwinkel liegt, und welcher sich in beide
Drehrichtungen jeweils um die Hälfte des Betrages des - wie oben
dargestellt berechneten - Drehwinkelbereichs erstreckt. Im Bei
spiel mit 24 Bildern würden den einzelnen Bildern 400, 402, 404
also die folgenden Drehwinkelbereiche zugeordnet werden:
0°±7,5°, 15°±7,5°, 30°±7,5°, . . . und 345°±7,5°.
Die Zuordnung kann explizit erfolgen, d. h. die Winkelbereiche
werden berechnet und die resultierenden Daten dem Browser 300
zur Verfügung gestellt. Sie erfolgt jedoch vorzugsweise impli
zit, indem für die Bilder 400, 402, 404 einer Bildfolge (und
damit auch für die einzelnen Bildstreifen 610, 620, 630, 640)
eine Reihenfolge festgelegt wird und Eingaben über Eingabemit
tel (wie unten näher ausgeführt) jeweils so behandelt werden,
daß vorbestimmte Eingaben zum Bildwechsel führen. Beispielswei
se kann ein angezeigtes Bild 400, 402 oder 404 bei einer Maus
bewegung von einem bestimmten Ausmaß und in eine Richtung je
weils durch ein benachbartes Bild 402, 404, 400 ersetzt werden,
usw. Dabei ist zu beachten, daß auch das erste und letzte
Bild einer Bildfolge (0° und 345°) als benachbart anzusehen
sind.
Sofern, wie oben beschrieben, mehrere Bildfolgen verwendet wer
den, um eine 4-Π-Drehung ganz oder teilweise darstellen zu
können, wird den einzelnen Bildfolgen in entsprechender Weise
jeweils ein Drehwinkelbereich bezogen auf die zweite Drehachse
zugeordnet.
In einem fünften Schritt werden aus wenigstens einer Betätigung
der Cursorpositionierungsmittel, etwa der Computermaus 220, re
sultierende Positionsänderungen des Cursors 810 unter Verwen
dung eines Event-Handlers des Browsers 300 ermittelt. Statt der
Bewegung einer Computermaus kann beispielsweise auch die Dauer
eines Tastendrucks als maßgeblicher Parameter herangezogen wer
den. Die so jeweils erhaltenen Daten werden in weiteren Verfah
rensschritten zur Steuerung der veränderlichen Darstellung ver
wendet. Zusätzlich oder stattdessen kann die veränderliche Dar
stellung an einen Parameter gekoppelt werden, welcher zeitlich
veränderbar ist. Auf diese Weise kann beispielsweise ein
selbstdrehendes Objekt dargestellt werden.
Der fünfte Schritt könnte grundsätzlich auch schon vor dem
vierten Schritt in dem Sinne ausgeführt werden, daß erst eine
Cursorbewegung zur Anzeige des ersten Bildes führt. Zweckmäßi
ger ist jedoch die im Ausführungsbeispiel vorgeschlagene Rei
henfolge.
In einem sechsten und siebten Verfahrensschritt wird wenigstens
eine darzustellende Objektansicht unter Verwendung von Objekt
bereichsdaten und von Positionsänderungsdaten des Cursors 810
ermittelt und dabei wenigstens einmal ein Bild 400, 402 ermit
telt, dessen zugeordneter Objektansichtsbereich die nach der
Änderung darzustellende Objektansicht umfaßt. In einem achten
Verfahrensschritt wird dann wenigstens einmal ein so ermittel
tes Bild unter Verwendung der Darstellungsroutine und gegebe
nenfalls der Verschiebe- und Clippingroutinen des Browsers in
dem Browserfenster dargestellt.
Im Falle eines ersten Ausführungsbeispieles werden dabei Posi
tionsänderungen des Cursors 810 in oder gegen die Richtung ei
ner ersten Koordinatenachse, etwa der X-Achse, auf Drehungen
des Objektes 100 um die erste Drehachse, etwa die zur X-Achse
senkrechte Z-Achse aus Fig. 1a, bezogen. Dabei ist es grund
sätzlich möglich, alle Cursorbewegungen zu berücksichtigen.
Besser ist es jedoch, nur solche Bewegungen zu berücksichtigen,
bei welchen beispielsweise eine Taste der Computermaus 220 ge
drückt ist, um ungewollte Drehbewegungen zu vermeiden.
Dieser Ansatz wird nachfolgend anhand der Fig. 9a-9c erläu
tert:
Zunächst wird durch Drücken der Maustaste in Fig. 9a eine erste
Cursorposition definiert, welche der Mitte M des Objektan
sichtsbereichs eines gerade dargestellten Bildes 400 zugeordnet
wird. Sodann werden Grenzen g1 und g2 (und gegebenenfalls wei
tere Grenzen für den Fall, daß eine Mausbewegung dem sukzessi
ven Wechsel mehrerer Bilder entspricht) des Objektdarstellungs
bereichs durch Abschnitte auf der X-Achse repräsentiert, welche
auf der X-Achse jeweils gleich weit vom Ausgangspunkt M wegrei
chen. Diese Abschnitte werden beispielsweise in Pixel ausge
drückt, so daß die Ausgangssituation des Cursors 810 als null
Pixel angesehen wird, während die Grenzen g1 und g2 als 0 ± x
Pixel (und die weiteren Grenzen als g1 - n.(2x) bzw. g2 +
n.(2x)) angeben werden.
Solange der Cursor wie in Fig. 9b innerhalb der Grenzen g1 und
g2 gehalten, d. h. nur um weniger Pixel bewegt, wird, wird das
erste Bild 400 angezeigt (angedeutet durch Pfeil P45). Sobald
jedoch eine der Grenzen g1 oder. g2 (oder der weiteren Grenzen)
überschritten wird, wird wie in Fig. 9c das (oder die) in der
Bildfolge jeweils in dieser Richtung benachbarte Bild 402 an
stelle des ersten Bildes 400 angezeigt. Bei einer Weiterbewe
gung des Cursors nach dem ersten Bildwechsel gilt für die
nächstfolgenden Grenzen bzw. für eine Rückbewegung das oben ge
sagte entsprechend.
Die Verfahrensschritte sechs bis acht können beliebig oft wie
derholt werden. Zusätzlich können Positionsänderungen des Cur
sors in oder gegen die Richtung einer zweiten, insbesondere zur
ersten Koordinatenachse X senkrechten, Koordinatenachse Z auf
Drehungen des Objektes um eine zweite Drehachse (X oder Y) be
zogen werden.
Sofern die Objektansichtsbereiche explizit bestimmt werden, ist
es zusätzlich oder alternativ möglich, eine darzustellende Ob
jektsansicht aus einer den Objektbereichsdaten einer darge
stellten Objektansicht und den Positionsänderungen des Cursors
auf die folgende Weise zu ermitteln: Zunächst wird das Ausmaß
der Positionsänderung, etwa gemessen in Pixel, mittels eines
multiplikativen Umrechnungsfaktors, etwa der Einheit Grad pro
Pixel, in einen Drehwinkel, etwa gemessen in Grad, umgerechnet.
Der so erhaltene Drehwinkel wird bei Positionsänderungen in
oder gegen die Richtung der jeweiligen Koordinatenachse jeweils
mit einem anderen Vorzeichen versehen. Schließlich wird der mit
Vorzeichen versehene Drehwinkel zu dem zur dargestellten Ob
jektsansicht gehörigen Drehwinkel addiert. Vorzugsweise wird
dann ein Bild ermittelt, dessen zugeordneter Objektansichtsbe
reich die darzustellende Objektansicht nach der Änderung um
faßt, indem zunächst der zur darzustellenden Objektansicht ge
hörige Drehwinkel mit den Drehwinkelbereichen der einzelnen
Bilder einer Bildfolge und/oder den Drehwinkelbereichen der
einzelnen Bildfolgen verglichen wird. Sodann wird das Bild
und/oder die Bildfolge ausgewählt, in dessen bzw. deren zuge
ordneten Drehwinkelbereich der zur darzustellenden Objektsan
sicht gehörige Drehwinkel liegt.
Alternativ kann auch eine algebraische Berechnung, welches Bild
darzustellen ist, ausgeführt werden. Beispielsweise ergibt sich
das darzustellende Bild aus einer Multiplikation der Mausbewe
gung gemessen in Pixel mit einem Umrechenfaktor der Dimension
Grad pro Pixel und einer Division des so erhaltenen Ergebnisses
durch die Schrittweite gemessen in Grad. Dabei kann beispiels
weise festgelegt werden, daß eine Cursorbewegung von 8 Pixeln
dem Darstellungsbereich von einem Bild entspricht.
Die Verfahrensschritte 6 bis 8 werden auch in Fig. 4 darge
stellt. Zunächst wird auf dem Monitor 210 ein erstes Bild 400
dargestellt. Der Cursor 810 befindet sich im linken Bildbe
reich. Sodann wird die Maustaste gedrückt und der Cursor 810'
mittels der Computermaus 220 in die rechte Bildhälfte bewegt
(angedeutet durch Pfeil P47). Die Positionsänderung des Cursors
wird über den Event-Handler des Browsers 300 erfaßt (angedeutet
durch Pfeil P48) und in eine entsprechende Änderung der Ob
jektansicht nach einem der oben beschriebenen Verfahren über
setzt. Sofern sich hieraus ergibt, daß ein zweites Bild 402 an
zuzeigen ist, wird die Darstellung der Browserseite auf dem Mo
nitor 210 entsprechend geändert (angedeutet durch Pfeil P49).
Die Verfahrensschritte sechs bis acht können beliebig oft wie
derholt werden (angedeutet durch Pfeil P50).
Für viele Anwendungen ist es wünschenswert, zusätzlich zur ver
änderlichen Darstellung eines Objektes nach dem bisher be
schriebenen Verfahren, wie auch sonst bei veränderlichen Ob
jektdarstellungen interaktive Flächen in die Darstellung einzu
fügen. Dabei wird vorzugsweise, wie schon bisher beschrieben,
für die veränderliche räumliche Darstellung des Objektes eine
Mehrzahl von zweidimensionalen Bildern verwendet, welche je
weils das Objekt in unterschiedlicher Ansicht darstellen und
welche in einem Browserfenster dargestellt werden.
Interaktive Flächen sind beispielsweise Flächen in graphischen
Darstellungen auf Computerbildschirmen, auf welche ein Benutzer
einen Cursor etwa mittels einer Computermaus bewegen kann und
durch welche Aktionen ausgelöst werden, wenn der Benutzer an
dieser Stelle eine Taste betätigt. Technisch werden hierfür Hy
perlinks verwendet. Diese werden nach dem Stand der Technik an
bestimmte Flächen innerhalb eines einzelnen zweidimensionalen
Bildes gebunden, indem eine Region ("Area") durch Angabe der
absoluten Pixelkoordinaten in der Darstellung definiert wird
und der Hyperlink an diese Region gebunden wird. Befindet sich
der Cursor oder Mauszeiger innerhalb dieser Region, während der
Mausbutton betätigt wird, so wird der zugeordnete Hyperlink
ausgeführt. Eine sehr, einfache Version einer interaktiven Flä
che wird unter Weglassung der Koordinaten erreicht, indem das
gesamte Bild mit einem Hyperlink verbunden wird. Die interakti
ve Fläche umfaßt dabei die gesamten Ausmaße des Bildes. Zusätz
lich können weitere Maus-Events definiert werden. Beispielswei
se kann beim sogenannten Mouse-Over, d. h. der Cursor wird über
eine interaktive Fläche hinüberbewegt, kurz ein Rahmen ange
zeigt werden, welcher signalisiert, daß eine interaktive Fläche
vorhanden ist.
Um interaktive Flächen in einer veränderlichen Darstellung der
vorbeschriebenen Art sinnvoll zu definieren, muß nach dem Stand
der Technik beispielsweise in einer Folge von 24 Bildern
jeweils der der Objektansichtsänderung angepaßte interaktive
Bereich eigens angelegt werden. Der Aufwand hierfür, wie auch
für jede Änderung, ist beträchtlich.
Eine Abhilfemöglichkeit wird nachfolgend anhand der Fig. 10a
bis 10d erläutert.
Gemäß Fig. 10a besteht das Darstellungsziel beispielsweise dar
in, eine volle Drehung des Objektes 100' um die Z-Achse in der
Richtung des Pfeils P1 in einer Bildfolge von 24 Bildern darzu
stellen. Dabei soll auf einer Seite des Objektes 100' eine in
teraktive Fläche 1000 eingefügt werden.
Der Ansatz besteht darin, zunächst eine Bildfolge ohne interak
tive Flächen zu erstellen. Entsprechend dem Darstellungsziel
ist dabei den einzelnen Bildern 400, 402 der Bildfolge jeweils
eine Position und/oder räumliche Lage des dargestellten Objek
tes 100' in einem Bezugssystem, nämlich dem durch die Achsen X,
Y und Z aufgespannten Koordinatensystem, zugeordnet. Für die zu
erzeugende interaktive Fläche 1000 wird eine Modellfläche 1010
verwendet, deren Position und/oder räumliche Lage im Bezugssy
stem (X, Y, Z) veränderlich ist. Sodann wird gemäß Fig. 10b eine
erste Position und/oder räumliche Lage der Modellfläche 1010 im
Bezugssystem dem ersten Bild 400 zugeordnet (angedeutet durch
Pfeile P51 und P52). Dabei wird die in Fig. 10b dargestellte
Projektion der Modellfläche 1010 auf die Y-Z-Ebene in das Bild
400 eingefügt, so daß ein um eine interaktive Fläche ergänztes
Bild 400' entsteht.
Gemäß Fig. 10c wird dann bei einem Darstellungswechsel vom er
sten Bild 400 auf ein zweites Bild 402 die Position und/oder
räumliche Lage der Modellfläche 1010' entsprechend der Änderung
der Position und/oder räumlichen Lage des dargestellten Objek
tes 100' verändert und eine Projektion der Modellfläche 1010'
in der neuen Position und/oder räumlichen Lage auf das zweite
Bild 402 algebraisch, insbesondere durch eine Dreh- und/oder
Translationsmatrix, berechnet. Diese Projektion ist rechts oben
in Fig. 10c dargestellt. Die Berechnungen werden entweder über
eine entsprechende Java-Script-, Jscript oder Visual Basic Rou
tine vor Ort durchgeführt, oder aber an anderer Stelle von ei
nem Autorenprogramm vorberechnet und in Form einer Liste mit
übermittelt.
Es wäre nun grundsätzlich möglich, die Projektion unmittelbar
für die Definition der interaktiven Fläche 1000' in der Dar
stellung des zweiten Bildes 402 im Browserfenster zu verwenden.
Bei vielen älteren Browsern können jedoch nur rechteckige Be
reiche als interaktive Flächen verwendet werden, da andere Flä
chen wie etwa Polygonzüge oder Ellipsen häufig als Funktion in
stabil sind und dadurch ihre Verwendung zu Abstürzen des
Browsers führen kann.
Vor diesem Hintergrund ist es zunächst zweckmäßig, als Modell
fläche 1010 eine ebene, rechteckige Fläche zu verwenden. Sodann
wird vorzugsweise eine Projektion der Modellfläche 1010', wel
che als solche nicht rechteckig ist, in der Weise für die Defi
nition der interaktiven Fläche 1000 verwendet, daß die interak
tive Fläche 1000 die Gestalt eines Rechtecks hat, welches in
Lage und Größe der Projektion ähnlich ist. Um dies zu gewähr
leisten und zugleich alle Bereiche abzudecken, an welchen ein
Benutzer eine interaktiven Bereich erwarten kann, werden bevor
zugt die Maximalwerte der Projektion zur Definition eines ähn
lichen Rechtecks 1020 und damit einer rechteckigen interaktiven
Fläche 1000' verwendet, so daß die rechteckige inter
aktive Fläche 1000' die Projektion der Modellfläche 1010' ein
schließt.
Die Modellfläche 1010 wird in diesem Beispiel im Browserfenster
als solche nicht, d. h. nicht sichtbar, dargestellt. Zur Berech
nung der Projektion der Modellfläche 1010 auf eine darzustel
lende Objektsansicht wird als Transformationsalgorithmus eine
Abbildungsmatrix, vorzugsweise eine Drehmatrix verwendet.
Ein weiteres Problem besteht darin, daß bei einer vollen Dre
hung des Objektes 100' um die Z-Achse die interaktive Fläche
1000 während der Hälfte der Drehung vom Objekt 100' abgedeckt
ist und vorzugsweise auch so dargestellt wird. Dementsprechend
kann nicht einfach das oben beschriebene Verfahren in der Weise
verwendet werden, daß jede Projektion der Modellfläche 1010
auch zur Definition einer interaktiven Fläche 1000, 1000' her
angezogen wird. Dies sollte vielmehr nur dann der Fall sein,
wenn der der interaktiven Fläche 1000, 1000' zugeordnete Ober
flächenbereich des dargestellten Objektes 100' auch sichtbar
ist.
Um dieses Ziel zu erreichen, wird bei der Darstellung einer an
deren Seite des Objektes die Definition der interaktiven Fläche
1000, 1000' durch einen Hidden-Line-Algorithmus verhindert. Zu
diesem Zweck wird am einfachsten - wie in Fig. 10d dargestellt -,
für die Modellfläche 1010 ein Normalenvektor n definiert. Hier
durch ist es möglich, daß der Hidden-Line-Algorithmus die Flä
chennormale n der Modellfläche 1010 in der Weise verwendet, daß
eine Projektion der Modellfläche 1010 auf die darzustellende
Objektansicht nur dann als interaktive Fläche 1000 definiert
wird, wenn die Flächennormale zu einem Betrachter hin, d. h. aus
der Bildebene hinaus weist. Allgemeiner gesagt, ist es zweckmä
ßig, den Normalenvektor in der Weise zu verwenden, daß die in
teraktiven Flächen 1000, 1000' immer dann inaktiviert werden,
wenn der Normalenvektor außerhalb eines bestimmten Winkelbe
reichs liegt.
Durch einen Hidden-Line-Algorithmus kann auch die (teilweise)
Verdeckung eines Objektes durch ein anderes Objekt dargestellt
werden, so daß im Falle ihrer Verdeckung interaktive Flächen
ebenfalls inaktiviert werden. Es kann auch sinnvoll sein, die
interaktiven Flächen als solche in der Darstellung, etwa beim
"Überfahren" mit der Maus, sichtbar zu machen, um dem Betrach
ter die vorhandenen Möglichkeiten zu verdeutlichen.
Sobald interaktive Flächen definiert sind, können mit ihnen
beispielsweise Aktionen verbunden werden, welche das darge
stellte Objekt 100' verändern. Zu diesem Zweck wird nach einer
Betätigung der interaktiven Fläche 1000 eine erste Bildfolge
durch eine zweite Bildfolge ersetzt. So ist es beispielsweise
möglich, ein dargestelltes Auto in unterschiedlichen Farben
oder mit oder ohne geöffneten Türen zu drehen, etc. Die zu in
teraktiven Flächen gehörenden Aktionen können auch explizit
durch Aufruf einer entsprechenden Funktion in Java-Script,
JScript oder Visual Basic etc. ausgelöst werden.
Zusätzlich oder stattdessen können auch Aktionen von außerhalb
der Darstellung ausgelöst werden. Beispielsweise können inter
aktive Flächen in Form von Schaltleisten auch neben oder unter
halb der Darstellung vorgesehen sein. In allen Fällen wird je
weils eine Funktion im Java-Script (oder Jscript, Visual Basic)
aufgerufen, ein Hyperlink ausgeführt oder die Seite neu gene
riert etc. Auch ist es möglich, in anderen Seiten die Werte von
Variablen in Javascript, Jscript oder VBScript zu verändern, um
zwei Seiten miteinander zu verknüpfen. Beispielsweise ist es so
möglich, in einer oder mehreren Seiten gewünschte Eigenschaften
eines Autos zusammenzustellen und es dann in einer anderen Sei
te darzustellen.
Die Erfindung wurde in den bisherigen Ausführungen in der Form
und im Umfeld eines Verfahrensbeispiels beschrieben. Wie schon
gesagt, erfordert die Umsetzung eines solchen Verfahrens eine
Abbildung des Verfahrens in Programmelemente, welche dann in
einem Computersystem bzw. ganz oder teilweise auf einem Netz
werkserver oder Netzwerkclient als Computerprogrammprodukt im
plementiert werden. Anders ausgedrückt, erhält das jeweilige
System durch die Implementierung des Computerprogrammproduktes
die erfindungsgemäßen technischen Eigenschaften oder ist dem
entsprechend angepaßt. Vor diesem Hintergrund versteht es sich,
daß die Erfindung auch die derart ausgestatteten Systeme um
faßt, welche im übrigen in der Beschreibung auch beispielhaft
dargestellt sind.
Insbesondere umfaßt die Erfindung ein Computersystem zur Erzeu
gung einer räumlichen Darstellung eines Objektes 100, 110, 120,
140, 150, 160 in veränderlicher Ansicht unter Verwendung eines
Browsers 300, wobei das Computersystem einen ersten und einen
zweiten Datenspeicher 230 und 240 bzw. 250, 260, 270 und/oder
280, Anzeigemittel 210 und Cursorpositionierungsmittel 220,
insbesondere eine Maus, einen Track-Ball, ein Touch-Pad, einen
Maus-Stick oder einen Touchscreen umfaßt, zum Betreiben eines
Verfahrens der vorstehend beschriebenen Art.
Sodann umfaßt die Erfindung ein Computerprogrammprodukt, wel
ches in einem Speichermedium gespeichert ist und welches Soft
warecodeabschnitte umfaßt, mit denen Schritte für ein vorste
hend beschriebenes Verfahren ausgeführt werden, wenn das Pro
dukt auf einem Computer 200, 250, 260, 270 bzw. 280 läuft.
Ferner umfaßt die Erfindung einen Netzwerkserver 260 und insbe
sondere einen Internetserver mit einem Speichermedium, auf wel
chem ein Computerprogrammprodukt gespeichert ist, welches Soft
warecodeabschnitte umfaßt, mit denen Schritte eines vorstehend
beschriebenen Verfahrens ausgeführt werden, wenn das Produkt
auf einem Computer 200 läuft; außerdem einen Netzwerkserver 260
und insbesondere Internetserver mit einem Speichermedium, auf
welchem ein Computerprogrammprodukt gespeichert ist, welches
Softwarecodeabschnitte umfaßt, mit denen Schritte eines vorste
hend beschriebenen Verfahrens ausgeführt werden, wenn das Pro
dukt auf einem Computer 200, 250, 260, 270 bzw. 280 läuft, wo
bei das Computerprogrammprodukt zumindest teilweise auf einen
anderen Computer 200, insbesondere auf einen Netzwerkclient und
insbesondere einen Internetclient übertragbar und dort ausführ
bar ist.
Schließlich umfaßt die Erfindung einen Netzwerkclient 200 und
insbesondere Internetclient mit einem Speichermedium 230, 240,
auf welchem ein Computerprogrammprodukt gespeichert ist, wel
ches Softwarecodeabschnitte umfaßt, mit denen Schritte eines
vorstehend geschilderten Verfahrens ausgeführt werden, wenn das
Produkt auf dem Client läuft.
Die dargestellten Ausführungsbeispiele dienen der Erläuterung
der Erfindung. Sie sind nicht als Einschränkung der Ansprüche
zu verstehen. Vielmehr umfaßt die Erfindung auch alle anderen
Ausführungsbeispiele, welche sich aus den Ansprüchen ergeben.
Die geschilderten Ausführungsbeispiele haben in den verschiede
nen Varianten den allgemeinen Vorteil, daß eine veränderliche
Darstellung eines Objektes, insbesondere in veränderlicher
räumlicher Ansicht, in einer Browserseite eingefügt werden
kann, ohne daß eine Virtual Machine oder ein Plug-In erforder
lich ist. Dabei werden üblicherweise vorhandene Browserroutinen
in bisher unbekannter Weise eingesetzt. Entgegen dem bestehen
den Vorurteil nach dem Stand der Technik, stellt sich dabei
heraus, daß für die Erzeugung einer solchen veränderlichen Dar
stellung weder eine Virtual Machine noch ein Plug-In erforder
lich ist. Damit sind nach dem beschriebenen Verfahren erstellte
veränderliche Darstellungen einem erheblich größeren Kreis von
Browsernutzern zugänglich, als Darstellungen nach bekannten
Verfahren. Es werden somit beispielsweise die technischen Vor
aussetzungen geschaffen, eine verbesserte, da weiter zugängli
che, Möglichkeit der Internet-Werbung, sowie eine verbesserte
Einrichtung von Schauflächen in Internet-Kaufhäusern zu erhal
ten. Weitere Einsatzmöglichkeiten sind z. B. elektronische Hand
bücher, Mitarbeiterschulungen, interaktive Navigationselemente
etc. Stets besteht der Vorteil einer gegenüber dem Stand der
Technik vereinfachten Nutzung, da keine Plug-Ins geladen und
installiert werden müssen. Auch müssen keine Plug-Ins produ
ziert, fortentwickelt ("gepflegt") oder distributiert werden.
Stattdessen kann man sich Fortentwicklungen der Browser unmit
telbar zu Nutze machen. Ein weiterer Vorteil von einem Java-
Script Programm im Vergleich zu Plug-Ins oder Applets ist das
kompakte Programm. Eine Java-Script Programm zur Umsetzung ei
nes oben dargestellten Verfahrens kann in der Größenordnung von
weniger als 5 kB liegen. Dadurch ist der Programmcode sehr
schnell geladen. Ein weiterer Vorteil betrifft schließlich das
geschilderte Verfahren zur Datenübertragung: sofern beispiels
weise statt 24 Bildern 4 Bildstreifen übertragen werden, können
Probleme mit Firewalls vermieden werden, welche mitunter den
Abruf vieler Einzelfiles in kurzer Zeit verhindern.
Claims (12)
1. Verfahren zum Einbinden eines Programmelementes in eine
Browserseite (320) bei welchem
- a) der Code (310) der Browserseite (320) zunächst einen Platzhalter (800) mit einer Kennung zur Identifikati on des Platzhalters (800) enthält;
- b) die Browserseite (320) in einem Bröwserfenster, sowie als Teil der Browserseite (320) der Platzhalter (800) in einem Bereich des Browserfensters dargestellt wer den;
- c) bei Vorliegen der Ausführbarkeitsvoraussetzungen und/oder bei vollständiger Übertragung des Programme lementes, sowie von hierfür erforderlichen Daten (600-640) in einen Arbeitsspeicher (240) eine Einfü ge-Routine oder ein Teil einer Einfügeroutine akti viert wird;
- d) der Browser (300) die Einfüge-Routine oder den Teil der Einfügeroutine ausführt, hierbei den Platzhalter (800) unter Verwendung der Kennung des Platzhalters (800) im Code (310) der Webseite (320) ausfindig macht; und
- e) der Browser (300) das Programmelement ausführt und eine Darstellung im Bereich des Platzhalters (800) im Browserfenster durchführt.
2. Verfahren nach Anspruch 1, bei welchem das Programmelement
zur Darstellung eines Objektes (100-160) in veränderlicher
Ansicht unter Verwendung einer Mehrzahl von Bildern (400,
402, 404) dient.
3. Verfahren nach Anspruch 2, bei welchem als Platzhalter
(800) ein Bild des darzustellenden Objektes (100-160) ver
wendet wird.
4. Verfahren nach Anspruch 3, bei welchem der File-Name oder
ein entsprechendes Identifikationsmerkmal des Bildes (800)
als Kennung verwendet wird.
5. Verfahren nach einem der vorstehenden Ansprüche, bei wel
chem die Einfüge-Routine als Javascript, Jscript oder
VBScript vorliegt.
6. Verfahren nach einem der vorstehenden Ansprüche, bei wel
chem das Programmelement von einem ersten Datenspeicher
(230, 250, 260, 270, 280) in einem Netzwerkserver, insbe
sondere einem Internetserver, auf einen zweiten Datenspei
cher (240) in einem Netzwerkclient (200), insbesondere ei
nem Internetclient, übertragen wird.
7. Verfahren nach Anspruch 7, bei welchem der zweite Daten
speicher (240) ein Arbeitsspeicher ist.
8. Computersystem (200-280) zum Einfügen eines Programmele
mentes in den Code (310) und in die Darstellung einer
Browserseite (320), zum Betreiben eines Verfahrens nach
einem der vorstehenden Verfahrensansprüche.
9. Computerprogrammprodukt, welches in einem Speichermedium
(230, 240, 250, 250, 260, 270, 280) gespeichert ist und
welches Softwarecodeabschnitte umfaßt, mit denen Schritte
nach einem der vorstehenden Verfahrensansprüchen ausge
führt werden, wenn das Produkt auf einem Computer (200,
250, 260, 270, 280) läuft.
10. Netzwerkserver (250, 260, 270, 280) und insbesondere In
ternetserver mit einem Speichermedium, auf welchem ein
Computerprogrammprodukt gespeichert ist, welches Software
codeabschnitte umfaßt, mit denen Schritte nach einem der
vorstehenden Verfahrensansprüchen ausgeführt werden, wenn
das Produkt auf einem Computer (200, 250, 260, 270, 280)
läuft.
11. Netzwerkserver (250, 260, 270; 280) und insbesondere In
ternetserver mit einem Speichermedium, auf welchem ein
Computerprogrammprodukt gespeichert ist, welches Software
codeabschnitte umfaßt, mit denen Schritte nach einem der
vorstehenden Verfahrensansprüchen ausgeführt werden, wenn
das Produkt auf einem Computer (200, 250, 260, 270, 280)
läuft, wobei das Computerprogrammprodukt zumindest teil
weise auf einen anderen Computer (200), insbesondere einen
Netzwerkclient und insbesondere einen Internetclient über
tragbar und dort ausführbar ist.
12. Netzwerkclient (200) und insbesondere Internetclient mit
einem Speichermedium (240), auf welchem ein Computerpro
grammprodukt gespeichert ist, welches Softwarecodeab
schnitte umfaßt, mit denen Schritte nach einem der vorste
henden Verfahrensansprüchen ausgeführt werden, wenn das
Produkt auf dem Client (200) läuft.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE2000130765 DE10030765A1 (de) | 2000-06-23 | 2000-06-23 | Verfahren, Computerprogrammprodukt, Computersystem, Netzwerkserver und Netzwerkclient zum Einbinden eines Programmelementes in eine Browserseite |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE2000130765 DE10030765A1 (de) | 2000-06-23 | 2000-06-23 | Verfahren, Computerprogrammprodukt, Computersystem, Netzwerkserver und Netzwerkclient zum Einbinden eines Programmelementes in eine Browserseite |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| DE10030765A1 true DE10030765A1 (de) | 2002-01-10 |
Family
ID=7646638
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE2000130765 Withdrawn DE10030765A1 (de) | 2000-06-23 | 2000-06-23 | Verfahren, Computerprogrammprodukt, Computersystem, Netzwerkserver und Netzwerkclient zum Einbinden eines Programmelementes in eine Browserseite |
Country Status (1)
| Country | Link |
|---|---|
| DE (1) | DE10030765A1 (de) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE102014004177A1 (de) * | 2014-03-22 | 2015-09-24 | Audi Ag | Verfahren und Vorrichtung zum Bereitstellen einer Auswahlmöglichkeit während eines Aufbaus eines Anzeigeinhalts |
| CN106648581A (zh) * | 2016-09-13 | 2017-05-10 | 百度在线网络技术(北京)有限公司 | 页面显示方法及装置 |
-
2000
- 2000-06-23 DE DE2000130765 patent/DE10030765A1/de not_active Withdrawn
Non-Patent Citations (2)
| Title |
|---|
| MÜNZ, S.: SELFHTML, 1998 (recherchiert am 24.04.01), im Internet: <URL:http//carpacio.cs. tu-berlin.de/-jp/Muenz/selfhtml> Dateien selfhtml.htm, tbab.htm, tbae.htm, tid.htm, tecbbe.htm, tcga.htm * |
| STRUNCK, O.: Bilder austauschen, 05.03.2000 (recherchiert am 23.04.01) im Internet: <URL: http://www.webhilfen.de/javascript/notes_ grafik.html> * |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE102014004177A1 (de) * | 2014-03-22 | 2015-09-24 | Audi Ag | Verfahren und Vorrichtung zum Bereitstellen einer Auswahlmöglichkeit während eines Aufbaus eines Anzeigeinhalts |
| US9727347B2 (en) | 2014-03-22 | 2017-08-08 | Audi Ag | Method and device for providing a selection possibility while producing display content |
| CN106648581A (zh) * | 2016-09-13 | 2017-05-10 | 百度在线网络技术(北京)有限公司 | 页面显示方法及装置 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE69410483T2 (de) | Objektorientiertes aufgabensicheres rahmenwerk | |
| DE69635337T2 (de) | Erweiterbares und austauschbares system von netzwerkkomponenten | |
| DE69734048T2 (de) | Erfassung und Betrieb von ferngeladener Software durch einen Applet-modifizierten Browser | |
| DE69428647T2 (de) | Verfahren und Gerät zur Erzeugung eines zweiten gemischten Bildsignals im räumlichen Kontext eines ersten Bildsignals | |
| DE69838257T2 (de) | Verfahren zum erweitern der hypertext markup sprache (html) zur unterstützung von unternehmungsanwendungsdatenbindung | |
| DE69432698T2 (de) | Verfahren und Vorrichtung zur Aufnahme von Anmerkungen auf einen Anzeigeschirm ohne Überlappung | |
| DE60110193T2 (de) | System und Verfahren zur Analyse von Blickrichtungsmessungsdaten | |
| DE69637125T2 (de) | Optimaler zugriff auf elektronische dokumente | |
| DE69406462T2 (de) | Objekt-orientiertes graphisches system und dazu gehöriges verfahren | |
| EP2350873B1 (de) | Erfassung des visuellen inhalts von browserfenstern | |
| DE69327632T2 (de) | Mehrere graphische Benutzerschnittstellen auf einer einzigen Anzeige | |
| DE60122298T2 (de) | Dateneingabe | |
| DE202009019145U1 (de) | Hardware-beschleunigte Grafiken für Online-Applikationen mithilfe von nativen Code-Modulen | |
| DE10128883A1 (de) | Verfahren und System für die Verteilung von Anwendungsdaten auf verteilte Datenbanken mit verschiedenen Formaten | |
| US20120150661A1 (en) | System and Method to Enable any Internet-Compatible Advertisement to be Fully Shareable to a Wide Variety of Social Media Networks and Platforms | |
| DE69416152T2 (de) | Virtueller graphikprozessor und verfahren für eingebettete echtzeitanzeigesysteme | |
| DE212012000266U1 (de) | System zum Bereitstellen einer Scrollkarte | |
| DE19741358A1 (de) | Verallgemeinertes Verfahren zum Trennen von charakteristischen Multimediamerkmalen von einem Multimediatitel unter Verwendung einer Multimedia-Softwaremaschine | |
| EP1241603A1 (de) | Internet-Banner | |
| DE69611099T2 (de) | System und verfahren zur ferndatenvisualisierung | |
| DE69624693T2 (de) | Verfahren und vorrichtung zur ausführung eines anwendungsprogramms | |
| DE69129339T2 (de) | Graphisches ausgangssystem mit begrenzter aktualisierung. | |
| DE69602769T2 (de) | Rückkopplung mit expansionsauswahl und graphische wechselwirkung | |
| EP2642359A1 (de) | Entwicklungseinrichtung und Verfahren zum Erstellen eines Steuergeräteprogramms | |
| DE10030765A1 (de) | Verfahren, Computerprogrammprodukt, Computersystem, Netzwerkserver und Netzwerkclient zum Einbinden eines Programmelementes in eine Browserseite |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| OP8 | Request for examination as to paragraph 44 patent law | ||
| 8139 | Disposal/non-payment of the annual fee |