gishur.x
Class LineComparitor

java.lang.Object
  |
  +--gishur.core.StdComparitor
        |
        +--gishur.x.LineComparitor
All Implemented Interfaces:
Comparitor, java.io.Serializable

public class LineComparitor
extends StdComparitor

Vergleicht Geradenobjekte (von XBaseline abgeleitet), indem sie an einer bestimmten Stelle ausgewertet werden und ihre Y-Werte verglichen werden.

Version:
1.0
Author:
Thomas Wolf
See Also:
Serialized Form

Field Summary
static byte AFTER
          Liefert beim Vergleich von sich schneidenden Geraden am Schnittpunkt die Ordnung unmittelbar nach dem Schnittpunkt
static byte BEFORE
          Liefert beim Vergleich von sich schneidenden Geraden am Schnittpunkt die Ordnung unmittelbar vor dem Schnittpunkt
static byte EXACT
          Liefert beim Vergleich von sich schneidenden Geraden am Schnittpunkt EQUAL
 
Fields inherited from interface gishur.core.Comparitor
BIGGER, EQUAL, SMALLER
 
Constructor Summary
LineComparitor()
           
 
Method Summary
 short compare(java.lang.Object o1, java.lang.Object o2)
          Überschreibt Comparitor.compare().
 short compare(XBaseline l, double d)
          Vergleich das Geradenobjekt l mit der Zahl d, die eine horizontale Gerade mit Y-Wert d darstellt.
 short compare(XBaseline l1, XBaseline l2)
          Vergleicht die XBaseline-Objekte, indem die Y-Wert an der Stelle x (zu setzen über setX) verglichen werden.
 byte getDelta()
          Liefert den Delta-Wert für den Vergleich von sich schneidenden Geraden am Schnittpunkt.
 double getX()
          Liefert den gesetzten X-Wert für den Vergleich der Geraden.
 double getY()
          Liefert den gesetzten Y-Wert für den Vergleich der vertikalen Linienobjekten.
 void resetY()
          Setzt den Y-Wert zum Vergleichen von vertiaklen Linienobjekten zurück.
 void setDelta(byte d)
          Setzt den Delta-Wert für den Vergleich von sich schneidenden Geraden am Schnittpunkt.
 void setX(double x)
          Setzt den X-Wert für den Vergleich von Geraden.
 void setY(double y)
          Setzt den y-Wert für den Vergleich von vertikalen Linienobjekten.
 java.lang.String toString()
          Überschreibt Object.toString().
 
Methods inherited from class gishur.core.StdComparitor
compare, compare, compare, compare, compareHash
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

EXACT

public static final byte EXACT
Liefert beim Vergleich von sich schneidenden Geraden am Schnittpunkt EQUAL

BEFORE

public static final byte BEFORE
Liefert beim Vergleich von sich schneidenden Geraden am Schnittpunkt die Ordnung unmittelbar vor dem Schnittpunkt

AFTER

public static final byte AFTER
Liefert beim Vergleich von sich schneidenden Geraden am Schnittpunkt die Ordnung unmittelbar nach dem Schnittpunkt
Constructor Detail

LineComparitor

public LineComparitor()
Method Detail

toString

public java.lang.String toString()
Überschreibt Object.toString().
Overrides:
toString in class StdComparitor
See Also:
Object.toString()

getX

public double getX()
Liefert den gesetzten X-Wert für den Vergleich der Geraden.
Returns:
X-Wert

setX

public void setX(double x)
Setzt den X-Wert für den Vergleich von Geraden.
Parameters:
x - neuer X-Wert

getY

public double getY()
Liefert den gesetzten Y-Wert für den Vergleich der vertikalen Linienobjekten.
Returns:
Y-Wert

setY

public void setY(double y)
Setzt den y-Wert für den Vergleich von vertikalen Linienobjekten.
Parameters:
y - neuer Y-Wert

resetY

public void resetY()
Setzt den Y-Wert zum Vergleichen von vertiaklen Linienobjekten zurück.

getDelta

public byte getDelta()
Liefert den Delta-Wert für den Vergleich von sich schneidenden Geraden am Schnittpunkt.
Returns:
eine Konstante aus {EXACT,BEFORE,AFTER}

setDelta

public void setDelta(byte d)
Setzt den Delta-Wert für den Vergleich von sich schneidenden Geraden am Schnittpunkt.
Parameters:
d - eine Konstante aus {EXACT,BEFORE,AFTER}

compare

public short compare(XBaseline l1,
                     XBaseline l2)
Vergleicht die XBaseline-Objekte, indem die Y-Wert an der Stelle x (zu setzen über setX) verglichen werden. Wenn sich die zwei Geraden gerade an dieser Stelle schneiden, entscheidet der delta-Wert (zu setzen über setDelta), ob EQUAL zurückgegeben oder der Vergleich unmittelbar vor oder nach der Stelle durchgeführt wird.
Parameters:
l1 - erstes Geradenobjekt
l2 - zweites Geradenobjekt
Returns:
SMALLER, BIGGER oder EQUAL

compare

public short compare(XBaseline l,
                     double d)
Vergleich das Geradenobjekt l mit der Zahl d, die eine horizontale Gerade mit Y-Wert d darstellt.
Parameters:
l - Geradenobjekt
d - Y-Wert für den Vergleich
Returns:
SMALLER, BIGGER oder EQUAL

compare

public short compare(java.lang.Object o1,
                     java.lang.Object o2)
Überschreibt Comparitor.compare(). Akzeptiert werden Objekte des Types XBaseline, Number und KeyValueHolder, wobei bei KeyValueHolder-Objekten ihre key()-Werte ausgewertet werden (die also vom Typ XBaseline oder Number sein sollten). XBaseline-Objekte können mit Zahlen verglichen werden. Im Prinzip stellen Zahlen eine Gerade parallel zur X-Achse mit Y-Wert der Zahl dar. Da StdComparitor überschrieben wird, werden andere Objekte mit den Methoden in StdComparitor verglichen.
Overrides:
compare in class StdComparitor
Parameters:
o1 - erstes Objekt
o2 - zweites Objekt
Returns:
SMALLER, falls o1 in der Ordnung vor o2 liegt; BIGGER, falls o1 in der Ordnung nach o2 liegt; EQUAL, falls o1 und o2 gleich sind