Class TSNode

java.lang.Object
  extended by TSOpts
      extended by TSNode
All Implemented Interfaces:
java.io.Serializable

 class TSNode
extends TSOpts

===================================================================== Class TSNode -- Definition of 'vector-section' from Track/Road-DB This class is also used to store data of an UID-Definition from TrEnd-/TrJunction-Node ##TSNode (Eyecatcher) =====================================================================


Field Summary
private  int CoE
           
private  int CoO
           
private  int CoS
           
private  int Id
           
protected static java.lang.String IdStr
           
private  TSQPos Pos
           
private  TSQuad QDf
           
private  int Qx
           
private  int Qz
           
private  double R1
           
private  double R2
           
private  double R3
           
private  int Sc
           
private  TSSc ScR
           
private  int Sh
           
private  TSUiD Uid
           
 
Constructor Summary
protected TSNode()
          Used options (stored within mask of 'TSOpt'): (refer to 'TSTrNde') ===================================================================== Constructor: (1) Create default-entry ====================================================================
protected TSNode(int sh, int sc)
          ==================================================================== Constructor: (2) Create standard-entry ====================================================================
 
Method Summary
protected  java.lang.String adjHgt(double d)
          ==================================================================== Methode "adjHgt" Hoehenwert eines Knotens anpassen Ergebniswert muss nicht geprueft werden ##adjHgt.TSNode (Eyecatcher) ====================================================================
protected  TSUiD chgUid(TSUiD id)
          ==================================================================== Methode "chgUid" UiD-Referenz (Adr) lesen / neu setzen ##chgUid.TSNode (Eyecatcher) ====================================================================
protected  TSQPos chgXXXPos(TSQPos cP)
          ==================================================================== Methode "chgPos" Positionsreferenz (extended) lesen / neu setzen ##chgPos.TSNode (Eyecatcher) ====================================================================
protected  boolean chkId(TSQuad cQdf, int id)
          ==================================================================== Methode "chkId" Werte der UiD-Definition ueberpruefen Methode liefert 'false' wenn die Referenz identisch ist.
protected  java.lang.String chkSc(TSSect[] ScT, TSRoute cRte)
          ==================================================================== Methode "chkSc" Section-Kennung (global/lokal) pruefen und ggf.
protected  java.lang.String chkScR(TSSh cSh)
          ==================================================================== Method "chkScR" Check section-id if it is part of current shape Return error-message if it is not ##chkScR.TSNode (Eyecatcher) ====================================================================
protected  java.lang.String chkSh(int sh)
          ==================================================================== Methode "chkSh" Shape-Kennung mit gespeichertem Wert vergleichen und ggf.
protected  java.lang.String chkSh(TSShape[] ShT, TSRoute cRte)
          ==================================================================== Methode "chkSh" (2.
protected  boolean clrS(int lShT, TSRoute cRte)
          ==================================================================== Methode "clrS" Shape- und Section-Referenzen loeschen Methode meldet 'true' wenn Aktion NICHT erfolgreich ACHTUNG: Restriktive Version (UG(loc) == OG(glob) gefordert) ##clrS.TSNode (Eyecatcher) ====================================================================
protected  double cmpAbs(TSQPos cP)
          ==================================================================== Methode "cmpAbs" Abstand der Positionswerte berechnen (fuer Vergleich) Methode liefert den Abstand der beiden Koordinaten (nach Pythargoras) Achtung: Aufgabe wird zum TSQPos-Objekt delegiert!
protected  TSCoo crCoo()
          ==================================================================== Methode "crCoo" Positions-Definition als Koordinaten-Objekt liefern Funktion wird an die Positionsdefinition delegiert!
protected  java.lang.String crDef(java.lang.String id, boolean sec)
          ==================================================================== Methode "crDef" Zeilendefinition(en) fuer die Ausgabe erzeugen ##crDef.TSNode (Eyecatcher) ====================================================================
protected  TSQPos crPos()
          ==================================================================== Methode "crPos" Information-Hiding: Positionswerte als TSQPos-Objekt liefern Achtung: Es wird eine (shallow-)Kopie geliefert, sodass die Attribute dieses Objektes (testweise) modifiziert werden koennen, ohne das Basisobjekt zu beeinflussen ##crPos.TSNode (Eyecatcher) ====================================================================
protected  TSQuad fndWrld(java.util.TreeSet<TSQuad> qdf, boolean t)
          ==================================================================== Methode "fndWrld" suchen und liefern der World-Definitionen aus 'Qx'/'Qz' und Pos ACHTUNG: Im Erfolgsfall wird die Quadrat-Referenz eingetragen!!
protected  double getDir(int nr)
          ==================================================================== Methode "getDir" Information-Hiding: geforderter Richtungswert holen ##getDir.TSNode (Eyecatcher) ====================================================================
protected  java.lang.String getId(boolean m)
          ==================================================================== Methode "getId" Information-Hiding: UiD-Identifikation + Quadranden prufen und ggf. liefern Achtung: Wenn diese Methode genutzt wird ist die UiD-Verkettung NICHT gueltig!
protected  java.lang.String getMsg(int nr, java.lang.String s)
          ==================================================================== Methode "getMsg" Message gemaess Fehlerkennung erstellen ACHTUNG: 'private'-Werte werden in die Meldung eingebaut ##getMsg.TSNode (Eyecatcher) ====================================================================
protected  java.lang.String getPos()
          ==================================================================== Methode "getPos" Information-Hiding: Positionswerte in Zeichenkettenform liefern Achtung: Vollstaendiger Positionswert (incl.
protected  int getSc(boolean t)
          ==================================================================== Methode "getSc" aktuell gueltige Section-Kennung holen (alt,neu) Argument: 'true' -> 'alt', 'false' -> 'neu' ##getSc.TSNode (Eyecatcher) ====================================================================
protected  double getScV(boolean t)
          ==================================================================== Methode "getScV" aktuell gueltige Section-Werte holen Argument: 'true' -> 'Radius/Laenge', 'false' -> 'Winkel' ##getScV.TSNode (Eyecatcher) ====================================================================
protected  int getSh(boolean t)
          ==================================================================== Methode "getSh" aktuell gueltiga Shape-Kennung holen Argument: 'true' -> 'alt', 'false' -> 'neu' ##getSh.TSNode (Eyecatcher) ====================================================================
protected  int getUid()
          ==================================================================== Methode "getUid" Wert der UiD-kennung liefern ##getUid.TSNode (Eyecatcher) ====================================================================
protected  boolean isT()
          ==================================================================== Methode "isT" liefern Kennung ob Schiene 'gedreht' (twisted) ist ##isT.TSNode (Eyecatcher) ====================================================================
protected  java.lang.String setConn(int a, int e, int o)
          ==================================================================== Methode "setConn" Connectionwerte in Node-Definition uebernehmen Nummer der Verbindungspunkte der SectionIdx-Definitionen setzen ##setConn.TSNode (Eyecatcher) ====================================================================
protected  java.lang.String setDir(double r1, double r2, double r3)
          ==================================================================== Methode "setDir" Richtungswerte eines Objektes speichern ACHTUNG: neue Richtungswerte muessen geprueft und gueltig sein!
protected  java.lang.String setID(int qx, int qz, int id)
          ==================================================================== Methode "setID" Werte der UiD-Definition eintragen ##setID.TSNode (Eyecatcher) ====================================================================
protected  TSQPos setPos(TSQPos cP)
          ==================================================================== Methode "setPos" neues Positionsobjektes speichern/ersetzen (unbedingt) ##setPos.TSNode (Eyecatcher) ====================================================================
protected  java.lang.String toStr()
          ==================================================================== Method "toStr" Build a string-representation of all values of this class ##toStr.TSNode (Eyecatcher) ====================================================================
 
Methods inherited from class TSOpts
$init, chkMsk, chkMsk, clrMsk, clrMsk, cntMsk, cntMsk, fndMsk, getMsk, orMsk, resMsk, setMsk, setMsk, tstMsk
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

IdStr

protected static final java.lang.String IdStr
See Also:
Constant Field Values

Id

private int Id

Uid

private TSUiD Uid

Qx

private int Qx

Qz

private int Qz

QDf

private TSQuad QDf

Pos

private TSQPos Pos

R1

private double R1

R2

private double R2

R3

private double R3

CoS

private int CoS

CoE

private int CoE

CoO

private int CoO

Sh

private int Sh

Sc

private int Sc

ScR

private TSSc ScR
Constructor Detail

TSNode

protected TSNode()
Used options (stored within mask of 'TSOpt'): (refer to 'TSTrNde') ===================================================================== Constructor: (1) Create default-entry ====================================================================


TSNode

protected TSNode(int sh,
                 int sc)
==================================================================== Constructor: (2) Create standard-entry ====================================================================

Method Detail

adjHgt

protected java.lang.String adjHgt(double d)
==================================================================== Methode "adjHgt" Hoehenwert eines Knotens anpassen Ergebniswert muss nicht geprueft werden ##adjHgt.TSNode (Eyecatcher) ====================================================================


chgXXXPos

protected TSQPos chgXXXPos(TSQPos cP)
==================================================================== Methode "chgPos" Positionsreferenz (extended) lesen / neu setzen ##chgPos.TSNode (Eyecatcher) ====================================================================


chgUid

protected TSUiD chgUid(TSUiD id)
==================================================================== Methode "chgUid" UiD-Referenz (Adr) lesen / neu setzen ##chgUid.TSNode (Eyecatcher) ====================================================================


chkId

protected boolean chkId(TSQuad cQdf,
                        int id)
==================================================================== Methode "chkId" Werte der UiD-Definition ueberpruefen Methode liefert 'false' wenn die Referenz identisch ist. Reihenfolge der Prufungen: (Wenn ein Wert nicht vorhanden ist (null) wird die naechste Pruefungsart verwendet) a) - Uid-Definition (incl. Rueckverkettung zum Quad) b) - Quad-Referenz + Uid-Definition(NUR ID) c) - Quad-Nummern + Uid-Definition(NUR ID) d) - Quad-Referenz + ID e) - Quad-Nummern + ID ##chkId.TSNode (Eyecatcher) ====================================================================


chkSc

protected java.lang.String chkSc(TSSect[] ScT,
                                 TSRoute cRte)
==================================================================== Methode "chkSc" Section-Kennung (global/lokal) pruefen und ggf. Fehlermeldung liefern Wenn Pruefung erfolgreich wird die Section registriert. ACHTUNG: Erweiterte Version fuer ueberlappende Tabellen Dennoch MUSS gelten UG(local) <= OG(global) ##chkSc.TSNode (Eyecatcher) ====================================================================


chkScR

protected java.lang.String chkScR(TSSh cSh)
==================================================================== Method "chkScR" Check section-id if it is part of current shape Return error-message if it is not ##chkScR.TSNode (Eyecatcher) ====================================================================


chkSh

protected java.lang.String chkSh(int sh)
==================================================================== Methode "chkSh" Shape-Kennung mit gespeichertem Wert vergleichen und ggf. Fehlermeldung liefern ##chkSh.TSNode (Eyecatcher) ====================================================================


chkSh

protected java.lang.String chkSh(TSShape[] ShT,
                                 TSRoute cRte)
==================================================================== Methode "chkSh" (2. Version) Shape-Kennung (global/lokal) pruefen und ggf. Fehlermeldung liefern Wenn Pruefung erfolgreich wird der Shape registriert. ACHTUNG: Erweiterte Version fuer ueberlappende Tabellen Dennoch MUSS gelten UG(loc) <= OG(glob) ##chkSh.TSNode (Eyecatcher) ====================================================================


clrS

protected boolean clrS(int lShT,
                       TSRoute cRte)
==================================================================== Methode "clrS" Shape- und Section-Referenzen loeschen Methode meldet 'true' wenn Aktion NICHT erfolgreich ACHTUNG: Restriktive Version (UG(loc) == OG(glob) gefordert) ##clrS.TSNode (Eyecatcher) ====================================================================


cmpAbs

protected double cmpAbs(TSQPos cP)
==================================================================== Methode "cmpAbs" Abstand der Positionswerte berechnen (fuer Vergleich) Methode liefert den Abstand der beiden Koordinaten (nach Pythargoras) Achtung: Aufgabe wird zum TSQPos-Objekt delegiert! Wenn BEIDE Koordinaten nicht im gleichen Quadranten liegen, wird der maximale Wert 'Double.MAX_VALUE' geliefert Sonderfall wenn 'cP==null': Hoehenwert liefern ##cmpAbs.TSNode (Eyecatcher) ====================================================================


crCoo

protected TSCoo crCoo()
==================================================================== Methode "crCoo" Positions-Definition als Koordinaten-Objekt liefern Funktion wird an die Positionsdefinition delegiert! ##crCoo.TSNode (Eyecatcher) ====================================================================


crDef

protected java.lang.String crDef(java.lang.String id,
                                 boolean sec)
==================================================================== Methode "crDef" Zeilendefinition(en) fuer die Ausgabe erzeugen ##crDef.TSNode (Eyecatcher) ====================================================================


crPos

protected TSQPos crPos()
==================================================================== Methode "crPos" Information-Hiding: Positionswerte als TSQPos-Objekt liefern Achtung: Es wird eine (shallow-)Kopie geliefert, sodass die Attribute dieses Objektes (testweise) modifiziert werden koennen, ohne das Basisobjekt zu beeinflussen ##crPos.TSNode (Eyecatcher) ====================================================================


fndWrld

protected TSQuad fndWrld(java.util.TreeSet<TSQuad> qdf,
                         boolean t)
==================================================================== Methode "fndWrld" suchen und liefern der World-Definitionen aus 'Qx'/'Qz' und Pos ACHTUNG: Im Erfolgsfall wird die Quadrat-Referenz eingetragen!! ##fndWrld.TSNode (Eyecatcher) ====================================================================


getDir

protected double getDir(int nr)
==================================================================== Methode "getDir" Information-Hiding: geforderter Richtungswert holen ##getDir.TSNode (Eyecatcher) ====================================================================


getId

protected java.lang.String getId(boolean m)
==================================================================== Methode "getId" Information-Hiding: UiD-Identifikation + Quadranden prufen und ggf. liefern Achtung: Wenn diese Methode genutzt wird ist die UiD-Verkettung NICHT gueltig! Sonst koennen die korrekten Werte aus der UiD-Definition extrahiert werden. ##getId.TSNode (Eyecatcher) ====================================================================


getMsg

protected java.lang.String getMsg(int nr,
                                  java.lang.String s)
==================================================================== Methode "getMsg" Message gemaess Fehlerkennung erstellen ACHTUNG: 'private'-Werte werden in die Meldung eingebaut ##getMsg.TSNode (Eyecatcher) ====================================================================


getPos

protected java.lang.String getPos()
==================================================================== Methode "getPos" Information-Hiding: Positionswerte in Zeichenkettenform liefern Achtung: Vollstaendiger Positionswert (incl. Quadrant) ##getPos.TSNode (Eyecatcher) ====================================================================


getSc

protected int getSc(boolean t)
==================================================================== Methode "getSc" aktuell gueltige Section-Kennung holen (alt,neu) Argument: 'true' -> 'alt', 'false' -> 'neu' ##getSc.TSNode (Eyecatcher) ====================================================================


getScV

protected double getScV(boolean t)
==================================================================== Methode "getScV" aktuell gueltige Section-Werte holen Argument: 'true' -> 'Radius/Laenge', 'false' -> 'Winkel' ##getScV.TSNode (Eyecatcher) ====================================================================


getSh

protected int getSh(boolean t)
==================================================================== Methode "getSh" aktuell gueltiga Shape-Kennung holen Argument: 'true' -> 'alt', 'false' -> 'neu' ##getSh.TSNode (Eyecatcher) ====================================================================


getUid

protected int getUid()
==================================================================== Methode "getUid" Wert der UiD-kennung liefern ##getUid.TSNode (Eyecatcher) ====================================================================


isT

protected boolean isT()
==================================================================== Methode "isT" liefern Kennung ob Schiene 'gedreht' (twisted) ist ##isT.TSNode (Eyecatcher) ====================================================================


setConn

protected java.lang.String setConn(int a,
                                   int e,
                                   int o)
==================================================================== Methode "setConn" Connectionwerte in Node-Definition uebernehmen Nummer der Verbindungspunkte der SectionIdx-Definitionen setzen ##setConn.TSNode (Eyecatcher) ====================================================================


setDir

protected java.lang.String setDir(double r1,
                                  double r2,
                                  double r3)
==================================================================== Methode "setDir" Richtungswerte eines Objektes speichern ACHTUNG: neue Richtungswerte muessen geprueft und gueltig sein! ##setDir.TSNode (Eyecatcher) ====================================================================


setID

protected java.lang.String setID(int qx,
                                 int qz,
                                 int id)
==================================================================== Methode "setID" Werte der UiD-Definition eintragen ##setID.TSNode (Eyecatcher) ====================================================================


setPos

protected TSQPos setPos(TSQPos cP)
==================================================================== Methode "setPos" neues Positionsobjektes speichern/ersetzen (unbedingt) ##setPos.TSNode (Eyecatcher) ====================================================================


toStr

protected final java.lang.String toStr()
==================================================================== Method "toStr" Build a string-representation of all values of this class ##toStr.TSNode (Eyecatcher) ====================================================================

Overrides:
toStr in class TSOpts