public final class GanglinienOperationen
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
static class |
GanglinienOperationen.PatternMatchingErgebnis<T extends Ganglinie<?>>
Kapselt die Informationen die als Ergebnis aus dem Pattern-Matching
hervorgehen.
|
Modifier and Type | Method and Description |
---|---|
static Ganglinie<java.lang.Double> |
addiere(Ganglinie<java.lang.Double> g1,
Ganglinie<java.lang.Double> g2)
Addiert zwei Ganglinien, indem die Werte der vervollständigten
Stützstellenmenge addiert werden.
|
static Ganglinie<java.lang.Double> |
auschneiden(Ganglinie<java.lang.Double> g,
com.bitctrl.util.Interval i)
Schneidet ein Intervall aus einer Ganglinie heraus.
|
static int |
basisabstand(Ganglinie<java.lang.Double> g1,
Ganglinie<java.lang.Double> g2)
Berechnet den Abstand zweier Ganglinien mit Hilfe des
Basisabstandsverfahren.
|
static Ganglinie<java.lang.Double> |
dividiere(Ganglinie<java.lang.Double> g1,
Ganglinie<java.lang.Double> g2)
Division zweier Ganglinien, indem die Werte der vervollständigten
Stützstellenmenge dividiert werden.
|
static java.lang.String |
formatierterText(Ganglinie<?> g)
Konvertiert eine Ganglinie in einen lesbaren Text.
|
static int |
komplexerAbstand(Ganglinie<java.lang.Double> g1,
Ganglinie<java.lang.Double> g2,
int intervalle)
Berechnet den Abstand zweier Ganglinien mit Hilfe des komplexen
Abstandsverfahren.
|
static int |
komplexerAbstand(Ganglinie<java.lang.Double> g1,
Ganglinie<java.lang.Double> g2,
long intervallBreite)
Berechnet den Abstand zweier Ganglinien mit Hilfe des komplexen
Abstandsverfahren.
|
static Ganglinie<java.lang.Double> |
multipliziere(Ganglinie<java.lang.Double> g1,
Ganglinie<java.lang.Double> g2)
Multiplikation zweier Ganglinien, indem die Werte der vervollständigten
Stützstellenmenge multipliziert werden.
|
static Ganglinie<java.lang.Double> |
normiere(Ganglinie<java.lang.Double> g,
long abstand)
Normiert die Stützstellen einer Ganglinie.
|
static GanglinienOperationen.PatternMatchingErgebnis<Ganglinie<java.lang.Double>> |
patternMatching(Ganglinie<java.lang.Double> referenz,
java.util.List<Ganglinie<java.lang.Double>> vergleichsListe,
long offsetVor,
long offsetNach,
long schrittweite)
Führt das Pattern-Matching einer Menge von Ganglinien mit einer
Referenzganglinie aus.
|
static Ganglinie<java.lang.Double> |
subtrahiere(Ganglinie<java.lang.Double> g1,
Ganglinie<java.lang.Double> g2)
Subtraktion zweier Ganglinien, indem die Werte der vervollständigten
Stützstellenmenge subtrahiert werden.
|
static Ganglinie<java.lang.Double> |
verbinde(Ganglinie<java.lang.Double> g1,
Ganglinie<java.lang.Double> g2,
long maxAbstand)
Verbindet zwei Ganglinien durch Konkatenation.
|
static Ganglinie<java.lang.Double> |
verschiebe(Ganglinie<java.lang.Double> g,
long offset)
Verschiebt eine Ganglinie auf der Zeitachse.
|
static Ganglinie<java.lang.Double> |
verschiebeUmHalbesIntervall(Ganglinie<java.lang.Double> g)
Verschiebt eine Ganglinie auf der Zeitachse um ein halbes
Stützstellenintervall.
|
static Ganglinie<java.lang.Double> |
verschmelze(Ganglinie<java.lang.Double> g1,
Ganglinie<java.lang.Double> g2,
long gewicht)
Verschmilzt eine Ganglinie mit einer anderen.
|
public static java.lang.String formatierterText(Ganglinie<?> g)
g
- eine Ganglinie.public static Ganglinie<java.lang.Double> addiere(Ganglinie<java.lang.Double> g1, Ganglinie<java.lang.Double> g2)
g1
- Erste Ganglinieg2
- Zweite Gangliniepublic static Ganglinie<java.lang.Double> auschneiden(Ganglinie<java.lang.Double> g, com.bitctrl.util.Interval i)
Hinweis: Das Intervall wird aus der Ganglinie im Parameter ausgeschnitten.
g
- Eine Gangliniei
- Auszuschneidendes Intervallpublic static int basisabstand(Ganglinie<java.lang.Double> g1, Ganglinie<java.lang.Double> g2)
g1
- Erste Ganglinieg2
- Zweite Gangliniepublic static Ganglinie<java.lang.Double> dividiere(Ganglinie<java.lang.Double> g1, Ganglinie<java.lang.Double> g2)
g1
- Erste Ganglinieg2
- Zweite Gangliniepublic static int komplexerAbstand(Ganglinie<java.lang.Double> g1, Ganglinie<java.lang.Double> g2, int intervalle)
g1
- Erste Ganglinie.g2
- Zweite Ganglinie.intervalle
- die Anzahl der zu vergleichenden Intervalle.public static int komplexerAbstand(Ganglinie<java.lang.Double> g1, Ganglinie<java.lang.Double> g2, long intervallBreite)
g1
- Erste Ganglinie.g2
- Zweite Ganglinie.intervallBreite
- die Breite der zu vergleichenden Intervalle.public static Ganglinie<java.lang.Double> multipliziere(Ganglinie<java.lang.Double> g1, Ganglinie<java.lang.Double> g2)
g1
- Erste Ganglinieg2
- Zweite Gangliniepublic static Ganglinie<java.lang.Double> normiere(Ganglinie<java.lang.Double> g, long abstand)
Hinweis: die Ganglinie im Parameter wird verändert.
g
- eine Ganglinie.abstand
- der gewünschte Stützstellenabstand.public static GanglinienOperationen.PatternMatchingErgebnis<Ganglinie<java.lang.Double>> patternMatching(Ganglinie<java.lang.Double> referenz, java.util.List<Ganglinie<java.lang.Double>> vergleichsListe, long offsetVor, long offsetNach, long schrittweite)
Zusätzlich zu der Liste von Vergleichsganglinien wird jede dieser
Ganglinien im angegebenen Offset in intervall
Schritten
verschoben. Jede dieser so entstanden Ganglinien wird ebenfalls mit der
Referenzganglinie verglichen.
Ergebnis ist die vorgegebene oder erzeugte Ganglinie mit dem geringsten Abstand. Der Index im Ergebnis ist der Index in der Ganglinienliste, aus der die Ergebnisganglinie hervorgegangen ist.
referenz
- die Referenzganglinie.vergleichsListe
- die Liste von zu vergleichenden Ganglinien.offsetVor
- der Offset, in dem die Ganglinien nach vorn verschoben werden
kann.offsetNach
- der Offset, in dem die Ganglinien nach hinten verschoben
werden kann.schrittweite
- das Intervall, in dem die Ganglinien innerhalb des Offsets
verschoben werden.public static Ganglinie<java.lang.Double> subtrahiere(Ganglinie<java.lang.Double> g1, Ganglinie<java.lang.Double> g2)
g1
- Erste Ganglinieg2
- Zweite Gangliniepublic static Ganglinie<java.lang.Double> verbinde(Ganglinie<java.lang.Double> g1, Ganglinie<java.lang.Double> g2, long maxAbstand)
Wird der maximale Abstand der beiden Ganglinien überschritten, ist der Bereich zwischen den Ganglinien undefiniert.
g1
- Erste Ganglinieg2
- Zweite GangliniemaxAbstand
- der maximale Abstand der beiden Ganglinien.public static Ganglinie<java.lang.Double> verschiebe(Ganglinie<java.lang.Double> g, long offset)
Hinweis: Es wird die Ganglinie im Parameter verschoben.
g
- Zu verschiebende Ganglinieoffset
- Offset um den die Ganglinie verschoben werden sollpublic static Ganglinie<java.lang.Double> verschiebeUmHalbesIntervall(Ganglinie<java.lang.Double> g)
Hinweis: Es wird die Ganglinie im Parameter verschoben.
g
- Zu verschiebende Gangliniepublic static Ganglinie<java.lang.Double> verschmelze(Ganglinie<java.lang.Double> g1, Ganglinie<java.lang.Double> g2, long gewicht)
g1
- die Ganglinie mit der verschmolzen wird. Sie hat immer das
Gewicht 1.g2
- die Ganglinie die verschmolzen wird.gewicht
- das Gewicht der zweiten Ganglinie.