Class DOTPoint

java.lang.Object
de.kappich.pat.gnd.pointPlugin.DOTPoint
All Implemented Interfaces:
DOTManager.DOTChangeListener, DisplayObjectType, Comparable<DisplayObjectType>

public class DOTPoint extends Object implements DisplayObjectType, DOTManager.DOTChangeListener
Der Darstellungstyp für Punktobjekte.

Ein DOTPoint implementiert das Interface DisplayObjectType für das Plugin für Punktobjekte. Dieser GND-interne Darstellungstyp ist bei weitem der umfangreichste und seine Implementation beruht NICHT auf DefaultDisplayObjectType.

Jeder DOTPoint hat einen Namen, einen Infotext, einen Verschiebungsfaktor (-länge) und eine interne Variable, die anzeigt, ob eine Verbingslinie zwischen der Lage in der Karte und dem verschobenen Objekt gezeichnet werden soll. Weiterhin kann er beliebig viele Grundfiguren enthalten, die je nach ihrem Typ statische oder dynamische Eigenschaften besitzen. Der DOTPoint besitzt selbst keine Visualisierungs-Eigenschaften.

  • Constructor Details

    • DOTPoint

      public DOTPoint()
      Ein Konstruktor ohne Vorgaben.
    • DOTPoint

      public DOTPoint(String name, String info, double translationFactor, boolean joinByLine)
      Ein Konstruktor mit punkt-spezifischen Vorgaben.
      Parameters:
      name - der Name des Darstellungstyp-Objekts
      info - die Kurzinfo des Darstellungstyp-Objekts
      translationFactor - der globale Verschiebungsfaktor
      joinByLine - true genau dann, wenn eine Verbindungslinie gezeichnet werden soll
  • Method Details

    • getName

      public String getName()
      Description copied from interface: DisplayObjectType
      Getter für den Namen.
      Specified by:
      getName in interface DisplayObjectType
      Returns:
      der Name
    • setName

      public void setName(String name)
      Description copied from interface: DisplayObjectType
      Setter für den Namen.
      Specified by:
      setName in interface DisplayObjectType
      Parameters:
      name - der neue Name
    • getInfo

      public String getInfo()
      Description copied from interface: DisplayObjectType
      Getter für die Info.
      Specified by:
      getInfo in interface DisplayObjectType
      Returns:
      die Kurzinfo
    • setInfo

      public void setInfo(String info)
      Description copied from interface: DisplayObjectType
      Setter für die Info.
      Specified by:
      setInfo in interface DisplayObjectType
      Parameters:
      info - die Kurzinfo
    • getTranslationFactor

      public Double getTranslationFactor()
      Der Getter für den Verschiebungsfaktor bzw. -länge.
      Returns:
      der Verschiebungsfaktor
    • setTranslationFactor

      public void setTranslationFactor(Double translationFactor)
      Der Setter für den Verschiebungsfaktor bzw. -länge.
      Parameters:
      translationFactor - der Verschiebungsfaktor
    • getJoinByLine

      public boolean getJoinByLine()
      Gibt true zurück, wenn die Lage in der Karte mit dem verschobenen Objekt durch eine Verbindungslinie verbunden werden soll.
      Returns:
      soll eine Verbindungslinie gezeichnet werden
    • setJoinByLine

      public void setJoinByLine(boolean joinByLine)
      Setzt die interne Variable, die bestimmt, ob die Lage in der Karte mit dem verschobenen Objekt durch eine Verbindungslinie verbunden werden soll.
      Parameters:
      joinByLine - legt fest, ob eine Verbindungslinie gezeichnet werden soll
    • isPropertyStatic

      public boolean isPropertyStatic(String primitiveFormName, Property property)
      Description copied from interface: DisplayObjectType
      Ist die Property zu der als Object übergebenen Grundfigur statisch, so erhält man true zurück; andernfalls ist die Eigenschaft dynamisch und man erhält false.
      Specified by:
      isPropertyStatic in interface DisplayObjectType
      Parameters:
      primitiveFormName - der Name einer Grundfigur oder null
      property - eine Eigenschaft
      Returns:
      ist die Eigenschaft statisch?
    • setPropertyStatic

      public void setPropertyStatic(String primitiveFormName, Property property, boolean b)
      Description copied from interface: DisplayObjectType
      Setzt die Eigenschaft statisch bzw dynamisch zu sein der übergebenen Eigenschaft, die gegebenenfalls zu der genannten Grundfigur gehört. Diese Methode sollte so implementiert werden, dass sie beim Ändern die nicht mehr gültigen Werte der Eigenschaft nicht löscht (dadurch wird es möglich, dass der Benutzer diese zwischen statisch und dynamisch hin- und herschaltet ohne seine vorherigen Einstellungen zu verlieren).
      Specified by:
      setPropertyStatic in interface DisplayObjectType
      Parameters:
      primitiveFormName - der Name einer Grundfigur oder null
      property - eine Eigenschaft
      b - der neue Wert
    • getValueOfStaticProperty

      @Nullable public Object getValueOfStaticProperty(String primitiveFormName, Property property)
      Description copied from interface: DisplayObjectType
      Gibt den Wert der übergebenen Property zurück, die gegebenenfalls zu der genannten Grundfigur gehört.
      Specified by:
      getValueOfStaticProperty in interface DisplayObjectType
      Parameters:
      primitiveFormName - der Name einer Grundfigur oder null
      property - eine Eigenschaft
      Returns:
      der Wert der Eigenschaft
    • setValueOfStaticProperty

      public void setValueOfStaticProperty(String primitiveFormName, Property property, Object value)
      Description copied from interface: DisplayObjectType
      Setzt den Wert der übergebenen Property, die gegebenenfalls zu der genannten Grundfigur gehört. Diese Methode sollte so implementiert werden, dass sie auch auch dann den übergebenen Wert behält, wenn die Property aktuell nicht statisch ist (dadurch wird es möglich, dass der Benutzer diese zwischen statisch und dynamisch hin- und herschaltet ohne seine vorherigen Einstellungen zu verlieren).
      Specified by:
      setValueOfStaticProperty in interface DisplayObjectType
      Parameters:
      primitiveFormName - der Name einer Grundfigur oder null
      property - eine Eigenschaft
      value - der neue Wert
    • setValueOfDynamicProperty

      public void setValueOfDynamicProperty(String primitiveFormName, Property property, DisplayObjectType.DisplayObjectTypeItem dItem, Double lowerBound, Double upperBound)
      Description copied from interface: DisplayObjectType
      Setzt den Wert der übergebenen Property, die gegebenenfalls zu der genannten Grundfigur gehört, für das übergebene Intervall auf das übergebene DisplayObjectTypeItem. Diese Methode sollte so implementiert werden, dass sie auch auch dann den übergebenen Wert behält, wenn die Property aktuell nicht dynamisch ist (dadurch wird es möglich, dass der Benutzer diese zwischen statisch und dynamisch hin- und herschaltet ohne seine vorherigen Einstellungen zu verlieren).
      Specified by:
      setValueOfDynamicProperty in interface DisplayObjectType
      Parameters:
      primitiveFormName - der Name einer Grundfigur oder null
      property - eine Eigenschaft
      dItem - ein Item
      lowerBound - die untere Schranke
      upperBound - die obere Schranke
    • initializeFromPreferences

      public void initializeFromPreferences(Preferences prefs)
      Description copied from interface: DisplayObjectType
      Initialisiert den DisplayObjectType aus dem übergebenen Knoten.
      Specified by:
      initializeFromPreferences in interface DisplayObjectType
      Parameters:
      prefs - der Knoten, unter dem die Initialisierung durchgeführt werden soll
    • deletePreferences

      public void deletePreferences(Preferences prefs)
      Description copied from interface: DisplayObjectType
      Löscht den DisplayObjectType unter dem übergebenen Knoten.
      Specified by:
      deletePreferences in interface DisplayObjectType
      Parameters:
      prefs - der Knoten, unter dem die Löschung durchgeführt werden soll
    • putPreferences

      public void putPreferences(Preferences prefs)
      Description copied from interface: DisplayObjectType
      Speichert die Informationen des DisplayObjectTypes unter dem übergebenen Knoten.
      Specified by:
      putPreferences in interface DisplayObjectType
      Parameters:
      prefs - der Knoten, unter dem die Speicherung durchgeführt werden soll
    • getDisplayObjectTypePlugin

      public DisplayObjectTypePlugin getDisplayObjectTypePlugin()
      Description copied from interface: DisplayObjectType
      Gibt die Selebstbeschreibung des Plugins, zu dem dieser DisplayObjectType gehört, zurück.
      Specified by:
      getDisplayObjectTypePlugin in interface DisplayObjectType
      Returns:
      die Selbstbeschreibung
    • getLegendTreeNodes

      public LegendTreeNodes getLegendTreeNodes()
      Description copied from interface: DisplayObjectType
      Erzeugt den Teilbaum der Legende, für diesen Darstellungstyp.
      Specified by:
      getLegendTreeNodes in interface DisplayObjectType
      Returns:
      der Teilbaum der Legende
    • getSubscriptionData

      public Set<DOTSubscriptionData> getSubscriptionData()
      Description copied from interface: DisplayObjectType
      Gibt alle Anmeldungen, die dieser DisplayObjectTyp benötigt, zurück.
      Specified by:
      getSubscriptionData in interface DisplayObjectType
      Returns:
      alle Anmeldungen
    • getAttributeNames

      public List<String> getAttributeNames(String primitiveFormName, Property property, DOTSubscriptionData subscriptionData)
      Description copied from interface: DisplayObjectType
      Gibt die Attributnamen, für die Werte benötigt werden, zu der übergebenen Eigenschaft und der übergebenen Anmeldung zurück.
      Specified by:
      getAttributeNames in interface DisplayObjectType
      Parameters:
      primitiveFormName - der Name einer Grundfigur oder null
      property - eine Eigenschaft
      subscriptionData - eine Anmeldung
      Returns:
      alle Attributname
    • getDOTItemForValue

      @Nullable public DisplayObjectType.DisplayObjectTypeItem getDOTItemForValue(String primitiveFormName, Property property, DOTSubscriptionData subscriptionData, String attributeName, double value)
      Description copied from interface: DisplayObjectType
      Ist der Rückgabewert nicht null, so ist dieser DisplayObjectType.DisplayObjectTypeItem für die übergebenen Daten anwendbar. Diese Methode wird von einem OnlineDisplayObject aufgerufen, wenn neue Online-Daten vorliegen, die eine Änderung der Visualisierungs-Eigenschaft zur Folge haben könnte. Der im Rückgabewert enthaltene Wert (z.B. eine Farbe) wird dann vom Painter zur Visualisierung verwendet.
      Specified by:
      getDOTItemForValue in interface DisplayObjectType
      Parameters:
      primitiveFormName - der Name einer Grundfigur oder null
      property - die Eigenschaft
      subscriptionData - Attributgruppe und Aspekt
      attributeName - Attribut
      value - Wert des Attributs
      Returns:
      das Item oder null
    • getDisplayObjectTypeItemForState

      @Nullable public DisplayObjectType.DisplayObjectTypeItem getDisplayObjectTypeItemForState(String primitiveFormName, Property property, DOTSubscriptionData subscriptionData, de.bsvrz.dav.daf.main.DataState dataState)
      Description copied from interface: DisplayObjectType
      Ist der Rückgabewert nicht null, so ist dieser DisplayObjectType.DisplayObjectTypeItem für die übergebenen Daten anwendbar. Diese Methode wird von einem DisplayObject aufgerufen, wenn zur gegebenen Anmeldung neue Daten geschickt wurden, die aber keine Werte für die Attribute enthalten, sondern Informationen über den Zustand. Der im Rückgabewert enthaltene Wert (z.B. eine Farbe) wird dann vom Painter zur Visualisierung verwendet.
      Specified by:
      getDisplayObjectTypeItemForState in interface DisplayObjectType
      Parameters:
      primitiveFormName - der Name einer Grundfigur oder null
      property - die Eigenschaft
      subscriptionData - Attributgruppe und Aspekt
      dataState - Zustand des Datensatzes
      Returns:
      das Item oder null
    • getCopy

      public DisplayObjectType getCopy(String name)
      Description copied from interface: DisplayObjectType
      Macht eine tiefe Kopie des DisplayObjectTypes und setzt den Namen um, falls der übergebene String nicht null ist. Diese Methode wird beim Erstellen und Bearbeiten von Darstellungstypen verwendet: dem Bearbeitungs-Dialog wird eine tiefe Kopie übergeben und alle Änderungen werden an diesem Objekt durchgeführt.
      Specified by:
      getCopy in interface DisplayObjectType
      Parameters:
      name - der neue Name oder null
      Returns:
      eine Kopie
    • addPrimitiveForm

      public void addPrimitiveForm(DOTPoint.PrimitiveForm primitiveForm)
      Fügt eine Grundfigur hinzu.
      Parameters:
      primitiveForm - die Grundfigur
    • putPrimitiveForm

      public void putPrimitiveForm(DOTPoint.PrimitiveForm primitiveForm)
      Macht ein Update auf die bereits vorhandene Grundfigur oder fügt sie andernfalls hinzu.
      Parameters:
      primitiveForm - die Grundfigur
    • getPrimitiveForm

      public DOTPoint.PrimitiveForm getPrimitiveForm(String primitiveFormName)
      Gibt die genannte Grundfigur zurück.
      Parameters:
      primitiveFormName - der Name der Grundfigur
      Returns:
      die Grundfigur oder null
    • getPrimitiveForms

      public Collection<DOTPoint.PrimitiveForm> getPrimitiveForms()
      Gibt alle Grundfiguren zurück.
      Returns:
      alle Grundfiguren
    • getPrimitiveFormNames

      public Set<String> getPrimitiveFormNames()
      Gibt die Namen aller Grundfiguren zurück.
      Specified by:
      getPrimitiveFormNames in interface DisplayObjectType
      Returns:
      alle Grundfigurnamen
    • getPrimitiveFormType

      public String getPrimitiveFormType(String primitiveFormName)
      Gibt den Typ der genannten Grundfigur zurück, oder aber einen leeren String.
      Specified by:
      getPrimitiveFormType in interface DisplayObjectType
      Parameters:
      primitiveFormName - der Grundfigurname
      Returns:
      der Grundfigurtyp
    • getPrimitiveFormInfo

      public String getPrimitiveFormInfo(String primitiveFormName)
      Gibt den Infotext der benannten Grundfigur zurück, oder aber einen leeren String.
      Specified by:
      getPrimitiveFormInfo in interface DisplayObjectType
      Parameters:
      primitiveFormName - der Grundfigurname
      Returns:
      die Kurzinfo
    • removePrimitiveForm

      public void removePrimitiveForm(String primitiveFormName)
      Entfernt die benannte Grundfigur.
      Specified by:
      removePrimitiveForm in interface DisplayObjectType
      Parameters:
      primitiveFormName - der Grundfigurname
    • getDynamicProperties

      public List<Property> getDynamicProperties(String primitiveFormName)
      Gibt alle dynamischen Eigenschaften der benannten Grundfigur zurück.
      Specified by:
      getDynamicProperties in interface DisplayObjectType
      Parameters:
      primitiveFormName - der Grundfigurname
      Returns:
      alle dynamischen Eigenschaften der Grundfigur
    • getTableModel

      public TableModel getTableModel(DOTPoint.PrimitiveForm primitiveForm, Property property)
      Gibt das Tabellenmodel der durch die übergebenen Werte beschriebenen Eigenschaft zurück.
      Parameters:
      primitiveForm - die Grundfigur
      property - die Eigenschaft
      Returns:
      das TableModel
    • getConflictingRows

      @Nullable public Set<Integer> getConflictingRows(DOTPoint.PrimitiveForm primitiveForm, Property property)
      Gibt die Indizes aller in Konflikt stehenden Zeilen des Tabellenmodells an. Ein Konflikt besteht, wenn zwei Zeilen sich hinsichtlich der Wertebereiche überlappen.
      Parameters:
      primitiveForm - die Grundfigur
      property - die Eigenschaft
      Returns:
      die Indizes von in Konflikten stehenden Zeilen
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public final boolean equals(Object o)
      Overrides:
      equals in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • getUsedColors

      public Set<String> getUsedColors()
      Description copied from interface: DisplayObjectType
      Gibt die Namen aller von diesem DisplayObject verwendeten Farben zurück.
      Specified by:
      getUsedColors in interface DisplayObjectType
      Returns:
      Die Menge aller Namen aller benutzten Farben
    • displayObjectTypeAdded

      public void displayObjectTypeAdded(DisplayObjectType displayObjectType)
      Description copied from interface: DOTManager.DOTChangeListener
      Diese Methode wird aufgerufen, wenn der übergebene Darstellungstyp hinzugefügt wurde.
      Specified by:
      displayObjectTypeAdded in interface DOTManager.DOTChangeListener
      Parameters:
      displayObjectType - ein Darstellungstyp
    • displayObjectTypeChanged

      public void displayObjectTypeChanged(DisplayObjectType displayObjectType)
      Description copied from interface: DOTManager.DOTChangeListener
      Diese Methode wird aufgerufen, wenn der übergebene Darstellungstyp geändert wurde.
      Specified by:
      displayObjectTypeChanged in interface DOTManager.DOTChangeListener
      Parameters:
      displayObjectType - ein Darstellungstyp
    • displayObjectTypeRemoved

      public void displayObjectTypeRemoved(String displayObjectTypeName)
      Description copied from interface: DOTManager.DOTChangeListener
      Diese Methode wird aufgerufen, wenn der genannte Darstellungstyp gelöscht wurde.
      Specified by:
      displayObjectTypeRemoved in interface DOTManager.DOTChangeListener
      Parameters:
      displayObjectTypeName - ein Name eines Darstellungstyp
    • compareTo

      public int compareTo(DisplayObjectType o)
      Specified by:
      compareTo in interface Comparable<DisplayObjectType>