Package graph

Class GraphElement

  • All Implemented Interfaces:
    java.lang.Comparable<GraphElement>

    public abstract class GraphElement
    extends java.lang.Object
    implements java.lang.Comparable<GraphElement>
    Die Klasse GraphElement ist eine Oberklasse von Knoten und Kanten. Sie ist nur für die interne Verarbeitung wichtig.
    Version:
    28.02.2023 (v7.0) v7.0: Die am Element gespeicherten Informationen werden in einer Hashmap gespeichert. Daher können beliebige weitere Informationen abgelegt werden. Es wird auch gespeichert, als welcher Typ die Information übergeben wurde.
    Author:
    Thomas Schaller
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected java.util.HashMap<java.lang.String,​java.lang.String> daten  
      protected graph.Graph g  
      protected java.lang.String sortierKriterium  
      protected java.util.HashMap<java.lang.String,​java.lang.String> typen  
    • Constructor Summary

      Constructors 
      Constructor Description
      GraphElement()  
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      int compareTo​(GraphElement e)
      Vergleicht den Knoten/Kante mit einem anderen Knoten/Kante bezüglich seines Sortierkriteriums Das Sortierkriterium ist normalerweise der "Wert", kann aber mit setSortierkriterium gesetzt werden.
      boolean getBoolean​(java.lang.String name)
      Gibt zusätzliche Daten als int zurück
      double getDouble​(java.lang.String name)
      Gibt zusätzliche Daten als int zurück
      int getInt​(java.lang.String name)
      Gibt zusätzliche Daten als int zurück
      abstract java.util.List<java.lang.String> getKurztext​(java.lang.String[] namen)
      Gibt die Beschreibung des Knoten / der Kante als Kurztext für die Anzeige im Kreis bzw.
      abstract java.util.List<java.lang.String> getLangtext​(java.lang.String[] namen)
      Gibt die Beschreibung des Knoten / der Kante als Langtext für die Anzeige im Tooltip-Fenster zurück.
      java.lang.String getStatus()
      Liefert den Status einer Kante als String.
      java.lang.String getString​(java.lang.String name)
      Gibt zusätzliche Daten als String zurück
      void set​(java.lang.String name, boolean wert)
      Speichert zusätzliche Daten am Knoten oder der Kante
      void set​(java.lang.String name, double wert)
      Speichert zusätzliche Daten am Knoten oder der Kante Double.POSITIVE_INFINITY bzw.
      void set​(java.lang.String name, int wert)
      Speichert zusätzliche Daten am Knoten oder der Kante Integer.MAX_VALUE bzw.
      void set​(java.lang.String name, java.lang.String wert)
      Speichert zusätzliche Daten am Knoten oder der Kante
      void setGraph​(graph.Graph g)
      Speichert den Graphen, in den Knoten/Kante eingefügt wurde.
      void setSortierkriterium​(java.lang.String name)
      Setzt das Sortierkriterium des Knoten/der Kante.
      void setStatus​(java.lang.String status)
      Setzt den Status einer Kante, der in einem String gespeichert ist.
      • Methods inherited from class java.lang.Object

        clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • daten

        protected java.util.HashMap<java.lang.String,​java.lang.String> daten
      • typen

        protected java.util.HashMap<java.lang.String,​java.lang.String> typen
      • g

        protected graph.Graph g
      • sortierKriterium

        protected java.lang.String sortierKriterium
    • Constructor Detail

      • GraphElement

        public GraphElement()
    • Method Detail

      • setStatus

        public void setStatus​(java.lang.String status)
        Setzt den Status einer Kante, der in einem String gespeichert ist. Form: markiert,geloescht,farbe Dabei sind markiert und geloescht boolsche Werte (0 = false, 1 = true) und die farbe eine Zahl
        Parameters:
        status - Statusstring
      • getStatus

        public java.lang.String getStatus()
        Liefert den Status einer Kante als String. Form: markiert,geloescht,farbe Dabei sind markiert und geloescht boolsche Werte (0 = false, 1 = true) und die farbe eine Zahl
        Returns:
        Statusstring
      • setSortierkriterium

        public void setSortierkriterium​(java.lang.String name)
        Setzt das Sortierkriterium des Knoten/der Kante.
        Parameters:
        name - Bezeichnung des Wertes nach dem sortiert werden soll
      • getKurztext

        public abstract java.util.List<java.lang.String> getKurztext​(java.lang.String[] namen)
        Gibt die Beschreibung des Knoten / der Kante als Kurztext für die Anzeige im Kreis bzw. Kasten zurück. Dabei wird jeder Eintrag der Liste als eigene Zeile dargestellt. Es werden nur die Werte angezeigt. Es sind max. 2 Zeilen zulässig.
        Parameters:
        namen - Namen der Werte, die im Kurztext angezeigt werden sollen.
      • getLangtext

        public abstract java.util.List<java.lang.String> getLangtext​(java.lang.String[] namen)
        Gibt die Beschreibung des Knoten / der Kante als Langtext für die Anzeige im Tooltip-Fenster zurück. Dabei wird jeder Eintrag der Liste als eigene Zeile dargestellt. Es wird jeweils die Bezeichnung und der Wert ausgegeben.
        Parameters:
        namen - Namen der Werte, die im Tooltip angezeigt werden sollen.
      • setGraph

        public void setGraph​(graph.Graph g)
        Speichert den Graphen, in den Knoten/Kante eingefügt wurde. Damit kann er selbst seine Nummer ermitteln.
        Parameters:
        g - Graph
      • set

        public void set​(java.lang.String name,
                        java.lang.String wert)
        Speichert zusätzliche Daten am Knoten oder der Kante
        Parameters:
        name - Bezeichnung der Art der Daten
        wert - Wert der zu speichernden Daten
      • set

        public void set​(java.lang.String name,
                        double wert)
        Speichert zusätzliche Daten am Knoten oder der Kante Double.POSITIVE_INFINITY bzw. NEGATIVE_INFINITY wird als +/- unendlich dargestellt
        Parameters:
        name - Bezeichnung der Art der Daten
        wert - Wert der zu speichernden Daten
      • set

        public void set​(java.lang.String name,
                        int wert)
        Speichert zusätzliche Daten am Knoten oder der Kante Integer.MAX_VALUE bzw. MIN_VALUE werden als +/- unendlich dargestellt.
        Parameters:
        name - Bezeichnung der Art der Daten
        wert - Wert der zu speichernden Daten
      • set

        public void set​(java.lang.String name,
                        boolean wert)
        Speichert zusätzliche Daten am Knoten oder der Kante
        Parameters:
        name - Bezeichnung der Art der Daten
        wert - Wert der zu speichernden Daten
      • getString

        public java.lang.String getString​(java.lang.String name)
        Gibt zusätzliche Daten als String zurück
        Parameters:
        name - Bezeichnung der zusätzlichen Daten
        Returns:
        Wert von "name" oder "", wenn name nicht gespeichert ist
      • getInt

        public int getInt​(java.lang.String name)
        Gibt zusätzliche Daten als int zurück
        Parameters:
        name - Bezeichnung der zusätzlichen Daten
        Returns:
        Wert von "name" oder 0, wenn name nicht gespeichert ist oder keine Zahl ist
      • getDouble

        public double getDouble​(java.lang.String name)
        Gibt zusätzliche Daten als int zurück
        Parameters:
        name - Bezeichnung der zusätzlichen Daten
        Returns:
        Wert von "name" oder 0, wenn name nicht gespeichert ist oder keine Zahl ist
      • getBoolean

        public boolean getBoolean​(java.lang.String name)
        Gibt zusätzliche Daten als int zurück
        Parameters:
        name - Bezeichnung der zusätzlichen Daten
        Returns:
        Wert von "name" oder false, wenn name nicht gespeichert ist oder kein Boolean ist
      • compareTo

        public int compareTo​(GraphElement e)
        Vergleicht den Knoten/Kante mit einem anderen Knoten/Kante bezüglich seines Sortierkriteriums Das Sortierkriterium ist normalerweise der "Wert", kann aber mit setSortierkriterium gesetzt werden.
        Specified by:
        compareTo in interface java.lang.Comparable<GraphElement>
        Parameters:
        e - anderer Knoten
        Returns:
        kleiner 0 der andere Knoten hat einen größeren Wert, größer 0 der andere Knoten hat einen kleineren Wert, gleich 0 beide sind gleich