DE10030856B4 - A method, computer program, computer system, network server and network client for transmitting and providing data in a computer system - Google Patents

A method, computer program, computer system, network server and network client for transmitting and providing data in a computer system Download PDF

Info

Publication number
DE10030856B4
DE10030856B4 DE10030856A DE10030856A DE10030856B4 DE 10030856 B4 DE10030856 B4 DE 10030856B4 DE 10030856 A DE10030856 A DE 10030856A DE 10030856 A DE10030856 A DE 10030856A DE 10030856 B4 DE10030856 B4 DE 10030856B4
Authority
DE
Germany
Prior art keywords
data
browser
image
computer
images
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.)
Expired - Fee Related
Application number
DE10030856A
Other languages
German (de)
Other versions
DE10030856A1 (en
Inventor
Christian Dr. Bach
Hans-Peter Harmann
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
REALSPACE GmbH
Original Assignee
REALSPACE GmbH
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by REALSPACE GmbH filed Critical REALSPACE GmbH
Priority to DE10030856A priority Critical patent/DE10030856B4/en
Publication of DE10030856A1 publication Critical patent/DE10030856A1/en
Application granted granted Critical
Publication of DE10030856B4 publication Critical patent/DE10030856B4/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/566Grouping or aggregating service requests, e.g. for unified processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/75Indicating network or usage conditions on the user display
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/64322IP
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8545Content authoring for generating interactive applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
    • H04N21/8583Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot by creating hot-spots
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/2876Pairs of inter-processing entities at each side of the network, e.g. split proxies

Abstract

Verfahren zur Übertragung und Bereitstellung von Daten in einem Computersystem (200-280), insbesondere zur Erzeugung einer Darstellung eines Objektes (100-160, 100) in veränderlicher Ansicht und/oder in einem veränderlichen Zustand unter Verwendung eines Browsers (300), bei welchem
a) mehrere Datensätze (400, 402, 404) in einem Browserdatenformat zu einem Datenpaket (600-640) zusammengefaßt in einem ersten Datenspeicher (230, 350, 360, 370, 380) zur Übertragung bereitgehalten werden, wobei die Datensätze den Daten einer Mehrzahl von Bildern (400, 402, 404) entsprechen, welche jeweils das Objekt (600-640) in unterschiedlicher Ansicht und/oder in einem unterschiedlichen Zustand darstellen und wobei zur Erzeugung des Datenpakets (600-640) die einzelnen Bilder (400, 402, 404) zu einem Bildstreifen (600-640) und/oder zu einer Bildebene zusammengefügt werden und dieser Bildstreifen (600-640) bzw. diese Bildebene als eine Datei in einem Browserdatenformat abgespeichert wird;
b) zusätzlich oder als Teil des Datenpaketes (600-640) Informationen über die Struktur des Datenpaketes (600-640) im Hinblick auf die einzelnen Bilder...
Method for transmitting and providing data in a computer system (200-280), in particular for generating a representation of an object (100-160, 100) in a variable view and / or in a changeable state using a browser (300) in which
a) a plurality of data sets (400, 402, 404) in a browser data format to a data packet (600-640) summarized in a first data memory (230, 350, 360, 370, 380) are kept ready for transmission, wherein the data sets of the data of a plurality of images (400, 402, 404), which respectively represent the object (600-640) in different views and / or in a different state, and wherein for the generation of the data packet (600-640) the individual images (400, 402, 404) are merged into an image strip (600-640) and / or to an image plane and that image strip (600-640) or image plane is stored as a file in a browser data format;
b) additionally or as part of the data packet (600-640) information about the structure of the data packet (600-640) with regard to the individual images ...

Figure 00000001
Figure 00000001

Description

Die Erfindung betrifft ein Verfahren zur Übertragung und Bereitstellung von Daten in einem Computersystem, insbesondere zur Erzeugung einer räumlichen Darstellung eines Objektes in veränderlicher Ansicht unter Verwendung eines Browsers, sowie ein Computersystem, ein Computerprogramm, einen Netzwerkserver und einen Netzwerkclient zum Betreiben eines solchen Verfahrens.The The invention relates to a method for transmission and provision of data in a computer system, in particular for generating a spatial Representation of an object in changeable view using a browser, as well as a computer system, a computer program, a Network server and a network client for operating such Process.

Besondere Verfahren zur Übertragung und Bereitstellung von Daten sind beispielsweise bei einer Übertragung einer Mehrzahl von Datensätzen über das Internet von Bedeutung. Hier besteht das Problem, daß für jeden in sich geschlossenen Datensatz eine eigene Verbindung zwischen einem Internetclient und einem Internetserver geöffnet werden muß. Jede Verbindung wird zwischen dem Client und dem Server durch mehrfachen Paketaustausch ausgehandelt. Erst danach wird der jeweilige Datensatz übertragen. Es kommt also zu Zeitverlusten, wenn eine Vielzahl von Datensätzen nacheinander übertragen werden muß.Special Method of transmission and provision of data, for example, in a transmission a plurality of records about the Internet of importance. Here is the problem that for everyone self-contained record a separate connection between an internet client and an internet server. each Connection is made between the client and the server by multiple Package exchange negotiated. Only then is the respective data set transmitted. So there is a loss of time when a plurality of records transmitted in succession must become.

Als Abhilfemöglichkeit ist es bekannt, mehrere Datensätze vor einer Übertragung zu Paketen zusammenzufassen. Regelmäßig werden die Daten dabei außerdem komprimiert. Dies hat jedoch den Nachteil, daß die Daten nach einer Übertragung zunächst entpackt werden müssen, bevor sie weiterverwendet werden können. Hierzu ist regelmäßig ein eigenes, von einem Anwendungsprogramm abgesondertes Entpackungsprogramm erforderlich, welches auf dem Clientrechner entweder eigens vorhanden ist oder mitgeliefert wird. Dieser Nachteil ist vor allem dann von Bedeutung, wenn Daten nach der Übertragung etwa für eine Darstellung in einem Browser verwendet werden sollen und zunächst mittels eines anderen Programms entpackt werden müssen.When Remedy possibility It is known to have several records before a transmission to summarize packages. The data is regularly included Furthermore compressed. However, this has the disadvantage that the data after a transmission first have to be unpacked, before they can be reused. This is a regular one own unpack program separated from an application program required, which is either available on the client machine or supplied. This disadvantage is especially important if data after the transfer about for a representation in a browser should be used and first by means of of another program.

Ähnliche Probleme können auch bei der Übertragung von Daten von Plattenspeichern, insbesondere von Festplatten, CDs oder Disketten, in Arbeitsspeicher eines Systems auftreten. In diesem Fall benötigt die Positionierung eines Lesekopfes relativ viel Zeit, wodurch wiederum eine Vielzahl von Einzelzugriffen relativ langsam ist.Similar Problems can also in the transmission data from disk storage, especially hard disks, CDs or floppy disks, in memory of a system. In this case needed the positioning of a reading head takes a relatively long time, which in turn a large number of individual accesses is relatively slow.

Aus US 5,715,823 ist ein Verfahren zur Erzeugung einer räumlichen Darstellung eines Objektes in veränderlicher Ansicht bekannt, bei welchem einzelne Bilder in einem Browser-Datenformat bereitgehalten werden, ohne diese jedoch zu größeren Datensätzen zusammenzufassen. Anhand eines durchgeführten "Randering" wird eine räumliche Ansicht nur aus mehreren zweidimensionalen Schichtbildern berechnet, z.B. durch Projektion. Diese Berechnung ist davon unabhängig, ob die Schichtbilder in einem Datensatz zusammengefaßt sind oder in mehreren Dateien vorliegen.Out US 5,715,823 For example, there is known a method for generating a spatial view of a variable view object in which individual images are held in a browser data format without, however, merging them into larger data sets. Based on a performed "Randering" a spatial view is calculated only from several two-dimensional slice images, eg by projection. This calculation is independent of whether the slice images are combined in one data set or in several files.

Aus US 6,049,342 ist bekannt, Animationen auf Browser-Seiten mit Stapel-GIFs zu realisieren, wobei mehrere Einzelbilder nacheinander wiedergegeben werden. Die einzelnen Bilder der Animation sind hierbei zwar in einer Datei zusammengefaßt, die Wiedergabereihenfolge der Einzelbilder ist dann jedoch fest vorgegeben und kann vom Benutzer nicht beeinflußt werden. Der Unterschied zu normalen Bildern besteht darin, daß regelmäßig der Bildinhalt mit dem nächsten Bild aus dem Stapel ausgetauscht wird. Die einzelnen Bilder sind in einem Stapel-GIF jedoch nicht in einem Bildstreifen oder einer Bildebene gespeichert.Out US 6,049,342 It is known to realize animations on browser pages with batch GIFs, whereby multiple frames are played in succession. Although the individual images of the animation are here combined in one file, the reproduction order of the individual images is then fixed and can not be influenced by the user. The difference to normal images is that the image content is exchanged with the next image from the stack on a regular basis. However, the individual images in a batch GIF are not stored in an image strip or image plane.

WO 99/34332 offenbart allgemein, Bildersätze (set of views) von einem Server auf einen Client zu übertragen.WHERE 99/34332 discloses in general, set of views of a Transfer server to a client.

Die vorliegende Erfindung hat die Aufgabe, ein schnelleres und effizienteres Verfahren zur Übertragung und Bereitstellung von Daten in einem Computersystem, insbesondere zur Erzeugung einer räumlichen Darstellung eines Objektes in veränderlicher Ansicht unter Verwendung eines Browsers, sowie ein Computersystem, ein Computerprogramm, einen Netzwerkserver und einen Netzwerkclient zum Betreiben eines solchen Verfahrens, zur Verfügung zu stellen.The The present invention has the object of a faster and more efficient Method of transmission and providing data in a computer system, in particular for generating a spatial Representation of an object in changeable view using a browser, as well as a computer system, a computer program, a Network server and a network client for operating such Procedure, available too put.

Die Erfindung stellt ein Verfahren zur Übertragung und Bereitstellung von Daten in einem Computersystem nach Anspruch 1, ein Computersystem nach Anspruch 10, ein Computerprogramm nach Anspruch 11, einen Netzwerkserver nach Anspruch 12 sowie einen Netzwerkclient nach Anspruch 14 bereit. Weitere Aspekte der Erfindung ergeben sich aus den abhängigen Ansprüchen, der nachfolgenden Beschreibung und der Zeichnung.The Invention provides a method of transmission and delivery of data in a computer system according to claim 1, a computer system according to Claim 10, a computer program according to claim 11, a network server according to claim 12 and a network client according to claim 14 ready. Further Aspects of the invention will become apparent from the dependent claims, the following description and the drawing.

Danach werden bei einem Verfahren zur Übertragung und Bereitstellung von Daten in einem Computersystem mehrere Datensätze in einem Browserdatenformat zu einem Datenpaket zusammengefaßt in einem ersten Datenspeicher zur Übertragung bereitgehalten, wobei die Datensätze den Daten einer Mehrzahl von Bildern entsprechen, welche jeweils das Objekt in unterschiedlicher Ansicht und/oder in einem unterschiedlichen Zustand darstellen und wobei zur Erzeugung des Datenpakets die einzelnen Bilder zu einem Bildstreifen und/oder zu einer Bildebene zusammengefügt werden und dieser Bildstreifen bzw. diese Bildebene als eine Datei in einem Browserdatenformat abgespeichert wird. Zusätzlich oder als Teil des Datenpaketes werden Informationen über die Struktur des Datenpaketes im Hinblick auf die einzelnen Bilder im ersten Datenspeicher zur Übertragung bereit gehalten. Das Datenpaket und die Strukturinformationen werden in einen zweiten Datenspeicher übertragen werden, und aus dem Datenpaket werden durch den Browser einzelne Bilder unter Verwendung einer Clipping- und/oder Verschieberoutine des Browsers und unter Verwendung der Strukturinformationen vor und/oder während der Verwendung der Daten ausgesondert.Thereafter, in a method for transmitting and providing data in a computer system, a plurality of data sets in a browser data format combined into a data packet are held in a first data memory for transmission, the data sets corresponding to the data of a plurality of images, each representing the object in different view and represent or in a different state and wherein for generating the data packet, the individual images are combined to form an image strip and / or to an image plane and this image strip or this image plane is stored as a file in a browser data format. In addition to or as part of the data package, Infor information about the structure of the data packet with respect to the individual images in the first data store for transmission. The data packet and the structure information will be transferred to a second data store, and from the data packet, individual images are discarded by the browser using a clipping and / or scrolling routine of the browser and using the structure information before and / or during use of the data.

Gegenüber dem Stand der Technik hat die Erfindung insbesondere den Vorteil, daß die Übertragungszeiten bei der Übertragung einer Mehrzahl von Datensätzen reduziert werden und dennoch kein zusätzliches Programm außer dem Browser erforderlich ist. Weitere Vorteile ergeben sich aus der nachstehenden Beschreibung von Ausführungsbeispielen und den beigefügten Figuren.Compared to the State of the art, the invention has the particular advantage that the transmission times in the transmission a plurality of records be reduced and still no additional program except that Browser is required. Further advantages result from the the following description of embodiments and the accompanying figures.

Die Erfindung wird im folgenden anhand von Ausführungsbeispielen und der beigefügten Zeichnung noch näher erläutert. In der Zeichnung sind:The Invention will be described below with reference to embodiments and the accompanying drawings even closer explained. In the drawing are:

1a-e schematische Darstellungen möglicher veränderlicher Objektsansichten und/oder -zustände, welche unter Verwendung der Erfindung vorteilhaft dargestellt werden können; 1a -e are schematic representations of possible variable object views and / or states which may be advantageously represented using the invention;

2a-c schematische Darstellungen von Computersystemen, in welche die vorliegende Erfindung implementiert ist; 2a -c are schematic representations of computer systems in which the present invention is implemented;

3 eine schematische Darstellung der Arbeitsweise eines Browsers; 3 a schematic representation of the operation of a browser;

4 eine schematische Darstellung einer Übersicht über ein Verfahren, in welchem die vorliegende Erfindung zum Einsatz kommt; 4 a schematic representation of an overview of a method in which the present invention is used;

5a-c Illustrationen für die Definition von Bildfolgen; 5a -c illustrations for the definition of image sequences;

6a,b schematische Darstellungen der Aufbereitung der Bilddaten für eine Übertragung; 6a , b schematic representations of the processing of the image data for a transmission;

7a-c Illustrationen einer bevorzugten Verarbeitung übertragener Bilddaten; 7a -c illustrations of preferred processing of transmitted image data;

8a,b Illustrationen eines bevorzugten Verfahrens zur Einbindung von Programmelementen in eine Browserseite; 8a , b illustrations of a preferred method for incorporating program elements into a browser page;

9a-c Illustrationen eines bevorzugten Verfahrens zur Ermittlung einer darzustellenden Objektansicht; und 9a -c illustrations of a preferred method for determining an object view to be displayed; and

10a-d Illustrationen eines bevorzugten Verfahrens zum Einfügen interaktiver Flächen in die veränderliche Darstellung. 10a -d illustrations of a preferred method for inserting interactive surfaces into the variable representation.

9a-c Illustrationen eines bevorzugten Verfahrens zur Ermittlung einer darzustellenden Objektansicht; und 9a -c illustrations of a preferred method for determining an object view to be displayed; and

10a-d Illustrationen eines bevorzugten Verfahrens zum Einfügen interaktiver Flächen in die veränderliche Darstellung. 10a -d illustrations of a preferred method for inserting interactive surfaces into the variable representation.

Im folgenden werden zunächst anhand der 1a-1e verschiedene beispielhafte Aufgabenstellungen erläutert, bei welchen jeweils Objekte in veränderlichen Ansichten und/oder Zuständen darzustellen sind. Die vorliegende Erfindung kommt insbesondere bei Verfahren, Computerprogrammen und/oder Computersystemen zur Realisierung solcher Darstellungen vorteilhaft zum Einsatz. Anhand der 6a-7c werden vorteilhafte Ausgestaltungen der Erfindung geschildert. Die 2a-5c und 8a-10d betreffen Beispiele für ein technisches Umfeld, in welchem die Erfindung vorteilhaft zum Einsatz kommt.The following are the basis of the 1a - 1e various exemplary tasks explained, in which each objects are to be displayed in varying views and / or states. The present invention is advantageously used in particular in methods, computer programs and / or computer systems for realizing such representations. Based on 6a - 7c advantageous embodiments of the invention are described. The 2a - 5c and 8a - 10d relate to examples of a technical environment in which the invention is advantageously used.

Beispiele für darzustellende veränderliche Objektansichten und/oder ZuständeExamples for to be displayed changeable object views and / or states

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 Koordinatensystem mit drei zueinander senkrechten Achsen X, Y und Z eingezeichnet. Gegenstand einer veränderlichen Objektdarstellung 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 beliebige andere Achse) darzustellen sein. Das erste Objekt 100 wäre also in veränderlicher räumlicher Ansicht zu zeigen. 1a shows a first object 100 , which has the shape of a cube. The first object 100 is shown in an exterior view. In addition, a three-dimensional Cartesian coordinate system with three mutually perpendicular axes X, Y and Z is drawn. The object of a changeable object representation can be the rotation of the first object 100 be about the vertical axis Z (indicated by a first and a second arrow P1, P2). In addition or instead, rotations of the object 100 to be one of the horizontal axes X and / or Y (indicated by a third and a fourth arrow P3 and P4, in the same way are also possible to represent rotations about any other axis). The first object 100 would be to show in variable spatial view.

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 Objekt 100 sein. Dabei kann eine kombinierte Innen- und Außenansicht ebenso wie eine bloße Innenansicht gezeigt werden. Das zweite Objekt 110 wäre also ebenfalls in veränderlicher räumlicher Ansicht zu zeigen. 1b shows a second object 110 , which has the shape of the outline of a room. The second object 110 is shown in a combined inside and outside view. The object of a changeable object representation can be rotations of the second object 110 around the same axes as the first object 100 be. In this case, a combined inside and outside view as well as a mere interior view can be shown. The second object 110 would also be shown in variable spatial view.

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 horizontalen, zum dritten Objekt parallelen Achse Y oder einer beliebigen anderen Achse sein (angedeutet durch einen fünften und sechsten Pfeil P5 und P6). 1c shows a third object 120 which has the shape of a house wall. Subject of a changeable object representation can Verschie Exercises of the third object 120 along the horizontal, parallel to the third object axis Y or any other axis (indicated by a fifth and sixth arrow P5 and P6).

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 vierten Objektes 130 in das fünfte Objekt 140 sein (angedeutet durch einen siebten Pfeil P7). 1d shows a fourth object 130 and a fifth object 140 , Both objects 130 and 140 have the same shape and position, but a different color. Subject of a variable object representation, the transfer of the fourth object 130 into the fifth object 140 (indicated by a seventh arrow P7).

1e zeigt ein sechstes Objekt 150, welches die Gestalt eines Zahnrades hat, und ein siebtes Objekt 160, welches die Gestalt einer Feder hat. Zahnrad 150 und Feder 160 greifen ineinander. 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 Zahnrad 150' gegenüber seinem Ausgangszustand verdreht und die Feder 160' verbogen erscheint. Diese Überführung kann Gegenstand einer veränderlichen Objektdarstellung sein. Zu zeigen wäre also eine zeitliche Veränderung des Zustandes der Objekte 150 und 160. 1e shows a sixth object 150 , which has the shape of a gear, and a seventh object 160 , which has the shape of a spring. gear 150 and spring 160 interlock At a rotation of the gear 150 (indicated by an eighth arrow P8) become the objects 150 and 160 converted into a relation to the initial state changed state (indicated by a ninth arrow P9), in which the gear 150 ' twisted against its initial state and the spring 160 ' appears bent. This transfer can be the subject of a changeable object representation. To show therefore would be a temporal change of the state of the objects 150 and 160 ,

Die beschriebenen Gegenstände veränderlicher Objektdarstellungen beschränken sich nicht auf die dargestellten Objekte 100, 110, 120, 130, 140 und 150. Diese können vielmehr durch beliebige andere Objekte ersetzt werden. Die beispielhaft angeführten 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 kombiniert werden. Ferner sind weitere Veränderungen denkbar.The objects described variable object representations are not limited to the objects shown 100 . 110 . 120 . 130 . 140 and 150 , These can be replaced by any other objects. The exemplified objects 100 . 110 . 120 . 130 . 140 and 150 So serve only for illustration. Also, the different changes of object views and states can be arbitrarily combined with each other. Furthermore, further changes are conceivable.

Für das Folgende kommt es nur darauf an, daß überhaupt Veränderungen von Objektansichten und/oder -zuständen darzustellen sind. Wie diese im einzelnen vonstatten gehen, ist bedeutungslos. Soweit auf konkrete Änderungen Bezug genommen wird, dient dies stets nur dem leichteren Verständnis der Darstellung der Erfindung.For the following it just depends on that, anyway changes of object views and / or states. As These in detail are meaningless. So far on concrete changes This always serves only to facilitate understanding of Presentation of the invention.

Beispiele für Computersysteme, in welche die Erfindung implementiert istExamples of computer systems, in which the invention is implemented

2a zeigt einen erstes Computersystem in der Form eines ersten Computers 200 mit einem Monitor 210 und einer Computermaus 220. Anstelle des Monitors 210 können beliebige andere Anzeigemittel, wie beispielsweise ein Projektor, verwendet werden. Anstelle der Computermaus können beliebige andere Cursorpositionierungsmittel, wie beispielsweise ein Track-Ball, ein Touch-Pad, ein Maus-Stick, ein Touch-Screen oder Pfeiltasten einer Computertastatur (nicht dargestellt) eingesetzt werden. 2a shows a first computer system in the form of a first computer 200 with a monitor 210 and a computer mouse 220 , Instead of the monitor 210 Any other display means, such as a projector, may be used. Instead of the computer mouse, any other cursor positioning means, such as a track ball, a touch pad, a mouse stick, a touch screen or arrow keys of a computer keyboard (not shown) can be used.

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 eines Haupt- und/oder Arbeitsspeichers 240 auf (angedeutet durch einen gestrichelten zehnten Pfeil P10). Zwischen dem Platten- und dem Arbeitsspeicher 230 und 240 werden Daten übertragen (angedeutet durch einen elften Pfeil P11). Die Übertragung erfolgt 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.The first computer 200 has a first data store in the form of a disk storage 230 , such as a hard disk, CD or floppy disk, and a second data memory in the form of a main and / or main memory 240 on (indicated by a dashed tenth arrow P10). Between the disk and the working memory 230 and 240 Data is transmitted (indicated by an eleventh arrow P11). The transmission takes place, for example, via customary interfaces, bus systems and / or network components (not shown). The processing and / or processing of data via a CPU (Central Processing Unit), which is also not shown. Finally, the first computer 200 all other usual components such as more disk space, a graphics card, etc. include.

Auf dem Plattenspeicher 230 befinden sich Daten. Auf diese Daten 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 Festplatten und 50 ms für CD-ROM.On the disk storage 230 there are data. This data can be the first computer 200 access control means. For this purpose, in each case a read head (not shown) is moved into the area of the desired disk sector, and then the data sought are read out. This process is time consuming because of the necessary process of the read head to find the data. A realistic access time is on the order of 200 ms for floppy disks, 5-20 ms for hard disks and 50 ms for CD-ROM.

2b zeigt eine weiteres Computersystem, in welches die vorliegende Erfindung implementiert ist. Das System umfaßt wiederum den ersten Computer 200 mit Monitor 210 und Computermaus 220. Insoweit gilt das oben Gesagte. Auch weist der erste Computer 200 wiederum einen Arbeitsspeicher 240 auf. Ein Plattenspeicher 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. 2 B shows another computer system in which the present invention is implemented. The system in turn includes the first computer 200 with monitor 210 and computer mouse 220 , In that regard, the above applies. Also, the first computer points 200 again a working memory 240 on. A disk storage 230 however, is not required in this example (but may be provided). Instead, it's the first computer 200 now for example via a serial or parallel interface or via a network card with a second computer 250 connected.

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. Zwischen 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.The second computer 250 can be part of a direct PC connection, another computer of a cluster or server of a network. The second computer 250 has a data memory (not shown) on which data can be stored. Between this datastore and the memory 240 on the first computer 200 Data are transmitted (indicated by a twelfth arrow P12). For this purpose, a common protocol is used, for example a basic protocol for a simple physical network connection such as Ethernet or Token Ring or an Internet protocol such as a TCP / IP or HTTP protocol.

Bedingt durch die Übertragungsraten und Auslesezeiten aus dem Datenspeicher in dem zweiten Computer 250 sind auch diese Vorgänge zeitintensiv.Due to the transfer rates and Read times from the data store in the second computer 250 These processes are also time consuming.

2c zeigt schließlich ein drittes Computersystem, in welches 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 angeschlossen. 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). Infolgedessen kann die Datenübertragung zwischen dem ersten Computer 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 Computer 200 beispielsweise als Chientrechner, und der dritte Computer 260 als Server. Für jede Übertragung wird zwischen dem ersten Computer 200 und dem dritten Computer 260 dann eine Verbindung durch mehrfachen Paketaustausch ausgehandelt. Dann erst werden die Daten übertragen, so daß auch dieser Vorgang zeitintensiv ist. 2c Finally, Figure 3 shows a third computer system in which the present invention is implemented. Also this system includes the first computer 200 besides monitor 210 and computer mouse 220 according to the above statements. Instead of a second computer 250 is the first computer 200 now connected to an overarching network, such as the Internet. This includes a plurality of computers, indicated by a third, fourth and nth computer 260 . 270 respectively. 280 , Between the first computer 200 and the other computers 260 . 270 and 280 data is transmitted (indicated by thirteenth arrows P13, P13 / 1, P13 / 2 and P13 / n). In addition, between the other computers 260 . 270 and 280 Data transmitted (indicated by a fourteenth arrow P14). As a result, the data transfer between the first computer 200 and one of the other computers 260 . 270 and 280 also indirectly via other computers 260 . 270 and or 280 respectively. The transmissions take place, for example, according to an Internet protocol such as a TCP / IP protocol. The first computer acts here 200 for example, as a client computer, and the third computer 260 as a server. For each transmission is between the first computer 200 and the third computer 260 then negotiated a connection through multiple packet exchange. Only then will the data be transmitted, so that this process is time-consuming.

Der genannte Paketaustausch für Übertragungen umfaßt insbesondere 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 File- bzw. Dateinamen getrennt werden. Aus dem Domain-Klartextnamen des Rechners (hier: www.adresse.com) muß die zugehörige IP-Adresse (Internet Protokoll Adresse, also die numerische Adresse, unter der ein bestimmter Rechner im Internet erreichbar ist, wie etwa 145.96.123.97) ermittelt werden. Hierzu werden in aufsteigender Reihenfolge immer umfassendere Domain 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 werden, über welchen der Clientrechner 200 und der Severrechner 260 miteinander Daten austauschen können. Hierzu muß der Clientrechner 200 an den Serverrechner über einen möglichen Weg zunächst ein Datenpaket schicken, mit dem er seine Absicht ankü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 Vorbereitungen 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 Verbindungsweg von neuem.The said packet exchange for transmissions comprises in particular the following steps: first, a so-called URL (a Uniform Resource Locator, ie a unique address such as http://www.adresse.com/filename.html) in the protocol type, the computer name and the file - or file names are separated. From the domain plain text name of the computer (here: www.adresse.com), the corresponding IP address (Internet Protocol address, ie the numeric address under which a particular computer can be reached on the Internet, such as 145.96.123.97) must be determined , For this purpose, increasingly comprehensive domain name servers are queried in ascending order by request data packet until the URL belonging to the IP address is found in a database. Then an available path through the Internet must be found over which the client computer 200 and the Severrechner 260 can exchange data with each other. For this, the client computer must 200 send to the server computer via a possible path first a data packet with which he announces his intention to establish a TCP (Transmission Control Protocol) connection. This is from the Sever 260 acknowledged by data packet if he accepts the connection. This causes further delays until the server has completed the necessary preparations. The receipt of the receipt is again from the client 200 acknowledged. Only then will the actual data be transferred. If one of the request packets is lost, the entire procedure begins again on a different possible connection path.

Die oben genannten Beispiele für Computersysteme, in welche die vorliegende Erfindung -wie unten näher ausgeführt wird- implementiert ist, sind keine abschließende Aufzählung und können auch untereinander beliebig kombiniert werden. Sie dienen lediglich als Illustrationen für ein verbessertes Verständnis der Erfindung.The above examples for Computer systems incorporating the present invention as below be explained in more detail is not an exhaustive list and can be arbitrary among themselves be combined. They are merely illustrations for an improved understanding of Invention.

Beispiel für einen Browser, welcher im Zusammenhang mit der Erfindung benutzt wirdExample of a Browser used in connection with the invention

3 zeigt eine schematische Darstellung der Arbeitsweise eines 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 erhä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 Informationen. Dieser Code 310 basiert üblicherweise auf einer einfachen Dokumentbeschreibungs-Sprache namens HTML (HyperText Markup Language; in Betracht kommt auch eine beliebige Weiteroder 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änkung der Erfindung als HTML-Code 310 bezeichnet. 3 shows a schematic representation of the operation of a browser 300 , This is a common browser like the Netscape Navigator 4.x, the Netscape 6.0 , Microsoft Internet Explorer 4.x, 5.x, a precursor or successor version thereof, or another browser software product. The browser 300 is implemented as software on one of the described computer systems and has access to the main memory 240 of the first computer 200 , This is what he receives from the disk storage 230 , from the second computer 250 and / or from one of the other computers 260 . 270 . 280 the code 310 a browser page including all information to be displayed. This code 310 It is usually based on a simple document description language called HTML (HyperText Markup Language, and any further or alternative development thereof), which in turn can be based on a subset of a more generalized language called SGML (Standardized Generalized Markup Language). It is therefore hereinafter referred to as HTML code for the sake of simplicity but without limitation of the invention 310 designated.

Ein HTML-Code enthält als solcher keine Konstrukte zur Programmsteuerung (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 entscheidet jeder Browser je nach Implementation und Benutzereinstellungen weitgehend selbst. Die Darstellung erfolgt als Browserseite 320 auf einem Anzeigemittel wie dem Monitor 210.As such, an HTML code contains no program control constructs (for queries, jumps, subroutines, etc.) and no exact description of a document view. Instead, he only sets some global attributes for headings, body text, positioning, etc., which can lead to quite different representations of the same document on different platforms or browsers. HTML thus only gives a browser hints as to how it can display a correspondingly worded document; Depending on the implementation and user settings, each browser largely decides on the actual output itself. The presentation is made as a browser page 320 on a display device like the monitor 210 ,

Die Browserseite 320 enthält neben den oder statt der Textzeilen 322 auch Graphiken 324. Hierzu werden zusätzlich zu dem HTML-Code 310 auch Graphiken in den Arbeitsspeicher 240 geladen. Der HTML-Code 310 enthält Informationen darüber, welche Graphiken 360 in welchem Bereich der Browserseite 320 wie angezeigt 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 entsprechenden Bereich angezeigt.The browser page 320 contains next to or instead of the text lines 322 also graphics 324 , This will be in addition to the HTML code 310 also graphics in the main memory 240 loaded. The HTML code 310 contains information about which graphics 360 in which area of the browser page 320 how to display. As long as the graphics 360 not or not completely in memory 240 is usually displayed instead an icon or a blank space in the corresponding area.

Die Graphiken 360 werden in einem vom Browser unterstützten Bilddatenkomprimierungsformat wie JPG (Joint Photographic Expert 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 unterstütztes Format kann vom Browser ohne Zuhilfenahme weiterer Programme wieder dekomprimiert und auf einen unmittelbar darstellbaren Binärcode übertragen werden.The graphics 360 are loaded into a browser-supported image data compression format such as JPG (Joint Photographic Expert Group, a graphics format named after the responsible ISO / CCITT Commission), Graphics Interchange Format (GIF) or Portable Network Graphics (PNG). Such a supported format can be decompressed again by the browser without the aid of further programs and transmitted to a directly representable binary code.

Der HTML-Code umfaßt außerdem bzw. greift außerdem zu auf verschiedene 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 Sprachen sind jedoch weder für komplexe Anwendungen noch für eigenständige Programme gedacht. JavaScript-, Jscript- oder VBScript-Programme werden im Klartext in eine HTML-Seite integriert, 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 Formatvorlagentechnologie. 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.The HTML code also includes or accesses various HTML extensions 330 . 340 and 350 , For example, these are Dynamic HTML, which includes technologies such as JavaScript, Jscript, VBScript, CSS, or Layer, and which can be linked together. Such HTML extensions allow dynamic content to be included in HTML pages. JavaScript, JScript and VBScript are not too complex script languages that can be used to extend an HTML page with real programs. However, the languages are not intended for complex applications or independent programs. JavaScript, Jscript or VBScript programs are integrated in clear text in an HTML page, with it in the main memory 240 loaded and on the first computer 200 executed by a script interpreter. A browser that lacks the associated script interpreter can not do anything with the script. However, current browsers such as those mentioned above usually have such script interpreters. CSS includes a style sheet technology. Layers are those parts of a browser page that can be relatively or absolutely positioned and moved independently of other elements on the page. Multiple layers can overlap and obscure each other like transparencies.

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.All listed above as examples, from Browser without extensions editable or displayable data formats, as well as all other data formats with this property, are in hereinafter referred to as browser data formats.

Die genannten und weitere HTML-Erweiterungen können – wie gesagt – 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, welcher ä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.The mentioned and other HTML extensions can - as I said - from current Browsers usually directly, i. without the need for additional plug-ins (a plug-in is a dynamically downloadable module that allows a browser to be specific Skills extended) or Virtual Java Machines (a virtual machine is an interpreter for Java applications, which is similar how a plug-in can be implemented in a browser) become. About that In addition, an HTML page can cause the browser to use Java applets or Execute programs, which such virtual machines or plug-ins as a supplement to the browser make necessary.

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 Java Interpreter, etwa eine Virtual Machine erforderlich. Wesentlicher Vorteil eines Java-Programms ist seine Prozessor- und Plattformunabhängigkeit. Das gleiche Compilat kann also auf Intel-PCs unter Windows oder Linux, auf Power Macs oder auf Alpha-Maschinen ausgeführt werden. Plug-Ins sind demgegenüber üblicherweise plattformabhängig. Ergänzend sei angemerkt, daß ebenso wie Java-Programme auch HTML-Codes und Java-Script plattformunabhängig sind.One Java program usually is compiled once. The resulting binary bytecode is replaced by a Command in HTML code loaded by the browser and executed. For this is a Java interpreter, such as a virtual machine required. The main advantage of a Java program is its processor and Platform independence. The same compilat can be used on Intel PCs running Windows or Linux, running on Power Macs or on Alpha machines. In contrast, plug-ins are common platform dependent. additional It should be noted that as well As Java programs, HTML codes and Java scripts are platform independent.

Zusammenfassend zeigt 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.In summary shows 3 like the HTML code 310 which HTML extensions 330 . 340 and 350 includes (indicated by dashed arrows P15, P16 and P17), in the main memory 240 for the browser 300 made available (indicated by an eighteenth arrow P18). In addition, the browser receives 300 there pictures 360 (indicated by arrow P20). This is what the browser generates 300 the browser page 320 which on the monitor 210 is displayed and which text lines 322 and a picture 324 includes.

Bevorzugtes Verfahren – Ausführungsbeispielpreferred Method - embodiment

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 1a in veränderlicher räumlicher Ansicht dargestellt. Es könnte aber auch jedes andere Objekt aus den 1a-1e, oder ein beliebiges weiteres Objekt, in beliebig veränderlicher Weise nach den gleichen Grundsätzen dargestellt werden. 4 shows an overview of a method in which the invention is used. The method serves to generate a variable representation of an object, in particular in a variable spatial view. The first object becomes an example 100 out 1a shown in variable spatial view. But it could also be any other object from the 1a - 1e , or any other object, can be represented in an arbitrarily variable manner according to the same principles.

Das erfindungsgemäße Verfahren ist in eines der Computersysteme aus 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 Computermaus 220.The inventive method is in one of the computer systems 2a - 2c implemented and will be in the first computer 200 executed. For implementation, the method is fully or partially suitable in a corresponding JavaScript, Jscript, VBScript or another The script code is shown in the HTML code 310 is inserted. The script code is retrieved using additional browser routines from the browser 300 on the computer 200 executed. As a display means serve the monitor 210 and as cursor positioning means the computer mouse 220 ,

Die einzelnen Verfahrensschritte werden nachfolgend unter weiterer Bezugnahme auf die 5a-9c erläutert.The individual method steps are described below with further reference to the 5a - 9c explained.

Erläuterungen zum ersten VerfahrensschrittExplanations to the first process step

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 einundzwanzigsten Pfeil P21).In a first step, data of a plurality of images 400 . 402 and 404 , which are each the first object 100 in different views or in a different state, in a browser data format, in particular in a browser-supported image data compression format such as JPG, GIF or PNG, in the first data memory 230 or on a data store in one of the other computers 250 . 260 . 270 and or 280 provided (indicated by a twenty-first arrow P21).

Die Anzahl der Bilder 400, 402, 404 richtet sich dabei nach dem Darstellungszweck und den äußeren Gegebenheiten (von den gleichen Faktoren hängen letztlich auch die Auswahl einer geeigneten Bildgröße oder der Komprimierungsfaktor bei verlustbehafteten Komprimierungsverfahren wie JPG ab):
Je nach Darstellungszweck kann das Verfahren grundsätzlich auch mit nur zwei Bildern durchgeführt werden. Damit können bereits alle Seiten des würfelförmigen ersten Objektes 100 gezeigt 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 herausgestellt. Um einen guten Eindruck einer kontinuierlichen Drehung zu erzeugen, ist eine Zahl von wenigstens 24 Bildern gut geeignet. 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 einer vollen Umdrehung um eine Achse Z gezeigt werden soll, erhält man ab einer Zahl von 36 Bildern einen guten Dreheindruck.
The number of pictures 400 . 402 . 404 depends on the display purpose and the external conditions (of the same factors ultimately depend also the selection of a suitable image size or the compression factor in lossy compression methods such as JPG):
Depending on the purpose of the presentation, the method can basically also be carried out with only two images. Already all sides of the cube-shaped first object can be used 100 to be shown. In order to represent a complete rotation of the first object 100 about an axis Z and thereby give an observer an overall sufficient impression of rotation (and not simply the display of several images), a number of at least 12 Pictures proved to be appropriate. To give a good impression of continuous rotation, a number of at least 24 Pictures well suited. If the object has many details that are to be accurately represented in the course of the rotation, a larger number of images is needed. If instead of the external view of an object as in the case of the first object 100 the interior view of a room as in the case of the second object 110 is to be shown during a full revolution about an axis Z, you get from a number of 36 Pictures a good impression.

Auf der anderen Seite ist für eine erfindungsgemäße Darstellungstechnik als wichtigste äußere Gegebenheit die erforderliche Ü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 eingebettet 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 Darstellung eines Objektes in einer Business- to Business Anwendung 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 detaillierte Ansicht eines zu reparierenden Objektes mit relativ hohem Aufwand zu übertragen, als ihm telefonisch Anweisungen zu geben).On the other hand, the transmission time required for the data must be taken into account as the most important external factor for a presentation technique according to the invention, especially as this is dependent on the first data memory 230 (or 250 . 260 . 270 . 280 ) in the main memory 240 have to be loaded. If the presentation is to be embedded in a website for advertising purposes, for example, and it is to be expected that a user will only briefly look at this page, a lower number of pictures is recommended. Conversely, if, for example, a variable representation of an object in a business-to-business application with a high transmission rate comes into play, a larger number of images may be expedient (for example, it may be better for a foreign technician to have a detailed view of an object to be repaired with relative) to transfer a lot of effort than to give him instructions by phone).

Bei anderen Darstellungen als Drehungen ist die geeignete Bilderzahl schließlich weitgehend abhängig vom Eirizelfall.at representations other than rotations is the appropriate number of images after all largely dependent from the Eirizelfall.

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 aufgenommen oder als Zeichnungen etc. zur Verfügung gestellt werden. Aus Gründen der Einfachheit wird im folgenden nur die Vorgehensweise bei der Aufnahme der Photos beschrieben. Eine Simulation 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öglichkeiten können ohne Einfluß auf die Erfindung auch beliebig miteinander kombiniert werden.In the presently described embodiment, a full rotation of the first object 100 represented around the Z-axis. For this will be 24 Pictures used. The images can be generated by a computer, taken from a real object by photo or provided as drawings etc. For the sake of simplicity, only the procedure for taking pictures will be described below. A simulation would have to generate corresponding images instead; a drawing would have to include corresponding images. The possibilities mentioned, to produce images, as well as all other possibilities can be combined with each other without any influence on the invention.

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 Ausgangsdrehwinkel von 0° gleich dem Bild zum Enddrehwinkel von 360° ist), beträgt der Drehwinkel dabei 360°/24=15°.The object is taken for taking the photos 100 for example, stored on a rotatable about the Z axis underground. Then a camera at a desired distance and angle is firmly positioned. For every single shot the object becomes 100 by a uniform rotation angle in the same direction of rotation about the Z-axis further rotated. To participate with 24 In this case, the rotation angle is 360 ° / 24 = 15 ° in which the image at the initial rotation angle of 0 ° is equal to the image at the final rotation angle of 360 °.

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.For a corresponding representation of the interior of the second object 110 you would have to move the other way round, ie the camera would be at a desired position in space 110 rotatably mounted about the Z-axis. Since, however, as a result, it always depends only on the Rela tivdrehung, in the following is generally only a rotation of the object 100 or 110 talk about the Z-axis.

Eine solche zusammengehörige Mehrzahl von Bildern wird im folgenden 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 Verfahren nach den gleichen Grundsätzen mit beliebig anders definierten Bildfolgen auszuführen. Beispielsweise können sich die Bilder innerhalb einer Bildfolge auch durch farbliche Modifikationen, 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.Such a related plurality of images will be referred to as a sequence of images. In the example, such an image sequence always comprises a plurality of object views from a round rotation about the Z-axis. But it is possible that Execute method according to the same principles with any differently defined image sequences. For example, the images within a sequence of images may also differ due to color modifications, modifications of the design and / or different states of the represented object. In this way, for example, it is possible to variably display a machine in the form that one can let the machine run forward and backward. In general, it would be possible to represent a temporal evolution of an object.

Um das Verfahren auszuweiten, kann auch eine Mehrzahl von Bildfolgen verwendet werden. Dies wird anhand der 5a-5c verdeutlicht.To extend the method, a plurality of image sequences may also be used. This is based on the 5a - 5c clarified.

So kann eine erste Bildfolge entsprechend 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 entsprechend 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 beschrieben darstellen (wiederum angedeutet durch den ersten Pfeil P1). Wird eine Mehrzahl von Bildfolgen entsprechend den 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 beliebige räumliche Lage, darzustellen. Für die einzelnen Bildfolgen wird dabei jeweils das erste Objekt 100 gegenüber der Z-Achse um eine zweite, insbesondere zur Z-Achse senkrechte Drehachse verkippt. Alternativ kann eine Bildfolge auch nur eine Teildrehung und/oder eine andere Bewegung des dargestellten Objektes 100' umfassen.Thus, a first image sequence corresponding 5a a full turn of the first object 100 around the Z-axis in a first relative position of the first object 100 to the Z-axis in steps of 15 ° each as described above (indicated by the first arrow P1). A second sequence of images may be appropriate 5b a full turn of the first object 100 ' around the Z-axis in a second relative position of the first object 100 to the Z-axis in steps of 15 ° each as described above (again indicated by the first arrow P1). If a plurality of image sequences corresponding to 5a and 5b defined, it is possible, as a result, a 4-Π-rotation, ie in each case a full rotation about at least two different spatial axes and thus a rotation in any spatial position represent. For the individual image sequences in each case the first object 100 tilted relative to the Z-axis about a second, in particular to the Z-axis axis of rotation. Alternatively, an image sequence can also be only a partial rotation and / or a different movement of the object shown 100 ' include.

Zusätzlich oder stattdessen kann eine zweite Bildfolge das Objekt 100'' wie in 5c angedeutet in einer anderen Farbe oder allgemein nach einer Veränderung, aber in der gleichen Relativlage zur Z-Achse darstellen. Beispielsweise bei der Darstellung eines Autos kann eine Bildfolge das Auto mit geschlossenen Türen und Motorhaube darstellen. Weitere Bildfolgen können 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 5a und 5b kombiniert werden, so daß das Objekt in unterschiedlichen Relativlagen zur Z-Achse und in unterschiedlichen Zuständen gezeigt wird. Daneben ist es – wie schon gesagt – auch möglich, ganz anders definierte Bildfolgen zu verwenden.Additionally or instead, a second image sequence may be the object 100 '' as in 5c indicated in a different color or generally after a change, but in the same relative position to the Z-axis represent. For example, when displaying a car, a sequence of images may represent the car with the doors closed and the bonnet. Other image sequences can each represent the object with one or more open doors and / or bonnet. Again further image sequences then correspond approximately to the previously mentioned image sequences, but show the object in different colors. After all, these changes can also be consistent with those 5a and 5b be combined so that the object is shown in different relative positions to the Z-axis and in different states. In addition, it is - as already mentioned - also possible to use completely different image sequences.

Erläuterungen zum zweiten VerfahrensschrittExplanations to the second process step

In einem zweiten Verfahrensschritt werden die Bilder 400, 402, 404 insbesondere unter Verwendung einer Datenübertragungsroutine 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).In a second process step, the images 400 . 402 . 404 in particular, using a data transfer routine of the browser 300 from the first data store 230 (respectively. 250 . 260 . 270 and or 280 ) in a second data memory, namely the working memory 240 , transmitted (indicated by a twenty-second arrow P22).

Bei der Übertragung treten zwangsläufig die oben geschilderten Verzögerungen auf. Diese wirken sich insbesondere bei der Einzelü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 darzustellende Objektansicht beinhaltet. Eine solche Darstellung wäre ruckhaft und nicht fließend, so daß ein Dreheindruck ausbliebe.During transmission, the above-mentioned delays inevitably occur. These affect, in particular, the individual transmission of, for example, 24 images 400 . 402 . 404 negative from a picture sequence. This prohibits in most cases a variable object representation, which is based on each load the image, which includes an object view to be displayed. Such a representation would be jerky and not fluent, so that a turning impression would be omitted.

Um dem abzuhelfen, kann man zunächst alle Bilder 400, 402, 404 einer Bildfolge einzeln übertragen und nach Abschluß der Übertragung die Darstellung beginnen. Auf diese Weise würde man zwar eine fließende Darstellung erhalten. Die vorgeschaltete Ladezeit ist jedoch relativ lang.To remedy this, you can first see all the pictures 400 . 402 . 404 transmit one image sequence one by one and begin the display after the completion of the transfer. In this way you would get a flowing presentation. However, the upstream charging time is relatively long.

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, welches zu weiteren Umständen (nämlich die Installation, der zusätzliche Einsatz, sowie weitere Kosten) und Kompatibilitätsproblemen führt. Vorzugsweise wird daher im beschriebenen Ausführungsbeispiel der nachfolgend anhand von 6a und 6b dargestellte Ansatz gewählt.An improved solution is the images 400 . 402 and 404 to pack into a package and then in memory 240 to unpack again. However, according to the prior art, a separate unpacking program is necessary for this, which leads to further circumstances (namely the installation, the additional use, as well as further costs) and compatibility problems. Preferably, therefore, in the described embodiment, the following with reference to 6a and 6b chosen approach selected.

Zunächst werden im Beispiel – wie in 6a durch Pfeile P23, P24 und P25 angedeutet – die Bilder 400, 402 und 404 zu einem Bildstreifen 600 zusammengefügt. Dies kann beispielsweise mittels eines vorzugsweise insofern automatisierten Graphikprogramms 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 Bildstreifen 600 wird dann als solcher 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 zur Übertragung bereitgestellt. Allgemeiner gesagt werden nach diesem Ansatz also mehrere Datensätze, z.B. Bilddatensätze, in einem Browserdatenformat zu einem Datenpaket zusammengefaßt und im ersten Datenspeicher 230 bzw. 250, 260, 270 und/oder 280 zur Übertragung bereitgehalten.First, in the example - as in 6a indicated by arrows P23, P24 and P25 - the pictures 400 . 402 and 404 to a picture strip 600 together. This can be done for example by means of a preferably automated graphics program. The picture strip 600 So corresponds to a broad picture, which is made up of the individual images 400 . 402 and 404 composed (instead of the picture strip 600 Also, one image plane, ie several image strips side by side, so that the images cover a large area of n * m images, or any other composition can be selected). The picture strip 600 is then stored as such in a browser data format, in particular in a browser-supported image data compression format such as JPG, GIF or PNG, in the first data store 230 or on a data store in one of the other computers 250 . 260 . 270 and or 280 provided for transmission. general In my opinion, according to this approach, several data sets, for example image data records, are combined in a browser data format into a data packet and stored in the first data memory 230 respectively. 250 . 260 . 270 and or 280 for transmission.

Denkbar ist es nun, wie in 6a angedeutet, stets alle Bilder 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 ausgehandelte Verbindungen unterschiedlich schnell sein. Es besteht also 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 Benutzer 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 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.It is now possible, as in 6a indicated, always all images of a sequence of images or even several sequences of images to a strip of images 600 put together. As a result, delays are minimized by establishing a connection or by setting a read head. However, there are also other aspects to consider regularly. Thus, in egg ner Internet transmission, especially at peak times, individual negotiated connections can be different speeds. Thus, there is a risk that the entire data packet will be transmitted over a particularly slow connection (but this aspect is only for Internet transmission and not for loading a disk storage 230 to be considered). In addition, the user is given more activity in a transmission of multiple packets instead of a large packet, which can lead to the fact that he rather takes a longer wait in purchasing. Against this background, it is proposed in the described example, as in 6b indicated to merge 6 images into one image strip (indicated by arrows P26, P27 and P28), so that an image sequence of 24 images in 4 image strips 610 . 620 . 630 and 640 is transferred to 6 images.

Zusätzlich oder als Teil des Datenpaketes werden Informationen über die Struktur des Datenpaketes im Hinblick auf die einzelnen Datensätze im ersten Datenspeicher zur Übertragung bereit gehalten. Dabei können die Strukturinformationen Abstandsangaben und/oder Koordinatenangaben jeweils bezogen auf den Bildstreifen 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 vorzusehen, daß beispielsweise ein Bildstreifen 610, 620, 630 oder 640 aus sechs nebeneinander liegenden, gleich großen Bildern besteht.In addition to or as part of the data packet, information about the structure of the data packet with regard to the individual data records in the first data memory is kept ready for transmission. In this case, the structure information can include distance indications and / or coordinate data in each case based on the image strip and / or the image plane. This information may be available explicitly. But it is also possible, for example in a Javascript, a Jscript or a VBScript within an HTML page 310 which are also in the main memory 240 is transmitted to provide only the equivalent information that, for example, a picture strip 610 . 620 . 630 or 640 consists of six juxtaposed, equally sized pictures.

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 Datensätze 610, 620, 630, 640, welche in einem vom Browser 300 unterstützten Bilddatenkomprimierungsformat vorliegen, verwenden zu können, werden sie zunächst vom Browser 300 ohne Zuhilfenahme zusätzlicher Programme dekomprimiert. Um dann aus den Bildstreifen 610, 620, 630 bzw. 640 und mittels der zugehörigen Strukturinformationen einzelne Datensätze, d.h. die Daten einzelner 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 7a bis 7c beschrieben, vorgehen:
Zunächst wird ein erstes Bild 400 des Bildstreifens 610 in einem 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 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 Verwendung der Strukturinformationen so positioniert, daß die Position eines darzustellenden Bildes 400 mit der Position des Darstellungsbereichs, begrenzt durch die Begrenzungslinien b1, b2, b3 und b4, übereinstimmt. Hierfür, sowie für die Festlegung der Abmessungen des Darstellungsbereichs werden die Strukturinformationen verwendet. Das darzustellende Bild 400 wird dann unter Verwendung der Clippingroutine aus dem Datenpaket 610 ausgesondert und im Darstellungsbereich unter Verwendung einer Darstellungsroutine 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 verwenden.
In the same way as the pictures described 400 . 402 . 404 In principle, all types of data can be combined, in particular audio data records to audio strips, etc. To after the transfer to the main memory 240 the records 610 . 620 . 630 . 640 which in one of the browser 300 supported image data compression format, they are initially used by the browser 300 decompressed without the help of additional programs. To get out of the picture strip 610 . 620 . 630 respectively. 640 and by means of the associated structure information individual data records, ie the data of individual images 400 . 402 and 404 to weed out and display these individually, one can now use, for example, a clipping routine and the transmitted structure information. Here you can, for example, as follows using 7a to 7c described, proceed:
First, a first picture 400 of the picture strip 610 displayed in a browser window (indicated by arrow P29). This is done in the browser window, a display area for the image 400 Are defined. This display area corresponds to the dimensions of an image and is in the 7a - 7c bounded by two vertical boundary lines b1 and b2 and two horizontal boundary lines b3 and b4. The picture strip 610 (or a corresponding image plane, etc.) is positioned with respect to the browser window by means of a scrolling routine and using the texture information such that the position of an image to be displayed 400 coincides with the position of the display area bounded by the boundary lines b1, b2, b3 and b4. For this purpose, as well as for the definition of the dimensions of the display area, the structure information is used. The picture to be displayed 400 is then extracted from the data packet using the clipping routine 610 Discarded and in the viewport using a browser rendering routine 300 shown. An object within an extended HTML document, which can display an image in this way and has such a clipping routine, is provided in the Netscape Navigator, for example, under the name "Layer" and in Internet Explorer under the name "Div". The selection of the first picture 400 can be done according to any criteria. The easiest way would be to always use the first image of a sequence of images as a startup image.

Um ein weiteres Bild 402 des Bildstreifens 610 im Darstellungsbereich anzuzeigen, wird der Bildstreifen 610 entsprechend gegenüber dem Darstellungsbereich verschoben und auf das nun darzustellende Bild 402 beschnitten (in 7b angedeutet durch einen Pfeil P30). Um dabei ein Flackern zu vermeiden, wird vorzugsweise ein Doppelpuffersystem verwendet, so daß der Schiebeund 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 abgeschlossen sind. Entsprechend wird gemäß 7b während des Verschiebevorgangs weiterhin das erste Bild 400 angezeigt. Sobald 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 7c).To another picture 402 of the picture strip 610 in the viewport, the image strip becomes 610 moved accordingly to the display area and the now displayed image 402 cropped (in 7b indicated by an arrow P30). In order to avoid flickering, a double buffer system is preferably used, so that the sliding and the cutting process can be performed in the background and an image displayed by an image to be displayed only he is set when the sliding and cutting are completed. Accordingly, according to 7b while moving the first image 400 displayed. Once the second picture 402 is positioned and cropped in the viewport, instead of the first image in the browser page 320 in the defined display area instead of the first image 400 the second picture 402 indicated (indicated by arrow P31 in 7c ).

Für die Anzeige weiterer oder des ursprünglichen Bildes 404, 400 wird das vorstehend beschriebene Verfahren entsprechend angewendet. Im Falle von Audiodaten wird entsprechend vor- und zurückgespult bzw. die Startposition angesprungen etc.For displaying more or the original image 404 . 400 the method described above is applied accordingly. In the case of audio data is forward and rewound accordingly or jumped to the starting position, 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 Programmroutinen, 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 Programmelemente in die Browserseite 320 (wie auch allgemein vorzugsweise Programmelemente in Browserseiten) auf die nachfolgend anhand von 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 entsprechen. Es kann darüber hinaus ein Hinweis auf eine laufende Datenübertragung beinhalten. Es kann aber auch einen völlig anderen Inhalt wie beispielsweise eine Werbung aufweisen.
When transferring the image strips 610 . 620 . 630 and 640 As in the case of the transmission of data, especially when transferring applets or other program routines, it can happen that either the transfer can not be completed or can not be completed, takes a long time, or that a browser in the example Interpreter, or in the case of a Java applet does not have a virtual machine or in the case of another program does not have a required plug-in. In such cases, as stated above, in the browser page 320 in the prior art only an icon or a gray area displayed. To avoid these disadvantages, preferably in the present example, the program elements required for generating the variable representation in the browser page 320 (as well as generally preferred program elements in browser pages) to the following with reference to 8a and 8b involved manner described:
First contains the first data store 230 (respectively. 250 . 260 . 270 and or 280 ) next to the HTML code 310 a browser page 320 and the picture strip 610 . 620 . 630 and 640 at least one sequence of images still an additional image 800 , This additional picture 800 can correspond to the first object view to be displayed. It may also contain an indication of ongoing data transfer. But it can also have a completely different content, such as an advertisement.

Außerdem ist im HTML-Code 310 der Browserseite 320 ein Darstellungsbereich für die Darstellung des zusätzlichen Bildes 800 definiert, sowie ein Verweis auf das zusätzliche Bild 800 über eine Bildkennung (wie den Datei-Namen oder Bildnamen) enthalten. Der Darstellungsbereich entspricht dabei dem Bereich, in welchem 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 jederzeit nachgeholt werden kann. Der HTML-Code 310 der Browserseite 320 enthält somit zunächst einen Platzhalter in der Form des zusätzlichen Bildes 800 mit einer Kennung zur Identifikation des Platzhalters 800.It is also in HTML code 310 the browser page 320 a display area for the presentation of the additional image 800 defined, as well as a reference to the additional image 800 via an image identifier (such as the file name or image name). The display area corresponds to the area in which the desired variable display is to be displayed later. A call for required program elements is in the HTML code 310 initially only implicitly contained, ie it is not yet linked to the program elements, which can be made up at any time by the appropriate right occupation of required variables. The HTML code 310 the browser page 320 thus initially contains a placeholder in the form of the additional image 800 with an identifier for identification of the placeholder 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 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 Objektansicht, dar.The HTML code 310 and the placeholder 800 are used as the first part of a data transfer from the first memory 230 (respectively. 250 . 260 . 270 and or 280 ) in the main memory 240 transferred (indicated in 8a by arrows P32 and P33, as well as symbols 310 ' and 800 ' in memory 240 ). This is what the browser uses 300 through the HTML code 310 controlled to (indicated by arrow P34). He takes the HTML code 310 ' the reference (indicated by arrow P36) to the placeholder 800 ' and puts in an area of the browser page 320 on the monitor 210 the object of the placeholder image, in the example, the first object view 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 enthalten. 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 Browserfensters. Außerdem startet die Einfügeroutine die Übertragung beispielsweise von den vier Bildstreifen 610, 620, 630 und 640 einer Bildfolge in den Arbeitsspeicher 240 (in 8b angedeutet durch Pfeile P37, P38, P39 und P40, sowie durch Symbole 610', 620', 630' und 640' im Arbeitsspeicher 240).After loading the HTML code (and thus after, during or before loading the placeholder image 800 ' ) an insert routine is activated. The inserter routine is in HTML code 310 preferably in the form of a Javascript, Jscriptes or VBScriptes. It takes information about the placeholder from the HTML code 800 ' , such as its height, width, position, name and position within the item list of the browser window. In addition, the insert routine starts transmission from, for example, the four image strips 610 . 620 . 630 and 640 a sequence of pictures in the main memory 240 (in 8b indicated by arrows P37, P38, P39 and P40, as well as by symbols 610 ' . 620 ' . 630 ' and 640 ' in memory 240 ).

Die Einfügeroutine überwacht, wann der Ladevorgang abgeschlossen 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 abgebildet, da dann die Feststellung des Vorliegens der Ausführungsvoraussetzungen für die veränderliche Darstellung (also im Beispiel das Vorhandensein eines entsprechenden Script-Interpreters) einfach dadurch erfolgt, daß die Einfügeroutine nur in diesem Fall ausgeführt wird und werden kann. Beim Starten der veränderlichen Darstellung wird der Platzhalter 800 unter Verwendung der Kennung des Platzhalters im HTML-Code 310 der Browserseite 320 ausfindig gemacht und durch das Programmelement 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 übermalt wird; es ist aber auch möglich, den HTML-Code 310 vollständig neu zu generieren. Der Platzhalter 800' wird im Ergebnis nicht mehr dargestellt (angedeutet durch Pfeil P36 in 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 Browserfenster an (angedeutet durch das Cursorzeichen 810 in der Browserseite 320). Ist das Programmelement jedoch nicht ausführbar, so bleibt der Platzhalter 800 sichtbar.The insert routine monitors when the load is complete. After completion of the transfer, it activates, provided that the execution conditions for the variable representation are present, the program elements required for this purpose. Preferably, the insert routine and the program elements for the variable representation are mapped in the same script type, because then the presence of the execution requirements for the variable representation (ie, in the example, the presence of a corresponding script interpreter) simply by the fact that the insertion routine only in this case is and can be done. When the variable representation starts, the placeholder becomes 800 using the identifier of the wildcard in HTML code 310 the browser page 320 located and by the program element for generating the variable representation in the browser page 320 replaced. It can be the HTML code 310 the browser page 320 remain unchanged as such, so that the placeholder 800 -pictured spoken- is painted over in the presentation; but it is also possible to use the HTML code 310 completely re-generate. The placeholder 800 ' is not shown in the result (indicated by arrow P36 in 8b ). Instead, the browser performs 300 the program element and shows the desired variable object representation in the area of the placeholder in the browser page 320 in the browser window (indicated by the cursor character 810 in the browser page 320 ). However, if the program element is not executable, the placeholder remains 800 visible, noticeable.

Als Kennung für den Platzhalter 800 wird vorzugsweise der Datei-Name des Platzhalters 800 ganz oder teilweise, oder aber ein anderes entsprechendes Identifikationsmerkmal wie der Elementname verwendet.As identifier for the placeholder 800 is preferably the file name of the wildcard 800 in whole or in part, or another corresponding identifier used as the element name.

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 verwendet werden kann. Auch können mehrere Bilder zeitliche gesteuert hintereinander angezeigt werden. Im ersten Fall wird außerdem auch auf Browsern, welche die veränderliche Darstellung nicht ausführen können, ein Eindruck vom Inhalt der Darstellung 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.The described approach has the advantage that, depending on the type of wildcard used 800 , a longer loading time for a first impression of the object to be displayed, an advertisement, a loading message or a combination thereof can be used. It is also possible to display several pictures consecutively in chronological order. In the first case, also on browsers, which can not perform the variable representation, gives an impression of the content of the presentation. In addition, incomplete browser pages are not displayed. Finally, it is when creating the browser page 320 possible, without special effort and only by naming the wildcard name to integrate several animations in a page.

Erläuterungen zum dritten VerfahrensschrittExplanations to the third process step

Nach Abschluß der Datenübertragung für wenigstens eine vollstä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 4 durch Pfeil P43). Dies ist möglich, weil der Browser 300 Daten aus dem Arbeitsspeicher 240 verarbeiten kann (angedeutet durch Pfeil P44 in 4). Da die Übertragung mehrerer Bildfolgen entsprechend länger dauert, wird vorzugsweise dieser Schritt ausgeführt, sobald die erste Bildfolge vollständig übertragen ist, und nicht auf weitere Bildfolgen gewartet. Diese werden vielmehr nach Bedarf nachgeladen. Man kann auch schon nach der Übertragung des ersten Bildstreifens 610 einer Bildfolge oder gar eines Einzelbildes 400, 402 oder 404 mit der Darstellung beginnen. Dies würde jedoch im Laufe des weiteren Verfahrens zu Problemen führen, 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.After completion of the data transmission for at least one complete image sequence at least a first image 400 using a browser rendering routine 300 in an area of a browser page 320 in a browser window on the monitor 210 represented (indicated in 4 by arrow P43). This is possible because of the browser 300 Data from the main memory 240 can process (indicated by arrow P44 in 4 ). Since the transmission of several image sequences takes correspondingly longer, this step is preferably carried out as soon as the first image sequence has been completely transmitted, and is not waiting for further image sequences. These are reloaded as needed. You can also already after the transfer of the first picture strip 610 a picture sequence or even a single picture 400 . 402 or 404 start with the presentation. However, this would lead to problems in the course of the further process, since delayed reloading leads to a jerky instead of flowing representation. Preferably, the first image becomes 400 . 402 . 404 a picture sequence (with regard to the order of the pictures 400 . 402 . 404 within a sequence of images, see below) in each case first and thus represented as a start image.

Erläuterungen zum vierten VerfahrensschrittExplanations to the fourth process step

Der vierte Verfahrensschritt kann grundsätzlich vor oder nach der Übertragung der Bilder 402, 404, 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 Zuordnung der einzelnen Bilder 402, 404, 404 jeweils zu einem Objektansichtsbereich, welcher die jeweils dargestellte Objektsansicht umfaßt (siehe im einzelnen weiter unten). Sofern dieser Schritt vor der Übertragung ausgeführt wird, müssen dabei ermittelte Zuordnungsdaten ebenfalls auf den zweiten Datenspeicher, d.h. in den Arbeitsspeicher 240, übertragen werden.The fourth method step can basically be before or after the transmission of the images 402 . 404 . 404 , in the form of picture strips 610 . 620 . 630 . 640 and / or before the presentation of the first image 400 be executed. It contains the assignment of the individual pictures 402 . 404 . 404 each to an object view area, which includes the object view shown in each case (see below in detail). If this step is carried out before the transfer, in this case determined assignment data must also be on the second data memory, ie in the main memory 240 , be transmitted.

Der Begriff des Objektansichtsbereiches ist in diesem Zusammenhang weit aufzufassen. Im Falle einer veränderlichen räumlichen Darstellung eines Objektes 100, 110 bezieht er sich beispielsweise auf den Drehwinkelbereich, für welchen ein Bild 402, 404, 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 bestimmten Drehwinkelbereich angezeigt). Im Falle der Darstellung einer Hin- und Herbewegung längs eines Motives wie in 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. 1d) oder einer zeitlichen Zustandsänderung (vgl. 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äuterungen nur auf den Fall der drehbaren Darstellung eines Objektes 100 bzw. 110. Die Objektansichtsbereiche werden also jeweils für eine Bildfolge als Drehwinkelbereiche bezogen auf die erste Drehachse, namentlich die Z-Achse, definiert.The term object view area is to be understood in this context. In the case of a variable spatial representation of an object 100 . 110 For example, it refers to the rotation angle range for which a picture 402 . 404 . 404 is displayed (as already explained above, yes only certain views in pictures 400 . 402 and 404 displayed; Consequently, a rotation in the representation always takes place in steps, ie a single image is displayed in each case for a certain rotation angle range). In the case of the representation of a float along a motive as in 1c the same applies to a shift range unless a continuous long picture is produced from which clips are shown. In the case of a change of colors etc. (cf. 1d ) or a temporal change of state (cf. 1e ), the object view area corresponds to the section of the color space or the temporal area for which an image is displayed. For the sake of simplicity, but without limitation, the following explanations relate only to the case of the rotatable representation of an object 100 respectively. 110 , The object view areas are thus defined in each case for an image sequence as rotation angle ranges related to the first rotation axis, namely the Z axis.

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 Division von 360° durch die Anzahl der Bilder 400, 402, 404 ermittelt, d.h. bei 24 Bildern ergibt sich ein Bereich von 360°/24=15°.In the case of displaying a full revolution about the Z-axis in suitably uniform steps, the amount of rotation angle ranges for one image sequence becomes each time by dividing 360 degrees by the number of images 400 . 402 . 404 determined, ie for 24 images results in a range of 360 ° / 24 = 15 °.

Wie oben dargelegt, stellt jedes Bild 400, 402, 404 eine Objektansicht dar, zu welcher ein Drehwinkel gehört. Diese Drehwinkel 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 unten) 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 Objektsansicht 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 Beispiel 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°.As stated above, each picture represents 400 . 402 . 404 an object view to which a rotation angle belongs. These angles of rotation are 0 °, 15 °, 30 °, ... and 345 °. In other words, these are the rotation angles or the associated object views, which in the individual images 400 . 402 . 404 are shown exactly. In the representation, however, especially since only a finite number of images is available, the individual images 400 . 402 . 404 each still be displayed when using input devices such as the computer mouse 220 (in detail below) a slightly different angle of rotation is given. For this purpose, preferably every picture 400 . 402 . 404 assigned to a rotation angle range, in the center of which is the angle associated with the object view, and which are in both directions of rotation in each case by half the amount of -Über calculated as Drehwinkelbe extends. In the example with 24 pictures would the individual pictures 400 . 402 . 404 ie the following ranges of rotation are assigned: 0 ° ± 7,5 °, 15 ° ± 7,5 °, 30 ° ± 7,5 °, ... and 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 implizit, 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 Eingabemittel (wie unten näher ausgeführt) jeweils so behandelt werden, daß vorbestimmte Eingaben zum Bildwechsel führen. Beispielsweise kann ein angezeigtes Bild 400, 402, oder 404 bei einer Mausbewegung von einem bestimmten Ausmaß und in eine Richtung jeweils durch ein benachbartes Bild 400, 402, 404 ersetzt werden, u.s.w. Dabei ist zu beachten, daß auch das erste und letzte Bild einer Bildfolge (0° und 345°) als benachbart anzusehen sind.The assignment can be made explicitly, ie the angle ranges are calculated and the resulting data is sent to the browser 300 made available. However, it is preferably done implicitly for the images 400 . 402 . 404 a sequence of images (and thus also for the individual image strips 610 . 620 . 630 . 640 ) an order is determined and inputs via input means (as explained in more detail below) are each treated so that predetermined inputs lead to the image change. For example, a displayed image 400 . 402 , or 404 in a mouse movement of a certain extent and in one direction by an adjacent image 400 . 402 . 404 It should be noted that also the first and last picture of a picture sequence (0 ° and 345 °) are considered to be adjacent.

Sofern, wie oben beschrieben, mehrere Bildfolgen verwendet werden, 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.Provided, As described above, several image sequences are used to create a 4-Π turn all the way or to be able to represent partially is the individual image sequences in a corresponding manner each one Assigned angular range with respect to the second axis of rotation.

Erläuterungen zum fünften VerfahrensschrittExplanations to the fifth step

In einem fünften Schritt werden aus wenigstens einer Betätigung der Cursorpositionierungsmittel, etwa der Computermaus 220, resultierende 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 werden. Die so jeweils erhaltenen Daten werden in weiteren Verfahrensschritten zur Steuerung der veränderlichen Darstellung verwendet. Zusätzlich oder stattdessen kann die veränderliche Darstellung an einen Parameter gekoppelt werden, welcher zeitlich veränderbar ist. Auf diese Weise kann beispielsweise ein selbstdrehendes Objekt dargestellt werden.In a fifth step, from at least one actuation of the cursor positioning means, such as the computer mouse 220 , resulting position changes of the cursor 810 using an event handler of the browser 300 determined. Instead of moving a computer mouse, for example, the duration of a keystroke can be used as a relevant parameter. The data thus obtained are used in further process steps for controlling the variable representation. Additionally or alternatively, the variable representation may be coupled to a parameter which is time changeable. In this way, for example, a self-rotating object can be displayed.

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äßiger ist jedoch die im Ausführungsbeispiel vorgeschlagene Reihenfolge.Of the fifth Could step in principle even be done before the fourth step in the sense that first a cursor movement leads to the display of the first image. Is more appropriate but in the embodiment suggested order.

Erläuterungen zum sechsten bis achten VerfahrensschrittExplanations to the sixth to eighth process step

In einem sechsten und siebten Verfahrensschritt wird wenigstens eine darzustellende Objektansicht unter Verwendung von Objektbereichsdaten und von Positionsänderungsdaten des Cursors 810 ermittelt und dabei wenigstens einmal ein Bild 400, 402 ermittelt, dessen zugeordneter Objektansichtsbereich die nach der Änderung darzustellende Objektansicht umfaßt. In einem achten Verfahrensschritt wird dann wenigstens einmal ein so ermitteltes Bild unter Verwendung der Darstellungsroutine und gegebenenfalls der Verschiebe- und Clippingroutinen des Browsers in dem Browserfenster dargestellt.In a sixth and seventh process step, at least one object view to be displayed is made using object area data and position change data of the cursor 810 determines and at least once a picture 400 . 402 whose assigned object view area comprises the object view to be displayed after the change. In an eighth method step, an image thus determined is then displayed in the browser window at least once using the display routine and, if appropriate, the browser's shift and clipping routines.

Im Falle eines ersten Ausführungsbeispieles werden dabei Positionsänderungen des Cursors 810 in oder gegen die Richtung einer ersten Koordinatenachse, etwa der X-Achse, auf Drehungen des Objektes 100 um die erste Drehachse, etwa die zur X-Achse senkrechte Z-Achse Aus 1a, bezogen. Dabei ist es grundsä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 gedrückt ist, um ungewollte Drehbewegungen zu vermeiden.In the case of a first embodiment, position changes of the cursor are thereby 810 in or against the direction of a first coordinate axis, such as the X-axis, on rotations of the object 100 around the first axis of rotation, such as the Z-axis perpendicular to the X-axis 1a , based. It is basically possible to consider all cursor movements. It is better, however, to consider only such movements, in which, for example, a key of the computer mouse 220 is pressed to prevent unwanted rotation.

Dieser Ansatz wird nachfolgend anhand der 9a-9c erläutert:
Zunächst wird durch Drücken der Maustaste in 9a eine erste Cursorposition definiert, welche der Mitte M des Objektansichtsbereichs eines gerade dargestellten Bildes 400 zugeordnet wird. Sodann werden Grenzen g1 und g2 (und gegebenenfalls weitere Grenzen für den Fall, daß eine Mausbewegung dem sukzessiven Wechsel mehrerer Bilder entspricht) des Objektdarstellungsbereichs durch Abschnitte auf der X-Achse repräsentiert, welche auf der X-Achse jeweils gleich weit vom Ausgangspunkt M wegreichen. Diese Abschnitte werden beispielsweise in Pixel ausgedrü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.
This approach is described below using the 9a - 9c explains:
First, press the mouse button in 9a defines a first cursor position, which is the center M of the object view area of an image currently displayed 400 is assigned. Then, boundaries g1 and g2 (and possibly other boundaries in the case where a mouse movement corresponds to the successive change of multiple images) of the object representation area are represented by portions on the x-axis which respectively extend equally far from the starting point M on the x-axis. These sections are expressed in pixels, for example, so that the initial situation of the cursor 810 is regarded as zero pixels, while the limits g1 and g2 are given as 0 ± x pixels (and the other limits as g1 - n * (2x) and g2 + n * (2x), respectively).

Solange der Cursor wie in 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 9c das (oder die) in der Bildfolge jeweils in dieser Richtung benachbarte Bild 402 anstelle des ersten Bildes 400 angezeigt. Bei einer Weiterbewegung des Cursors nach dem ersten Bildwechsel gilt für die nächstfolgenden Grenzen bzw. für eine Rückbewegung das oben gesagte entsprechend.As long as the cursor is as in 9b is held within the boundaries g1 and g2, that is, only moved by fewer pixels, becomes the first image 400 indicated (indicated by arrow P45). However, as soon as one of the limits g1 or g2 (or the other limits) is exceeded, as in 9c the (or the) in the sequence of images in each case adjacent image 402 instead of the first picture 400 displayed. If the cursor continues to move after the first image change, the above-mentioned limits or for a return movement, the above applies accordingly.

Die Verfahrensschritte sechs bis acht können beliebig oft wiederholt werden. Zusätzlich können Positionsänderungen des Cursors 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) bezogen werden.The method steps six to eight can be repeated as often as desired. In addition, changes in position of the cursor in or against the direction of a second, in particular perpendicular to the first coordinate axis X, coordinate axis Z related to rotations of the object about a second axis of rotation (X or Y).

Sofern die Objektansichtsbereiche explizit bestimmt werden, ist es zusätzlich oder alternativ möglich, eine darzustellende Objektsansicht aus einer den Objektbereichsdaten einer dargestellten 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 Objektsansicht gehörigen Drehwinkel addiert. Vorzugsweise wird dann ein Bild ermittelt, dessen zugeordneter Objektansichtsbereich die darzustellende Objektansicht nach der Änderung umfaßt, indem zunächst der zur darzustellenden Objektansicht gehö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 zugeordneten Drehwinkelbereich der zur darzustellenden Objektsansicht gehörige Drehwinkel liegt.Provided the object view areas are explicitly determined, it is additional or alternatively possible, an object view to be displayed from the object area data a displayed object view and the position changes of the cursor in the following way: First the extent of Position change measured in pixels, by means of a multiplicative conversion factor, about the unit degrees per pixel, in a rotation angle, about measured in degrees, converted. The resulting angle of rotation is at position changes in or against the direction of the respective coordinate axis respectively provided with a different sign. Finally, the signed provided rotation angle to the angle of rotation associated with the object view shown added. Preferably, an image is then determined whose assigned Object view area the object view to be displayed after the change includes by first associated with the object view rotation angle with the rotation angle ranges the individual images of a sequence of images and / or the rotation angle ranges the individual image sequences is compared. Then the picture and / or the image sequence selected, in whose or their associated rotation angle range of the object view to be displayed associated Rotation angle is.

Alternativ kann auch eine algebraische Berechnung, welches Bild darzustellen ist, ausgeführt werden. Beispielsweise ergibt sich das darzustellende Bild aus einer Multiplikation der Mausbewegung 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 beispielsweise festgelegt werden, daß eine Cursorbewegung von 8 Pixeln dem Darstellungsbereich von einem Bild entspricht.alternative can also be an algebraic calculation to represent which image is to be executed. For example, the image to be displayed results from a multiplication the mouse movement measured in pixels with a conversion factor of Dimension degrees per pixel and a division of the result thus obtained by the increment measured in degrees. It can, for example be determined that a Cursor movement of 8 pixels in the display area of an image equivalent.

Die Verfahrensschritte 6 bis 8 werden auch in 4 dargestellt. Zunächst wird auf dem Monitor 210 ein erstes Bild 400 dargestellt. Der Cursor 810 befindet sich im linken Bildbereich. 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 Objektansicht nach einem der oben beschriebenen Verfahren übersetzt. Sofern sich hieraus ergibt, daß ein zweites Bild 402 anzuzeigen ist, wird die Darstellung der Browserseite auf dem Monitor 210 entsprechend geändert (angedeutet durch Pfeil P49).The process steps 6 to 8 are also in 4 shown. First, on the monitor 210 a first picture 400 shown. The cursor 810 is located in the left picture area. Then the mouse button is pressed and the cursor 810 ' by means of the computer mouse 220 moved to the right half of the picture (indicated by arrow P47). The position change of the cursor is via the event handler of the browser 300 detected (indicated by arrow P48) and translated into a corresponding change of the object view according to one of the methods described above. Provided that it follows that a second picture 402 display is the appearance of the browser page on the monitor 210 amended accordingly (indicated by arrow P49).

Die Verfahrensschritte sechs bis acht können beliebig oft wiederholt werden (angedeutet durch Pfeil P50).The Process steps six to eight can be repeated as often as desired (indicated by arrow P50).

Ergänzung bzw. Erweiterung zum VerfahrensbeispielAddition or extension to the process example

Für viele Anwendungen ist es wünschenswert, zusätzlich zur veränderlichen Darstellung eines Objektes nach dem bisher beschriebenen Verfahren, wie auch sonst bei veränderlichen Objektdarstellungen interaktive Flächen in die Darstellung einzufü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 jeweils das Objekt in unterschiedlicher Ansicht darstellen und welche in einem Browserfenster dargestellt werden.For many Applications it is desirable additionally to changeable Representation of an object according to the previously described method, such as otherwise synonymous with variable Object representations to insert interactive surfaces in the presentation. there is preferably, as previously described, for the variable spatial Representation of the object a plurality of two-dimensional images used, which each have the object in different view and which are displayed in a browser window.

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 Hyperlinks 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 interaktive Fläche umfaßt dabei die gesamten Ausmaße des Bildes. Zusätzlich können weitere Maus-Events definiert werden. Beispielsweise kann beim sogenannten Mouse-Over, d.h. der Cursor wird über eine interaktive Fläche hinüberbewegt, kurz ein Rahmen angezeigt werden, welcher signalisiert, daß eine interaktive Fläche vorhanden ist.interactive surfaces are for example surfaces in graphical representations on computer screens, to which a user moving a cursor about using a computer mouse can and by what actions are triggered when the user at this point a key is pressed. Technically, for this Hyperlinks used. These are based on the state of the art certain areas bound within a single two-dimensional image by a region ("area") by specifying the absolute pixel coordinates in the representation is defined and the hyperlink is bound to this region. Is the cursor located? or mouse pointer within this region while the mouse button is pressed, so the associated hyperlink is executed. A very simple version an interactive area is achieved by omitting the coordinates by the entire Picture is linked to a hyperlink. The interactive area includes the entire dimensions of the picture. additionally can further mouse events are defined. For example, in so-called mouse-over, i.e. the cursor is over an interactive area moved over, briefly a frame are displayed, which signals that an interactive area is available.

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.Around interactive surfaces in a changeable To define meaningful representation of the type described above, must after the The prior art, for example, in a sequence of 24 images each the object view change adapted specially created interactive area. The effort for this, as well for every change, is considerable.

Eine Abhilfemöglichkeit wird nachfolgend anhand der 10a bis 10d erläutert.A remedy option is described below on the basis of 10a to 10d explained.

Gemäß 10a besteht das Darstellungsziel beispielsweise darin, eine volle Drehung des Objektes 100' um die Z-Achse in der Richtung des Pfeils P1 in einer Bildfolge von 24 Bildern darzustellen. Dabei soll auf einer Seite des Objektes 100' eine interaktive Fläche 1000 eingefügt werden.According to 10a For example, the presentation goal is to do a full rotation of the object 100 ' to represent the Z axis in the direction of the arrow P1 in an image sequence of 24 images. It should be on one side of the object 100 ' an interactive area 1000 be inserted.

Der Ansatz besteht darin, zunächst eine Bildfolge ohne interaktive 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 Objektes 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 Bezugssystem (X,Y,Z) veränderlich ist. Sodann wird gemäß 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 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.The approach is to first create a series of images without interactive surfaces. According to the presentation goal is the individual pictures 400 . 402 the image sequence each one position and / or spatial position of the object shown 100 ' in a reference system, namely the spanned by the axes X, Y and Z coordinate system assigned. For the interactive surface to be created 1000 becomes a model surface 1010 used whose position and / or spatial position in the reference system (X, Y, Z) is variable. Then according to 10b a first position and / or spatial position of the model surface 1010 in the frame of reference the first picture 400 assigned (indicated by arrows P51 and P52). In doing so, the in 10b represented projection of the model surface 1010 to the YZ-level in the picture 400 inserted so that an added to an interactive area image 400 ' arises.

Gemäß 10c wird dann bei einem Darstellungswechsel vom ersten 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 Objektes 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 10c dargestellt. Die Berechnungen werden entweder über eine entsprechende Java-Script-, Jscript oder Visual Basic Routine vor Ort durchgeführt, oder aber an anderer Stelle von ei nem Autorenprogramm vorberechnet und in Form einer Liste mit übermittelt.According to 10c is then at a presentation change from the first picture 400 on a second picture 402 the position and / or spatial position of the model surface 1010 ' according to the change of the position and / or spatial position of the displayed object 100 ' changed and a projection of the model area 1010 ' in the new position and / or spatial location on the second picture 402 algebraically, in particular by a rotation and / or translation matrix calculated. This projection is in the top right corner of 10c shown. The calculations are either carried out locally via a corresponding Java Script, Jscript or Visual Basic routine, or precalculated elsewhere by an author program and transmitted in the form of a list.

Es wäre nun grundsätzlich möglich, die Projektion unmittelbar für die Definition der interaktiven Fläche 1000' in der Darstellung des zweiten Bildes 402 im Browserfenster zu verwenden. Bei vielen älteren Browsern können jedoch nur rechteckige Bereiche als interaktive Flächen verwendet werden, da andere Flächen wie etwa Polygonzüge oder Ellipsen häufig als Funktion instabil sind und dadurch ihre Verwendung zu Abstürzen des Browsers führen kann.It would be possible in principle, the projection directly for the definition of the interactive area 1000 ' in the representation of the second picture 402 in the browser window. However, with many older browsers, only rectangular areas can be used as interactive areas because other areas, such as polygons or ellipses, are often unstable as a function, and their use can lead to browser crashes.

Vor diesem Hintergrund ist es zunächst zweckmäßig, als Modellfläche 1010 eine ebene, rechteckige Fläche zu verwenden. Sodann wird vorzugsweise eine Projektion der Modellfläche 1010', welche als solche nicht rechteckig ist, in der Weise für die Definition der interaktiven Fläche 1000 verwendet, daß die interaktive Fläche 1000 die Gestalt eines Rechtecks hat, welches in Lage und Größe der Projektion ähnlich ist. Um dies zu gewährleisten und zugleich alle Bereiche abzudecken, an welchen ein Benutzer eine interaktiven Bereich erwarten kann, werden bevorzugt die Maximalwerte der Projektion zur Definition eines ähnlichen Rechtecks 1020 und damit einer rechteckigen interaktiven Fläche verwendet 1000' verwendet, so daß die rechteckige interaktive Fläche 1000' die Projektion der Modellfläche 1010' einschließt.Against this background, it is initially appropriate as a model surface 1010 to use a flat, rectangular surface. Then, preferably, a projection of the model surface 1010 ' , which as such is not rectangular, in the way for the definition of the interactive surface 1000 used that interactive surface 1000 has the shape of a rectangle similar in position and size to the projection. In order to ensure this and at the same time to cover all areas in which a user can expect an interactive area, the maximum values of the projection are preferred for defining a similar rectangle 1020 and thus uses a rectangular interactive surface 1000 ' used so that the rectangular interactive area 1000 ' the projection of the model surface 1010 ' includes.

Die Modellfläche 1010 wird in diesem Beispiel im Browserfenster als solche nicht, d.h. nicht sichtbar, dargestellt. Zur Berechnung der Projektion der Modellfläche 1010 auf eine darzustellende Objektsansicht wird als Transformationsalgorithmus eine Abbildungsmatrix, vorzugsweise eine Drehmatrix verwendet.The model area 1010 in this example is not displayed in the browser window as such, ie not visible. To calculate the projection of the model surface 1010 An imaging matrix, preferably a rotation matrix, is used as the transformation algorithm on an object view to be displayed.

Ein weiteres Problem besteht darin, daß bei einer vollen Drehung 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 Oberflächenbereich des dargestellten Objektes 100' auch sichtbar ist.Another problem is that with a full rotation of the object 100 ' around the Z-axis the interactive surface 1000 during half of the rotation of the object 100 ' is covered and preferably also shown. Accordingly, the method described above can not simply be used such that any projection of the model surface 1010 also for the definition of an interactive area 1000 . 1000 ' is attracted. This should only be the case if that of the interactive surface 1000 . 1000 ' assigned surface area of the displayed object 100 ' is also visible.

Um dieses Ziel zu erreichen, wird bei der Darstellung einer anderen 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 10d dargestellt-, für die Modellfläche 1010 ein Normalenvektor n definiert. Hierdurch 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 interaktiven Flächen 1000, 1000' immer dann inaktiviert werden, wenn der Normalenvektor außerhalb eines bestimmten Winkelbereichs liegt.To achieve this goal, the representation of another side of the object becomes the definition of the interactive surface 1000 . 1000 ' prevented by a hidden-line algorithm. For this purpose is easiest - like in 10d shown, for the model area 1010 defines a normal vector n. This makes it possible that the hidden-line algorithm, the surface normal n of the model surface 1010 used in the way that a projection of the model area 1010 to the displayed object view only as an interactive area 1000 is defined when the surface normal points to a viewer, that is, out of the image plane. More generally, it is convenient to use the normal vector in such a way that the interactive surfaces 1000 . 1000 ' be inactivated whenever the normal vector is outside a certain angular range.

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 Betrachter die vorhandenen Möglichkeiten zu verdeutlichen.By a hidden-line algorithm can also be the (partial) occultation of an object can be represented by another object, so that in the case their concealment interactive surfaces also be inactivated. It can also be useful to the interactive surfaces as such in the presentation, such as when "override" with the mouse, visible to make the viewer aware of the possibilities available.

Sobald interaktive Flächen definiert sind, können mit ihnen beispielsweise Aktionen verbunden werden, welche das dargestellte 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 interaktiven 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.Once interactive surfaces are defined, they can be used, for example, to associate actions with the object being displayed 100 ' change. For this purpose, after pressing the interactive area 1000 a first image sequence replaced by a second image sequence. For example, it is possible to rotate a displayed car in different colors or with or without open doors, etc. The actions that belong to interactive areas can also be triggered explicitly by calling a corresponding function in Java Script, JScript or Visual Basic ,

Zusätzlich oder stattdessen können auch Aktionen von außerhalb der Darstellung ausgelöst werden. Beispielsweise können interaktive Flächen in Form von Schaltleisten auch neben oder unterhalb der Darstellung vorgesehen sein. In allen Fällen wird jeweils eine Funktion im Java-Script (oder Jscript, Visual Basic) aufgerufen., ein Hyperlink ausgeführt oder die Seite neu generiert 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 Seite darzustellen.Additionally or instead you can also actions from outside triggered the presentation become. For example, you can interactive surfaces in the form of safety edges also next to or below the illustration be provided. In all cases in each case a function in the Java script (or Jscript, Visual Basic), run a hyperlink, or regenerate the page etc. Also it is possible in other pages the values of variables in javascript, jscript or To change VBScript, to link two pages together. For example it is so possible, in one or more pages desired properties of a Assemble cars and then present it in another page.

Ausführungsbeispiele: Computersystem, Computerprogramm, Netzwerkserver und NetzwerkclientExemplary embodiments: computer system, Computer program, network server and network client

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 Netzwerkserver oder Netzwerkclient als Computerprogramm implementiert werden. Anders ausgedrückt, erhält das jeweilige System durch die Implementierung des Computerprogrammes die erfindungsgemäßen technischen Eigenschaften oder ist dementsprechend angepaßt. Vor diesem Hintergrund versteht es sich, daß die Erfindung auch die derart ausgestatteten Systeme umfaßt, welche im übrigen in der Beschreibung auch beispielhaft dargestellt sind.The Invention was in the previous versions in the form and in the Environment of a method example described. As I said, the implementation of such a method requires an illustration of the procedure in program elements, which then in a computer system or in whole or in part on a network server or network client be implemented as a computer program. In other words, the respective system gets by the implementation of the computer program, the technical invention Properties or is adapted accordingly. Against this background it is understood that the Invention also includes the systems so equipped, which Furthermore are also exemplified in the description.

Insbesondere umfaßt die Erfindung ein Computersystem zur Erzeugung 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.In particular, the invention includes a computer system for generating a spatial representation of an object 100 . 110 . 120 . 140 . 150 . 160 in changeable view using a browser 300 wherein the computer system includes first and second data memories 230 and 240 respectively. 250 . 260 . 270 and or 280 , Display means 210 and cursor positioning means 220 , in particular a mouse, a track ball, a touch pad, a mouse stick or a touch screen, for operating a method of the type described above.

Sodann umfaßt die Erfindung ein Computerprogramm, welches in einem Speichermedium gespeichert ist und welches Softwarecodeabschnitte umfaßt, mit denen Schritte für ein vorstehend beschriebenes Verfahren ausgeführt werden, wenn das Programm auf einem Computer 200, 250, 260, 270 bzw. 280 läuft.Then, the invention comprises a computer program which is stored in a storage medium and which comprises software code sections with which steps for a method described above are executed when the program is run on a computer 200 . 250 . 260 . 270 respectively. 280 running.

Ferner umfaßt die Erfindung einen Netzwerkserver 260 und insbesondere einen Internetserver mit einem Speichermedium, auf welchem ein Computerprogramm gespeichert ist, welches Softwarecodeabschnitte umfaßt, mit denen Schritte eines vorstehend beschriebenen Verfahrens ausgeführt werden, wenn das Programm auf einem Computer 200 läuft; außerdem einen Netzwerkserver 260 und insbesondere Internetserver mit einem Speichermedium, auf welchem ein Computerprogramm gespeichert ist, welches Softwarecodeabschnitte umfaßt, mit denen Schritte eines vorstehend beschriebenen Verfahrens ausgeführt werden, wenn das Programm auf einem Computer 200, 250, 260, 270 bzw. 280 läuft, wobei das Computerprogramm zumindest teilweise auf einen anderen Computer 200, insbesondere auf einen Netzwerkclient und insbesondere einen Internetclient übertragbar und dort ausführbar ist.Furthermore, the invention comprises a network server 260 and in particular an Internet server with a storage medium on which a computer program is stored, which comprises software code sections with which steps of a method described above are executed when the program is run on a computer 200 running; also a network server 260 and in particular an internet server with a storage medium on which a computer program is stored, which comprises software code sections with which steps of a method described above are executed when the program is run on a computer 200 . 250 . 260 . 270 or 280 runs, the computer program at least partially to another computer 200 , in particular to a network client and in particular an Internet client transferable and executable there.

Schließlich umfaßt die Erfindung einen Netzwerkclient 200 und insbesondere Internetclient mit einem Speichermedium 230, 240, auf welchem ein Computerprogramm gespeichert ist, welches Softwarecodeabschnitte umfaßt, mit denen Schritte eines vorstehend geschilderten Verfahrens ausgeführt werden, wenn das Programm auf dem Client läuft.Finally, the invention includes a network client 200 and in particular Internet client with a storage medium 230 . 240 on which a computer program is stored, which comprises software code sections with which steps of a method described above are executed when the program is running on the client.

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.The illustrated embodiments serve for explanation the invention. They are not to be understood as limiting the claims. Rather, it includes the invention also all other embodiments which are from the claims.

Allgemeine Vorteile der AusführungsbeispieleGeneral benefits of embodiments

Die geschilderten Ausführungsbeispiele haben in den verschiedenen 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 erforderlich ist. Dabei werden üblicherweise vorhandene Browserroutinen in bisher unbekannter Weise eingesetzt. Entgegen dem bestehenden Vorurteil nach dem Stand der Technik, stellt sich dabei heraus, daß für die Erzeugung einer solchen veränderlichen Darstellung weder eine Virtual Machine noch ein Plug-In erforderlich 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 Voraussetzungen geschaffen, eine verbesserte, da weiter zugängliche, Möglichkeit der Internet-Werbung, sowie eine verbesserte Einrichtung von Schauflächen in Internet-Kaufhäusern zu erhalten. Weitere Einsatzmöglichkeiten sind z.B. elektronische Handbü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 produziert, fortentwickelt ("gepflegt") oder distributiert werden. Stattdessen kann man sich Fortentwicklungen der Browser unmittelbar 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 eines 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 beispielsweise statt 24 Bildern 4 Bildstreifen übertragen werden, können Probleme mit Firewalls vermieden werden, welche mitunter den Abruf vieler Einzeldateien in kurzer Zeit verhindern.The described embodiments have the general advantage in the various variants that a variable representation of an object, in particular in a variable spatial view, can be inserted in a browser page without requiring a virtual machine or a plug-in. Usually existing browser routines are used in previously unknown ways. Contrary to the existing prejudice of the prior art, it turns out that neither a virtual machine nor a plug-in is required for the generation of such a variable representation. As a result, variable representations created according to the described method are accessible to a considerably larger group of browser users than representations according to known methods. Thus, for example, the technical prerequisites are created, an improved, as further accessible, possibility of Internet advertising, as well as improved decorating of showrooms in Internet department stores to get. Other uses include electronic manuals, employee training, interactive navigation elements, etc. There is always the advantage of over the prior art simplified use, since no plug-ins must be loaded and installed. Also, no plug-ins need to be produced, advanced ("maintained") or distributed. Instead, you can take advantage of advances in the browser immediately. Another advantage of a Java Script program compared to plug-ins or applets is the compact program. A Java Script program for implementing a method presented above may be on the order of less than 5 KB. As a result, the program code is loaded very quickly. Finally, a further advantage relates to the described method for data transmission: if, for example, instead of 24 pictures 4 picture strips are transmitted, problems with firewalls can be avoided, which sometimes prevent the retrieval of many individual files in a short time.

Claims (14)

Verfahren zur Übertragung und Bereitstellung von Daten in einem Computersystem (200-280), insbesondere zur Erzeugung einer Darstellung eines Objektes (100-160, 100) in veränderlicher Ansicht und/oder in einem veränderlichen Zustand unter Verwendung eines Browsers (300), bei welchem a) mehrere Datensätze (400, 402, 404) in einem Browserdatenformat zu einem Datenpaket (600-640) zusammengefaßt in einem ersten Datenspeicher (230, 350, 360, 370, 380) zur Übertragung bereitgehalten werden, wobei die Datensätze den Daten einer Mehrzahl von Bildern (400, 402, 404) entsprechen, welche jeweils das Objekt (600-640) in unterschiedlicher Ansicht und/oder in einem unterschiedlichen Zustand darstellen und wobei zur Erzeugung des Datenpakets (600-640) die einzelnen Bilder (400, 402, 404) zu einem Bildstreifen (600-640) und/oder zu einer Bildebene zusammengefügt werden und dieser Bildstreifen (600-640) bzw. diese Bildebene als eine Datei in einem Browserdatenformat abgespeichert wird; b) zusätzlich oder als Teil des Datenpaketes (600-640) Informationen über die Struktur des Datenpaketes (600-640) im Hinblick auf die einzelnen Bilder (400, 402, 404) im ersten Datenspeicher (230, 250, 260, 270, 280) zur Übertragung bereit gehalten werden; c) das Datenpaket (600-640) und die Strukturinformationen in einen zweiten Datenspeicher (240) übertragen werden; und d) aus dem Datenpaket (600-640) durch den Browser (300) einzelne Bilder unter Verwendung einer Clipping- und/oder Verschieberoutine des Browsers (300) und unter Verwendung der Strukturinformationen vor und/oder während der Verwendung der Daten (400, 402, 404) ausgesondert werden.Method for transmitting and providing data in a computer system ( 200 - 280 ), in particular for generating a representation of an object ( 100 - 160 . 100 ) in changeable view and / or in a changeable state using a browser ( 300 ), in which a) several data sets ( 400 . 402 . 404 ) in a browser data format to a data packet ( 600 - 640 ) summarized in a first data memory ( 230 . 350 . 360 . 370 . 380 ) are provided for transmission, the data records being the data of a plurality of images ( 400 . 402 . 404 ), each of which the object ( 600 - 640 ) in different views and / or in a different state and wherein to generate the data packet ( 600 - 640 ) the individual pictures ( 400 . 402 . 404 ) to a picture strip ( 600 - 640 ) and / or to an image plane and this image strip ( 600-640 ) or this image plane is stored as a file in a browser data format; b) additionally or as part of the data packet ( 600 - 640 ) Information about the structure of the data packet ( 600 - 640 ) with regard to the individual images ( 400 . 402 . 404 ) in the first data memory ( 230 . 250 . 260 . 270 . 280 ) are kept ready for transmission; c) the data packet ( 600 - 640 ) and the structural information into a second data memory ( 240 ) be transmitted; and d) from the data packet ( 600 - 640 ) through the browser ( 300 ) individual images using a clipping and / or sliding routine of the browser ( 300 ) and using the structural information before and / or during use of the data ( 400 . 402 . 404 ) are discarded. Verfahren nach Anspruch 1, bei welchem als Browserdatenformat ein vom Browser unterstütztes Bilddatenkomprimierungsformat, insbesondere JPG, GIF und/oder PNG verwendet wird.The method of claim 1, wherein as a browser data format an image data compression format supported by the browser, in particular JPG, GIF and / or PNG is used. Verfahren nach einem der vorstehenden Ansprüche, bei welchem die Strukturinformationen Abstandsangaben und/oder Koordinatenangaben jeweils bezogen auf den Bildstreifen (600-640) und/oder die Bildebene umfassen.Method according to one of the preceding claims, wherein the structure information distance indications and / or coordinate data in each case based on the image strip ( 600 - 640 ) and / or the image plane. Verfahren nach einem der vorstehenden Ansprüche, bei welchem die Strukturinformationen in der Form eines Javascripts, Jscriptes oder VBScriptes verwendet werden.Method according to one of the preceding claims, in which the structural information in the form of a javascript, Jscriptes or VBScriptes are used. Verfahren nach einem der vorstehenden Ansprüche, bei welchem die Bilder (400, 402, 404) von einem ersten Datenspeicher (230, 250, 260, 270, 280) in einem Netzwerkserver, insbesondere einem Internetserver, auf einen zweiten Datenspeicher (240) in einem Netzwerkclient, insbesondere einem Internetclient, übertragen werden.Method according to one of the preceding claims, in which the images ( 400 . 402 . 404 ) from a first data store ( 230 . 250 . 260 . 270 . 280 ) in a network server, in particular an Internet server, to a second data memory ( 240 ) in a network client, in particular an internet client. Verfahren nach einem der vorstehenden Ansprüche, bei welchem der zweite Datenspeicher (240) ein Arbeitsspeicher ist.Method according to one of the preceding claims, in which the second data memory ( 240 ) is a working memory. Verfahren nach einem der vorstehenden Ansprüche, bei welchem jeweils die Daten einzelner Bilder (400, 402, 404) aus dem Datenpaket (600-640) ausgesondert und verwendet werden.Method according to one of the preceding claims, in which in each case the data of individual images ( 400 . 402 . 404 ) from the data packet ( 600 - 640 ) and used. Verfahren nach Anspruch 7, bei welchem a) in einem Browserfenster ein Darstellungsbereich (b1-b4) für ein Bild (400, 402, 404) definiert wird; b) der Bildstreifen (600-640) und/oder die Bildebene in Bezug auf das Browserfenster mittels einer Schieberoutine des Browsers (300) und unter Verwendung der Strukturinformationen so positioniert wird, daß die Position eines darzustellenden Bildes (400, 402, 404) mit der Position des Darstellungsbereichs (b1-b4) übereinstimmt; c) das darzustellende Bild (400, 402, 404) unter Verwendung der Strukturinformationen und der Clippingroutine des Browsers (300) aus dem Datenpaket (600-640) ausgesondert wird; und d) das darzustellende Bild (400, 402, 404) im Darstellungsbereich (b1-b4) unter Verwendung einer Darstellungsroutine des Browsers (300) dargestellt wird.Method according to Claim 7, in which a) in a browser window, a display area (b1-b4) for an image ( 400 . 402 . 404 ) is defined; b) the image strip ( 600 - 640 ) and / or the image plane relative to the browser window by means of a browser browser routine ( 300 ) and using the structure information is positioned so that the position of an image to be displayed ( 400 . 402 . 404 ) matches the position of the display area (b1-b4); c) the image to be displayed ( 400 . 402 . 404 ) using the browser's structure information and clipping routine ( 300 ) from the data packet ( 600 - 640 ) is discarded; and d) the image to be displayed ( 400 . 402 . 404 ) in the display area (b1-b4) using a display routine of the browser ( 300 ) is pictured. Verfahren nach Anspruch 8, bei welchem ein Doppelpuffersystem verwendet wird, so daß der Schiebe- und der Schneidevorgang im Hintergrund durchführbar sind und ein dargestelltes Bild (400, 402, 404) durch ein darzustellendes Bild (400, 402, 404) erst ersetzt wird, wenn der Schiebe- und der Schneidevorgang abgeschlossen sind.Method according to Claim 8, in which a double buffer system is used, so that the sliding and cutting processes can be carried out in the background and an image displayed ( 400 . 402 . 404 ) through an image to be displayed ( 400 . 402 . 404 ) is replaced only when the sliding and the Cutting process are completed. Computersystem (200-280) zur Übertragung und Bereitstellung von Daten, insbesondere zur Erzeugung einer Darstellung eines Objektes (100-160, 100) in veränderlicher Ansicht und/oder in veränderlichem Zustand, unter Verwendung eines Browsers (300), wobei das Computersystem (200-280) einen ersten (230, 250, 260, 270, 280) und einen zweiten Datenspeicher (240) umfaßt, zum Betreiben eines Verfahrens nach einem der vorstehenden Verfahrensansprüche.Computer system ( 200 - 280 ) for transmitting and providing data, in particular for generating a representation of an object ( 100 - 160 . 100 ) in changeable view and / or in a changeable state, using a browser ( 300 ), the computer system ( 200 - 280 ) a first ( 230 . 250 . 260 . 270 . 280 ) and a second data memory ( 240 ) for operating a method according to any one of the preceding method claims. Computerprogramm, welches in einem Speichermedium (230, 240, 250, 260, 270, 280) gespeichert ist und welches Softwarecodeabschnitte umfaßt, mit denen Schritte nach einem der vorstehenden Verfahrensansprüchen ausgeführt werden, wenn das Programm auf einem Computer (200, 250, 260, 270, 280) läuft.Computer program which is stored in a storage medium ( 230 . 240 . 250 . 260 . 270 . 280 ) and which comprises software code sections with which steps according to one of the preceding method claims are executed when the program is stored on a computer ( 200 . 250 . 260 . 270 . 280 ) running. Netzwerkserver (250, 260, 270, 280), insbesondere Internetserver, mit einem Speichermedium, auf welchem ein Computerprogramm gespeichert ist, welches Softwarecodeabschnitte umfaßt, mit denen Schritte nach einem der vorstehenden Verfahrensansprüchen ausgeführt werden, wenn das Programm auf einem Computer (200, 250, 260, 270, 280) läuft.Network server ( 250 . 260 . 270 . 280 ), in particular Internet server, with a storage medium on which a computer program is stored, which comprises software code sections with which steps according to one of the preceding method claims are executed when the program is stored on a computer ( 200 . 250 . 260 . 270 . 280 ) running. Netzwerkserver (250, 260, 270, 280) nach Anspruch 12, wobei das Computerprogramm zumindest teilweise auf einen anderen Computer (200), insbesondere einen Netzwerkclient und insbesondere einen Internetclient übertragbar und dort ausführbar ist.Network server ( 250 . 260 . 270 . 280 ) according to claim 12, wherein the computer program is at least partially transferred to another computer ( 200 ), in particular a network client and in particular an Internet client transferable and executable there. Netzwerkclient (200), insbesondere Internetclient, mit einem Speichermedium (240), auf welchem ein Computerprogramm gespeichert ist, welches Softwarecodeabschnitte umfaßt, mit denen Schritte nach einem der vorstehenden Verfahrensansprüchen ausgeführt werden, wenn das Programm auf dem Client (200) läuft.Network client ( 200 ), in particular Internet client, with a storage medium ( 240 ) on which a computer program is stored, which comprises software code sections, with which steps according to one of the preceding method claims are executed, when the program is executed on the client ( 200 ) running.
DE10030856A 2000-06-23 2000-06-23 A method, computer program, computer system, network server and network client for transmitting and providing data in a computer system Expired - Fee Related DE10030856B4 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE10030856A DE10030856B4 (en) 2000-06-23 2000-06-23 A method, computer program, computer system, network server and network client for transmitting and providing data in a computer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE10030856A DE10030856B4 (en) 2000-06-23 2000-06-23 A method, computer program, computer system, network server and network client for transmitting and providing data in a computer system

Publications (2)

Publication Number Publication Date
DE10030856A1 DE10030856A1 (en) 2002-01-10
DE10030856B4 true DE10030856B4 (en) 2005-09-08

Family

ID=7646689

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10030856A Expired - Fee Related DE10030856B4 (en) 2000-06-23 2000-06-23 A method, computer program, computer system, network server and network client for transmitting and providing data in a computer system

Country Status (1)

Country Link
DE (1) DE10030856B4 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5715823A (en) * 1996-02-27 1998-02-10 Atlantis Diagnostics International, L.L.C. Ultrasonic diagnostic imaging system with universal access to diagnostic information and images
WO1999034332A1 (en) * 1997-12-31 1999-07-08 Apple Computer, Inc. Methods and apparatuses for transmitting data representing multiple views of an object
US6049342A (en) * 1997-10-27 2000-04-11 International Business Machines Corporation System and method for controlling the downloading and display of an animated sequence from a network

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5715823A (en) * 1996-02-27 1998-02-10 Atlantis Diagnostics International, L.L.C. Ultrasonic diagnostic imaging system with universal access to diagnostic information and images
US6049342A (en) * 1997-10-27 2000-04-11 International Business Machines Corporation System and method for controlling the downloading and display of an animated sequence from a network
WO1999034332A1 (en) * 1997-12-31 1999-07-08 Apple Computer, Inc. Methods and apparatuses for transmitting data representing multiple views of an object

Also Published As

Publication number Publication date
DE10030856A1 (en) 2002-01-10

Similar Documents

Publication Publication Date Title
DE69635337T2 (en) ADVANCED AND INTERCHANGEABLE SYSTEM OF NETWORK COMPONENTS
EP2350873B1 (en) Capturing the visual content of browser windows
DE60201692T2 (en) 2D image processing applied to 3D objects
Haajanen et al. Animation of user algorithms on the Web
DE69815695T2 (en) INTERMEDIATE ENTERTAINMENT ENTERTAINMENT TO SUPPLEMENT AUDIO RECORDINGS
DE69432698T2 (en) Method and device for recording annotations on a display screen without overlap
DE69627061T2 (en) OLE for design and modeling
DE69734048T2 (en) Acquisition and operation of remote software through an applet-modified browser
DE69838257T2 (en) METHOD FOR EXPANDING THE HYPERTEXT MARKUP LANGUAGE (HTML) TO SUPPORT ENTREPRENEURSHIP DATA BINDING
DE60122298T2 (en) data entry
DE202011110891U1 (en) Scroll in extensive hosted dataset
EP1369790A2 (en) Method for dynamically generating structured documents
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
DE10309620A1 (en) Dynamic expert interface system and method
EP2171582B1 (en) Remotely controlling a browser program
DE10030856B4 (en) A method, computer program, computer system, network server and network client for transmitting and providing data in a computer system
EP1362283B1 (en) Method and device for displaying an image composed of pixels
DE60213969T2 (en) DEVICE AND METHOD FOR LIGHTWEIGHT SUPPORT IN A SET TOP BOX
EP2642359A1 (en) Device for developing and method for creating a programm for an electronical control unit
EP3528473A1 (en) Method, client computer and computer program for running source code on a client computer
DE10030765A1 (en) Program element binding method in browser page of computer system, involves displaying program element in position indicator in browser window, after locating indicator using identification, in code of web page
DE10030868A1 (en) Method, computer program product, computer system, network server and network client for generating a representation of an object with interactive surfaces in a variable view
WO2017050997A1 (en) Method, computer program and system for transmitting data in order to produce an interactive image
DE10332492B4 (en) Method and arrangement for visual presentation of content on a presentation medium
DE10030764A1 (en) Method, computer program product, computer system, network server and network client for generating a variable representation of an object

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee