public class NetzReferenzen extends Object
Modifier and Type | Class and Description |
---|---|
private class |
NetzReferenzen.TeilSegmentASB
Repräsentiert eine ASB-Stationierung auf einem
Straßenteilsegment.
|
Modifier and Type | Field and Description |
---|---|
private Set<String> |
anfangKnotenMap |
private boolean |
anfangKnotenMapInitialisiert |
private Set<String> |
endKnotenMap |
private VerkehrModellNetz |
netzmodell
Das Netzmodell.
|
private Map<Verkehrsrichtung,Map<String,List<StrassenTeilSegment>>> |
richtungAnfangKnotenMap |
private static NetzReferenzen |
singleton
Das Singleton der Klasse.
|
Constructor and Description |
---|
NetzReferenzen() |
Modifier and Type | Method and Description |
---|---|
private double |
berechneAsbSkalierung(StrassenTeilSegment teilsegment)
Berechnet die Skalierung zur Korrektur der Offsets bzw.
|
AsbStationierungOrtsReferenzInterface |
ermittleOrtsReferenzAsbStationierung(StrassenSegmentUndOffsetOrtsReferenzInterface referenz)
Rechnet Ortsreferenzen mit StraßenSegment und den Offset in
Ortsangabe über das ASB-Stationierungssystem um.
|
AsbStationierungOrtsReferenzInterface |
ermittleOrtsReferenzAsbStationierung(StrasseUndBetriebsKilometerOrtsReferenzInterface referenz)
Rechnet Ortsreferenz mit Straße und Betriebskilometer in Ortsangabe
über das ASB-Stationierungssystem um.
|
List<StrassenSegmentUndOffsetOrtsReferenzInterface> |
ermittleOrtsReferenzStrassenSegmentUndOffset(AsbStationierungOrtsReferenzInterface referenz)
Rechnet Ortsreferenzen vom ASB-Stationierungssystem in Angaben mit
StraßenSegment und den Offset vom Anfang des StraßenSegments
um.
|
StrassenSegmentUndOffsetOrtsReferenzInterface |
ermittleOrtsReferenzStrassenSegmentUndOffset(StrasseUndBetriebsKilometerOrtsReferenzInterface referenz)
Rechnet Ortsreferenz mit Straße und Betriebskilometer in Angaben
mit StraßenSegment und den Offset vom Anfang des
StraßenSegments um.
|
List<StrasseUndBetriebsKilometerOrtsReferenzInterface> |
ermittleOrtsReferenzStrasseUndBetriebsKilometer(AsbStationierungOrtsReferenzInterface referenz)
Rechnet Ortsreferenzen vom ASB-Stationierungssystem in Angaben über
eine Straße und den Betriebskilometers um.
|
StrasseUndBetriebsKilometerOrtsReferenzInterface |
ermittleOrtsReferenzStrasseUndBetriebsKilometer(StrassenSegmentUndOffsetOrtsReferenzInterface referenz)
Rechnet Ortsreferenz mit StraßenSegment und Offset vom Anfang des
StraßenSegments in Angaben über eine Straße und den
Betriebskilometers um.
|
private StrassenTeilSegment.AsbStationierung |
findeAsbStationierungAmOffset(StrassenTeilSegment teilSegment,
double offset)
Findet eine ASB-Stationierungsangabe für einen bestimmten Offset
innerhalb eines Straßenteilsegmentes.
|
AsbStationierungBereich |
findeAsbStationierungsBereich(AsbStationierungOrtsReferenz referenz)
Findet den grössten Stationierungswert zu einem ASB-Abschnitt/Ast.
|
private List<StrassenTeilSegment> |
findeKnotenListe(AsbStationierungOrtsReferenzInterface referenz)
Findet eine Liste von Teilsegmenten, deren ASB-Stationierung den
Anfangsknoten der Referenz enthält.
|
Strasse |
findeStrasse(AsbStationierungOrtsReferenz referenz)
Deprecated.
Ersetzt durch
findeStrassen(AsbStationierungOrtsReferenz) . |
List<Strasse> |
findeStrassen(AsbStationierungOrtsReferenz referenz)
Versucht, alle Straßen zu einer ASB-Stationierung zu finden.
|
private StrassenTeilSegment |
findeTeilSegmentAmOffset(StrassenSegmentUndOffsetOrtsReferenzInterface referenz)
Findet das Teilsegment des Straßensegmentes, auf dass von der
Ortsreferenz verwiesen wird.
|
private NetzReferenzen.TeilSegmentASB |
findeTeilSegmentAsbStationierung(AsbStationierungOrtsReferenzInterface referenz) |
private NetzReferenzen.TeilSegmentASB |
findeTeilSegmentAsbStationierungAlt(AsbStationierungOrtsReferenzInterface referenz)
Findet das Teilsegment, auf dass von der Ortsreferenz verwiesen wird.
|
String |
getAsbKnotenKey(String knoten) |
static NetzReferenzen |
getInstanz()
Gibt das einzige Objekt der Klasse zurück.
|
void |
init(de.bsvrz.dav.daf.main.ClientDavInterface dav,
String netz)
Initialisiert die Klasse.
|
private void |
initKnotenMap() |
private boolean |
isOhneKennung(String knoten) |
boolean |
netzKnotenMatch(String knoten1,
String knoten2)
Test, ob 2 Netzknoten überenstimmen.
|
private long |
offsetKorrigieren(StrassenTeilSegment teilsegment,
StrassenTeilSegment.AsbStationierung asb,
double offset)
Korrigiert den Offset innerhalb des Teilsegmentes zum korrekten Wert
für die ASB-Stationierung.
|
void |
setNetzmodell(VerkehrModellNetz netzmodell)
ordnet der Klasse das Netmodell zu.
|
private long |
stationierungKorrigieren(StrassenTeilSegment teilsegment,
double stationierung)
Korrigiert die Stationierung zum korrekten Wert für den Offset.
|
private static NetzReferenzen singleton
private VerkehrModellNetz netzmodell
private final Map<Verkehrsrichtung,Map<String,List<StrassenTeilSegment>>> richtungAnfangKnotenMap
private boolean anfangKnotenMapInitialisiert
public static NetzReferenzen getInstanz()
private double berechneAsbSkalierung(StrassenTeilSegment teilsegment)
teilsegment
- Teilsegmentpublic void init(de.bsvrz.dav.daf.main.ClientDavInterface dav, String netz) throws NetzReferenzException
dav
- Datenverteiler-Verbindungnetz
- NetzNetzReferenzException
- wenn das Netz nicht initialisiert werden kannpublic AsbStationierungOrtsReferenzInterface ermittleOrtsReferenzAsbStationierung(StrassenSegmentUndOffsetOrtsReferenzInterface referenz) throws NetzReferenzException
referenz
- Ortsreferenz, bei dem die Ortsangabe über ein
StraßenSegment und den Offset vom Anfang des
StraßenSegments dargestellt wird.NetzReferenzException
- wenn keine Abbildung möglich ist.public AsbStationierungOrtsReferenzInterface ermittleOrtsReferenzAsbStationierung(StrasseUndBetriebsKilometerOrtsReferenzInterface referenz) throws NetzReferenzException
referenz
- Ortsreferenz, bei dem die Ortsangabe über eine Straße und
den Betriebskilometer dargestellt wird.NetzReferenzException
- wenn keine Abbildung möglich ist.public List<StrassenSegmentUndOffsetOrtsReferenzInterface> ermittleOrtsReferenzStrassenSegmentUndOffset(AsbStationierungOrtsReferenzInterface referenz) throws NetzReferenzException
referenz
- Ortsreferenz nach dem ASB-Stationierungssystem.NetzReferenzException
- wenn keine Abbildung möglich ist.public StrassenSegmentUndOffsetOrtsReferenzInterface ermittleOrtsReferenzStrassenSegmentUndOffset(StrasseUndBetriebsKilometerOrtsReferenzInterface referenz) throws NetzReferenzException
referenz
- Ortsreferenz, bei dem die Ortsangabe über eine Straße und
den Betriebskilometer dargestellt wird.NetzReferenzException
- wenn keine Abbildung möglich ist.public List<StrasseUndBetriebsKilometerOrtsReferenzInterface> ermittleOrtsReferenzStrasseUndBetriebsKilometer(AsbStationierungOrtsReferenzInterface referenz) throws NetzReferenzException
referenz
- Ortsreferenz nach dem ASB-Stationierungssystem.NetzReferenzException
- wenn keine Abbildung möglich ist.public StrasseUndBetriebsKilometerOrtsReferenzInterface ermittleOrtsReferenzStrasseUndBetriebsKilometer(StrassenSegmentUndOffsetOrtsReferenzInterface referenz) throws NetzReferenzException
referenz
- Ortsreferenz, bei dem die Ortsangabe über ein
StraßenSegment und den Offset vom Anfang des
StraßenSegments dargestellt wird.NetzReferenzException
- wenn keine Abbildung möglich ist.private StrassenTeilSegment.AsbStationierung findeAsbStationierungAmOffset(StrassenTeilSegment teilSegment, double offset) throws NetzReferenzException
teilSegment
- Straßenteilsegmentoffset
- Offset auf dem StraßenteilsegmentNetzReferenzException
- wenn keine passende ASB-Stationierungsangabe bestimmt werden
konnteprivate StrassenTeilSegment findeTeilSegmentAmOffset(StrassenSegmentUndOffsetOrtsReferenzInterface referenz) throws NetzReferenzException
referenz
- Ortsreferenz, bei dem die Ortsangabe über ein
StraßenSegment und den Offset vom Anfang des
StraßenSegments dargestellt wird.NetzReferenzException
- wen das Teilsegment nicht bestimmt werden kannprivate NetzReferenzen.TeilSegmentASB findeTeilSegmentAsbStationierungAlt(AsbStationierungOrtsReferenzInterface referenz) throws NetzReferenzException
referenz
- Ortsreferenz, bei dem die Ortsangabe über ein
StraßenSegment und den Offset vom Anfang des
StraßenSegments dargestellt wird.NetzReferenzException
- wen kein Teilsegment gefunden werden konnteprivate void initKnotenMap()
private List<StrassenTeilSegment> findeKnotenListe(AsbStationierungOrtsReferenzInterface referenz) throws NetzReferenzException
referenz
- ReferenzNetzReferenzException
- bei unbekannter StationierungsrichtungNetzReferenzAsbKnotenUnbekanntException
- wenn einer der beiden Netzknoten der Referenz nicht bekannt
ist.public boolean netzKnotenMatch(String knoten1, String knoten2)
knoten1
- Netzknotenknoten2
- Netzknotenprivate boolean isOhneKennung(String knoten)
private NetzReferenzen.TeilSegmentASB findeTeilSegmentAsbStationierung(AsbStationierungOrtsReferenzInterface referenz) throws NetzReferenzException
NetzReferenzException
private long offsetKorrigieren(StrassenTeilSegment teilsegment, StrassenTeilSegment.AsbStationierung asb, double offset)
teilsegment
- Teilsegmentasb
- ASB-Stationierungsangabeoffset
- Offset im Teilsegmentpublic void setNetzmodell(VerkehrModellNetz netzmodell)
netzmodell
- das Netzmodellprivate long stationierungKorrigieren(StrassenTeilSegment teilsegment, double stationierung)
teilsegment
- Teilsegmentstationierung
- Stationierung@Deprecated public Strasse findeStrasse(AsbStationierungOrtsReferenz referenz) throws NetzReferenzException
findeStrassen(AsbStationierungOrtsReferenz)
.referenz
- Ortsreferenz nach dem ASB-Stationierungssystem.NetzReferenzException
- Fehler beim Ermitteln der Straßepublic List<Strasse> findeStrassen(AsbStationierungOrtsReferenz referenz) throws NetzReferenzException
referenz
- Ortsreferenz nach dem ASB-Stationierungssystem.NetzReferenzException
- Fehler beim Ermitteln der Straßepublic AsbStationierungBereich findeAsbStationierungsBereich(AsbStationierungOrtsReferenz referenz) throws NetzReferenzException
referenz
- Ortsreferenz, bei dem die Ortsangabe über ein
StraßenSegment und den Offset vom Anfang des
StraßenSegments dargestellt wird.NetzReferenzException
- bei FehlernCopyright © 2017 BitCtrl Systems GmbH. All rights reserved.