DE10146235A1 - Data processing system for automatic layout design, especially of hierarchical or mixed hierarchical diagrams, whereby planar elements are linked using connection elements - Google Patents

Data processing system for automatic layout design, especially of hierarchical or mixed hierarchical diagrams, whereby planar elements are linked using connection elements

Info

Publication number
DE10146235A1
DE10146235A1 DE10146235A DE10146235A DE10146235A1 DE 10146235 A1 DE10146235 A1 DE 10146235A1 DE 10146235 A DE10146235 A DE 10146235A DE 10146235 A DE10146235 A DE 10146235A DE 10146235 A1 DE10146235 A1 DE 10146235A1
Authority
DE
Germany
Prior art keywords
elements
diagram
fasteners
embedding
diagrams
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE10146235A
Other languages
German (de)
Inventor
Carsten Gutwenger
Michael Juenger
Sebastian Leipert
Petra Mutzel
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.)
Stiftung Caesar Center of Advanced European Studies and Research
Original Assignee
Stiftung Caesar Center of Advanced European Studies and Research
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 Stiftung Caesar Center of Advanced European Studies and Research filed Critical Stiftung Caesar Center of Advanced European Studies and Research
Priority to DE10146235A priority Critical patent/DE10146235A1/en
Publication of DE10146235A1 publication Critical patent/DE10146235A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/18Network design, e.g. design based on topological or interconnect aspects of utility systems, piping, heating ventilation air conditioning [HVAC] or cabling

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Geometry (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

Data processing system for automatic layout design, especially of hierarchical or mixed hierarchical diagrams has a linking device, a planarizing device, an embedding device, a marking device and a visualization device. The planarizing device is used to produce a planar diagram.

Description

Die Erfindung betrifft eine Datenverarbeitungseinrichtung sowie ein Verfahren zur automatischen Layoutgestaltung, insbesondere von hierarchischen und/oder gemischt hierarchischen Diagrammen. The invention relates to a data processing device as well a method for automatic layout design, in particular hierarchical and / or mixed hierarchical diagrams.

Derartige Diagramme weisen Darstellungselemente und die Darstellungselemente verbindende Verbindungselemente auf. Bei den Darstellungselementen handelt es sich beispielsweise um Kästchen o. dgl., in denen Informationen visualisiert werden. Bei der graphischen Darstellung von Diagrammen handelt es sich bei den Verbindungselementen im allgemeinen um Linien. Bei den Verbindungselementen kann es sich um gerichtete oder ungerichtete Verbindungselemente handeln. Ein gerichtetes Verbindungselement, das üblicherweise als Pfeil dargestellt wird, verbindet zwei Darstellungselemente, wobei durch die Richtung des Verbindungselements, beispielsweise die Richtung des Pfeils beispielsweise eine Hierarchie, eine Vorzugsrichtung, eine Transportrichtung von Gütern oder ähnliches dargestellt wird. Durch ein ungerichtetes Verbindungselement, beispielsweise eine Linie ohne Pfeil wird dargestellt, dass eine Verbindung zwischen den beiden Darstellungselementen besteht. Es kann sich hierbei um unterschiedlichste Arten von Verbindungen, wie beispielsweise ein möglicher Informationsaustausch handeln. Im Bereich des Software Engineering und Software Reengineering, wo derartige Diagramme zur Spezifikation, Konstruktion, Visualisierung und Dokumentation von Modellen für Softwaresysteme vewendet werden, stellen gerichtete Verbindungselemente die Vererbung zwischen zwei Darstellungselementen, wie beispielsweise Klassen dar. Unter Vererbung wird ein Programmiersprachenkonzept, d. h. ein Umsetzungsmechanismus für die Relation zwischen Ober- und Unterklasse verstanden, wodurch Attribute und Operationen der Oberklasse auch den Unterklassen zugänglich gemacht werden. Eine Vererbung (auch Generalisierung, Spezialisierung) ist eine taxonomische Beziehung zwischen einem allgemeinen und einem speziellen Element (bzw. umgekehrt), wobei das speziellere Element weitere Eigenschaften hinzufügt und sich kompatibel zum allgemeinen verhält. Ungerichtete Verbindungselemente bedeuten in der Software-Entwicklung Assoziationen zwischen Darstellungselementen wie Klassen. Eine Assoziation beschreibt als Relation zwischen Klassen die gemeinsame Semantik und Struktur einer Menge von Objektverbindungen. Sie stellt somit die "Kommunikation" zwischen Objekten dar. Such diagrams have display elements and the Display elements connecting connecting elements. Both For example, display elements are Box o. The like, in which information is visualized. The graphical representation of diagrams is in the case of the connecting elements generally around lines. Both Fasteners may be directional or Undirected fasteners act. A directed Connecting element, which is usually shown as an arrow, connects two display elements, passing through the direction of the connecting element, for example the direction of the arrow For example, a hierarchy, a preferred direction, a Transport direction of goods or the like is displayed. By an undirected connecting element, for example a Line without arrow represents a connection exists between the two presentation elements. It may be hereby different kinds of connections, like for example, a possible exchange of information. in the Field of software engineering and software reengineering, where Such diagrams for specification, construction, Visualization and documentation of models for software systems are used, directional fasteners make the Inheritance between two presentation elements, such as For example, classes. Inheritance is a Programming language concept, d. H. a transposition mechanism for understood the relation between upper and lower class, whereby Attributes and operations of the upper class also the subclasses be made accessible. An inheritance (also Generalization, specialization) is a taxonomic Relationship between a general and a special Element (or vice versa), the more specific element being more Adds features and is compatible with the general behaves. Undirected fasteners mean in the Software development associations between Presentation elements such as classes. An association describes as a relation between classes the common semantics and Structure of a set of object links. It thus represents the "communication" between objects.

In vielen Anwendungsgebieten und insbesondere auch in der Software-Entwicklung handelt es sich um sogenannte hierarchische oder gemischt hierarchische Diagramme. Als Hierarchie wird ein Diagramm oder ein Teil eines Diagramms bezeichnet, der ausschließlich gerichtete Verbindungselemente aufweist und zyklenfrei ist und zusammenhängend ist. Unter zyklenfrei wird hierbei verstanden, dass beim Durchlaufen der Verbindungselemente in ihre Richtung, d. h. beispielsweise in Pfeilrichtung kein Kreisschluss möglich ist. Am häufigsten treten gemischt hierarchische Diagramme auf. Hierbei handelt es sich um Diagramme, die sowohl gerichtete als auch ungerichtete Verbindungselemente aufweisen, wobei die gerichteten Verbindungselemente Hierarchien bilden, d. h. zyklenfrei sind. Im Software-(Re)Engineering treten im Allgemeinen nur derartige Diagramme auf. In many fields of application and especially in the Software development is so-called hierarchical or mixed hierarchical diagrams. As Hierarchy becomes one Diagram or part of a diagram called the has exclusively directed fasteners and is cycle-free and connected. Under cycle free is here understood that when passing through the fasteners in their direction, d. H. for example, in the direction of the arrow no Circular lock is possible. Most often, mixed hierarchical diagrams. This is Charts that are both directed and undirected Have connecting elements, wherein the directed Connecting elements form hierarchies, d. H. are cycle-free. in the Software (re) engineering generally only occurs Diagrams on.

Das Erzeugen derartiger Diagramme erfolgt häufig von Hand. Dies ist sehr zeitaufwendig. Insbesondere bei komplexeren Strukturen ist es mit dem menschlichen Verstand nicht mehr möglich, übersichtliche Diagramme zu zeichnen. Bereits bei stark verzweigten Strukturen mit mehr als 10 Darstellungselementen ist ein übersichtliches Anordnen mit Hilfe des Verstandes nicht möglich. Von Hand gezeichnete Diagramme weisen daher stets eine Vielzahl von Kreuzungen, d. h. sich kreuzende Verbindungselemente auf. Ferner treten aufgrund der Anordnung der einzelnen Darstellungsselemente häufig spitze Winkel zwischen Verbindungselementen auf. Bei komplexeren Diagrammen ist es häufig nicht möglich, die Verbindungselemente derart anzuordnen, dass sie nicht teilweise von Darstellungselementen verdeckt werden. Es ist daher bei komplizierteren Diagrammen nicht möglich, von Hand eine übersichtliche Gestaltung des Layouts vorzunehmen. Die übersichtliche Visualisierung und vereinfachte Darstellung von Abläufen ist auf diese Weise nur eingeschränkt möglich. The generation of such diagrams is often done by hand. This is very time consuming. Especially with more complex structures is it no longer possible with the human mind to draw clear diagrams. Already at highly branched Structures with more than 10 presentation elements is one clear arrangement with the help of the mind not possible. Hand-drawn diagrams therefore always have a large number of intersections, d. H. intersecting connecting elements. Furthermore occur due to the arrangement of the individual Presentation elements often have acute angles between Connecting elements on. For more complex charts, it is often not possible to arrange the connecting elements such that they are not partially obscured by presentation elements. It is therefore not possible with more complicated diagrams, by hand one clear layout of the layout. The clear visualization and simplified representation of Processes is limited in this way possible.

Eine geringfügige Verbesserung kann durch den Einsatz von Zeichenprogrammen erzielt werden. Durch derartige Zeichenprogramme ist das Verschieben einzelner Darstellungselemente und Verbindungselemente einfacher möglich. Durch das Verwenden derartiger Zeichenprogramme kann hierdurch lediglich in geringem Umfang Zeit gespart werden. Durch derartige Zeichenprogramme ist es möglich, einzelne Darstellungselemente zu verschieben. Ein vollständiges Neuzeichnen des Diagramms ist somit nicht erforderlich. Es ist jedoch auch mit Unterstützung derartiger Zeichenprogramme nicht möglich, komplexe Strukturen in einem übersichtlichen Layout darzustellen, da die Gestaltung weitgehend davon abhängt, was vom menschlichen Verstand erfasst werden kann. A slight improvement can be achieved through the use of Drawing programs. By such Drawing programs is the moving of individual presentation elements and fasteners easier possible. By using Such drawing programs can thereby only in a small amount of time can be saved. By such Drawing programs it is possible to individual presentation elements move. A complete redraw of the chart is thus not mandatory. However, it is also with support Such drawing programs are not possible, complex structures in a clear layout because the design depends largely on what is captured by the human mind can be.

Zur Verbesserung der Übersichtlichkeit von Diagrammen sind für nicht hierarchische Diagramme Planarisierungsverfahren bekannt. Unter einem planaren Diagramm wird ein Diagramm verstanden, für das ein Layout existiert, so dass sich in dem Layout die Verbindungselemente nicht kreuzen. Ein derartiges Verfahren ist zum Beispiel in Nardelli et al. beschrieben (E. Nardelli und M. Talamo, (1984): A Fast Layout Algorithm for Planarization of Sparse Diagrams, Technical Report R.105, IASI-CNR, Rome). Nardelli beschreibt bereits ein heuristisches Verfahren. In einer derartigen Software sind die Darstellungselemente sowie die einzelnen Verbindungselemente, mit denen jeweils zwei Darstellungselemente verknüpft werden, bekannt. Aufgrund dieser als Liste sämtlicher Darstellungselemente mit ihren Verknüpfungen bekannten Daten kann das Planarisierungsprogramm zunächst überprüfen, ob die geforderte Verknüpfung der Darstellungselemente mit Verbindungselementen planar ist. Hierzu wird von dem Programm die Liste der einzelnen miteinander verknüpften Darstellungselemente, d. h. die Liste aller Knoten daraufhin überprüft, ob ein sogenannter K5-Teilgraph und/oder ein K3,3-Teilgraph enthalten ist. Sobald einer dieser beiden Teilgraph-Typen auftritt, ist ein Diagramm nicht planar. To improve the clarity of diagrams, planarization methods are known for non-hierarchical diagrams. A planar diagram is understood to mean a diagram for which a layout exists, such that the connection elements do not intersect in the layout. Such a method is described, for example, in Nardelli et al. (Nardelli and M. Talamo, ( 1984 ): A Fast Layout Algorithm for Planarization of Sparse Diagrams, Technical Report R.105, IASI-CNR, Rome). Nardelli already describes a heuristic procedure. In such a software, the presentation elements as well as the individual connection elements with which two presentation elements are linked are known. On the basis of this data, which is known as a list of all presentation elements with their links, the planarization program can first check whether the required linking of the presentation elements with connecting elements is planar. For this purpose, the program checks the list of individual interconnected display elements, ie the list of all nodes, to determine whether a so-called K 5 subgraph and / or a K 3,3 subgraph is included. Once one of these two subgraph types occurs, a diagram is not planar.

In einem nächsten Schritt wird in dem Planarisierungsverfahren eine möglichst geringe Anzahl an Verbindungselementen entfernt, so dass ein planares Diagramm erzeugt ist. Das Entfernen der Verbindungselemente führt zu einer Verringerung der Anzahl an Verbindungselementen. Die Überprüfung erfolgt wiederum mit Hilfe eines Tests, ob ein K5-Teilgraph oder ein K3,3-Teilgraph enthalten ist. Derartige Planarisierungsverfahren basieren üblicherweise auf heuristischen Überprüfungen, wie zum Beispiel in Nardelli et al. beschrieben. In a next step, as small a number of connecting elements as possible are removed in the planarization method so that a planar diagram is generated. The removal of the fasteners leads to a reduction in the number of fasteners. The check is again carried out by means of a test, whether a K 5 subgraph or a K 3,3 subgraph is included. Such planarization methods are usually based on heuristic checks, as for example in Nardelli et al. described.

In dem darauffolgenden Schritt des Planarisierungsverfahrens werden die entfernten Verbindungselemente wieder in das Diagramm eingefügt, wobei die Einfügung derart erfolgt, dass die hierbei auftretenden Kreuzungen zwischen Verbindungselementen möglichst minimal ist. Ein derartiges Planarisierungsverfahren kann dadurch beschrieben werden, dass eine Datenverarbeitungseinrichtung eine Planarisierungseinrichtung und eine Einbettungseinrichtung aufweist. Die Planarisierungseinrichtung dient hierbei zur Überprüfung der Planarität des Diagramms sowie ggf. zum Entfernen geeigneter Verbindungselemente. Durch die Einbettungseinrichtung wird sodann eine Einbettung bestimmt und anschließend die entfernten Verbindungselemente wieder eingefügt, wobei eine Minimierung der Anzahl entstehender - Kreuzungen zwischen Verbindungselementen angestrebt wird. In the subsequent step of the planarization process the remote connectors are returned to the Inserted diagram, wherein the insertion is made such that the occurring crossings between connecting elements as minimal as possible. Such a planarization process can be described by a Data processing device a planarization device and a Embedding device has. The planarization device is used to check the planarity of the diagram and, if necessary, for removing suitable fasteners. By the Embedding then an embedding is determined and then reinsert the removed connectors, wherein a minimization of the number of emerging - intersections is sought between fasteners.

Eine Einbettung eines Graphen legt die Topologie der Zeichnung fest, d. h. die relative Anordnung der Darstellungselemente und der Verbindungselemente zueinander. Aus der Einbettung kann eine Zeicheneinrichtung Koordinaten für die Darstellungselemente und Koordinaten für den Verlauf der Verbindungselemente errechnen. An embedding of a graph defines the topology of the drawing firmly, d. H. the relative arrangement of the presentation elements and the connecting elements to each other. From the embedding can a drawing device coordinates for the Display elements and coordinates for the course of the Calculate fasteners.

Hierbei ist jede kreuzungsfreie Zeichnung eine planare Zeichnung. Für jede planare Zeichnung sind Darstellungselement-Uhrzeigerlisten wie folgt definiert: Für jedes Darstellungselement werden alle Nachbarn im Uhrzeigersinn gemäß der planaren Zeichnung aufgelistet. Ein Darstellungselement ist Nachbar eines anderen Darstellungselements, wenn zwischen den beiden Darstellungselementen ein Verbindungselement existiert. Die Menge aller planaren Zeichnungen mit gleichen Darstellungselement-Uhrzeigerlisten ist eine planare Einbettung. Entsprechend werden mit einer planaren Einbettung auch nur die Darstellungselement- Uhrzeigerlisten bezeichnet. Insbesondere lässt sich aus einer planaren Einbettung, d. h. den Darstellungselement-Uhrzeigerlisten eine planare Zeichnung erzeugen. Each crossing-free drawing is a planar one Drawing. For every planar drawing are Display item clock handlers defined as follows: For each display item all neighbors are clockwise according to the planar Drawing listed. A presentation element is neighbor of one other appearance element, if between the two Display elements a connection element exists. The amount all planar drawings with same Appearance clock handler lists is a planar embedding. Become accordingly with a planar embedding, only the representation element Clock hands lists called. In particular, can be from a planar embedding, d. H. the Display item clock handlers generate a planar drawing.

Die Minimierung der Kreuzungen beim Einbetten von entfernten Verbindungselementen kann mit Hilfe der sogenannten SPQR-Baum- Datenstruktur mit guten Ergebnissen gelöst werden. Dies ist in C. Gutwenger, P. Mutzel und R. Weiskircher (2001): Inserting an edge into a planar graph Proc. Twelfth, ACM-SIAM Symposium of Discrete Algorithms (SODA 2001), ACM Press, 246-255, beschrieben. The minimization of crossings when embedding remote connectors can be solved with the help of the so-called SPQR tree data structure with good results. This is in C. Gutwenger, P. Mutzel and R. Weiskircher ( 2001 ): Inserting an edge into a planar graph Proc. Twelfth, ACM-SIAM Symposium of Discrete Algorithms (SODA 2001 ), ACM Press, 246-255.

Nach der Durchführung der Planarisierung mit Hilfe der Planarisierungseinrichtung und der anschließenden Einbettung entfernter Verbindungselemente mit Hilfe der Einbettungseinrichtung erfolgt die zeichnerische Erzeugung des Diagramms mit Hilfe einer Zeicheneinrichtung. Eine derartige Zeicheneinrichtung erstellt automatisch vorzugsweise mit Hilfe einer orthogonalen Gitterstruktur eine Zeichnung des Diagramms. Hierbei werden die Darstellungselemente auf Kreuzungspunkten des Gitters angeordnet und die Verbindungselemente auf den Gitterlinien vorgesehen, so dass vorzugsweise nur horizontale oder vertikale Verbindungselemente vorgesehen sind. After carrying out the planing with the help of Planarisierungseinrichtung and the subsequent embedding remote fasteners using the Embedding device is the drawing generation of the diagram with Help of a drawing device. Such Drawing device automatically creates preferably with the help of a orthogonal lattice structure a drawing of the diagram. in this connection become the presentation elements at crossing points of the grid arranged and the fasteners on the grid lines provided so that preferably only horizontal or vertical Connecting elements are provided.

Bei nicht-hierarchischen Verfahren kann mit vorstehend beschriebenem Verfahren eine gute Übersichtlichkeit des Layouts und somit eine gute Lesbarkeit des Diagramms erzielt werden. Sofern das Diagramm jedoch hierarchische Strukturen, d. h. gerichtete Verbindungselemente (Pfeile) aufweist, wird die Hierarchie bei derartigen Verfahren vollständig ignoriert. Dieser wesentliche Aspekt von Diagrammen, die hierarchische Verknüpfung einzelner Darstellungselemente, durch die im Software-Engineering die Vererbung dargestellt wird, ist somit nicht gut lesbar. Die Übersichtlichkeit derartiger Diagramme ist sehr gering. For non-hierarchical methods, see above described procedure a good clarity of the layout and thus good readability of the diagram can be achieved. However, if the diagram contains hierarchical structures, i. H. directed connecting elements (arrows), is the Hierarchy completely ignored in such procedures. This essential aspect of charts, the hierarchical Linking of individual presentation elements, by means of the Software engineering the inheritance is presented is thus Not readable. The clarity of such diagrams is very low.

Bei gemischt hierarchischen Verfahren ist es aus Seemann (J. Seemann (1998): Extending the Sugiyama algorithm for drawing UML class diagrams. Lecture Notes in Computer Science, LNCS 1353, 414-423) bekannt, derartige Diagramme in zwei Phasen aufzubauen. In der ersten Phase werden ausschließlich die hierarchischen Strukturen berücksichtigt und graphisch visualisiert. Anschließend werden die nicht-hierarchischen Bestandteile in das bestehende Layout eingearbeitet. Durch die Entkopplung von hierarchischen und nicht-hierarchischen Elementen weisen derartige Diagramme insbesondere bei komplizierteren Strukturen eine Vielzahl von Kreuzungen und Knicken der Verbindungselemente auf. Die Übersichtlichkeit des Diagramms ist somit nur geringfügig verbessert. Bei Kaufmann et al. (M. Eiglsperger und M. Kaufmann (2001): An Approach for Mixed Upward Planarization, erscheint in Proc. of the Seventh International Workshop on Algorithms and Data Structures (WADS 2001), Springer Verlag) werden ungerichtete Verbindungselemente temporär gerichtet und das so entstehende ausschließlich aus gerichteten Verbindungselementen bestehende Diagramm visualisiert. Die Richtung der ursprünglich ungerichteten Verbindungselemente wird anschließend entfernt. Durch Zuweisung einer temporären Richtung für ungerichtete Verbindungselemente weisen derartige Diagramme insbesondere bei komplizierten Strukturen eine Vielzahl von Kreuzungen der Verbindungselemente auf. Die Übersichtlichkeit des Diagramms ist somit nur geringfügig verbessert. In the case of mixed hierarchical methods, it is known from Seemann (J. Seemann ( 1998 ): Extending the Sugiyama Algorithm for drawing UML class diagrams., Lecture Notes in Computer Science, LNCS 1353 , 414-423 ) to construct such diagrams in two phases. In the first phase, only the hierarchical structures are considered and graphically visualized. Subsequently, the non-hierarchical components are incorporated into the existing layout. As a result of the decoupling of hierarchical and non-hierarchical elements, such diagrams have a multiplicity of intersections and kinks of the connecting elements, in particular in the case of more complicated structures. The clarity of the diagram is thus only slightly improved. In Kaufmann et al. (M. Eiglsperger and M. Kaufmann ( 2001 ): At Approach for Mixed Upward Planarization, published in Proc. Of the Seventh International Workshop on Algorithms and Data Structures (WADS 2001 ), Springer Verlag), non-directional connectors are temporarily addressed and the resulting visualized exclusively from directional fasteners existing diagram. The direction of the originally undirected fasteners is then removed. By assigning a temporary direction for non-directional connection elements, such diagrams have a multiplicity of intersections of the connection elements, in particular in the case of complicated structures. The clarity of the diagram is thus only slightly improved.

Die Darstellung von hierarchischen oder gemischt hierarchischen Diagrammen mit Hilfe bekannter Verfahren weist den Nachteil auf, dass insbesondere bei Diagrammen mit einer Vielzahl von Diagrammelementen und/oder einer Vielzahl von Verbindungselementen diese Diagramme schlecht lesbar sind. The representation of hierarchical or mixed hierarchical Diagrams using known methods has the disadvantage on that, especially on charts with a variety of Diagram elements and / or a variety of Connecting elements these diagrams are difficult to read.

Aufgabe der Erfindung ist es, die Übersichtlichkeit von Diagrammen insbesondere von hierarchischen oder gemischt hierarchischen Diagrammen zu verbessern. The object of the invention is the clarity of Diagrams in particular of hierarchical or mixed hierarchical diagrams.

Die Lösung der Aufgabe erfolgt durch die erfindungsgemäße Datenverarbeitungseinrichtung gemäß Anspruch 1 und das erfindungsgemäße Layout-Gestaltungsverfahren für Diagramme gemäß Anspruch 14. The solution of the problem is achieved by the invention Data processing device according to claim 1 and the Layout design method according to the invention for diagrams according to Claim 14.

Die erfindungsgemäße Datenverarbeitungseinrichtung zur automatischen Layoutgestaltung, insbesondere von hierarchischen oder gemischt hierarchischen Diagrammen weist eine Planarisierungseinrichtung, eine Einbettungseinrichtung, eine Zeicheneinrichtung und eine Visualisierungseinrichtung sowie erfindungsgemäß zusätzlich eine Verknüpfungseinrichtung auf. Mit Hilfe der Planarisierungseinrichtung erfolgt die Überprüfung der Planarität des Diagramms und ggf. die Erzeugung eines planaren Diagramms durch Entfernen geeigneter Verbindungselemente und/oder geeigneter Darstellungselemente. Mit Hilfe der Einbettungseinrichtung werden eine Einbettung bestimmt und die entfernten Verbindungs- und/oder Darstellungselemente bei Minimierung der Anzahl der entstehenden Kreuzungen wieder eingefügt. Die Planarisierungseinrichtung und die Einbettungseinrichtung führen beispielsweise das vorstehend beschriebene Verfahren von Nardelli et al und Gutwenger et al. durch. The data processing device according to the invention for automatic layout design, especially of hierarchical or mixed hierarchical diagrams assigns one Planarisierungseinrichtung, an embedding device, a Drawing device and a visualization device as well According to the invention in addition to a linking device. With Help of the planarization device is the review the planarity of the diagram and possibly the generation of a planar diagram by removing appropriate Connecting elements and / or suitable presentation elements. With the help of Embedding are determined an embedding and the remote connection and / or presentation elements Minimizing the number of emerging intersections again inserted. The planarization device and the Embedding device, for example, lead the one described above Method of Nardelli et al. And Gutwenger et al. by.

Eine erhebliche Verbesserung der Lesbarkeit und Übersichtlichkeit von insbesondere hierarchischen und gemischt hierarchischen Diagrammen wird erfindungsgemäß bereits durch das Vorsehen einer Verknüpfungseinrichtung erzielt. Mit Hilfe der Verknüpfungseinrichtung erfolgt ein automatisches Verknüpfen von Verbindungselementen, die mit demselben Darstellungselement verbunden sind. Erfindungsgemäß werden hierbei vorzugsweise nur gerichtete Verbindungselemente miteinander verknüpft. Es erfolgt keine Verknüpfung von gerichteten mit ungerichteten Verbindungselementen. Erfindungsgemäß trifft somit beispielsweise bei gerichteten Verbindungselementen nur ein einziges Verbindungselement auf ein Darstellungselement. A significant improvement in readability and Clarity of particular hierarchical and mixed Hierarchical diagrams according to the invention already the provision of a linking device achieved. With help the linking device is an automatic Linking connectors that use the same Representation element are connected. According to the invention in this case, preferably only directional connection elements linked together. There is no linkage of directed with non-directional fasteners. In accordance with the invention thus, for example, with directional fasteners only a single connection element on a display element.

Für ungerichtete Verbindungselemente werden erfindungsgemäß vorzugsweise keine Verknüpfungselemente eingefügt. Für gerichtete Verbindungselemente ergeben sich drei Möglichkeiten:

  • a) Für jedes Darstellungselement mit mindestens zwei eingehenden gerichteten Verbindungselemente wird ein Verknüpfungselement eingefügt, um alle eingehenden gerichteten Verbindungselemente zu verknüpfen.
  • b) Für jedes Darstellungselement mit mindestens zwei ausgehenden gerichteten Verbindungselemente wird ein Verknüpfungselement eingefügt, um alle ausgehenden gerichteten Verbindungselemente zu verknüpfen.
  • c) Für jedes Darstellungselement mit mindestens zwei ausgehenden gerichteten Verbindungselemente wird ein Verknüpfungselement eingefügt um alle ausgehenden gerichteten Verbindungselemente zu verknüpfen und für jedes Darstellungselement mit mindestens zwei eingehenden gerichteten Verbindungselemente wird ein Verknüpfungselement eingefügt um alle eingehenden gerichteten Verbindungselemente zu verknüpfen.
For non-directional fasteners according to the invention preferably no linking elements are inserted. For directional fasteners there are three possibilities:
  • a) For each display element with at least two incoming directed connection elements, a link element is inserted to link all incoming directional connection elements.
  • b) For each display element having at least two outgoing directional connection elements, a link element is inserted to link all outgoing directional connection elements.
  • c) For each display element having at least two outgoing directional connection elements, a link element is inserted to link all outgoing directional connection elements, and for each presentation element having at least two incoming directional connection elements a link element is inserted to link all incoming directional connection elements.

Damit ist im Fall a. jedes Darstellungselement somit gemäß der Erfindung vorzugsweise maximal mit einem eingehend gerichteten Verbindungselement verknüpft, d. h. ein Verbindungselement, das zum Darstellungselement hinführt. Im Fall b. ist jedes Darstellungselement somit gemäß der Erfindung vorzugsweise maximal mit einem ausgehenden gerichteten Verbindungselement verknüpft, d. h. ein Verbindungselement, das vom Darstellungselement wegführt. Im Fall c. ist jedes Darstellungselement somit gemäß der Erfindung vorzugsweise maximal mit einem ausgehenden gerichteten Verbindungselement verknüpft und maximal einem eingehenden gerichteten Verbindungselement verknüpft. Für jeden Fall a.-c. ist jedes Darstellungselement mit ungerichteten Verbindungselementen in beliebiger Zahl verknüpft. Thus, in case a. each display element thus according to the Invention preferably maximum with a detailed direction Linked link, d. H. a connector that leads to the presentation element. In case b. is every Representation element thus according to the invention preferably maximum with one outgoing directed connection element linked, d. H. a connecting element from the Carries away presentation element. In case c. is every presentation element thus according to the invention preferably a maximum of one outgoing directed link and maximum linked to an incoming directed link. For every case a.-c. is every presentation element with linked non-directional connectors in any number.

Die bei der erfindungsgemäßen Datenverarbeitungseinrichtung ferner vorgesehene Zeicheneinrichtung dient zur Erzeugung des Diagramms. Das Diagramm wird somit erzeugt, nachdem mit Hilfe der Verknüpfungseinrichtung, der Planarisierungseinrichtung und der Einbettungseinrichtung eine Einbettung des Diagramms mit erheblich verbesserter Übersichtlichkeit erzeugt wurde. Die Zeicheneinrichtung führt automatisch eine Anordnung der Darstellungselemente, vorzugsweise auf Kreuzungspunkten eines orthogonalen Gitters durch und verbindet die Darstellungselemente wie zuvor durch die Verknüpfungseinrichtung, die Planarisierungseinrichtung und die Einbettungseinrichtung festgelegt, vorzugsweise durch horizontale und vertikale Verbindungselemente. Dies kann beispielsweise durch ein orthogonales Zeichenverfahren erfolgen (u. a. M. Eiglsperger, U. Fößmeier, M. Kaufmann (2000): Orthogonal Graph Drawing with Constraints Proc. 11th Symposium on Discrete Algorithms (SODA'00), 3-11, ACM-SIAM). Das von der Zeicheneinrichtung erzeugte Diagramm wird mit Hilfe einer Visualisierungseinrichtung dargestellt. Bei der Visualisierungseinrichtung kann es sich beispielsweise um einen Bildschirm handeln, auf dem das von der Zeicheneinrichtung erzeugte Diagramm dargestellt wird. Als Visualisierungseinrichtung kann ebenfalls ein Drucker oder eine andere Art von Datenausgabeeinrichtung vorgesehen sein, die zur Visualisierung des Diagramms geeignet sind. The further provided in the data processing device according to the invention drawing device is used to generate the diagram. The diagram is thus generated after an embedding of the diagram has been produced with considerably improved clarity with the aid of the linking device, the planarization device and the embedding device. The drawing device automatically performs an arrangement of the presentation elements, preferably at crossing points of an orthogonal grid, and connects the presentation elements as previously defined by the linking device, the planarization device and the embedding device, preferably by horizontal and vertical connecting elements. This can be done, for example, by an orthogonal drawing method (inter alia M. Eiglsperger, U. Fößmeier, M. Kaufmann ( 2000 ): Orthogonal Graph Drawing with Constraints Proc. 11th Symposium on Discrete Algorithms (SODA'00), 3-11, ACM-SIAM ). The diagram generated by the drawing device is displayed by means of a visualization device. The visualization device may be, for example, a screen on which the diagram generated by the drawing device is displayed. As a visualization device can also be provided a printer or other type of data output device, which are suitable for visualizing the diagram.

Sofern bei Überprüfung der Planarität des Diagramms mit Hilfe der Planarisierungseinrichtung festgestellt wird, dass das Diagramm planar ist, also keine Verbindungselemente und/oder Darstellungselemente entfernt werden müssen, kann die Einbettungseinrichtung darauf beschränkt werden, nur die Einbettung zu bestimmten und muss nicht eingesetzt werden, um ein Einbetten entfernter Verbindungselemente und/oder Darstellungselemente durchzuführen. Unless checking the planarity of the diagram with help the planarization device is determined that the Diagram is planar, so no fasteners and / or The display elements may need to be removed Embedding device to be limited to, only the embedding too certain and does not need to be used to embed remote connectors and / or display elements perform.

Vorzugsweise wird durch die Verknüpfungseinrichtung ein Zwischenelement eingefügt. Das Zwischenelement wird derart eingefügt, dass sämtliche beispielsweise gerichteten Verbindungselemente, die mit einem Darstellungselement verbunden sind, mit dem Zwischenelement verbunden werden und das Zwischenelement sodann mit dem Darstellungselement verbunden ist. Die Zusammenführung von gerichteten oder ggf. auch ungerichteten Verbindungselementen in einem Zwischenelement führt dazu, dass zwischen dem entsprechenden Zwischenelement und dem Darstellungselement nur ein einziges, gerichtetes oder ggf. auch ungerichtetes Verbindungselement vorgesehen ist. Bei dem Zwischenelement handelt es sich um ein virtuelles bzw. künstlich erzeugtes Darstellungselement. Von der in der erfindungsgemäßen Datenverarbeitungseinrichtung nachfolgenden Planarisierungseinrichtung und der Einbettungseinrichtung wird das Zwischenelement erfindungsgemäße wie ein Darstellungselement behandelt. Es wird somit sowohl bei der Überprüfung der Planarität des Diagramms als auch bei der späteren Einbettung entfernter Verbindungselemente und/oder Darstellungselemente berücksichtigt. Durch die Verwendung und Berücksichtigung der Zwischenelemente im Planarisierungsverfahren und Einbettungsverfahren wird eine Einbettung des Diagramms bestimmt, so dass in dem folgenden (ggf. geeignet modifizierten) Zeichenverfahren eine Zeichnung des Diagramms erstellt wird, bei dem die Verbindungselemente zusammengeführt werden. Werden keine Zwischenelemente eingefügt, wird die Planarisierungseinrichtung mit der anschließenden Einbettungseinrichtung im allgemeinen keine Einbettung bestimmen, bei der die Verbindungselemente zusammengeführt werden. Also wird das Zeichenverfahren auch keine Zeichnung erstellen, bei der die Verbindungselemente zusammengeführt werden. Übliche Zeichenverfahren werden hierzu entsprechend modifiziert, um das Zwischenelement als virtuelles Element und daher als nicht zu zeichnendes Element zu erkennen. Preferably, by the linking device a Inserted intermediate element. The intermediate element becomes such inserted that all, for example, directed Connecting elements connected to a display element are to be connected to the intermediate element and the Intermediate element then connected to the display element is. The merger of directed or possibly also non-directional fasteners in an intermediate element causes that between the corresponding intermediate element and the display element only a single, directed or possibly also undirected connecting element is provided. at the intermediate element is a virtual or artificially created representation element. From in the inventive data processing device following Planarisierungseinrichtung and the embedding device is the intermediate element according to the invention as a Treated representation element. It is thus both in the review of the Planarity of the diagram as well as later embedding remote connectors and / or display elements considered. By using and considering the Intermediate elements in the planarization process and Embedding method, an embedding of the diagram is determined so that in the following (possibly suitably modified) drawing method a drawing of the chart is created in which the Connecting elements are merged. Will not be Inserted intermediate elements, the planarization with the following embedding device in general no Determine embedding at which the fasteners be merged. So the drawing process is not synonymous Create a drawing where the fasteners merge become. Conventional drawing methods are used accordingly modified to the intermediate element as a virtual element and therefore to recognize as an element not to be drawn.

Durch das erfindungsgemäße Vorsehen einer Verknüpfungseinrichtung in Kombination mit der Planarisierungs- und der Einbettungseinrichtung kann ein Diagramm mit einer möglichst geringen, vorzugsweise minimierten Anzahl an Kreuzungen realisiert werden. Ferner ist es mit dem vorstehend beschriebenen erfindungsgemäßen Verfahren möglich, ein Diagramm derart darzustellen, dass die gerichteten Verbindungselemente einer hierarchischen Struktur in die gleiche Richtung weisen. Eine zusammenhängende hierarchische Struktur, d. h. üblicherweise ein Teildiagramm des Diagramms, bei dem sämtliche Darstellungselemente mit gerichteten Verbindungselementen verbunden sind, weist somit vorzugsweise in eine horizontale oder vertikale Richtung. Ferner ist es hierdurch möglich, dass sich hierarchische Strukturen einander nicht enthalten. Dies bedeutet, dass eine hierarchische Struktur nicht innerhalb einer anderen hierarchischen Struktur enthalten ist, beispielsweise eine hierarchische Struktur durch gerichtete Verbindungselemente mit einer anderen hierarchischen Struktur umgeben bzw. eingeschlossen ist. Hierdurch ist die Übersichtlichkeit und Lesbarkeit eines Diagramms, beispielsweise eines zur Softwareentwicklung erforderlichen Diagramms erheblich verbessert. By the inventive provision of a Linking device in combination with the planarization and the Embedding device can be a diagram with a possible small, preferably minimized number of intersections will be realized. Further, it is the same as described above method according to the invention possible, a diagram such to represent that the directed connecting elements of a hierarchical structure pointing in the same direction. A coherent hierarchical structure, d. H. usually one Partial diagram of the diagram in which all Display elements connected to directed connectors are thus preferably in a horizontal or vertical direction. Furthermore, it is thereby possible that hierarchical structures do not contain each other. This means that a hierarchical structure is not within one other hierarchical structure is included, for example a hierarchical structure by directed Surrounding or connecting elements with a different hierarchical structure is included. This is the clarity and Readability of a diagram, for example a to Software development required diagram significantly improved.

Vorzugsweise erfolgt durch die Planarisierungseinrichtung nur ein Entfernen von ungerichteten Verbindungselementen. Dies ist bei gemischt hierarchischen Strukturen vorteilhaft, da somit ein Kreuzen von gerichteten Verbindungselementen vermieden ist, da durch das Entfernen gerichteter Verbindungselemente zur Erzeugung eines planaren Diagramms diese gerichteten Verbindungselemente von der Einbettungseinrichtung später wieder eingefügt würden und hierbei stets Kreuzungen entstehen. Es entstehen somit keine Kreuzungen gerichteter Verbindungselemente aus unterschiedlichen hierarchischen Strukturen. Durch eine derartige Planarisierungseinrichtung ist somit sichergestellt, dass keine Kreuzungen gerichteter Verbindungselemente innerhalb einer hierarchischen Struktur und keine Kreuzung von Verbindungselementen unterschiedlicher hierarchischer Strukturen auftreten. Hierdurch ist die Übersichtlichkeit des Diagramms weiter verbessert. Preferably, only by the planarization device a removal of non-directional fasteners. This is in mixed hierarchical structures advantageous because thus a crossing of directional connecting elements is avoided because by removing directed fasteners for Generation of a planar diagram that directed Connecting elements from the embedding later again would be inserted and this always arise crossings. It thus arise no crossings of directed fasteners from different hierarchical structures. By a Such planarization device is thus ensured that no intersections of directional fasteners within a hierarchical structure and no crossing of Connecting elements of different hierarchical Structures occur. As a result, the clarity of the Diagram further improved.

Sofern zur Planarisierung gerichtete Verbindungselemente entfernt werden müßten, ist erfindungsgemäß vorzugsweise eine Aufwärtsplanarisierungseinrichtung vorgesehen (siehe später). Provided that for planarization directed fasteners should be removed, according to the invention is preferably one Upward Planarisierungseinrichtung provided (see later).

Vorzugsweise ist die Einbettungseinrichtung derart ausgebildet, dass die einzubettenden Verbindungselemente derart eingebettet werden, dass sich möglichst keine gerichteten Verbindungselemente kreuzen. Diese bevorzugte Ausgestaltung der Einbettungseinrichtung stellt insbesondere eine Alternative zu der vorstehend beschriebenen bevorzugten Ausgestaltung der Planarisierungseinrichtung dar. Durch diese Art der Einbettungseinrichtung ist verhindert, dass sich gerichtete Verbindungselemente kreuzen, selbst wenn zugelassen wurde, dass von der Planarisierungseinrichtung gerichtete Verbindungselemente entfernt wurden. Preferably, the embedding device is designed such that that the embedded fasteners embedded in such a way be that possible no directed Cross fasteners. This preferred embodiment of Embedding device provides in particular an alternative to the previously described preferred embodiment of Planarisierungseinrichtung by this type of Embedding device prevents directional Crossing fasteners, even if allowed by the Planarisierungseinrichtung directed fasteners were removed.

Vorzugsweise ist die Einbettungseinrichtung derart weitergebildet, dass auch ungerichtete Verbindungselemente derart eingebettet werden, dass vorzugsweise keine zumindest aber eine minimierte Anzahl an Kreuzungen zwischen gerichteten und ungerichteten Verbindungselementen auftritt. Preferably, the embedding device is such further developed that also undirected fasteners such embedded, that preferably no but at least one minimized number of intersections between directed and non-directional fasteners occurs.

Bei einer weiteren bevorzugten Ausführungsform wird durch die Planarisierungseinrichtung ein cluster-planares Diagramm erzeugt. Ein Cluster eines Diagramms ist eine Teilmenge der Darstellungselemente. Verschiedene Cluster können einander enthalten, d. h. z. B. ein Cluster C2 ist in einem Cluster C1 enthalten, wenn jedes Darstellungselement aus C2 auch in C1 enthalten ist (umgekehrt muss nicht jedes Element aus C1 in C2 enthalten sein). Es gilt, dass ein Cluster entweder ganz in einem anderen Cluster enthalten ist, (bzw. umgekehrt) oder die Schnittmenge der beiden Cluster leer ist. In a further preferred embodiment is by the Planarizer a cluster-planar diagram generated. A cluster of a chart is a subset of the Display elements. Different clusters can be each other included, d. H. z. B. a cluster C2 is in a cluster C1 contain, if every representation element from C2 also in C1 (conversely, not every element from C1 in C2 be included). It is true that a cluster is either completely in another cluster is included (or vice versa) or the Intersection of the two clusters is empty.

Eine cluster-planare Zeichnung eines geclusterten Diagramms ist eine planare Zeichnung, in der für jedes Cluster die Darstellungselemente des Clusters in einer gemeinsamen Region liegen, so dass:

  • a) Darstellungselemente fremder Cluster nicht in der Region enthalten sind
  • b) Alle Verbindungselemente zwischen Darstellungselementen des Clusters innerhalb der Region verlaufen
  • c) Fremde Verbindungselemente, die nicht an eines der Darstellungselemente des Clusters geknüpft sind, nicht durch die Region laufen.
A cluster-planar drawing of a clustered diagram is a planar drawing in which, for each cluster, the display elements of the cluster are in a common region, such that:
  • a) Representative elements of foreign clusters are not included in the region
  • b) All the links between display elements of the cluster run within the region
  • c) Foreign links that are not linked to any of the cluster's rendering elements do not pass through the region.

Für jede cluster-planare Zeichnung sind Cluster-Uhrzeigerlisten wie folgt definiert: Für jedes Cluster werden alle Nachbarn im Uhrzeigersinn gemäß der planaren Zeichnung aufgelistet. Ein Darstellungselement ist Nachbar eines Clusters, wenn das Darstellungselement nicht im Cluster enthalten ist und es ein zweites Darstellungselement gibt, das im Cluster enthalten ist und zwischen dem ersten und dem zweiten Darstellungselementen ein Verbindungselement existiert. Die Darstellungs-Uhrzeigerlisten sind definiert, wie bei planaren Zeichnungen (jede cluster-planare Zeichnung ist insbesondere eine planare Zeichnung). For each cluster-planar drawing, cluster clock handlers are Defined as follows: For each cluster, all neighbors in the Clockwise listed according to the planar drawing. On Representation element is neighbor of a cluster, if that Presentation item is not included in the cluster and it is a second representation element contained in the cluster and between the first and second display elements a connection element exists. The Display clock handlers are defined as in planar drawings (each Cluster-planar drawing is especially a planar one Drawing).

Die Menge aller cluster-planaren Zeichnungen mit gleichen Darstellungselement-Uhrzeigerlisten und Cluster-Uhrzeigerlisten ist eine cluster-planare Einbettung. Insbesondere lässt sich aus einer cluster-planaren Einbettung, d. h. den Darstellungselement-Uhrzeigerlisten und den Cluster- Uhrzeigerlisten eine cluster-planare Zeichnung erzeugen. Insbesondere lassen sich aus einer cluster-planaren Einbettung, d. h. den Darstellungselement-Uhrzeigerlisten unendlich viele cluster-planare Zeichnung erzeugen. Die Menge der clusterplanaren Zeichnungen zweier verschiedener Einbettungen ist disjunkt. In der Erfindung werden die Cluster wie folgt genutzt: Jede hierarchische Struktur wird in ein Cluster gefasst. Keines dieser so definierten Cluster enthält ein anderes Cluster. In einer cluster-planare Zeichnung des Diagramms ist dann jede hierarchische Struktur in einer eigenen Region platziert. Dadurch können die hierarchischen Strukturen einander nicht einschließen. The set of all cluster-planar drawings with the same Display item clock handlers and cluster clock handlers is a cluster-planar embedding. In particular, can be from a cluster-planar embedding, d. H. the Display item clock handlers and the cluster Clock Lists create a cluster-planar drawing. In particular, from a cluster-planar embedding, d. H. infinitely many of the Appearance Clock Hand Lists Create a cluster-planar drawing. The amount of clusterplanar drawings of two different embeds is disjoint. In the invention, the clusters become as follows used: Each hierarchical structure is put into a cluster. None of these defined clusters contains another Cluster. In a cluster-planar drawing of the chart is then every hierarchical structure in its own region placed. This allows the hierarchical structures do not include each other.

Da das so erzeugte geclusterte Diagramm i. a. nicht clusterplanar ist, geht die Cluserplanarisierungseinrichtung so vor, dass zunächst auf Clusterplanarität getestet wird (Q.-W. Feng, R. F. Cohen und P. Eades (1995): Planarity for Clustered Graphs, P. Spirakis (ed), Algorithms - ESA '95, Lecture Notes in Computer Science 979, Springer Verlag, 213-226)) und gegebenenfalls durch das Entfernen einer möglichst kleinen Menge von Verbindungselementen erzeugt wird. Since the clustered diagram thus generated is generally not cluster-planar, the cluster planarization facility starts by testing for cluster planarity (Q.-W. Feng, RF Cohen and P. Eades ( 1995 ): Planarity for Clustered Graphs, P. Spirakis ( 1995 )). ed), Algorithms - ESA '95, Lecture Notes in Computer Science 979, Springer Verlag, 213-226)) and optionally by removing as small a quantity of connecting elements as possible.

Vorzugsweise ist hierbei die Einbettungseinrichtung eine Clusterplanaritäts-Einbettungseinrichtung, die derart ausgestaltet ist, dass die Verbindungselemente derart eingeführt werden, dass eine cluster-planare Einbettung erfolgt. In einer Clusterplanaritäts-Einbettungseinrichtung wird eine clusterplanare Einbettung bestimmt und die entfernten Verbindungselemente werden wieder eingefügt, wobei eine Minimierung der Anzahl der entstehenden Kreuzungen zwischen Verbindungselementen angestrebt wird. Preferably, in this case, the embedding device is a Cluster planarity embedding facility that is so is configured that the connecting elements introduced in such a way be that a cluster-planar embedding takes place. In a Cluster planarity embedding device becomes a clusterplanar embedding determined and the distant Fasteners are reinserted, with a minimization the number of emerging intersections between The aim is connecting elements.

Bei beispielsweise in gemischt hierarchischen Diagrammen enthaltenen hierarchischen Strukturen kann es vorkommen, dass diese zyklisch sind und somit keine Hierarchie darstellen. Sofern ein Diagramm eine derartige gerichtete, zyklische Struktur aufweist, ist es nicht möglich, diese derart darzustellen, dass sämtliche gerichtete Verbindungselemente dieser gerichteten Struktur in eine Richtung weisen. Zur Verbesserung der Übersichtlichkeit des Diagramms mit Hilfe der vorstehend beschriebenen erfindungsgemäßen Datenverarbeitungseinrichtung ist es vorteilhaft, diese gerichete zyklische Struktur zuerst derart abzuändern, dass es sich ebenfalls um eine hierarchische Struktur handelt, d. h. als Struktur, bei der sämtliche gerichtete Verbindungselemente in eine Richtung weisen, darstellbar ist. Erst nach der Optimierung der Darstellung des Diagramms mit Hilfe der erfindungsgemäßen Datenverarbeitungseinrichtung wird diese Hierarchie wieder in eine gerichtete zyklische Struktur zurückgeändert. Durch die nachfolgend beschriebenen bevorzugten Ausführungsformen der Datenverarbeitungseinrichtung können auch bei derartigen komplizierten Diagrammen die zumindest eine gerichtete zyklische Struktur, d. h. eine Struktur, die keine Hierarchie ist, aufweisen, eine erhebliche Verbesserung der Lesbarkeit und Übersichtlichkeit erzielt werden. For example, in mixed hierarchical diagrams contained hierarchical structures, it may happen that These are cyclical and therefore do not represent a hierarchy. If a diagram has such a directional, cyclic structure it is not possible to represent them in such a way that all directed fasteners of this directed Point structure in one direction. To improve the Clarity of the diagram using the above is the inventive data processing device described it is advantageous to have this directed cyclic structure first change so that it is also a hierarchical Structure, d. H. as a structure in which all directed directional fasteners in one direction, is representable. Only after the optimization of the representation of the Diagram with the aid of the invention Data processing device is this hierarchy again in a directed cyclic structure changed back. By the following described preferred embodiments of Data processing equipment can be complicated even with such Diagrams that show at least one directional cyclic structure, d. H. have a structure that is not a hierarchy, a Significant improvement in readability and clarity be achieved.

Erfindungsgemäß weist die Datenverarbeitungseinrichtung hierzu vorzugsweise eine Überprüfungseinrichtung auf. Durch die Überprüfungseinrichtung werden gerichtete Teildiagramme, dahingehend überprüft, ob sie zyklenfrei sind oder nicht. Sofern es sich um nicht-zyklenfreie Teildiagramme handelt, werden diese durch Entfernen mindestens eines Verbindungselementes zyklenfrei gemacht. Sämtliche in dem Diagramm vorkommenden gerichteten Teildiagramme werden durch die Überprüfungseinrichtung somit in hierarchische Strukturen (Hierarchien) umgewandelt, die derart darstellbar sind, dass sämtliche gerichtete Verbindungselemente dieser Struktur in eine Richtung weisen. According to the invention, the data processing device has this preferably a checking device. By the Verification device become directed sub-diagrams, checked whether they are cycle-free or not. If it is These are non-cycle-free partial diagrams by removing at least one connecting element made cycle free. All occurring in the diagram directed part diagrams are passed through the verification device thus transformed into hierarchical structures (hierarchies), which are so representable that all directed Have fasteners of this structure in one direction.

Hierarchische Strukturen sind somit bereits nicht zyklisch (im gerichteten Sinne). Hierarchical structures are thus already not cyclical (im directed senses).

In praktischen Fällen sind hierarchische Strukturen meistens bereits Bäume und falls der (seltene) Fall auftritt, dass eine hierarchische Struktur kein Baum ist, reicht meist das Entfernen von sehr wenigen Verbindungselementen (z. B. 1 bis 3) aus, um einen Baum daraus zu erzeugen. Hierbei ist eine hierarchische Struktur, d. h. ein Teildiagramm das nur gerichtete Verbindungselemente aufweist, dann ein Baum, wenn jedes Darstellungselement höchstens ein eingehendes Verbindungselement hat, bzw. wenn jedes Darstellungselement höchstens ein ausgehendes Verbindungselement hat und die hierarchische Struktur zyklenfrei ist. In practical cases, hierarchical structures are mostly already trees and if the (rare) case occurs, that one hierarchical structure is not a tree, that's usually enough Removing very few fasteners (eg 1 to 3) out to make a tree out of it. Here is one hierarchical structure, d. H. a sub-chart that only Directed fasteners, then a tree, if each presentation element at most one incoming Has connection element, or if each presentation element at most has an outgoing connection element and the hierarchical one Structure is cycle-free.

Werden Verbindungselemente entfernt und später wieder eingefügt, entsteht damit kein Zyklus im gerichteten Sinne. In Zeichnungen, die so erzeugt werden, nehmen hierarchische Strukturen nicht vorzugsweise eine horizontale oder vertikale Richtung ein, da die entfernten Verbindungselemente orthogonal oder entgegengesetzt zur Richtung verlaufen können. Are fasteners removed and later again inserted, it does not create a cycle in the directional sense. In Drawings thus created take hierarchical Structures not preferably a horizontal or vertical Direction, since the remote connection elements orthogonal or opposite to the direction.

Das aus dem gerichteten Teildiagramm entfernte gerichtete Verbindungselement wird insbesondere von der Planarisierungs- und Einbettungseinrichtung als ungerichtetes Verbindungselement behandelt. Die erfindungsgemäße Überprüfungseinrichtung ist vorzugsweise der Planarisierungs- und der Einbettungseinrichtung vorgeschaltet. Insbesondere ist sie auch der der Planarisierungseinrichtung vorgeschalteten Verknüpfungseinrichtung vorgeschaltet. The directed away from the directed partial diagram Connecting element is in particular of the planarization and Embedding device as an undirected connecting element treated. The checking device according to the invention is preferably the planarization and the embedding device upstream. In particular, she is also the the Planarisierungseinrichtung upstream linking device upstream.

Die Planarisierungseinrichtung ist vorzugsweise mit einer Aufwärtsplanarisierungseinrichtung und einer Aufwärtseinbettungseinrichtung derart weitergebildet, dass die Aufwärtsplanarisierungseinrichtung zunächst die Aufwärtsplanarität einer hierarchischen Struktur überprüft, sowie ggf. geeignete Verbindungselemente der hierarchischen Struktur entfernt. Unter einem aufwärtsplanaren Teildiagramm wird ein Teildiagramm verstanden, dass einerseits planar ist, d. h. keine sich kreuzenden Verbindungselemente aufweist und bei dem andererseits sämtliche Verbindungselemente in eine Richtung weisen. Anschließend werden die entfernten Verbindungselemente von der Aufwärtseinbettungseinrichtung derart wieder in die Teilstruktur eingefügt, dass die Aufwärtsplanarität erhalten bleibt und möglichst wenige Kreuzungen entstehen. Anschließend erfolgt die Bearbeitung des Diagramms mit Hilfe der Planarisierungs-, Einbettungs-, Zeichnungs- und Visualisierungseinrichtung wie vorstehend beschrieben. The planarization device is preferably provided with a Upward Planarizer and a Upward embedding device developed such that the Upward planing means first the upwards planarity of a checked hierarchical structure, and possibly appropriate Removed connectors of the hierarchical structure. Under a Upward Planar Partial Diagram is understood as a partial diagram, that on the one hand is planar, d. H. no intersecting Has connecting elements and on the other hand all Point fasteners in one direction. Then be the remote connection elements of the Upward embedding device so inserted back into the substructure that the upward planarity is preserved and as few as possible Intersections arise. Subsequently, the processing of the Diagram using the planarization, embedding, Drawing and visualization device as above described.

Vorzugsweise ist die Einbettungseinrichtung hierbei derart ausgestaltet, dass beim Einfügen von Verbindungselementen die Aufwärtsplanarität jedes einzelnen Teildiagramms nicht zerstört wird. Preferably, the embedding device is in this case designed that when inserting fasteners the Upward planarity of each sub-graph not destroyed becomes.

Bei einer weiteren bevorzugten Ausführungsform ist die Aufwärtsplanarisierungseinrichtung vorzugsweise mit einer Clusterplanarisierungseinrichtung und einer Clusterplanaritäts- Einbettungseinrichtung derart weitergebildet, dass die Clusterplanarisierungseinrichtung zunächst jede hierarchische Struktur in ein Cluster fasst und anschließend die Clusterplanarität des gesamten Diagramms überprüft, sowie ggf. geeignete ungerichtete Verbindungselemente des Diagramms entfernt, um die Clusterplanarität zu erreichen. Anschließend wird von der Clusterplanaritäts-Einbettungseinrichtung eine cluster-planare Einbettung bestimmt. Anschließend werden die entfernten Verbindungselemente von der Clusterplanaritäts- Einbettungseinrichtung derart wieder in das Diagramm eingefügt, dass die Clusterplanarität erhalten bleibt und möglichst wenige Kreuzungen entstehen. Anschließend erfolgt die Bearbeitung des Diagramms mit Hilfe der Zeichnungs- und Visualisierungseinrichtung wie vorstehend beschrieben. In a further preferred embodiment, the Upward planarization device, preferably with one Cluster planarization facility and a cluster planarity Embedding device further developed in such a way that the Cluster planarization device first each hierarchical Structure into a cluster sums up and then the Cluster planarity of the entire chart, and possibly suitable non-directional connecting elements of the diagram removed to achieve cluster planarity. Subsequently becomes a cluster planarity embedding device cluster-planar embedding determined. Subsequently, the remote connectors from the cluster planarity Embedding device so inserted back into the diagram, that the cluster planarity is preserved and as few as possible Intersections arise. Subsequently, the processing of the Diagram with the help of the drawing and Visualization device as described above.

Vorzugweise ist die Clusterplanaritäts-Einbettungseinrichtung hierbei derart ausgestaltet, dass beim Einfügen von Verbindungselementen, die Aufwärtsplanarität jedes hierarchischen Teildiagramms nicht zerstört wird. Preferably, the cluster planarity embedding device in this case designed such that when inserting Fasteners, the upplane planarity each hierarchical subdiagram is not destroyed.

Vorzugweise ist die Clusterplanaritäts-Einbettungseinrichtung ferner derart ausgestaltet, dass beim Einfügen von Verbindungselementen, Kreuzungen zwischen ungerichteten Verbindungselementen und gerichteten Verbindungselementen vermieden werden. Preferably, the cluster planarity embedding device further configured such that when inserting Connecting elements, intersections between undirected Fasteners and directional fasteners be avoided.

Nach sämtlichen vorstehend beschriebenen bevorzugten oder alternativen Ausgestaltungen der Verknüpfungs-, der Planarisierungs-, der Einbettungs- und/oder der Überprüfungseinrichtung erfolgt stets mit Hilfe der Zeicheneinrichtung die Erzeugung des Diagramms, dessen Übersichtlichkeit erfindungsgemäß verbessert wurde. Dass durch die Zeicheneinrichtung erzeugte Diagramm wird sodann mit Hilfe der Visualisierungseinrichtung dargestellt. After all the preferred or described above alternative embodiments of the linkage, the Planarization, embedding and / or Checking device always takes place with the help of the drawing device Generation of the diagram, its clarity according to the invention was improved. That generated by the drawing device Diagram is then using the visualization device shown.

Ferner betrifft die Erfindung ein Verfahren zur automatischen Layoutgestaltung, insbesondere von hierarchischen oder gemischt hierarchischen Diagrammen. Erfindungsgemäß werden mehrere mit demselben Darstellungselement verbundene Verbindungselemente miteinander verknüpft. In einem nächsten Schritt wird die Planarität des Diagramms überprüft und ggf. ein planares Diagramm durch Entfernen geeigneter Verbindungselemente oder Darstellungselemente erzeugt. Anschließend erfolgt ein Einfügen der entfernten Verbindungselemente und/oder Darstellungselemente, wobei die Anzahl der entstehenden Kreuzungen zwischen Verbindungselementen minimiert wird. Anschließend wird ein Diagramm erzeugt. Im letzten Schritt erfolgt die Darstellung des Diagramms beispielsweise durch einen Computerausdruck, auf einem Computerbildschirm oder einer anderen geeigneten Visualisierungseinrichtung. Furthermore, the invention relates to a method for automatic Layout design, especially of hierarchical or mixed hierarchical diagrams. According to several with connecting elements connected to the same presentation element linked together. In a next step, the Planarity of the chart checked and possibly a planar Diagram by removing suitable fasteners or Generated display elements. Subsequently, an insertion takes place the remote connection elements and / or Presentation elements, where the number of emerging intersections between Connecting elements is minimized. Subsequently, a Generated diagram. The last step is the presentation of the chart, for example, through a computer expression a computer screen or another suitable one Visualiser.

Das erfindungsgemäße Verfahren ist wie vorstehend anhand der Datenverarbeitungseinrichtung und anhand der Figuren beschrieben, vorzugsweise vorteilhaft weitergebildet. The inventive method is as above with reference to Data processing device and with reference to the figures described, preferably further developed advantageous.

Ferner betrifft die Erfindung eine Datenspeichereinrichtung wie eine Diskette, eine Compaktdisk oder ein anderes Speichermedium mit einem Programmcode, mit dem das vorstehend beschriebene Verfahren durchgeführt werden kann. Furthermore, the invention relates to a data storage device such as a floppy disk, compact disk or other storage medium with a program code with which the above-described Procedure can be performed.

Nachfolgend wird die Erfindung anhand bevorzugter Ausführungsformen unter Bezugnahme auf die anliegenden Zeichnungen näher erläutert. The invention will be described below with reference to preferred Embodiments with reference to the accompanying drawings in more detail explained.

Es zeigen: Show it:

Fig. 1 und 2 eine Darstellung der Funktionsweise der Verknüpfungseinrichtung, Fig. 1 and 2, a representation of the operation of the link device,

Fig. 3 bis 6 Darstellungen der Funktionsweise der Planarisierungs- und der Einbettungseinrichtung, und Fig. 3 to 6 representations of the operation of the planarization and the embedding device, and

Fig. 7 bis 10 Darstellungen der Funktionsweise einer Clusterplanarisierungs- und einer Clusterplanaritäts- Einbettungseinrichtung. FIGS. 7 to 10 are illustrations of the operation of a cluster planarization and a cluster planarity embedding device.

Ein wesentlicher Aspekt der Erfindung ist in den Fig. 1 und 2 dargestellt. Anhand der Fig. 1 und 2 ist prinzipiell die Funktionsweise der Verknüpfungseinrichtung ersichtlich. Zu berücksichtigen ist hierbei, dass es sich um eine Visualisierung der Funktionsweise der Verknüpfungseinrichtung handelt. Tatsächlich handelt es sich bei der Verknüpfungseinrichtung um ein Bauelement bzw. einen Programmteil eines auf einer Datenverarbeitungseinrichtung vorhandenen Computerprogramms. An essential aspect of the invention is shown in Figs. 1 and 2. With reference to FIGS. 1 and 2, in principle, the operation of the linking device can be seen. It should be noted that this is a visualization of how the linking device works. In fact, the linking device is a component or a program part of a computer program present on a data processing device.

In Fig. 1 sind mehrere Darstellungselemente 10, 12, 14 und 16 dargestellt. Die Darstellungselemente 12, 14, 16 sind über gerichtete Verbindungselemente 18, 20, 22, die im dargestellten Beispiel als Pfeile dargestellt sind, mit dem Darstellungselement 10 verbunden. Erfindungsgemäß werden die Verbindungselemente 18, 20, 22, die alle mit dem Darstellungselement 10 verbunden sind, zusammengefasst (Fig. 2), so dass nur noch ein Verbindungselement bzw. Pfeil 24 zu dem Darstellungselement 10 führt. Insbesondere bei komplizierten Diagrammen, bei denen die einzelnen Verbindungselemente sehr eng nebeneinander angeordnet sind, ist hierdurch die Lesbarkeit und Übersichtlichkeit der Diagramme erheblich verbessert. In Fig. 1, a plurality of display elements 10 , 12 , 14 and 16 are shown. The presentation elements 12 , 14 , 16 are connected via directional connection elements 18 , 20 , 22 , which are shown in the example shown as arrows, connected to the display element 10 . According to the invention, the connecting elements 18 , 20 , 22 , which are all connected to the display element 10 , are combined ( FIG. 2) so that only one connecting element or arrow 24 leads to the display element 10 . In particular, in complicated diagrams, in which the individual connecting elements are arranged very close to each other, thereby the readability and clarity of the diagrams is significantly improved.

Erfindungsgemäß wird durch die Verknüpfungseinrichtung, durch die das vorstehend beschriebene Verfahren durchgeführt wird, ein Zwischenelement 26 eingefügt. Das Zwischenelement 26, das als virtuelles Darstellungselement betrachtet werden kann, wird in einer endgültigen Darstellung des Diagramms nicht mit dargestellt. Das Zwischenelement 26 dient ausschließlich zur besseren Durchführbarkeit der von der Planarisierungseinrichtung und der Einbettungseinrichtung vorgenommenen Schritte. Die Verbindungselemente 18, 20, 22 die ursprünglich die Darstellungselemente 12,14 bzw. 16 mit dem Darstellungselement 10 verknüpfen (Fig. 1) enden alle an dem Zwischenelement 26. Das Zwischenelement 26 ist sodann über ein neu eingeführtes Verbindungselement 24 mit dem Darstellungselement 10 verbunden. According to the invention, an intermediate element 26 is inserted by the linking device, by which the method described above is performed. The intermediate element 26 , which can be regarded as a virtual presentation element, is not shown in a final representation of the diagram. The intermediate element 26 serves exclusively for better practicability of the steps made by the planarization device and the embedding device. The connecting elements 18 , 20 , 22 which originally connect the presentation elements 12 , 14 and 16 , respectively, to the presentation element 10 ( FIG. 1) all end at the intermediate element 26 . The intermediate element 26 is then connected to the display element 10 via a newly introduced connecting element 24 .

Im folgenden wird anhand der Fig. 3 bis 6 ein vorzugsweise bei der Erfindung eingesetztes Planarisierungsverfahren, d. h. die von der Planarisierungseinrichtung und der Einbettungseinrichtung durchgeführten Schritte beschrieben. Das Durchführen dieser Schritte erfolgt durch eine Einrichtung bzw. einen Programmteil des auf der Datenverarbeitungseinrichtung vorgesehenen Programms. Die in den Fig. 3 bis 5 dargestellte Visualisierung dient ausschließlich zur Erläuterung. Die Planarisierungseinrichtung sowie die Einbettungseinrichtung führen keine Visualisierung durch. Vielmehr erfolgt die Überprüfung, ob ein Diagramm planar zeichenbar ist, im Wesentlichen anhand einer Liste, in der sämtliche Darstellungselemente und deren Verbindungen untereinander aufgeführt sind. Dies erfolgt wie vorstehend dargelegt durch eine Überprüfung, ob in dieser Liste K5-Teilgraphen oder K3,3-Teilgraphen enthalten sind. In the following, a preferably used in the invention planarization method, ie the steps performed by the planarization device and the embedding device will be described with reference to FIGS . These steps are performed by a device or a program part of the program provided on the data processing device. The visualization shown in FIGS. 3 to 5 serves exclusively for explanation. The planarization device and the embedding device do not perform visualization. Rather, the check is made as to whether a diagram is signi fi cant planar, essentially based on a list in which all presentation elements and their connections to one another are listed. This is done as stated above by checking whether K 5 sub-graphs or K 3,3 sub-graphs are contained in this list.

Vereinfacht ausgedrückt überprüft die Planarisierungseinrichtung zunächst bei einem Diagramm, wie es beispielsweise in Fig. 3 dargestellt ist, ob es sich hierbei um ein planares Diagramm handelt oder nicht, d. h. ob eine kreuzungsfreie Zeichnung des Diagramms existiert bzw. ob eine Anordnung der Darstellungselemente auf der Zeichenfläche (die zu diesem Zweck beliebig groß gewählt wurden kann), möglich ist, so dass die Verbindungselemente sich gegenseitig nicht kreuzen. Bei dieser Überprüfung wird von der Planarisierungseinrichtung festgestellt, dass es sich hierbei nicht um ein planares Diagramm handelt. Mit Hilfe von heuristischen oder exakten Verfahren erfolgt sodann durch die Planarisierungseinrichtung die Bestimmung eines oder mehrerer Verbindungselemente, die entfernt werden müssen, um das Diagramm planar darstellen zu können. Im dargestellten Beispiel (Fig. 3) muss nur das gestrichelt dargestellte Verbindungselement 30, das die beiden mit A und B bezeichneten Darstellungselemente verbindet, entfernt werden. Die übrigen Verbindungselemente zwischen den mit C bis H bezeichneten Darstellungselementen können derart umorganisiert werden, dass eine planare Darstellung des Diagramms möglich ist. Eine derartige planare Darstellung ist in Fig. 4 wiedergegeben. Das hier dargestellte Diagramm enthält sämtliche Darstellungselemente A bis H sowie mit der Ausnahme des Verbindungselements 30 sämtliche in Fig. 3 vorhandenen Verbindungselemente. Wie aus Fig. 4 ersichtlich ist, handelt es sich um ein planares, d. h. kreuzungsfreies Diagramm. In simple terms, the planarization device checks first in a diagram, as shown for example in Fig. 3, whether this is a planar diagram or not, ie whether a crossing-free drawing of the diagram exists or whether an arrangement of the display elements on the drawing surface (Which can be chosen arbitrarily large for this purpose), is possible, so that the connecting elements do not cross each other. During this check, the planarizer determines that this is not a planar graph. With the aid of heuristic or exact methods, the planarization device then determines the one or more connecting elements which have to be removed in order to be able to represent the diagram in a planar manner. In the example shown ( FIG. 3), only the connecting element 30 shown in dashed lines, which connects the two presentation elements designated A and B, has to be removed. The other connecting elements between the display elements designated C to H can be reorganized in such a way that a planar representation of the diagram is possible. Such a planar representation is shown in FIG. 4. The diagram shown here contains all the display elements A to H and, with the exception of the connecting element 30, all the connecting elements present in FIG. 3. As can be seen from Fig. 4, it is a planar, ie crossing-free diagram.

Mit Hilfe der Einbettungseinrichtung wird zunächst eine planare Einbettung einer möglichen planaren Zeichnung wie in Fig. 4 dargestellt, erzeugt. Anschließend wird nun das Verbindungselement 30 zwischen den beiden Darstellungselementen A und B wieder eingefügt. Hierdurch entsteht bei dem dargestellten Beispiel eine einzige, durch das Element 32 dargestellte Kreuzung zwischen den Verbindungselementen 30 und 34, durch das die beiden Darstellungselemente D und H miteinander verbunden sind. Das Element 32 kann als Darstellungselement betrachtet werden, so dass in Fig. 5 ein planarer Hilfsgraph dargestellt ist. Das Element 32 wird in der endgültigen Darstellung des Diagramms nicht dargestellt. With the help of the embedding device, a planar embedding of a possible planar drawing as shown in FIG. 4 is initially generated. Subsequently, the connecting element 30 is now inserted between the two display elements A and B again. This results in the illustrated example, a single, shown by the element 32 crossing between the connecting elements 30 and 34 , through which the two display elements D and H are interconnected. The element 32 can be regarded as a display element, so that in FIG. 5 a planar auxiliary graph is shown. The element 32 is not shown in the final illustration of the diagram.

Mit Hilfe einer geeigneten Zeicheneinrichtung, durch die die einzelnen Darstellungselemente A bis H auf Kreuzungspunkten eines Gitters angeordnet werden und die einzelnen Verbindungselemente horizontal und vertikal verlaufen erfolgt beispielsweise die in Fig. 6 dargestellte Darstellung des Diagramms. Diese kann sodann mit Hilfe einer Visualisierungseinrichtung, wie beispielsweise einem Bildschirm oder einem Drucker an den Benutzer ausgegeben werden. By means of a suitable drawing device, by means of which the individual display elements A to H are arranged at intersection points of a grid and the individual connecting elements extend horizontally and vertically, the illustration of the diagram shown in FIG. 6 takes place, for example. This can then be output to the user by means of a visualization device, such as a screen or a printer.

Mit Hilfe der vorstehend anhand der Fig. 1 bis 6 beschriebenen prinzipiellen Vorgehensweise der Verknüpfungs-, der Planarisierungs- und der Einbettungseinrichtung können insbesondere folgende mögliche Verfahren zur erfindungsgemäßen Verbesserung der Lesbarkeit von Diagrammen angewendet werden:
In den nachstehenden erfindungsgemäßen Verfahren wird vorzugsweise als erster Schritt mit Hilfe der Verknüpfungseinrichtung eine Verknüpfung von Verbindungselementen, wie beispielsweise anhand der Fig. 1 und 2 beschrieben, vorgenommen.
With the help of the basic procedure of the linking, the planarization and the embedding device described above with reference to FIGS. 1 to 6, in particular the following possible methods for improving the readability of diagrams according to the invention can be used:
In the method according to the invention below, a linking of connecting elements, as described, for example, with reference to FIGS. 1 and 2, is preferably carried out as the first step with the aid of the linking device.

Vorzugsweise wird im nächsten Schritt zunächst mit Hilfe einer Überprüfungseinrichtung festgestellt, ob das zu visualisierende Diagramm hierarchische Strukturen enthält, die ein Baum sind oder nicht. Preferably, in the next step, first with the help of a Verification device determines whether the visualized Diagram contains hierarchical structures that are a tree or not.

Eine hierarchische Struktur, d. h. ein Teildiagramm das nur gerichtete Verbindungselemente aufweist, ist dann ein Baum, wenn jedes Darstellungselement höchstens ein eingehendes Verbindungselement hat, bzw. wenn jedes Darstellungselement höchstens ein ausgehendes Verbindungselement hat und die hierarchische Struktur zyklenfrei ist. A hierarchical structure, i. H. a sub-chart that only directed connecting elements is then a tree, if each presentation element at most one incoming Has connection element, or if each presentation element at most has an outgoing connection element and the hierarchical one Structure is cycle-free.

Bei den folgenden erfindungsgemäßen Varianten 1 bis 5 wurde von der Überprüfungseinrichtung festgestellt, dass sämtliche hierarchische Strukturen, d. h. sämtliche gerichtete Teildiagramme Bäume sind. In the following variants 1 to 5 according to the invention, it was found by the checking device that all hierarchical structures, ie all directed partial diagrams, are trees.

Variante 1version 1

  • a) Mit Hilfe der Planarisierungseinrichtung wird eine möglichst geringe Anzahl an Verbindungselementen aus dem darzustellenden Diagramm entfernt, so dass ein planar darstellbares Diagramm entsteht. a) With the help of the planarization is a the smallest possible number of fasteners from the diagram to be displayed, leaving a planar representable diagram arises.
  • b) Mit Hilfe der Einbettungseinrichtung wird zunächst eine planare Einbettung des reduzierten Diagramms, d. h. des Diagramms ohne die entfernten Verbindungselemente vorgenommen. b) With the help of the embedding device is first a planar embedding of the reduced diagram, d. H. of Diagram made without the connectors removed.

Hierbei ist jede kreuzungsfreie Zeichnung eine planare Zeichnung. Für jede planare Zeichnung sind Darstellungselement-Uhrzeigerlisten wie folgt definiert: Für jedes Darstellungselement werden alle Nachbarn im Uhrzeigersinn gemäß der planaren Zeichnung aufgelistet. Ein Darstellungselement ist Nachbar eines anderen Darstellungselements, wenn zwischen den beiden Darstellungselementen ein Verbindungselement existiert. Die Menge aller planaren Zeichnungen mit gleichen Darstellungselement-Uhrzeigerlisten ist eine planare Einbettung. Entsprechend werden mit einer planaren Einbettung auch nur die Darstellungselement- Uhrzeigerlisten bezeichnet. Insbesondere lässt sich aus einer planaren Einbettung, d. h. den Darstellungselement-Uhrzeigerlisten eine planare Zeichnung erzeugen.

  • a) Mit Hilfe der Einbettungseinrichtung werden sodann die im Schritt a) entfernten Verbindungselemente wieder eingefügt, wobei das Einfügen der Verbindungselemente derart erfolgt, dass eine möglichst geringe Anzahl an Kreuzungen entsteht (siehe Fig. 3 bis 5).
Each crossing-free drawing is a planar drawing. For each planar drawing, primitive clock handler lists are defined as follows: For each primitive, all neighbors are listed clockwise according to the planar drawing. A display element is the neighbor of another display element if a connection element exists between the two display elements. The set of all planar drawings with the same display element clock handlers is a planar embedding. Correspondingly, only the presentation element clock handler lists are designated with a planar embedding. In particular, it is possible to generate a planar drawing from a planar embedding, ie, the presentation element clock handler lists.
  • a) With the help of the embedding device, the connecting elements removed in step a) are then reinserted, wherein the insertion of the connecting elements takes place in such a way that the smallest possible number of intersections is formed (see FIGS. 3 to 5).

Variante 2Variant 2

  • a) Mit Hilfe der Planarisierungseinrichtung wird weiterhin eine möglichst kleine Menge an Verbindungselementen entfernt. Hierbei ist zusätzlich festgelegt, dass keine gerichteten Verbindungselemente entfernt werden. Es werden somit keine Verbindungselemente aus einer hierarchischen Struktur bzw. einem gerichteten Teildiagramm entfernt. a) With the help of Planarisierungseinrichtung will continue a small amount of fasteners away. Here it is additionally determined that no directed fasteners are removed. It will thus no connecting elements from a hierarchical Structure or a directed sub-diagram removed.

Anschließend werden die Schritte b) und c) der Variante 1 durchgeführt. Subsequently, steps b) and c) of variant 1 are carried out.

Variante 3Variant 3

Zunächst werden die Schritte a) und b) der Variante 1 durchgeführt.

  • a) Beim Einfügen der Verbindungselemente mit Hilfe der Einbettungseinrichtung ist zusätzlich zu der Forderung, dass möglichst wenige Kreuzungen entstehen, festgelegt, dass gerichtete Verbindungselemente derart eingefügt werden, dass sich gerichtete Verbindungselemente unterschiedlicher hierarchischer Strukturen bzw. gerichteter Teildiagramme nicht kreuzen.
First, the steps a) and b) of variant 1 are performed.
  • a) When inserting the connecting elements using the embedding device, in addition to the requirement that as few intersections arise, it is stipulated that directional connecting elements are inserted in such a way that directed connecting elements of different hierarchical structures or directed partial diagrams do not intersect.

Variante 4Variant 4

  • a) Es wird ein geclustertes Diagramm erzeugt, wobei die Cluster 40, 42 (Fig. 7) durch die Darstellungselemente der hierarchischen Strukturen induziert sind. Anschließend wird mit Hilfe einer Clusterplanarisierungseinrichtung eine möglichst geringe Anzahl von Verbindungselementen 44 aus dem darzustellenden Diagramm entfernt, so dass das Diagramm cluster-planar ist. Hierbei ist zusätzlich festgelegt, dass keine gerichteten Verbindungselemente 46 entfernt werden. Es werden somit keine Verbindungselemente 46 aus einer hierarchischen Struktur bzw. einem gerichteten Teildiagramm entfernt. a) A clustered diagram is generated, wherein the clusters 40 , 42 ( FIG. 7) are induced by the representation elements of the hierarchical structures. Subsequently, the smallest possible number of connecting elements 44 is removed from the diagram to be displayed with the aid of a cluster planarization device, so that the diagram is cluster-planar. It is additionally stipulated that no directional connection elements 46 are removed. Thus, no connection elements 46 are removed from a hierarchical structure or a directed partial diagram.
  • b) Mit Hilfe der Clusterplanaritäts-Einbettungseinrichtung wird zunächst eine cluster-planare Einbettung des reduzierten Diagramms, d. h. des Diagramms ohne die entfernten Verbindungselemente 44 vorgenommen (Fig. 8). b) With the aid of the cluster planarity embedding device, a cluster-planar embedding of the reduced diagram, ie the diagram, without the removed connecting elements 44 is first carried out ( FIG. 8).
  • c) Mit Hilfe der Clusterplanaritäts-Einbettungseinrichtung werden sodann die im Schritt a) entfernten Verbindungselemente wieder eingefügt, wobei das Einfügen der Elemente derart erfolgt, dass eine möglichst geringe Anzahl an Kreuzungen entsteht und das so erzeugte Diagramm cluster-planar ist (Fig. 9). Insbesondere dürfen Verbindungselemente nicht durch die Region eines Clusters 40, 42 laufen, wenn sie nicht mit einem Darstellungselement dieses Clusters verbunden sind. c) With the aid of the cluster planarity embedding device, the connecting elements removed in step a) are then reinserted, wherein the insertion of the elements takes place such that the smallest possible number of intersections is produced and the diagram thus generated is cluster-planar ( FIG. 9). , In particular, interconnects may not pass through the region of a cluster 40 , 42 unless they are connected to a primitive of that cluster.

Fig. 10 ist eine orthogonale Zeichnung basierend auf der vorher erstellten cluster-planaren Einbettung. FIG. 10 is an orthogonal drawing based on the previously created cluster planar embedding. FIG .

Variante 5Variant 5

Die Schritte a) und b) können nach einer beliebigen der vorstehenden Varianten 1 bis 4 durchgeführt werden.

  • a) Mit Hilfe der Einbettungseinrichtung erfolgt das Einfügen der entfernten Verbindungselemente derart, dass einzufügende ungerichtete Verbindungselemente möglichst keine gerichteten Verbindungselemente kreuzen.
Steps a) and b) can be carried out according to any of the above variants 1 to 4 .
  • a) With the help of the embedding device, the insertion of the remote connection elements takes place such that inserted non-directional connection elements as possible crossed no directional connection elements.

Falls Schritte a) und b) der Variante 4 gewählt wurde, erfolgt das Einfügen derart, dass das so erzeugte Diagramm clusterplanar ist. If steps a) and b) of variant 4 were selected, the insertion takes place in such a way that the diagram thus generated is cluster-planar.

Bei den nachfolgend beschriebenen Varianten 6 bis 9 wurde von der Überprüfungseinrichtung festgestellt, dass mindestens eine der hierarchischen Strukturen bzw. gerichteten Teildiagrammen kein Baum ist. Mindestens ein Darstellungselement der hierarchischen Struktur besitzt somit mindestens zwei eingehende (oder ausgehende) Verbindungselemente. Falls Zyklen in gerichteten Teildiagrammen enthalten sind, werden diese in der Überprüfungseinrichtung entfernt. In the variants 6 to 9 described below, it was determined by the checking device that at least one of the hierarchical structures or directed sub-diagrams is not a tree. At least one presentation element of the hierarchical structure thus has at least two incoming (or outgoing) connection elements. If cycles are included in directional sub-diagrams, they are removed in the validator.

Variante 6Variant 6

Der nachfolgende Schritt x) wird vor den Schritten a) bis c) einer der vorstehend beschriebenen Varianten 1 bis 5 durchgeführt. Nach dem Schritt x) kann somit jede beliebige Variante 1 bis 5 durchgeführt werden.

  • a) Aus jedem gerichteten Teildiagramm, bei dem festgestellt wurde, dass es sich nicht um einen Baum handelt, wird eine möglichst geringe Anzahl an Verbindungselementen entnommen, so dass es sich bei dem gerichteten Teildiagramm um einen Baum handelt. Die entnommenen Verbindungselemente werden in weiteren Schritten zunächst als ungerichtete Verbindungselemente behandelt. Die Umwandlung dieser Verbindungselemente zurück in gerichtete Verbindungselemente erfolgt nach dem Durchlaufen der Schritte a) bis c) einer der Varianten 1 bis 5.
The following step x) is carried out before the steps a) to c) of one of the variants 1 to 5 described above. After step x), any desired variant 1 to 5 can thus be carried out.
  • a) From each directed sub-diagram, in which it was determined that it is not a tree, the smallest possible number of connecting elements is removed so that the directed sub-diagram is a tree. The removed fasteners are first treated in further steps as non-directional fasteners. The conversion of these connecting elements back into directional connecting elements takes place after passing through steps a) to c) of variants 1 to 5 .

Variante 7Variant 7

  • a) Aus jedem gerichteten Teildiagramm, das kein Baum ist, wird durch Anwendung der Aufwärtsplanarisierungseinrichtung eine möglichst geringe Anzahl an gerichteten Verbindungselementen entfernt, so dass ein aufwärtsplanares Diagramm entsteht. Anschließend wird mit der Aufwärtseinbettungseinrichtung eine aufwärtsplanare Einbettung bestimmt. Die entfernten Verbindungselemente werden dann mit der Aufwärtseinbettungseinrichtung so wieder in das Teildiagramm eingefügt, dass die Aufwärtsplanarität erhalten bleibt und möglichst wenige Kreuzungen entstehen. Die Verbindungselemente werden als gerichtete Verbindungselemente wieder eingefügt. Es entsteht keine zyklische Struktur. a) From every directed sub-diagram, which is not a tree, becomes by using the up-planarizer the least possible number of directed Fasteners removed, leaving an upward-planar diagram arises. Subsequently, with the Upward embedding means determines an upwardly planar embedding. The removed fasteners are then used with the Upward embedding device so again into the sub-diagram inserted that the upward planarity is preserved and as few crossings arise. The connecting elements are reinserted as directional fasteners. There is no cyclic structure.

Anschließend wird der Schritt a) der Variante 2 durchgeführt.

  • a) Die Bestimmung der planaren Einbettung erfolgt derart, dass die Aufwärtsplanarität jedes einzelnen gerichteten Teildiagramms erhalten bleibt.
Subsequently, step a) of variant 2 is carried out.
  • a) The determination of the planar embedding is carried out in such a way that the upward planarity of each individual directed subdiagram is preserved.

Das Erhalten der Aufwärtsplanarität der gerichteten Teilgraphen erfolgt unter Ausnutzung einer mathematischen Eigenschaft aufwärtsplanarer Einbettungen mit deren Hilfe sich Aufwärtsplanarität in gewöhnlicher Planarität kodieren lässt (siehe G. Di Battista, R. Tamassia (1988) Algorithms for Plane Represenations of Acyclic Digraphs, Theoretical Computer Science 61, 175-198). Obtaining the upward planarity of the directed subgraphs is accomplished using a mathematical property of upwardly planar embedding that can be used to encode upplane planarity in ordinary planarity (see G. Di Battista, R. Tamassia ( 1988 ) Algorithms for Plane Represenations of Acyclic Digraphs, Theoretical Computer Science 61 , 175-198).

Hierauf wird der Schritt c) der Variante 2 durchgeführt. Then step c) of variant 2 is carried out.

Variante 8Variant 8

Der Schritt x) entspricht demjenigen der Variante 7.

  • a) Es wird ein Cluster-Diagramm erzeugt, wobei die Cluster durch die Darstellungselemente der hierarchischen Strukturen induziert sind. Anschließend wird mit Hilfe einer Clusterplanarisierungseinrichtung eine möglichst geringe Anzahl von ungerichteten Verbindungselementen aus dem darzustellenden Diagramm entfernt, so dass das Diagramm cluster-planar ist. Insbesondere werden keine gerichteten Verbindungselemente entfernt. Da die gerichteten Verbindungselemente einer hierarchischen Struktur konstruktionsgemäß zu dem Cluster gehören und nach dem vorhergehenden Schritt x jede hierarchische Struktur aufwärtsplanar, damit insbesondere planar ist und da ferner das Diagramm, das durch Entfernen aller ungerichteten Verbindungselemente entsteht, cluster-planar ist gemäß der Definition der hierarchischen Strukturen als Cluster, kann eine entsprechende Lösung gefunden werden, bei der ausschließlich ungerichtete Verbindungselemente entfernt werden.
  • b) Mit Hilfe der Clusterplanaritäts-Einbettungseinrichtung wird eine cluster-planare Einbettung des reduzierten Diagramms, d. h. des Diagramms ohne die entfernten Verbindungselemente vorgenommen. Dabei wird die Aufwärtsplanarität der gerichteten Teilgraphen unter Ausnutzung einer mathematischen Eigenschaft aufwärtsplanarer Einbettungen, mit deren Hilfe sich Aufwärtsplanarität in gewöhnlicher Planarität kodieren lässt und die sich auch auf Clusterplanaritäts- Einbettungseinrichtung übertragen werden kann, erhalten (siehe G. Di Battista, R. Tamassia (1988) Algorithms for Plane . Represenations of Acyclic Digraphs, Theoretical Computer Science 61, 175-198, sowie Q.-W. Feng, R. F. Cohen und P. Eades (1995): Planarity for Clustered Graphs, P. Spirakis (ed), Algorithms - ESA '95, Lecture Notes in Computer Science 979, Springer Verlag, 213-226).
Step x) corresponds to that of variant 7 .
  • a) A cluster diagram is generated, wherein the clusters are induced by the display elements of the hierarchical structures. Subsequently, the smallest possible number of non-directional connection elements is removed from the diagram to be displayed with the aid of a cluster planarization device, so that the diagram is cluster-planar. In particular, no directional connection elements are removed. Since the directed connection elements of a hierarchical structure belong structurally to the cluster and after the previous step x each hierarchical structure is upwardly planar, in particular planar, and furthermore the diagram resulting from removal of all non-directional connection elements is cluster planar according to the definition of the hierarchical one Structures as clusters, a solution can be found in which only undirected fasteners are removed.
  • b) Using the cluster planarity embedding facility, a cluster-planar embedding of the reduced diagram, ie the diagram, without the removed connecting elements is undertaken. The upwards planarity of the directed subgraphs is obtained using a mathematical property of upplanar embeddings that can be used to encode upplane planarity in ordinary planarity and that can also be transferred to cluster planarity embedding equipment (see G. Di Battista, R. Tamassia ( 1988) ), Algorithms for Plane, Represenations of Acyclic Digraphs, Theoretical Computer Science 61, 175-198, and Q.-W. Feng, RF Cohen and P. Eades ( 1995 ): Planarity for Clustered Graphs, P. Spirakis (ed), Algorithms ESA '95, Lecture Notes in Computer Science 979, Springer Verlag, 213-226).

Der Schritt c) entspricht dem Schritt c) der Variante 4. Step c) corresponds to step c) of variant 4 .

Variante 9Variant 9

Der Schritt x) entspricht dem Schritt x) der Variante 7. Step x) corresponds to step x) of variant 7 .

Die Schritte a) und b) entsprechen den Schritten a) und b) der Variante 8. Steps a) and b) correspond to steps a) and b) of variant 8 .

Der Schritt c) entspricht dem Schritt c) von Variante 8. Zusätzlich wird sichergestellt, dass beim Einfügen der Verbindungselemente Kreuzungen mit gerichteten Verbindungselementen von hierarchischen Strukturen möglichst vermieden werden. Step c) corresponds to step c) of variant 8 . In addition, it is ensured that when inserting the connecting elements, intersections with directed connecting elements of hierarchical structures are avoided as far as possible.

Nach Durchführung der vor der Variante 1 beschriebenen Schritte zur Verknüpfung von Verbindungselementen und nach anschließendem Ausführen einer der Varianten 1 bis 9 erfolgt mit Hilfe der Zeicheneinrichtung sowie der Visualisierungseinrichtung die Darstellung des Diagramms. Hierbei wird vorzugsweise ein orthogonaler Layoutstil verwendet. Dies bedeutet, dass dem Layout eine Gitterstruktur zugrundegelegt wird und die Darstellungselemente auf den Kreuzungspunkten der Gitterstruktur platziert werden. Die Verbindungselemente verlaufen entlang der Gitterlinien und sind somit horizontal oder vertikal. Die Darstellung kann beispielsweise mit geeigneter Zeichensoftware für orthogonale Zeichenverfahren erfolgen (u. a. M. Eiglsperger, U. Fößmeier, M. Kaufmann (2000): Orthogonal Graph Drawing with Constraints Proc. 11th Symposium on Discrete Algorithms (SODA'00), 3-11, ACM-SIAM. After performing the steps described before variant 1 for the connection of connecting elements and by then performing one of the variants 1 to 9, the representation of the chart is performed using the drawing device and the visualization device. In this case, an orthogonal layout style is preferably used. This means that the layout is based on a grid structure and the display elements are placed on the crossing points of the grid structure. The connecting elements run along the grid lines and are thus horizontal or vertical. The representation may, for example, be carried out using suitable drawing software for orthogonal drawing methods (inter alia M. Eiglsperger, U. Fößmeier, M. Kaufmann ( 2000 ): Orthogonal Graph Drawing with Constraints Proc. 11th Symposium on Discrete Algorithms (SODA'00), 3-11, ACM-SIAM.

Die Darstellungselemente einer hierarchischen Struktur, wie eines gerichteten Teilgraphens sind vorzugsweise eingefärbt. Jeder hierarchischen Struktur wird zu diesem Zweck eine geeignete Farbe zugeordnet und die Darstellungselemente des gerichteten Teilgraphen werden mit dieser Farbe eingefärbt. Hierdurch ist die Übersichtlichkeit von Diagrammen und insbesondere von in Diagrammen enthaltenen einzelnen hierarchischen Strukturen weiter verbessert. Vorzugsweise können die gerichteten Verbindungselemente einer hierarchischen Struktur ebenfalls eingefärbt werden, um die Übersichtlichkeit von Diagrammen zu verbessern und/oder einzelne hierarchische Strukturen besonders hervorzuheben. The presentation elements of a hierarchical structure, such as of a directed subgraph are preferably colored. Each hierarchical structure becomes one for this purpose assigned suitable color and the presentation elements of the directed subgraphs are colored with this color. This is the clarity of diagrams and in particular of individual hierarchical diagrams contained in diagrams Structures further improved. Preferably, the directional Connecting elements of a hierarchical structure also to be colored for the clarity of diagrams improve and / or individual hierarchical structures especially emphasized.

Claims (22)

1. Datenverarbeitungseinrichtung zur automatischen Layoutgestaltung, insbesondere von hierarchischen oder gemischt hierarchischen Diagrammen,
wobei die Diagramme mehrere Darstellungselemente (10-16; A-H) zum Darstellen von Informationen und mehrere, die Darstellungselemente (10-16; A-H) verbindende Verbindungselemente (18-22; 30) aufweisen, mit
einer Verknüpfungseinrichtung zum Verknüpfen mehrerer mit demselben Darstellungselement (10) verbundenen Verbindungselemente (18, 20, 22),
einer Planarisierungseinrichtung zum Überprüfen der Planarität des Diagramm und ggf. zur Erzeugung eines planaren Diagramms durch Entfernen geeigneter Verbindungselemente (30) und/oder Darstellungselemente,
einer Einbettungseinrichtung zum Einfügen entfernter Verbindungselemente (30) und/oder Darstellungselemente, bei Minimierung der Anzahl entstehender Kreuzungen (32) zwischen Verbindungselementen (30, 34),
einer Zeicheneinrichtung zur Erzeugung des Diagramms, und
einer Visualisierungseinrichtung zur Darstellung des Diagramms.
1. Data processing device for automatic layout design, in particular of hierarchical or mixed hierarchical diagrams,
the diagrams having a plurality of presentation elements (10-16; AH) for presenting information and a plurality of connection elements ( 18-22 ; 30 ) connecting display elements (10-16; AH)
linking means for linking a plurality of connecting elements ( 18 , 20 , 22 ) connected to the same display element ( 10 ),
a planarization device for checking the planarity of the diagram and possibly generating a planar diagram by removing suitable connection elements ( 30 ) and / or display elements,
an embedding device for inserting remote connection elements ( 30 ) and / or display elements, while minimizing the number of resulting intersections ( 32 ) between connecting elements ( 30 , 34 ),
a drawing device for generating the diagram, and
a visualization device for displaying the diagram.
2. Datenverarbeitungseinrichtung nach Anspruch 1, dadurch gekennzeichnet, dass die Verknüpfungseinrichtung ein Zwischenelement (24) einfügt, so dass mit demselben Darstellungselement (10) verbundene Verbindungselemente (18, 20, 22) mit dem Zwischenelement (24) und das Zwischenelement (24) mit dem Darstellungselement (10) verbunden ist. 2. Data processing device according to claim 1, characterized in that the linking device inserts an intermediate element ( 24 ), so that with the same display element ( 10 ) connected to connecting elements ( 18 , 20 , 22 ) with the intermediate element ( 24 ) and the intermediate element ( 24 ) the display element ( 10 ) is connected. 3. Datenverarbeitungseinrichtung nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die Verbindungselemente (18-24; 34) gerichtet oder ungerichtet sind und die Verknüpfungseinrichtung vorzugsweise nur gerichtete Verbindungselemente berücksichtigt. 3. Data processing device according to claim 1 or 2, characterized in that the connecting elements (18-24; 34) are directed or undirected and the Linking device preferably only directional Considered fasteners. 4. Datenverarbeitungseinrichtung nach einem der Ansprüche 1-3, dadurch gekennzeichnet, dass die Planarisierungseinrichtung nur ungerichtete Verbindungselemente entfernt. 4. Data processing device according to one of claims 1-3, characterized in that the planarization device only undirected fasteners removed. 5. Datenverarbeitungseinrichtung nach einem der Ansprüche 1-4, dadurch gekennzeichnet, dass die Einbettungseinrichtung die Verbindungselemente derart einbettet, dass sich möglicht wenige, insbesondere keine gerichteten Verbindungselemente kreuzen. 5. Data processing device according to one of claims 1-4, characterized in that the embedding device the Embedding fasteners such that it is possible few, in particular no directed fasteners cross. 6. Datenverarbeitungseinrichtung nach einem der Ansprüche 1-5, dadurch gekennzeichnet, dass die Einbettungseinrichtung die Verbindungselemente derart einbettet, dass ungerichtete Verbindungselemente möglichst wenig, insbesondere keine gerichteten Verbindungselemente kreuzen. 6. Data processing device according to one of claims 1-5, characterized in that the embedding device the Embedding fasteners such that undirected Connecting elements as little as possible, especially none crossing directed fasteners. 7. Datenverarbeitungseinrichtung nach einem der Ansprüche 1-6, dadurch gekennzeichnet, dass die Planarisierungseinrichtung ein cluster-planares Diagramm erzeugt. 7. Data processing device according to one of claims 1-6, characterized in that the planarization device generates a cluster-planar diagram. 8. Datenverarbeitungseinrichtung nach Anspruch 7, dadurch gekennzeichnet, dass die Einbettungseinrichtung die Verbindungselemente derart einfügt, dass die Einbettung clusterplanar ist. 8. Data processing device according to claim 7, characterized in that the embedding device is the Inserting fasteners such that the embedding clusterplanar is. 9. Datenverarbeitungseinrichtung nach einem der Ansprüche 1-8, gekennzeichnet durch eine Überprüfungseinrichtung zur Überprüfung gerichteter Teildiagramme, die überprüft, ob die Teildiagramme zyklenfrei sind und bei nicht zyklenfreien Teildiagrammen durch Entfernen von mindestens einem Verbindungselement zyklungsfreie Teildiagramme erzeugt. 9. Data processing device according to one of claims 1-8, characterized by a checking device for Review directed sub-charts that make sure that the Partial diagrams are cycle-free and non-cycle-free Partial diagrams by removing at least one Connecting element generated cyclic free partial diagrams. 10. Datenverarbeitungseinrichtung nach Anspruch 9, dadurch gekennzeichnet, dass die entfernten gerichteten Verbindungselemente bei der Weiterbearbeitung als ungerichtete Verbindungselemente behandelt werden. 10. Data processing device according to claim 9, characterized characterized in that the distant directed Connecting elements in the further processing as undirected Connecting elements are treated. 11. Datenverarbeitungseinrichtung nach Anspruch 9, dadurch gekennzeichnet, dass die Überprüfungseinrichtung Verbindungselemente derart entfernt, dass ein aufwärts-planares Teildiagramm entsteht und die entfernten Verbindungselemente derart wieder einfügt, so dass bei Entstehung möglichst weniger Kreuzungen die Aufwärtsplanarität erhalten bleibt. 11. Data processing device according to claim 9, characterized in that the checking device Fasteners removed such that an upwardly planar Partial graph arises and the distant ones Reintegrates connecting elements so that when they emerge as few intersections as possible get the upward planarity remains. 12. Datenverarbeitungseinrichtung nach einem der Ansprüche 1-11, dadurch gekennzeichnet, dass die Einbettungseinrichtung die entfernten Verbindungselemente derart einfügt, dass die Aufwärtsplanarität erhalten bleibt. 12. Data processing device according to one of the claims 1-11, characterized in that the embedding device insert the removed connectors such that the Upward planarity is preserved. 13. Layout-Gestaltungsverfahren für Diagramme, insbesondere von hierarchischen oder gemischt hierarchischen Diagrammen, mit den Schritten:
Verknüpfen mehrerer mit demselben Darstellungselement (10) verbundener Verbindungselementen,
Überprüfen der Planarität des Diagramms und ggf. Erzeugen eines planaren Diagramms durch Entfernen geeigneter Verbindungselemente und/oder Darstellungselemente,
Einfügen entfernter Verbindungselemente und/oder Darstellungselemente bei Minimierung der Anzahl entstehender Kreuzungen (32) zwischen Verbindungselementen (30, 34),
Erzeugen und Darstellen des Diagramms.
13. Layout design method for diagrams, in particular of hierarchical or mixed hierarchical diagrams, with the steps:
Linking a plurality of connecting elements connected to the same display element ( 10 ),
Checking the planarity of the diagram and possibly generating a planar diagram by removing suitable connection elements and / or display elements,
Inserting remote connection elements and / or display elements while minimizing the number of emerging intersections ( 32 ) between connection elements ( 30 , 34 ),
Create and display the diagram.
14. Layout-Gestaltungsverfahren nach Anspruch 13, bei welchem die Darstellung durch eine Visualisierungseinrichtung, insbesondere einen Ausdruck und/oder auf einem Bildschirm, erfolgt. 14. A layout designing method according to claim 13, wherein the representation by a visualization device, in particular an expression and / or on a screen, he follows. 15. Layout-Gestaltungsverfahren nach Anspruch 13 oder 14, bei welchem das Verknüpfen durch Einfügen eines Zwischenelements erfolgt, so dass mit demselben Darstellungselement (10) verbundene Verbindungselemente (28, 22) mit dem Zwischenelement (24) und das Zwischenelement (24) mit dem Darstellungselement (10) verbunden ist. A layout designing method according to claim 13 or 14, wherein the linking is performed by inserting an intermediate member so that connecting members ( 28 , 22 ) connected to the same display member ( 10 ) communicate with the intermediate member ( 24 ) and the intermediate member ( 24 ) with the Representation element ( 10 ) is connected. 16. Layout-Gestaltungsverfahren nach einem der Ansprüche 13-15, bei welchem gerichtete und ungerichtete Verbindungselemente (18-24/34) vorgesehen sind und nur gerichtete Verbindungselemente verknüpft werden. 16. Layout-shaping method according to any one of claims 13-15, in which directional and non-directional connecting elements ( 18-24 / 34 ) are provided and only directional connection elements are linked. 17. Layout-Gestaltungsverfahren nach einem der Ansprüche 13-16, bei welchem zur Erzeugung der Planarität des Diagramms nur ungerichtete Verbindungselemente entfernt werden. A layout designing method according to any one of claims 13-16. in which to generate the planarity of the diagram only Undirected fasteners are removed. 18. Layout-Gestaltungsverfahren nach einem der Ansprüche 13-17, bei welchem das Einbetten der Verbindungselemente derart erfolgt, dass sich möglichst wenige, insbesondere keine gerichteten Verbindungselemente kreuzen. A layout designing method according to any one of claims 13-17. in which the embedding of the connecting elements in such a way takes place that as few as possible, especially no crossing directed fasteners. 19. Layout-Gestaltungsverfahren nach einem der Ansprüche 13-18, bei welchem ein cluster-planares Diagramm erzeugt wird. A layout designing method according to any one of claims 13-18. in which a cluster-planar diagram is generated. 20. Layout-Gestaltungsverfahren nach einem der Ansprüche 13-19, bei welchem überprüft wird, ob Teildiagramme zyklenfrei sind und bei welchem bei nichtzyklenfreien Teildiagrammen durch Entfernen von mindestens einem Verbindungselement zyklenfreie Teildiagramme erzeugt werden. 20. A layout designing method according to any one of claims 13-19, which checks whether partial diagrams are cycle-free are and in which non-cyclic part diagrams by removing at least one connecting element cycle-free partial diagrams are generated. 21. Layout-Gestaltungsverfahren nach Anspruch 20, bei welchem Verbindungselemente beim Überprüfungsschritt derart entfernt werden, dass ein aufwärts-planares Teildiagramm entsteht und die entfernten Verbindungselemente derart eingefügt werden, dass bei Beibehaltung der Aufwärtsplanarität möglichst wenig Kreuzungen entstehen. 21. A layout designing method according to claim 20, wherein Connecting elements in the verification step so be removed that an up-planar partial diagram arises and the remote fasteners such be inserted that while maintaining the upward planarity as few crossings occur. 22. Datenspeichereinrichtung, insbesondere Compaktdisk mit einem gespeicherten Programmcode zur Durchführung des Verfahrens nach einem der Ansprüche 13-21. 22. Data storage device, in particular compact disk with a stored program code for performing the Method according to one of claims 13-21.
DE10146235A 2001-09-20 2001-09-20 Data processing system for automatic layout design, especially of hierarchical or mixed hierarchical diagrams, whereby planar elements are linked using connection elements Withdrawn DE10146235A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE10146235A DE10146235A1 (en) 2001-09-20 2001-09-20 Data processing system for automatic layout design, especially of hierarchical or mixed hierarchical diagrams, whereby planar elements are linked using connection elements

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE10146235A DE10146235A1 (en) 2001-09-20 2001-09-20 Data processing system for automatic layout design, especially of hierarchical or mixed hierarchical diagrams, whereby planar elements are linked using connection elements

Publications (1)

Publication Number Publication Date
DE10146235A1 true DE10146235A1 (en) 2003-04-24

Family

ID=7699588

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10146235A Withdrawn DE10146235A1 (en) 2001-09-20 2001-09-20 Data processing system for automatic layout design, especially of hierarchical or mixed hierarchical diagrams, whereby planar elements are linked using connection elements

Country Status (1)

Country Link
DE (1) DE10146235A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1843264A1 (en) * 2006-04-07 2007-10-10 Siemens Aktiengesellschaft Graphical environment for creating a graphical representation and method for creating a graphical representation
US20190340308A1 (en) * 2017-01-20 2019-11-07 Siemens Product Lifecycle Management Software Inc. Method for partial updating

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
BASTERT, O., MATUSZEWSK, Ch.: Layered Drawings of Digraphs *
In: Michael Kaufmann and Dorothea Wagner (Eds.): Drawing Graphs - Methods and Models. LNCS 2025, Tutorial, pp. 87-120, Springer,2001 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1843264A1 (en) * 2006-04-07 2007-10-10 Siemens Aktiengesellschaft Graphical environment for creating a graphical representation and method for creating a graphical representation
WO2007116063A1 (en) * 2006-04-07 2007-10-18 Continental Automotive Gmbh Graphic environment for creating a graphic representation, and method for generating a graphic representation
US20190340308A1 (en) * 2017-01-20 2019-11-07 Siemens Product Lifecycle Management Software Inc. Method for partial updating

Similar Documents

Publication Publication Date Title
DE69534331T2 (en) Method and device for highlighting the detail of a tree structure
DE60009122T2 (en) PATTERN RECOGNITION FOR DATA EXCHANGE BETWEEN COMPUTER BASED DESIGN SYSTEMS
DE60318471T2 (en) EXTRACTION OF KNOWLEDGE THROUGH AN OBJECT-BASED SEMANTIC NETWORK
DE69911266T2 (en) COMPUTER PROGRAM PROFILER
DE69907415T2 (en) DETERMINATION OF VISIBLE OBJECTS FOR INTERACTIVE VISUALISATION
DE69819950T2 (en) Image processing method and system
DE3900750A1 (en) KNOWLEDGE BASIS - PROCESS - DEVICE FOR DESIGNING INTEGRATED CIRCUITS BY FUNCTIONAL SPECIFICATIONS
DE4303071A1 (en) Information processing system for geometric modelling - has basic object shapes selected and combined to generate complex shapes in three=dimensional form
DE3608438A1 (en) METHOD FOR CALCULATING FREE CURVED SURFACES BY MEANS OF COMPUTER-AID DESIGN CAD AND COMPUTER-AID MANUFACTURING CAM AND NUMERICAL CONTROL NC
DE60106301T2 (en) METHOD AND SYSTEM FOR EXPORTING DATA ASSOCIATIONS TO TWO-DIMENSIONAL OR THREE-DIMENSIONAL GEOMETRIC ENTITIES
EP2266066A1 (en) Method and system for identification of grouping characteristics
DE112018002626T5 (en) Methods and systems for the optimized visual summary of sequences with time-related event data
DE10065820A1 (en) Method for interactive construction of virtual 3D models for use in multi-user, real-time collaborative computer-aided design process
WO2015162115A1 (en) Method for automatically establishing a data record characterizing two technical drawings
EP3134834A1 (en) Method for the automated creation of a data set characterizing a technical drawing
EP1092210B1 (en) Device and method for constructing a virtual installation model
DE10146235A1 (en) Data processing system for automatic layout design, especially of hierarchical or mixed hierarchical diagrams, whereby planar elements are linked using connection elements
DE10149021B4 (en) Data processing system for designing a layout of an integrated electronic circuit of a plurality of electronic components
EP3543921A1 (en) Flow analysis device and flow analysis method for a production network
DE102004023634B4 (en) Method for checking the completeness and consistency of an information library
DE10297509T5 (en) Limited authorization
DE69824546T2 (en) Determination of map coordinates
DE202022000476U1 (en) Tools to explore the structure, composition and properties of objects in a database
DE102008045272A1 (en) Device for transformation of model, has modeling elements, where each modeling element is provided with tag, and modeling elements of transforming model are automatically selected by selection unit
DE10243598A1 (en) Functional verification method for integrated circuits e.g. storage and memory devices in communication and medical technology, involves defining a model-checking problem of the integrated circuit as an all-quantified formula

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8130 Withdrawal