public final class GanglinienOperationen extends 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 | Constructor and Description |
---|---|
private |
GanglinienOperationen()
Konstruktor verstecken.
|
Modifier and Type | Method and Description |
---|---|
static Ganglinie<Double> |
addiere(Ganglinie<Double> g1,
Ganglinie<Double> g2)
Addiert zwei Ganglinien, indem die Werte der vervollständigten
Stützstellenmenge addiert werden.
|
static Ganglinie<Double> |
auschneiden(Ganglinie<Double> g,
com.bitctrl.util.Interval i)
Schneidet ein Intervall aus einer Ganglinie heraus.
|
static int |
basisabstand(Ganglinie<Double> g1,
Ganglinie<Double> g2)
Berechnet den Abstand zweier Ganglinien mit Hilfe des
Basisabstandsverfahren.
|
static Ganglinie<Double> |
dividiere(Ganglinie<Double> g1,
Ganglinie<Double> g2)
Division zweier Ganglinien, indem die Werte der vervollständigten
Stützstellenmenge dividiert werden.
|
private static double |
fehler(Ganglinie<Double> g1,
Ganglinie<Double> g2,
Queue<Long> zeitstempel)
Bestimmt den prozentualen Fehler (Abstand) zweier Ganglinien anhand
gegebener Messpunkte.
|
static String |
formatierterText(Ganglinie<?> g)
Konvertiert eine Ganglinie in einen lesbaren Text.
|
static int |
komplexerAbstand(Ganglinie<Double> g1,
Ganglinie<Double> g2,
int intervalle)
Berechnet den Abstand zweier Ganglinien mit Hilfe des komplexen
Abstandsverfahren.
|
static int |
komplexerAbstand(Ganglinie<Double> g1,
Ganglinie<Double> g2,
long intervallBreite)
Berechnet den Abstand zweier Ganglinien mit Hilfe des komplexen
Abstandsverfahren.
|
static Ganglinie<Double> |
multipliziere(Ganglinie<Double> g1,
Ganglinie<Double> g2)
Multiplikation zweier Ganglinien, indem die Werte der vervollständigten
Stützstellenmenge multipliziert werden.
|
static Ganglinie<Double> |
normiere(Ganglinie<Double> g,
long abstand)
Normiert die Stützstellen einer Ganglinie.
|
static GanglinienOperationen.PatternMatchingErgebnis<Ganglinie<Double>> |
patternMatching(Ganglinie<Double> referenz,
List<Ganglinie<Double>> vergleichsListe,
long offsetVor,
long offsetNach,
long schrittweite)
Führt das Pattern-Matching einer Menge von Ganglinien mit einer
Referenzganglinie aus.
|
static Ganglinie<Double> |
subtrahiere(Ganglinie<Double> g1,
Ganglinie<Double> g2)
Subtraktion zweier Ganglinien, indem die Werte der vervollständigten
Stützstellenmenge subtrahiert werden.
|
static Ganglinie<Double> |
verbinde(Ganglinie<Double> g1,
Ganglinie<Double> g2,
long maxAbstand)
Verbindet zwei Ganglinien durch Konkatenation.
|
static Ganglinie<Double> |
verschiebe(Ganglinie<Double> g,
long offset)
Verschiebt eine Ganglinie auf der Zeitachse.
|
static Ganglinie<Double> |
verschiebeUmHalbesIntervall(Ganglinie<Double> g)
Verschiebt eine Ganglinie auf der Zeitachse um ein halbes
Stützstellenintervall.
|
static Ganglinie<Double> |
verschmelze(Ganglinie<Double> g1,
Ganglinie<Double> g2,
long gewicht)
Verschmilzt eine Ganglinie mit einer anderen.
|
private static LinkedList<Long> |
vervollstaendigeStuetzstellen(Ganglinie<Double> g1,
Ganglinie<Double> g2)
Bestimmt die vereinigte Menge der Stützstellen beider Ganglinien.
|
public static String formatierterText(Ganglinie<?> g)
g
- eine Ganglinie.public static Ganglinie<Double> addiere(Ganglinie<Double> g1, Ganglinie<Double> g2)
g1
- Erste Ganglinieg2
- Zweite Gangliniepublic static Ganglinie<Double> auschneiden(Ganglinie<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<Double> g1, Ganglinie<Double> g2)
g1
- Erste Ganglinieg2
- Zweite Gangliniepublic static Ganglinie<Double> dividiere(Ganglinie<Double> g1, Ganglinie<Double> g2)
g1
- Erste Ganglinieg2
- Zweite Gangliniepublic static int komplexerAbstand(Ganglinie<Double> g1, Ganglinie<Double> g2, int intervalle)
g1
- Erste Ganglinie.g2
- Zweite Ganglinie.intervalle
- die Anzahl der zu vergleichenden Intervalle.public static int komplexerAbstand(Ganglinie<Double> g1, Ganglinie<Double> g2, long intervallBreite)
g1
- Erste Ganglinie.g2
- Zweite Ganglinie.intervallBreite
- die Breite der zu vergleichenden Intervalle.public static Ganglinie<Double> multipliziere(Ganglinie<Double> g1, Ganglinie<Double> g2)
g1
- Erste Ganglinieg2
- Zweite Gangliniepublic static Ganglinie<Double> normiere(Ganglinie<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<Double>> patternMatching(Ganglinie<Double> referenz, List<Ganglinie<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<Double> subtrahiere(Ganglinie<Double> g1, Ganglinie<Double> g2)
g1
- Erste Ganglinieg2
- Zweite Gangliniepublic static Ganglinie<Double> verbinde(Ganglinie<Double> g1, Ganglinie<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<Double> verschiebe(Ganglinie<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<Double> verschiebeUmHalbesIntervall(Ganglinie<Double> g)
Hinweis: Es wird die Ganglinie im Parameter verschoben.
g
- Zu verschiebende Gangliniepublic static Ganglinie<Double> verschmelze(Ganglinie<Double> g1, Ganglinie<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.private static double fehler(Ganglinie<Double> g1, Ganglinie<Double> g2, Queue<Long> zeitstempel)
g1
- die erste Ganglinie.g2
- die zweite Ganglinie.zeitstempel
- die "Messpunkte"private static LinkedList<Long> vervollstaendigeStuetzstellen(Ganglinie<Double> g1, Ganglinie<Double> g2)
g1
- Erste Ganglinieg2
- Zweite GanglinieCopyright © 2017 BitCtrl Systems GmbH. All rights reserved.