[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

DE10138339B4 - A method and system for associating graphical markers with three-dimensional CAD model camera positions in a collaborative graphics viewing system - Google Patents

A method and system for associating graphical markers with three-dimensional CAD model camera positions in a collaborative graphics viewing system Download PDF

Info

Publication number
DE10138339B4
DE10138339B4 DE10138339A DE10138339A DE10138339B4 DE 10138339 B4 DE10138339 B4 DE 10138339B4 DE 10138339 A DE10138339 A DE 10138339A DE 10138339 A DE10138339 A DE 10138339A DE 10138339 B4 DE10138339 B4 DE 10138339B4
Authority
DE
Germany
Prior art keywords
markup
camera position
graphical
camera
viewing system
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
DE10138339A
Other languages
German (de)
Other versions
DE10138339B8 (en
DE10138339A1 (en
Inventor
Swamy Fort Collins Mandavilli
Philip A. Fort Collins Flocken
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.)
HP Inc
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of DE10138339A1 publication Critical patent/DE10138339A1/en
Application granted granted Critical
Publication of DE10138339B4 publication Critical patent/DE10138339B4/en
Publication of DE10138339B8 publication Critical patent/DE10138339B8/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/004Annotating, labelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/024Multi-user, collaborative environment

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Geometry (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

Graphikbetrachtungssystem, mit
einem Darstellungsbereich (150), der ein dreidimensionales Objekt (160) anzeigt,
einem Kamerapositionsmodul (204), das es einem Benutzer ermöglicht, eine Kamerapositionsdarstellung des dreidimensionalen Objekts (160) zu ändern, um eine gewünschte Darstellung anzuzeigen, die einer Kameraposition zugeordnet ist, und
einem Markup-Modul (206), das das Erzeugen graphischer Markup-Elemente (130, 132) statisch auf einer zum Darstellungsbereich (150) parallelen zwei-dimensionalen Markup-Ebene bewirkt, wobei zumindest ein graphisches Markup-Element (130) einer ersten Kameraposition zugeordnet ist,
wobei das Markup-Modul (206) wirksam ist, um das der ersten Kameraposition zugeordnete graphische Markup-Element (130) aus dem Darstellungsbereich (150) zu entfernen, und um zumindest ein einer zweiten Kameraposition zugeordnetes graphisches Markup-Element (132) anzuzeigen, wenn die Darstellung des Objekts (160) zu der zweiten Kameraposition geändert wird.
Graphic viewing system, with
a presentation area (150) indicating a three-dimensional object (160),
a camera position module (204) that allows a user to change a camera positional representation of the three-dimensional object (160) to display a desired representation associated with a camera position, and
a markup module (206) that statically effects the generation of graphical markup elements (130, 132) on a two-dimensional markup plane parallel to the presentation area (150), wherein at least one graphical markup element (130) of a first camera position assigned,
wherein the markup module (206) is operable to remove the graphical markup element (130) associated with the first camera position from the presentation area (150) and to display at least one graphical markup element (132) associated with a second camera position, when the representation of the object (160) is changed to the second camera position.

Figure 00000001
Figure 00000001

Description

Gebiet der ErfindungField of the invention

Die vorliegende Erfindung betrifft allgemein kollaborative computergestützte Entwurfssysteme (kollaborative CAD-Systeme) und insbesondere ein Verfahren und ein System zum Zuordnen graphischer Markierungen (Markups) zu dreidimensionalen CAD-Modell-Kamerapositionen in einem kollaborativen Graphikbetrachtungssystem.The The present invention relates generally to collaborative computer-aided design systems (collaborative CAD systems) and In particular, a method and system for associating graphical Markups to three-dimensional CAD model camera positions in a collaborative graphics viewing system.

Hintergrund der ErfindungBackground of the invention

Systeme zum computergestützten Entwurf (CAD-Systeme) ermöglichen das Erzeugen dreidimensionaler Modelle von Teilen und Baugruppen. Gleichzeitig ermöglichen nun synchrone Zusammenarbeits- bzw. Kollaborationssysteme, wie OneSpace von CoCreate, Inc., sich entfernt voneinander befindenden Benutzern, über eine synchron gekoppelte Darstellung von einem oder mehreren 3D-Objekten zu kommunizieren. Kollaborationsumgebungen sind sehr nützlich beim Unterstützen der Kommunikation zwischen sich entfernt voneinander befindenden Produktentwicklern und zwischen Lieferanten und Herstellern.systems to the computer-aided Design (CAD systems) the creation of three-dimensional models of parts and assemblies. simultaneously enable now synchronous collaboration or collaboration systems, such as OneSpace by CoCreate, Inc., remotely located users, via one Synchronously coupled representation of one or more 3D objects communicate. Collaboration environments are very useful when Support of communication between themselves Product developers and between suppliers and manufacturers.

Die Verwendung graphischer Markup-Werkzeuge, die Funktionen zum Zeichnen von Formen und zum Hinzufügen von Text auf dem Bildschirm ohne Modifizieren des 3D-Modells bereitstellen, verbessern die Kommunikationsfähigkeit von Kollaborationssitzungsteilnehmern. Es sei beispielsweise angenommen, daß eine erste Firma Autos herstellt, die eine bestimmte Schraubenbaugruppe benötigen, die von einer zweiten Firma geliefert wird, die auf die Herstellung der Schraubenbaugruppen spezialisiert ist. Ingenieure von der ersten und der zweiten Firma können in eine Kollaborations-Graphikdarstellungsumgebung bzw. -betrachtungsumgebung eintreten, die es ihnen ermöglicht, gleichzeitig 3D-Modelle der Schraubenbaugruppe zu betrachten. Weil die Darstellungen aller Sitzungsteilnehmer in der Kollaborationsumgebung gekoppelt sind, kann ein Ingenieur einen Cursor auf einen Punkt auf dem auf dem Bildschirm dargestellten 3D-Schraubenbaugruppenobjekt richten, wobei die anderen Ingenieure sehen, worauf dieser Cursor gerichtet ist. Zusammenarbeits-Markup-Werkzeuge ermöglichen durch eine Vielzahl von Formen, wie Kreisen, Pfeilen und Text-Markups, eine bessere Kommunikation. Falls es beispielsweise erwünscht ist, mit dem Hersteller der Schraubenbaugruppe zu kommunizieren, um die Längenabmessung eines auf dem Bildschirm dargestellten Stifts in der Schraubenbaugruppe zu überprüfen, kann eine Rechteckform um den Stift auf dem Bildschirm gezeichnet und eine Textnotiz, die "Prüfe Stiftlänge" anfordert, angehängt werden.The Using graphical markup tools that have drawing capabilities of shapes and to add provide text on screen without modifying the 3D model, improve the communication skills of collaboration session participants. For example, suppose that one First company manufactures cars that have a specific bolt assembly need, which is supplied by a second company, which is based on manufacturing which specializes in screw assemblies. Engineers from the first and the second company into a collaboration graphics rendering environment or viewing environment that enables them to to simultaneously view 3D models of the screw assembly. Because the representations of all session participants in the collaboration environment coupled, an engineer can place a cursor on a point on the 3D screw assembly object displayed on the screen judge, with the other engineers seeing what this cursor is pointing at is directed. Enable collaboration markup tools through a variety of shapes, such as circles, arrows, and text markups, a better communication. For example, if it is desired to communicate with the manufacturer of the screw assembly to the length dimension a pin on the screen in the screw assembly can check a rectangle shape drawn around the pen on the screen and appended a text note requesting "check pen length".

Im allgemeinen existieren zwei Objektdrehungsperspektiven. Wenn bei der ersten Perspektive eine Darstellung bzw. Ansicht eines auf dem Bildschirm angezeigten 3D-Objekts gedreht wird, scheint es so, als ob die das Objekt betrachtende Kamera ortsfest bleibt und das Objekt selbst gedreht wird. Wenn diese Methode verwendet wird, werden die graphischen Markups typischerweise den Teilen des 3D-Objekts selbst zugeordnet. Falls das Objekt gedreht wird, drehen sich dementsprechend die Markups zusammen mit dem Teil.in the In general, there are two object rotation perspectives. If at the first perspective a representation or view of one on the When the displayed 3D object is rotated, it seems as if whether the camera viewing the object remains stationary and the object itself is turned. If this method is used, the graphic will be Markups are typically assigned to the parts of the 3D object itself. If that Object is rotated, accordingly, the markups rotate together with the part.

Wenn der Benutzer bei der zweiten Perspektive die Darstellung des auf dem Bildschirm angezeigten 3D-Objekts dreht, scheint es so, als ob das 3D-Objekt ortsfest bleibt und die das Objekt betrachtende Kamera um das Modell bewegt wird. Demgemäß ist jede mögliche Darstellung/Ansicht des 3D-Objekts einer anderen Kameraposition zugeordnet. Wenn diese Methode verwendet wird, werden die graphischen Markups typischerweise überhaupt nicht dem 3D-Objekt selbst zugeordnet, sondern die Markups sind statt dessen statisch auf einer zum Bildschirm des Benutzers parallelen zweidimensionalen Markup-Ebene vorhanden. Bei dieser Methode führt das Ändern der Kameraposition typischerweise zu einem Markup-Element, das nicht mehr sinnvoll ist, weil das Merkmal, dem das Markup-Element ursprünglich zugeordnet war, nicht mehr mit dem Markup-Element ausgerichtet ist, oder weil das Merkmal vollständig außerhalb der Darstellung liegt.If the user in the second perspective, the representation of the 3D object displayed on the screen turns, it seems like whether the 3D object remains stationary and the object viewing Camera is moved around the model. Accordingly, every possible presentation / view of the 3D object assigned to a different camera position. If those Typically, the graphical markups typically will not work at all assigned to the 3D object itself, but the markups are taking place its static on a parallel to the user's screen two-dimensional markup layer available. In this method, changing the Camera position typically becomes a markup element that is not makes more sense because the feature to which the markup element originally assigned was no longer aligned with the markup element, or because the feature completely outside the representation lies.

Dementsprechend ist eine intelligente Technik zum Zuordnen graphischer Markups erforderlich, die es ermöglicht, daß graphische Markups direkt der Darstellung/Ansicht des auf dem Bildschirm angezeigten 3D-Modells zugeordnet werden, während die graphischen Markups erzeugt werden. Bei dieser Technik würden einer gegebenen Ansicht zugeordnete Markups intelligent angezeigt werden und genau diese Markups von dem Bildschirm entfernt werden, wenn die Darstellung des 3D-Modells geändert wird, um eine andere Ansicht anzuzeigen.Accordingly is an intelligent technique for mapping graphic markup required allows, that graphic Markups directly to the appearance / view of the displayed on the screen 3D model to be assigned while the graphical markups are generated. In this technique, one would given markups are intelligently displayed and exactly those markups are removed from the screen, though the appearance of the 3D model is changed to another View view.

Kollaborative CAD-Systeme der eingangs beschriebenen Art sind z.B. in der US-A-5,821,925 und in der DE 35 87 638 T2 beschrieben.Collaborative CAD systems of the type described above are eg in the US-A-5,821,925 and in the DE 35 87 638 T2 described.

Es ist die Aufgabe der vorliegenden Erfindung, einen verbesserten Ansatz zu schaffen, der bei einem Wechsel einer Kameraposition bei der Betrachtung eines Objekts in einem CAD-System eine korrekte Wiedergabe von Markup-Elementen sicherstellt.It The object of the present invention is an improved approach to create when changing a camera position at the Viewing an object in a CAD system is a correct rendering of markup elements.

Diese Aufgabe wird durch ein System nach Anspruch 1, ein Verfahren nach Anspruch 5, ein computerlesbares Speichermedium nach Anspruch 8 und ein Computerprogramm nach Anspruch 9 gelöst.These The object is achieved by a system according to claim 1, a method according to Claim 5, a computer-readable storage medium according to claim 8 and a computer program according to claim 9.

Zusammenfassung der ErfindungSummary of the invention

Die vorliegende Erfindung ist ein Verfahren und ein System, wodurch graphische Markups einer benannten Kameraposition zugeordnet werden, die einer gegebenen Darstellung/Ansicht des 3D-Modells zugeordnet ist. Bei dem erfindungsgemäßen graphischen Darstellungssystem ist die auf dem Bildschirm sichtbare Ansicht diejenige, die von der Kamera gesehen wird, weshalb die Drehung mit anderen Worten so angesehen werden kann, als ob sich die Kamera anstelle des von der Kamera betrachteten Objekts bewegt. Einer gegebenen Kameraposition zugeordnete Markups treten nur dann auf, wenn die Darstellung zu der Ansicht geändert wird, die dieser Kameraposition entspricht, und sie verschwinden, wenn die Darstellung zu einer anderen Kameraposition gedreht wird.The The present invention is a method and a system whereby graphic markups are assigned to a named camera position, associated with a given representation / view of the 3D model is. In the graphic according to the invention Display system is the view visible on the screen the one that is seen by the camera, which is why the rotation in other words can be considered as if the camera moves in place of the object being viewed by the camera. A given one Markup associated with markup will only occur if the Changed representation to the view which corresponds to this camera position, and they disappear, when the display is rotated to a different camera position.

Gemäß dem Verfahren der Erfindung ist jede Darstellung/Ansicht des 3D-Objekts einer Kameraposition zugeordnet. Wenn ein Benutzer eines Graphikdarstellungssystems auf dem Anzeigebildschirm Markups erzeugt, werden die Markups auf einer 2D-"Markup-Ebene" erzeugt, die zur Ebene des Bildschirms des Benutzers parallel verläuft. Diese Markup-Ebene ist stets der aktuellen benannten Kameraposition zugeordnet. Bei der bevorzugten Ausführungsform erscheint die aktuelle benannte Kameraposition in einem Fenster für eine Liste benannter Kamerapositionen auf der graphischen Benutzerschnittstelle. Jedesmal dann, wenn der Benutzer die Darstellung des 3D-Modells ändert, verschwinden alle existierenden Markups, die der aktuellen Kameraposition zugeordnet sind, und es erscheint ein anderer Satz von Markups, die der neuen Kameraposition (welche der neuen Darstellung/Ansicht entspricht) zugeordnet sind. Der Benutzer kann dann weiter der neuen Kameraposition zugeordnete zusätzliche Markup-Elemente erzeugen.According to the procedure In the invention, each representation / view of the 3D object is one Assigned camera position. If a user of a graphics rendering system Markups are generated on the display screen, the markups appear a 2D "markup layer" created for Level of the screen of the user runs parallel. These Markup level is always assigned to the current named camera position. In the preferred embodiment The current named camera position appears in a window for one List of named camera positions on the graphical user interface. Each time the user changes the appearance of the 3D model, it disappears all existing markups associated with the current camera position are, and it appears another set of markups, that of the new Camera position (which corresponds to the new display / view) assigned are. The user can then continue to be assigned to the new camera position additional Create markup elements.

Kurzbeschreibung der ZeichnungBrief description of the drawing

Die Erfindung wird beim Lesen der folgenden detaillierten Beschreibung in Zusammenhang mit der Zeichnung, worin die gleichen Bezugszeichen zum Bezeichnen der gleichen Elemente verwendet werden, besser verständlich, wobei:The The invention will become apparent upon reading the following detailed description in conjunction with the drawing, wherein the same reference numerals used to denote the same elements, better understood, in which:

1 eine veranschaulichende Ausführungsform einer erfindungsgemäßen graphischen Benutzerschnittstelle ist, worin eine 3D-Modelldarstellung angezeigt ist, die einer benannten Kameraposition zugeordnet ist, 1 FIG. 3 is an illustrative embodiment of a graphical user interface according to the present invention, showing a 3D model representation associated with a named camera position; FIG.

2 die erfindungsgemäße graphische Benutzerschnittstelle der 1 ist, worin eine zweite Darstellung angezeigt ist, die einer zweiten benannten Kameraposition zugeordnet ist, 2 the graphical user interface of the invention 1 in which a second representation associated with a second named camera position is displayed,

3 ein Netzwerkdiagramm einer bevorzugten Ausführungsform eines erfindungsgemäßen Kollaborations-Graphikbetrachtungssystems ist, 3 FIG. 3 is a network diagram of a preferred embodiment of a collaboration graphics viewing system according to the invention; FIG.

4 ein Netzwerkdiagramm ist, das die Kopplung der graphischen Markups zwischen den Anzeigen der Teilnehmer der Kollaborationssitzung veranschaulicht, 4 is a network diagram illustrating the coupling of the graphical markup between the participants of the collaboration session,

5 ein Blockdiagramm einer hohen Ebene einer bevorzugten Ausführungsform einer Graphikbetrachtungsanwendung ist, 5 is a high level block diagram of a preferred embodiment of a graphics viewing application,

6 ein Zuordnungsdiagramm ist, in dem die Zuordnung von Kamerapositionen, Markup-Ebenen und Markup-Elementen gemäß der Erfindung veranschaulicht ist, und 6 Fig. 10 is an association diagram illustrating the assignment of camera positions, markup planes and markup elements according to the invention, and Figs

7 ein Klassendiagramm eines Satzes von bei einer Implementierung eines Markup-Moduls verwendeten Klassen ist. 7 is a class diagram of a set of classes used in an implementation of a markup module.

Detaillierte BeschreibungDetailed description

Gemäß der vorliegenden Erfindung werden graphische 3D-Markups Kamerapositionen zugeordnet, um eine Synchronkommunikationsfähigkeit für das Zeigen auf 3D-Merkmale innerhalb einer Kollaborations-Graphikumgebung zu ermöglichen.According to the present Invention become graphic 3D markups Camera positions assigned to a synchronous communication capability for the Point to 3D features within a collaboration graphing environment to enable.

1 ist ein Beispiel einer erfindungsgemäß implementierten graphischen Benutzerschnittstelle 100. Die graphische Benutzerschnittstelle 100 weist einen Darstellungs- bzw. Betrachtungsbereich 150, einen Markup-Werkzeugkasten 110 und ein Fenster 140 für eine Liste benannter Kamerapositionen auf. 1 is an example of a graphical user interface implemented according to the invention 100 , The graphical user interface 100 has a presentation or viewing area 150 , a markup toolbox 110 and a window 140 for a list of named camera positions.

Der Darstellungsbereich 150 ist der Anzeigebereich zum Anzeigen eines 3D-Objekts 160. Bei dem Anschauungsbeispiel ist das 3D-Objekt 160 eine Schraubenbaugruppe mit einer Mutter 161 und einem Stift 162, die bei diesem Beispiel von besonderem Interesse sind. Bei dem erfindungsgemäßen graphischen Darstellungssystem ist die auf dem Bildschirm erscheinende Darstellung die Ansicht, die von der Kamera gesehen wird, und die Drehung kann mit anderen Worten so angesehen werden, als ob sich die Kamera und nicht das Objekt, das von der Kamera betrachtet wird, bewegt. Jede Ansicht des 3D-Modells ist einer anderen Kameraposition zugeordnet. Demgemäß kann jede benannte Kameraposition zugeordnete Markup-Elemente aufweisen, die auftreten, wenn die Darstellung zu der dem Markup zugeordneten Kameraposition gedreht wird.The presentation area 150 is the display area for displaying a 3D object 160 , In the illustrative example, the 3D object is 160 a screw assembly with a nut 161 and a pen 162 which are of particular interest in this example. In the graphic display system according to the present invention, the image appearing on the screen is the view seen by the camera, and in other words, the rotation can be regarded as if the camera and not the object being viewed by the camera emotional. Each view of the 3D model is associated with a different camera position. Accordingly, each named camera position may have associated markup elements that occur when the representation is rotated to the camera position associated with the markup.

In 1 ist die Darstellung der vom Benutzer im Darstellungsbereich 150 gesehenen Schraubenbaugruppe 160 die vordere Endfläche der Schraube. Wenn die Kameraposition so angeordnet ist, kann der Durchmesser der Mutter 161 leicht gemessen werden.In 1 is the representation of the user in the viewport 150 seen screw assembly 160 the front end surface of the screw. When the camera position is so arranged, the diameter of the nut can be 161 easily measured become.

Die graphische Benutzerschnittstelle 100 weist ein Fenster 140 für eine Liste benannter Kamerapositionen auf. Das Fenster 140 für eine Liste benannter Kamerapositionen kann permanent in der graphischen Benutzerschnittstelle 100 angezeigt werden, oder es kann als ein sogenanntes Pop-Up-Fenster, ein sogenanntes Drop-Down-Menü, eine Tabulatorfläche oder eine andere wohlbekannte Implementierung zum Anzeigen einer Liste auf einem Bildschirm implementiert sein. Das Fenster 140 für eine Liste benannter Kamerapositionen zeigt eine Liste 142 benannter Kamerapositionen 142a, 142b an. Wie dargestellt wurde die Kameraposition, die der im Darstellungsbereich 150 der 1 angezeigten vorderen Endfläche zugeordnet ist, zuvor mit "Vordere Endfläche" 142a benannt. Weil die Darstellung bzw. Ansicht der vorderen Endfläche, die der mit "Vordere Endfläche" 142a benannten Kameraposition zugeordnet ist, gegenwärtig in dem Darstellungsbereich 150 angezeigt wird, wird der Name "Vordere Endfläche" 142a in dem Fenster 140 für eine Liste benannter Kamerapositionen hervorgehoben, um anzugeben, daß dies die gewählte Darstellung/Ansicht ist. Andere benannte Kamerapositionen, beispielsweise "Seitenansicht" 142b, sind auch in dem Fenster 140 für eine Liste benannter Kamerapositionen aufgelistet.The graphical user interface 100 has a window 140 for a list of named camera positions. The window 140 for a list of named camera positions can be permanent in the graphical user interface 100 or it may be implemented as a so-called pop-up window, a so-called drop-down menu, a tab area, or other well-known implementation for displaying a list on a screen. The window 140 for a list of named camera positions shows a list 142 named camera positions 142a . 142b at. As shown, the camera position was the one in the viewport 150 of the 1 associated with the front end surface indicated previously with "front end surface" 142a named. Because the representation or view of the front end surface, that of the "front end surface" 142a named camera position is currently in the viewport 150 is displayed, the name "Front end face" 142a in the window 140 for a list of named camera positions highlighted to indicate that this is the selected display / view. Other named camera positions, such as "Page view" 142b , are also in the window 140 listed for a list of named camera positions.

Bei der veranschaulichenden Ausführungsform weist das Fenster 140 für eine Liste benannter Kamerapositionen eine "GoTo"-Taste 144 auf, die es dem Benutzer ermöglicht, aus der Liste 142 eine benannte Kameraposition 142a oder 142b auszuwählen und die GoTo-Taste 144 anzuklicken, um die Ansicht herbeizuführen, die von der benannten Kameraposition in dem Darstellungsbereich 150 gesehen wird.In the illustrative embodiment, the window has 140 for a list of named camera positions, a "GoTo" button 144 on, which allows the user from the list 142 a named camera position 142a or 142b select and the GoTo button 144 Click to bring up the view from the named camera position in the viewport 150 is seen.

Die graphische Benutzerschnittstelle für Darstellungsanwendungen gemäß der bevorzugten Ausführungsform sieht zwei Verfahren zum Zuordnen von Markup-Elementen zu Kamerapositionen vor. Ein Verfahren besteht darin, explizit eine benannte Kameraposition unter Verwendung der Kamera-Benutzerschnittstelle in dem Fenster 140 für eine Liste benannter Kamerapositionen zu erzeugen und dann Markup-Elemente zu erzeugen, während diese Kameraposition ausgewählt und in dem Darstellungsbereich, 150 angezeigt wird. Dies wird bei der veranschaulichenden Ausführungsform durch Ändern der Darstellung zu einer gewünschten Ansicht, Anklicken der Speichertaste 145 in der Kamera-Benutzerschnittstelle des Fensters 140 für eine Liste benannter Kamerapositionen und dann Editieren des Namens in der Speicher-Benutzerschnittstelle, um ihr einen gewünschten Namen zu geben, erreicht.The graphical user interface for presentation applications according to the preferred embodiment provides two methods of associating markup elements with camera positions. One method is to explicitly designate a named camera position using the camera user interface in the window 140 create a list of named camera positions and then create markup elements while this camera position is selected and displayed in the viewport, 150 is shown. This becomes a desired view in the illustrative embodiment by changing the appearance, clicking the memory key 145 in the camera user interface of the window 140 for a list of named camera positions and then editing the name in the memory user interface to give it a desired name.

Das zweite Verfahren besteht einfach darin, es dem System zu ermöglichen, automatisch eine benannte Kameraposition zu erzeugen, indem die Kameradarstellung einfach zu einer Position gedreht wird, bei der die gewünschte Darstellung/Ansicht angezeigt wird, und dann mit dem Erzeugen der Markup-Elemente zu beginnen. Bei der bevorzugten Ausführungsform taucht in dem Fenster 140 für eine Liste benannter Kamerapositionen automatisch eine neue benannte Kameraposition auf. Der automatisch erzeugte Name kann später modifiziert werden.The second method is simply to allow the system to automatically generate a named camera position by simply rotating the camera representation to a position where the desired display / view is displayed and then generating the markup elements kick off. In the preferred embodiment, the window appears in the window 140 Automatically add a new named camera position to a list of named camera positions. The automatically generated name can be modified later.

Der Markup-Dialog 110 ist ein Fenster, das mehrere Markup-Werkzeuge aufweist, die für den Benutzer verfügbar sind, um Markups über die 3D-Darstellung des Objekts zu erzeugen, die einer Kameraposition zugeordnet sind. Bei der veranschaulichenden Ausführungsform ist der Markup-Dialog 110 als ein Pop-Up-Fenster verwirklicht, Fachleute werden jedoch verstehen, daß der Markup-Dialog 110 alternativ permanent in der graphischen Benutzerschnittstelle 100 angezeigt werden kann oder als ein Drop-Down-Menü, eine Tabulatorfläche oder eine andere wohlbekannte Implementierung zum Anzeigen eines Satzes verfügbarer Funktionen auf einem Bildschirm implementiert sein kann. Bei der veranschaulichenden Ausführungsform sind die verfügbaren Funktionen als Tasten und Drop-Down-Menüs implementiert, wie hier beschrieben wird.The markup dialog 110 is a window that has multiple markup tools available to the user to create markups over the 3D representation of the object associated with a camera position. In the illustrative embodiment, the markup dialog is 110 However, as a pop-up window realized, those skilled in the art will understand that the markup dialogue 110 alternatively permanently in the graphical user interface 100 can be displayed or implemented as a drop-down menu, a tab area, or other well-known implementation for displaying a set of available functions on a screen. In the illustrative embodiment, the available functions are implemented as buttons and drop-down menus, as described herein.

Wie dargestellt umfaßt der Markup-Dialog 110 Funktionen für Text-Markups, 2D-Formen-Markups, wie Kreise 114, Rechtecke 113, Polygone 118, Linien 116 und Pfeile 115, ein Freihandstift-Werkzeug 112 zum Zeichnen beliebiger Formen, ein Leittextwerkzeug 117, das es einem Benutzer ermöglicht, einen Bereich hervorzuheben und einen Textkommentar mit einem Zeiger anzuhängen. Vorzugsweise umfaßt der Markup-Dialog 110 auch Formbevorzugungsoptionen 119, wie Linienfarbe, Linienart und Linienbreite, und Füllspezifikationen für Markup-Objekte. Der Markup-Dialog 110 umfaßt vorzugsweise auch Textbevorzugungsoptionen 120, wie Font, Fontgröße und Textfarbe.As shown, the markup dialog includes 110 Functions for text markups, 2D shape markups, such as circles 114 , Rectangles 113 , Polygons 118 , Lines 116 and arrows 115 , a free-hand pen tool 112 for drawing arbitrary shapes, a tool text tool 117 that allows a user to highlight an area and append a text comment with a pointer. Preferably, the markup dialog includes 110 also form favor options 119 , such as line color, line style and line width, and fill specifications for markup objects. The markup dialog 110 preferably also includes text preference options 120 , like font, font size and text color.

Bei der veranschaulichenden Ausführungsform der 1 wurde ein Text-Leit-Markup-Element 130/131 gezogen und ausgelöst (drag and drop), und dann um eine Mutter 161 herum in der Größe eingerichtet und mit einem Kommentar "Prüfe Mutterndurchmesser" versehen. Das Markup-Element 130/131 ist nur dieser Kameraposition (also der benannten Kameraposition "Vordere Endfläche" 142a) zugeordnet. In der Kollaborationsumgebung sehen alle Kollaborationsteilnehmer das Markup-Element 130/131 immer dann, wenn ihr Dartellungsbereich die Kameraposition "Vordere Endfläche" 142a zeigt.In the illustrative embodiment of the 1 became a text-guiding markup element 130 / 131 pulled and thrown (drag and drop), and then to a mother 161 set up in size around and provided with a comment "Check Nuts Diameter". The markup element 130 / 131 is only this camera position (ie the named camera position "front end surface" 142a ). In the collaboration environment, all collaboration participants see the markup element 130 / 131 whenever your darting area has the camera position "front end face" 142a shows.

2 ist eine Darstellung der als Beispiel dienenden graphischen Benutzerschnittstelle 100, wobei die Kameraposition geändert wurde, um die Seitenansicht der Schraubenbaugruppe 160 zu zeigen. Die Kameraposition kann in einer von zwei Arten geändert werden. Das erste Verfahren zum Ändern der Kameraposition besteht in einer dynamischen Drehung der Darstellung. Bei der veranschaulichenden Ausführungsform wird eine dynamische Kamerapositionsänderung durch Anklicken der mittleren Maustaste erreicht, wodurch die Funktion des dynamischen Drehens ausgelöst wird, und die Maus wird dann gezogen, bis die gewünschte Ansicht des Modells in dem Darstellungsbereich 150 auftritt. Sobald sich die aktuelle Kameraposition zu ändern beginnt, verschwinden jegliche der aktuellen Kamera position zugeordnete Markups aus dem Darstellungsbereich 150. Das zweite Verfahren zum Ändern der Kameraposition besteht darin, eine benannte Kameraposition 142a, 142b aus der Kamerapositionsliste 142 auszuwählen und dann die GoTo-Taste 144 anzuklicken. In diesem Fall erscheint die Ansicht des Objektmodells (der Objektmodelle) und der dieser benannten Kameraposition zugeordneten Markups im Darstellungsbereich 150, und jegliche Markups, die dieser Ansicht nicht zugeordnet sind, verschwinden aus dem Darstellungsbereich 150. Wenn beim Beispiel der 2 die Kameraposition "Seitenansicht" 142b ausgewählt und geladen wird, verschwinden die der Kameraposition "Vordere Endfläche" 142a zugeordneten Markups, und es werden alle Markups angezeigt, die der Kameraposition "Seitenansicht" 142b bereits zugeordnet sind. Bei diesem Beispiel erscheint ein Markup-Element 132 um den Stift 162 herum mit der Bemerkung 133 "Prüfe Stiftlänge". 2 FIG. 13 is an illustration of the exemplary graphical user interface. FIG 100 , where the camera position has been changed to the Side view of the screw assembly 160 to show. The camera position can be changed in one of two ways. The first method of changing the camera position is to dynamically rotate the display. In the illustrative embodiment, a dynamic camera position change is achieved by clicking on the middle mouse button, thereby triggering the dynamic rotate function, and then dragging the mouse until the desired view of the model in the viewport 150 occurs. As soon as the current camera position begins to change, any markups associated with the current camera position will disappear from the viewport 150 , The second method of changing the camera position is a named camera position 142a . 142b from the camera position list 142 and then the GoTo button 144 to click. In this case, the view of the object model (the object models) and the markups associated with that named camera position appears in the viewport 150 , and any markup not associated with this view will disappear from the viewport 150 , If the example of the 2 the camera position "side view" 142b is selected and loaded, the camera position "front end surface" disappears. 142a assigned markups, and all markups displayed by the camera's "Page view" 142b already assigned. In this example, a markup element appears 132 around the pen 162 around with the remark 133 "Check pin length".

3 ist ein Netzwerkdiagramm einer bevorzugten Ausführungsform eines erfindungsgemäßen graphischen Kollaborations-Darstellungssystems 10. Wie dargestellt weist das System 10 einen Server 20 auf, der eine Kollaborationsfunktion 28 ausführt, um zu ermöglichen, daß zwei oder mehr Benutzer synchron ein 3D-Objekt betrachten und einer oder mehreren Kamerapositionsdarstellungen des 3D-Objekts Markups zuordnen. Die Kollaborationsfunktion 28 synchronisiert mehrere Graphikbetrachtungsanwendungen 55, die auf jeweiligen Clients (Arbeitsstationen) 40, 50 und 60 ausgeführt werden. Die Kollaborationsfunktion 28 kann auf einer Initiator-Betrachtungsmaschine ausgeführt werden, oder sie können auf einem fernen Zentralrechner 20 vorhanden sein und getrennt von den Betrachtungsanwendungen ausgeführt werden. Die Kollaborationsfunktion 28 gestattet es Clients 40, 50, 60, die Graphikbetrachtungsanwendungen 55 ausführen, sich unter Verwendung bekannter Kollaborations-Verbindungstechniken, beispielsweise derjenigen, die bei OneSpace verwendet werden, das von CoCreate, Inc. hergestellt wird, mit der Kollaborations-Graphikbetrachtungssitzung zu verbinden. Während die Kollaborations-Graphikbetrachtungssitzung offen ist, betrachten Teilnehmer der Sitzung gleichzeitig 3D-Objekte und können Markup-Elemente erzeugen, die Kamerapositionsdarstellungen zugeordnet sind, die gleichzeitig von allen Sitzungsteilnehmern betrachtet werden. 3 Figure 10 is a network diagram of a preferred embodiment of a graphical collaboration presentation system according to the present invention 10 , As shown, the system 10 a server 20 on, which is a collaboration feature 28 to allow two or more users to synchronously view a 3D object and assign markups to one or more camera position representations of the 3D object. The collaboration function 28 synchronizes multiple graphics viewing applications 55 on each client (workstation) 40 . 50 and 60 be executed. The collaboration function 28 can be run on an initiator viewer, or on a remote host 20 be present and run separately from the viewing applications. The collaboration function 28 allows clients 40 . 50 . 60 , the graphics viewing applications 55 to connect to the collaborative graphics viewing session using known collaboration linking techniques, such as those used by OneSpace, manufactured by CoCreate, Inc. While the collaboration graphics viewing session is open, attendees of the session simultaneously view 3D objects and can create markup elements associated with camera position representations viewed simultaneously by all session participants.

4 ist ein Netzwerkdiagramm, in dem die Kopplung der Graphikbetrachtungseinrichtungen zwischen Kollaborationssitzungsteilnehmern veranschaulicht ist. Wie dargestellt sind die Darstellungsbereiche 150 aller Sitzungsteilnehmer gekoppelt, um identische Kamerapositionsdarstellungen und identische Markup-Elemente anzuzeigen. Jeder Sitzungsteilnehmer sieht die gleiche Darstellung/Ansicht der 3D-Objekte bei der gleichen Kameraposition zusammen mit den gleichen der aktuellen Kameraposition zugeordneten Markup-Elementen. Mit anderen Worten ist die in dem Darstellungsbereich 150 eines Sitzungsteilnehmers angezeigte Darstellung mit dem Darstellungsbereich 150 aller anderen Sitzungsteilnehmer gekoppelt. Die Darstellungs- und Markup-Änderungen folgen jeder Darstellungs- und/oder Markup-Änderung, die von einem der anderen Sitzungsteilnehmer ausgelöst wird. Das gleiche gilt umgekehrt. Darstellungsänderungen, beispielsweise ein Zoomen, ein Verschieben der Position oder Drehen eines Produktobjekts, zeigen auf den Bildschirmen aller anderen Sitzungsteilnehmer die gleiche Wirkung. Weiterhin löst ein von einem Sitzungsteilnehmer erzeugtes Markup auf den Anzeigen aller Sitzungsteilnehmer die Anzeige des gleichen Markup-Elements mit den gleichen Eigenschaften an der gleichen Position aus. 4 Figure 11 is a network diagram illustrating the coupling of the graphics viewers between collaboration session participants. As shown, the presentation areas 150 all session participants coupled to display identical camera positional representations and identical markup elements. Each session participant sees the same appearance / view of the 3D objects at the same camera position along with the same markup elements associated with the current camera position. In other words, that's in the viewport 150 a display participant displayed representation with the display area 150 all other session participants coupled. The presentation and markup changes follow each presentation and / or markup change that is triggered by one of the other session participants. The same applies vice versa. Display changes, such as zooming, moving positions, or rotating a product object, have the same effect on the screens of all other session participants. Furthermore, a markup generated by a session participant on the displays of all session participants triggers the display of the same markup element with the same properties in the same position.

5 ist ein Blockdiagramm einer hohen Ebene einer bevorzugten Ausführungsform einer Graphikbetrachtungsanwendung 55. Wie dargestellt weist die Graphikbetrachtungsanwendung 55 unter anderem ein Benutzerschnittstellenmodul 202, ein Kamerapositionsmodul 204 und ein Markup-Modul 206 auf. Das Benutzerschnittstellenmodul 202 implementiert die Benutzerschnittstellenfunktionen für alle Eingaben des Benutzers und aller Ausgaben an den Benutzer, wobei beispielsweise die graphische Benutzerschnittstelle 100 auf dem Bildschirm des Benutzers angezeigt wird und eine Benutzereingabe in der Art von Mausklicks an den verschiedenen Tasten der graphischen Benutzerschnittstelle 100 empfangen werden. 5 Figure 10 is a high level block diagram of a preferred embodiment of a graphics viewing application 55 , As illustrated, the graphics viewer application 55 including a user interface module 202 , a camera position module 204 and a markup module 206 on. The user interface module 202 implements the user interface functions for all inputs of the user and all outputs to the user, for example the graphical user interface 100 is displayed on the user's screen and user input in the manner of mouse clicks on the various buttons of the graphical user interface 100 be received.

Das Kamerapositionsmodul 204 implementiert die Funktionen zum Bestimmen der Kameradarstellung für jede benannte Kameraposition. Es kennt die Zuordnung zwischen dem Kamerapositionsnamen und der eigentlichen Darstellung.The camera position module 204 implements the functions for determining the camera representation for each named camera position. It knows the association between the camera position name and the actual representation.

Das Markup-Modul 206 implementiert die zugrundeliegenden Funktionen für alle Markup-Tasten und Optionen, die in dem Markup-Werkzeugkasten 110 der graphischen Benutzerschnittstelle 100 verfügbar sind.The markup module 206 implements the underlying functions for all markup buttons and options found in the markup toolbox 110 the graphical user interface 100 Are available.

6 ist ein Zuordnungsdiagramm, in dem die Zuordnungen von Kamerapositionen, Markup-Ebenen und Markup-Elementen dargestellt sind. Wenn vom Benutzer zum ersten Mal ein Markup-Element 130, 131, 132, 133 über einer 3D-Darstellung einer gegebenen Kameraposition 142x erzeugt wird, wie in 6 veranschaulicht ist, erzeugt das Markup-Modul 206 eine dieser Kameraposition 142x zugeordnete Markup-Ebene 143x. Alle Markup-Elemente, die erzeugt werden, während diese Kameraposition 142x vorliegt, werden der entsprechenden Markup-Ebene 143x zugeordnet. Demgemäß sind die der Kameraposition 142x zugeordnete Darstellung und die der Markup-Ebene 143x zugeordneten Markup-Elemente für alle Kollaborationssitzungsteilnehmer synchron sichtbar. 6 is an assignment diagram that shows the mappings of camera positions, markup layers, and markup elements. When the user first has a markup element 130 . 131 . 132 . 133 over a 3D representation of a given camera position 142x is generated as in 6 is illustrated creates the markup module 206 one of these camera position 142x associated markup level 143x , All markup elements that are generated while this camera position 142x is present, the appropriate markup level 143x assigned. Accordingly, those are the camera position 142x associated representation and that of the markup layer 143x associated markup items are visible synchronously to all collaboration session participants.

Eine Implementierung gemäß einer bevorzugten Ausführungsform der Graphikbetrachtungsanwendung 55 wird unter Verwendung des JavaSharedDataToolkits für die Kollaborationsfunktionen, der Java2D-Bibliothek von Sun zum Zeichnen der Formen und der folgenden neu definierten Klassen (in einem Klassendiagramm in 7 dargestellten) Klassen zum Implementieren der Markup-Zuordnung implementiert: Markup-Zusammenhang 80, Markup-Ebene 81, Markup-Fenster 82, Markup-Dialog 83, Markup-Element 84, Markup-Ereignisse 85, Markup-Rechteck 86, Markup-Text 88, Markup-Textereignisse 89, Markup-Rechteckereignisse 87 und Markup-Zusammenarbeit 90. Es folgt eine Kurzbeschreibung jeder Klasse:An implementation according to a preferred embodiment of the graphics viewing application 55 Using the JavaSharedData toolkit for the collaboration functions, Sun's Java2D library to draw the shapes and the following newly defined classes (in a class diagram in 7 implemented classes for implementing the markup mapping implements: markup context 80 , Markup level 81 , Markup window 82 , Markup dialogue 83 , Markup element 84 , Markup events 85 , Markup rectangle 86 , Markup text 88 , Markup text events 89 , Markup Rectangle Events 87 and markup collaboration 90 , Below is a brief description of each class:

Markup-Zusammenhang 80:Markup connection 80 :

  • • Nur eine Markup-Zusammenhang-Einheit existiert innerhalb eines Clients, der einer Kollaborationssitzung zugeordnet ist.• Just a markup context unit exists within a client, associated with a collaboration session.
  • • Unterhält eine Liste aller Markup-Ebenen, die diesem Markup-Zusammenhang zugeordnet sind.• Entertains one List of all markup levels associated with this markup context.
  • • Unterhält eine Liste aller Markup-Fenster, die diesem Markup-Zusammenhang zugeordnet sind.• Entertains one List of all markup windows associated with this markup context.
  • • Wenn in einem Markup-Fenster Änderungen eines Markup-Elements (Erzeugen/Löschen/Modifizieren) auftreten, wird die Änderung kaskadenförmig auf alle anderen Markup-Fenster innerhalb dieses Zusammenhangs übertragen, die die gleiche Markup-Ebene zeigen.• If in a markup window changes a markup element (Creating / deleting / modifying) The change will occur cascaded transferred to all other markup windows within that context, which show the same markup level.

Markup-Ebene 81:Markup level 81 :

  • • Unterhält eine Liste von Markup-Elementen.• Entertains one List of markup elements.
  • • Stellt Verfahren zum Hinzufügen/Löschen/Gewinnen von Markup-Elementen von dieser Liste bereit.• Represents Method for adding / deleting / winning of markup items from this list.
  • • Entspricht einem Satz von Markup-Elementen, die auf eine Kamerapositionsdarstellung gezeichnet werden. Eine Kameraposition ist eine Markup-Ebene.• Corresponds a set of markup elements based on a camera position representation to be drawn. A camera position is a markup layer.
  • • Eine Markup-Ebene kann auf null oder mehr Einheiten von Markup-Fenster gleichzeitig angewendet werden.• One Markup level can be zero or more units of markup window applied simultaneously.

Markup-Fenster 82:MarkupWindow 82 :

  • • Eine Einheit entspricht einem Fenster, in dem Markup-Elemente gezeichnet/angezeigt werden können.• One Unit corresponds to a window in which markup elements can be drawn / displayed.
  • • Ein Markup-Fenster kann eine Markup-Ebene "zeigen".• One Markup window can "show" a markup layer.
  • • Stellt Verfahren zum Schalten zu jeder beliebigen Markup-Ebene bereit.• Represents Method ready for switching to any markup level.
  • • Die Kommunikation zwischen mehreren Clients wird auf der Ebene des Markup-Fensters hergestellt. Falls beispielsweise ein Rechteck erzeugt wird, wird eine Rechteckereignis-Nachricht zu allen Clients gesendet, die dieses Fenster "gemeinsam verwenden".• The Communication between multiple clients is at the level of the markup window produced. For example, if a rectangle is generated, then A Rectangle Event message is sent to all clients using this Window "in common use".
  • • Handhabt die Normierung und Transformation von Koordinaten. Wenn ein Markup-Element gezeichnet werden muß, wendet es vor dem Zeichnen die geeigneten Transformationen an.• Manages the normalization and transformation of coordinates. If a markup element must be drawn it applies the appropriate transformations before drawing.
  • • Wenn Manipulationen eines Markup-Elements (Erzeugen, Löschen, Modifizieren eines Markup-Elements) auftreten, wird das Markup-Fenster informiert, so daß es das Markup-Element neu zeichnet, und es teilt diese Informationen den fernen Markup-Fenstern mit, die dieses Fenster gemeinsam verwenden.• If Manipulations of a markup element (create, delete, modify of a markup element), the markup window is informed, so that it redraws the markup element, and it shares that information the remote markup windows that share this window.

Markup-Dialog 83:Markup dialog 83 :

  • • Ist für das Zeigen der Markup-Palette und der Tasten für alle Markup-Operationen verantwortlich.• Is for the Show the markup palette and buttons responsible for all markup operations.
  • • Achtet auf die Ereignisse beim Dialog (beispielsweise das Anklicken einer Taste).• Watch out on the events in the dialog (for example, clicking on a Button).
  • • Handhabt Änderungen von Markup-Bevorzugungen (beispielsweise der Farbe) beim gegenwärtig gewählten Markup-Element.• Manage changes Markup preferences (such as color) for the currently selected markup element.

Markup-Element 84:MarkupItem 84 :

  • • Basisklasse für alle Markup-Elementtypen (beispielsweise Rechteck, Kreis, Linie, Textbereich).• base class for all Markup element types (for example, rectangle, circle, line, text area).
  • • Beinhaltet ein Zeichen()-Verfahren, das sich selbst im Markup-Fenster zeichnet.• Includes a character () - method that draws itself in the markup window.

Markup-Text 88:MarkupText 88 :

  • • Eine Einheit dieser Klasse entspricht einem auf der Markup-Ebene erzeugten Text-Markup-Element.• One Unit of this class corresponds to one created at the markup level Text markup item.
  • • Markup-Text 88 ist eine Ableitung eines Markup-Elements 84.• Markup text 88 is a derivative of a markup element 84 ,

Markup-Rechteck 86:MarkupRectangleEvents 86 :

  • • Eine Einheit dieser Klasse entspricht einem auf der Markup-Ebene erzeugten Rechteck-Markup-Element.• One Unit of this class corresponds to one created at the markup level Rectangle markup element.
  • • Markup-Rechteck 86 ist eine Ableitung eines Markup-Elements 84.• Markup rectangle 86 is a derivative of a markup element 84 ,

Markup-Elemente 85:Markup elements 85 :

  • • Eine Einheit entspricht einem Markup-Ereignistyp (beispielsweise Rechteckerzeugung, Rechteckauswahl).• One Unit corresponds to a markup event type (for example, rectangle generation, Rectangle Selection).
  • • Basisklasse für alle Ereignis-Behandlungsklassen zum Erzeugen, Auswählen und Modifizieren von Markup-Objekten.• base class for all Event handling classes for creating, selecting and modifying markup objects.

Markup-Rechteckereignisse 87:MarkupRectangleEvents 87 :

  • • Achtet auf Benutzerschnittstellenereignisse zum Erzeugen eines Markup-Rechtecks 86.• Watch for user interface events to create a markup rectangle 86 ,
  • • Markup-Rechteckereignisse 87 ist eine Ableitung eines Markup-Ereignisses 85.• Markup Rectangle Events 87 is a derivative of a markup event 85 ,

Markup-Textereignisse 89:Markup text events 89 :

  • • Achtet auf Benutzerschnittstellenereignisse zum Erzeugen von Markup-Text 88.• Pay attention to user interface events to generate markup text 88 ,
  • • Markup-Textereignisse 89 ist eine Ableitung eines Markup-Ereignisses 85.• Markup text events 89 is a derivative of a markup event 85 ,

Markup-Zusammenarbeit 90 (90a, 90b):MarkupCollaboration 90 ( 90a . 90b ):

  • • Wird von Markup-Fenster zum Kommunizieren mit fernen Markup-Fenstern verwendet.• Becomes markup windows to communicate with remote markup windows used.
  • • Eine Einheit je Markup-Fenster.• One Unit per markup window.
  • • Wenn ein neues Markup-Element in einem Fenster erzeugt wird, muß sie allen fernen Clients, die dieses Fenster gemeinsam verwenden, eine Nachricht senden. Markup-Zusammenarbeit 90 implementiert die Kommunikation mit den anderen Clients, die dieses Fenster gemeinsam verwenden. Wenn eine Nachricht auf einem Markup-Kanal empfangen wird, wird das entsprechende Verfahren im empfangenden Markup-Fenster aufgerufen. Ein Markup-Kanal ist ein JavaSharedDataToolkit-Kanal.• When a new markup item is created in a window, it must send a message to all remote clients sharing this window. MarkupCollaboration 90 implements communication with the other clients sharing this window. When a message is received on a markup channel, the corresponding method is called in the receiving markup window. A markup channel is a JavaSharedDataToolkit channel.

Ein die Beziehungen der Klassen veranschaulichendes Klassendiagramm ist in 7 dargestellt. Wie dargestellt hat Markup-Zusammenhang 80 mehrere Markup-Ebenen 81, von denen keine oder eine in einem Markup-Fenster angezeigt ist. Markup-Zusammenhang hat mehrere Markup-Fenster 82. In einem Markup-Zusammenhang 80 kann wahlweise ein Markup-Dialog angezeigt werden. Jede Markup-Ebene 81 hat ein oder mehrere Markup-Elemente 84, beispielsweise Markup-Rechteck 86 und Markup-Text 88. Markup-Rechteck 86 und Markup-Text 88 sind Ableitungen von Markup-Element 84. Eine Einheit von Markup-Ereignissen achtet auf Benutzerschnittstellenereignisse in einem Fenster und erzeugt und modifiziert eine Markup-Rechteck-Klasseneinheit. Jedem Markup-Fenster 82 ist eine einzige Markup-Zusammenarbeit 90a zugeordnet. Markup-Kollaborationen 90a, 90b kommunizieren typischerweise unter Verwendung der JavaSharedDataToolkit-Technologie über das Internet 70 miteinander.A class diagram illustrating the relationships of the classes is in FIG 7 shown. As shown has markup context 80 multiple markup levels 81 of which none or one is shown in a markup window. Markup context has multiple markup windows 82 , In a markup context 80 Optionally, a markup dialog can be displayed. Each markup level 81 has one or more markup elements 84 , for example, markup rectangle 86 and markup text 88 , MarkupRectangleEvents 86 and markup text 88 are derivatives of markup element 84 , A unit of markup events pays attention to user interface events in a window and creates and modifies a markup rectangle class unit. Each markup window 82 is a single markup collaboration 90a assigned. Markup collaborations 90a . 90b typically communicate over the Internet using the JavaSharedDataToolkit technology 70 together.

Wenngleich die Erfindung hinsichtlich der veranschaulichenden Ausführungsformen beschrieben wurde, werden Fachleute verstehen, daß an den veranschaulichenden Ausführungsformen verschiedene Änderungen und Modifikationen vorgenommen werden können, ohne vom Gedanken oder Schutzumfang der Erfindung abzuweichen. Es ist vorgesehen, daß der Schutzumfang der Erfindung in keiner Weise auf die dargestellte und beschriebene veranschaulichende Ausführungsform beschränkt ist, sondern daß die Erfindung nur durch die anliegenden Ansprüche beschränkt ist.Although the invention in terms of illustrative embodiments those skilled in the art will understand that in the illustrative embodiments different changes and modifications can be made without the thought or Diverge scope of the invention. It is envisaged that the scope of protection the invention in no way to the illustrated and described illustrative embodiment limited is, but that the Invention is limited only by the appended claims.

Claims (9)

Graphikbetrachtungssystem, mit einem Darstellungsbereich (150), der ein dreidimensionales Objekt (160) anzeigt, einem Kamerapositionsmodul (204), das es einem Benutzer ermöglicht, eine Kamerapositionsdarstellung des dreidimensionalen Objekts (160) zu ändern, um eine gewünschte Darstellung anzuzeigen, die einer Kameraposition zugeordnet ist, und einem Markup-Modul (206), das das Erzeugen graphischer Markup-Elemente (130, 132) statisch auf einer zum Darstellungsbereich (150) parallelen zwei-dimensionalen Markup-Ebene bewirkt, wobei zumindest ein graphisches Markup-Element (130) einer ersten Kameraposition zugeordnet ist, wobei das Markup-Modul (206) wirksam ist, um das der ersten Kameraposition zugeordnete graphische Markup-Element (130) aus dem Darstellungsbereich (150) zu entfernen, und um zumindest ein einer zweiten Kameraposition zugeordnetes graphisches Markup-Element (132) anzuzeigen, wenn die Darstellung des Objekts (160) zu der zweiten Kameraposition geändert wird.Graphic viewing system, with a presentation area ( 150 ), which is a three-dimensional object ( 160 ), a camera position module ( 204 ) that allows a user to display a camera positional representation of the three-dimensional object ( 160 ) to display a desired representation associated with a camera position and a markup module ( 206 ), which is the creation of graphical markup elements ( 130 . 132 ) statically on a to the display area ( 150 ) causes a parallel two-dimensional markup plane, wherein at least one graphical markup element ( 130 ) is assigned to a first camera position, wherein the markup module ( 206 ) is operative to control the graphical markup element associated with the first camera position ( 130 ) from the presentation area ( 150 ) and at least one graphical markup element associated with a second camera position ( 132 ), if the representation of the object ( 160 ) is changed to the second camera position. Graphikbetrachtungssystem nach Anspruch 1, mit einer Kollaborationsfunktion (28), die es mehreren Kollaborationssitzungsteilnehmern ermöglicht, die der Kameraposition zugeordneten graphischen Markup-Elemente (130, 132) synchron zu betrachten.Graphics viewing system according to claim 1, having a collaboration function ( 28 ), which allows multiple collaboration session participants to access the graphic markup elements associated with the camera position ( 130 . 132 ) synchronously. Graphikbetrachtungssystem nach Anspruch 2, bei dem die Kollaborationsfunktion (28) Markup-Ebenen-Änderungen für alle Kollaborationssitzungsteilnehmer synchronisiert.Graphics viewing system according to claim 2, wherein the collaboration function ( 28 ) Synchronizes markup layer changes for all collaboration session participants. Graphikbetrachtungssystem nach Anspruch 2, bei dem die Kollaborationsfunktion (28) Kamerapositionsänderungen für alle Kollaborationssitzungsteilnehmer synchronisiert.Graphics viewing system according to claim 2, wherein the collaboration function ( 28 ) Synchronizes camera position changes for all collaboration session participants. Verfahren zum Zuordnen graphischer Markups (130, 132) zu 3D-CAD-Modell-Kamerapositionen in einem Graphikbetrachtungssystem, mit: Zuordnen zumindest eines von einem Benutzer erzeugten graphischen Markup-Elements (130) zu einer ersten Kameraposition, wobei die Kameraposition einer Ansicht eines in einen Darstellungsbereich (150) geladenen Modells (160) entspricht, Anzeigen des der ersten Kameraposition zugeordneten graphischen Markup-Elements (130), Entfernen des der ersten Kameraposition zugeordneten graphischen Markup-Elements (130), wenn die Darstellung des Modells zu einer zweiten Kameraposition geändert wird, und Anzeigen zumindest eines der zweiten Kameraposition zugeordneten graphischen Markup-Elements (132) umfasst.Method for assigning graphical markups ( 130 . 132 ) to 3D CAD model camera positions in a graphics viewing system, comprising: associating at least one graphical markup element generated by a user ( 130 ) to a first camera position, wherein the camera position is a view of one in a display area ( 150 ) loaded model ( 160 ), displaying the graphical markup element associated with the first camera position ( 130 ), Removing the graphic markup element associated with the first camera position ( 130 ) when changing the representation of the model to a second camera position, and displaying at least one graphical markup element associated with the second camera position ( 132 ). Verfahren nach Anspruch 5, mit: Verbinden mit einer Zusammenarbeitssitzung, und synchrones Anzeigen der einer ersten Kameraposition zugeordneten Ansicht und aller der ersten Kameraposition zugeordneten graphischen Markup-Elemente (130) für alle mit der Kollaborationssitzung verbundenen Teilnehmer umfasst.The method of claim 5, comprising: connecting to a collaboration session, and synchronously displaying the view associated with a first camera position and all graphical markup elements associated with the first camera position ( 130 ) for all participants connected to the collaboration session. Verfahren nach Anspruch 6, mit: Synchronisieren einer Änderung in der einer ersten Kameraposition zugeordneten Ansicht und des der ersten Kameraposition zugeordneten graphischen Markup-Elements (130, 132) mit der der zweiten Kameraposition zugeordneten zweiten Ansicht für alle mit der Kollaborationssitzung verbundenen Teilnehmer umfasst.The method of claim 6, comprising: synchronizing a change in the view associated with a first camera position and the graphical markup element associated with the first camera position ( 130 . 132 ) with the second view associated with the second camera position for all participants connected to the collaboration session. Computerlesbares Speichermedium mit Programmanweisungen, die ein Verfahren zum Zuordnen graphischer Markups zu 3D-CAD-Modell-Kamerapositionen in einem Graphikbetrachtungssystem nach einem der Ansprüche 5 bis 7 ausführen, wenn die Programmanweisungen auf einem Computer ausgeführt werden.Computer-readable storage medium with program instructions, which is a method of associating graphical markups with 3D CAD model camera positions in a graphics viewing system according to any one of claims 5 to 7 execute when the program statements are run on a computer. Computerprogramm mit Programmanweisungen, die ein Verfahren zum Zuordnen graphischer Markups zu 3D-CAD- Modell-Kamerapositionen in einem Graphikbetrachtungssystem nach einem der Ansprüche 5 bis 7 ausführen, wenn die Programmanweisungen auf einem Computer ausgeführt werden.Computer program with program instructions, the Method for associating graphical markups to 3D CAD model camera positions in a graphics viewing system according to any one of claims 5 to 7 execute when the program statements are run on a computer.
DE10138339A 2000-07-31 2001-07-27 A method and system for associating graphical markers with three-dimensional CAD model camera positions in a collaborative graphics viewing system Expired - Fee Related DE10138339B8 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US62892300A 2000-07-31 2000-07-31
US09/628,923 2000-07-31

Publications (3)

Publication Number Publication Date
DE10138339A1 DE10138339A1 (en) 2002-04-11
DE10138339B4 true DE10138339B4 (en) 2008-03-27
DE10138339B8 DE10138339B8 (en) 2008-06-26

Family

ID=24520865

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10138339A Expired - Fee Related DE10138339B8 (en) 2000-07-31 2001-07-27 A method and system for associating graphical markers with three-dimensional CAD model camera positions in a collaborative graphics viewing system

Country Status (1)

Country Link
DE (1) DE10138339B8 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102005015188A1 (en) * 2005-04-02 2006-10-05 Netallied Gmbh Computerized simulation method for manufacturing equipment, involves using computer-generated models to generate representations and description showing change in motion and position of manufacturing equipment and its robots
DE102010015118A1 (en) 2010-04-16 2011-10-20 Zahoransky Ag Device for producing bristle fields for brushes

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3587638T2 (en) * 1984-07-20 1994-06-01 Tektronix Inc Spherical swiveling method and device.
US5821925A (en) * 1996-01-26 1998-10-13 Silicon Graphics, Inc. Collaborative work environment supporting three-dimensional objects and multiple remote participants

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3587638T2 (en) * 1984-07-20 1994-06-01 Tektronix Inc Spherical swiveling method and device.
US5821925A (en) * 1996-01-26 1998-10-13 Silicon Graphics, Inc. Collaborative work environment supporting three-dimensional objects and multiple remote participants

Also Published As

Publication number Publication date
DE10138339B8 (en) 2008-06-26
DE10138339A1 (en) 2002-04-11

Similar Documents

Publication Publication Date Title
DE10138336A1 (en) Collaborative graphics viewing system for maintaining the permanency of graphics mark-up elements in a collaborative graphics environment has a mark-up module to create the mark-up elements and assign them to a camera position.
DE69833808T2 (en) Interactive time span display
DE69602622T2 (en) GRAPHIC BROWSER
DE69428647T2 (en) Method and device for generating a second mixed image signal in the spatial context of a first image signal
DE69432579T2 (en) Method and device for processing model data structures of an image in order to achieve a human-recognizable result
DE69534331T2 (en) Method and device for highlighting the detail of a tree structure
DE69627061T2 (en) OLE for design and modeling
DE3856198T2 (en) Interactive movement of graphic objects
DE60025926T2 (en) CONTROL OF THE DEPTH MOTION IN A DISPLAY DEVICE WITH A MULTILAYER SCREEN
DE69902262T2 (en) ANIMATION SYSTEM AND METHOD FOR DEFINING AND APPLYING RULE-BASED GROUPS OF OBJECTS
DE69725346T2 (en) DEVICE AND METHOD FOR PRODUCING A SHEET BENDING MODEL
DE69133127T2 (en) Computerized display procedures
DE69418908T2 (en) Method and device for viewing information in a computer database
DE69731045T2 (en) Navigation and interaction in structured information spaces
DE69900316T2 (en) TRANSLATION OF OBJECTS BETWEEN SOFTWARE APPLICATIONS USING DIFFERENT DATA FORMATS
DE69737913T2 (en) DEVICE AND METHOD FOR ENTERING DATA FOR A BELOW GENERATION FOR LAYERING
DE69230095T2 (en) Image window management of connected applications
DE10016753A1 (en) Procedure for navigating between sections in a display room
DE4225872A1 (en) Characterisation and identification of selected areas in display images - separating images into regions that can be identified and stored in memory
DE112007001940T5 (en) Drawing interoperability between various computer-aided design applications
DE69324363T2 (en) Process for chamfering the edges of a geometric object in a computer-aided design system
DE112004000377T5 (en) Image segmentation in a three-dimensional environment
DE202015009266U1 (en) User interface for a storage system with floating file collection
DE69732465T2 (en) Image processing apparatus and method
DE69710653T2 (en) System analysis tool for sequential process events

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8127 New person/name/address of the applicant

Owner name: HEWLETT-PACKARD DEVELOPMENT CO., L.P., HOUSTON, TE

8127 New person/name/address of the applicant

Owner name: HEWLETT-PACKARD CO. (N.D.GES.D.STAATES DELAWARE),

8396 Reprint of erroneous front page
8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06T0017400000

Ipc: G06T0019000000