de.bsvrz.kex.bwsin.konfig
Class SegmentFactory

java.lang.Object
  extended by de.bsvrz.kex.bwsin.konfig.SegmentFactory

public class SegmentFactory
extends Object

Factory zur Generierung von PID's und Namen für die Straßenelemente. Es wird die Eindeutigkeit der PID sichergestellt.

Version:
$Id: SegmentFactory.java 10247 2008-07-04 08:18:31Z gieseler $
Author:
BitCtrl Systems GmbH, Gieseler

Constructor Summary
SegmentFactory(SINAktuelleKonfiguration aktuelleKonfiguration)
          Konstruktor.
 
Method Summary
static String bildePIDASS(Location locationvon, Location locationnach)
          Erzeugt eine PID (ohne zusätzliche Fahrbeziehung) für ein äußeres Straßensegment.
static String bildePIDISS(Location locationvon, Location locationnach)
          Erzeugt eine PID (ohne zusätzliche Fahrbeziehung) für ein inneres Straßenteilsegment.
 String bildePIDStrassenSegment(String pidanfang, de.bsvrz.sys.funclib.bitctrl.geolib.WGS84Polygon polygon)
          Bildet die PID für ein Straßensegment.
 String bildePIDStrassenTeilSegment(de.bsvrz.sys.funclib.bitctrl.geolib.WGS84Polygon polygon)
          Bildet die PID für ein Straßenteilsegment.
 String bildePIDSTS(int lfdnr)
          Erzeugt eine PID für ein Straßenteilsegment.
static String bildeSegmentNamen(String pid, String zusatz)
          Bildet den Namen eines Straßensegmentes aus PID und optionalem Zusatztext.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SegmentFactory

public SegmentFactory(SINAktuelleKonfiguration aktuelleKonfiguration)
Konstruktor.

Parameters:
aktuelleKonfiguration - aktuelle Konfiguration
Method Detail

bildePIDASS

public static String bildePIDASS(Location locationvon,
                                 Location locationnach)
Erzeugt eine PID (ohne zusätzliche Fahrbeziehung) für ein äußeres Straßensegment. Die PID wird entsprechend Afo gebildet.

Parameters:
locationvon - Location, von der sich das Straßenelement wegbewegt
locationnach - Location, auf die sich das Straßenelement zubewegt
Returns:
PID

bildePIDISS

public static String bildePIDISS(Location locationvon,
                                 Location locationnach)
Erzeugt eine PID (ohne zusätzliche Fahrbeziehung) für ein inneres Straßenteilsegment. Die PID wird entsprechend Afo gebildet.

Parameters:
locationvon - Location, von der sich das Straßenelement wegbewegt
locationnach - Location, auf die sich das Straßenelement zubewegt
Returns:
PID

bildeSegmentNamen

public static String bildeSegmentNamen(String pid,
                                       String zusatz)
Bildet den Namen eines Straßensegmentes aus PID und optionalem Zusatztext.

Parameters:
pid - PID
zusatz - Zusatztext zum Namen
Returns:
Name des Straßensegmentes

bildePIDStrassenSegment

public String bildePIDStrassenSegment(String pidanfang,
                                      de.bsvrz.sys.funclib.bitctrl.geolib.WGS84Polygon polygon)
Bildet die PID für ein Straßensegment.

Zunächst wird in der aktuellen Konfiguration nach einem identischen Segment gesucht. Wenn kein passendes existierendes Straßensegment gefunden wurde, wird aus dem übergebenen PID-Anfang eine eindeutige PID durch Anhängen einer laufenden Nummer erzeugt.

Parameters:
pidanfang - zu vergleichende PID (ohne Zusatzinfo)
polygon - zu vergleichendes Polygon
Returns:
eindeutige PID für ein Straßensegment

bildePIDStrassenTeilSegment

public String bildePIDStrassenTeilSegment(de.bsvrz.sys.funclib.bitctrl.geolib.WGS84Polygon polygon)
Bildet die PID für ein Straßenteilsegment.

Zunächst wird in der aktuellen Konfiguration nach einem identischen Teilsegment gesucht. Wenn kein passendes existierendes Straßenteilsegment gefunden wurde, wird eine eindeutige PID erzeugt.

Parameters:
polygon - zu vergleichendes Polygon
Returns:
eindeutige PID für ein Straßenteilsegment

bildePIDSTS

public String bildePIDSTS(int lfdnr)
Erzeugt eine PID für ein Straßenteilsegment. Die PID wird entsprechend Afo gebildet.

Parameters:
lfdnr - laufende Nummer
Returns:
PID