gishur.gui
Class Shape

java.lang.Object
  |
  +--gishur.gui.Shape
All Implemented Interfaces:
GraphicPrimitive

public class Shape
extends java.lang.Object
implements GraphicPrimitive

Ein Shape-Objekt speichert Umrisse von einfachen 'Gebieten', die zum Zeichnen bzw. zum Feststellen, wo genau ein Mausclick passiert ist. Shape-Objekte können auch aneinandergehängt werden.


Field Summary
static int NO_HIT
          Kein Treffer.
 
Constructor Summary
Shape(java.lang.Object owner, BasicList data)
          Konstruiert ein Shape-Objekt mit den GraphicPrimitives aus der listenartigen Struktur data.
Shape(java.lang.Object owner, int areaLength)
          Konstruktor.
 
Method Summary
 GraphicPrimitive getArea(int i)
          Liefert das Gebiet Nr. i zurück.
 java.awt.Rectangle getBounds()
          Liefert das umschließende Rechteck.
 java.awt.Point getCenter()
          Liefert das Zentrum.
 int[] getInts()
          Liefert das Integer-Array.
 java.lang.Object[] getObjects()
          Liefert das Object-Array.
 int hit(int x, int y)
          Liefert die Nummer des Gebietes zurück, daß durch den Punkt (x,y) zuerst getroffen wird.
 boolean in(int x, int y)
          Liegt der Punkt (x,y) im Primitiv (inkl.
 int length()
          Liefert die Anzahl der Gebiete.
 java.lang.Object owner()
          Liefert den Besitzer des Shapes
 void paint(java.awt.Graphics g)
          Malt das Primitiv auf das Graphics g.
 void setArea(int i, GraphicPrimitive prim)
          Setzt ein neues Gebiet mit Nummer i
 void setIntLength(int l)
          Erzeugt ein neues Integer-Feld zum Speichern von Int-Informationen der Länge l.
 void setObjectLength(int l)
          Erzeugt ein neues Objekt-Feld zum Speichern von Objekt-Informationen der Länge l.
 java.lang.String toString()
          Überschreibt Object.toString().
 void translate(int dx, int dy)
          Verschiebt das GraphicPrimitive um den Vektor (dx,dy).
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

NO_HIT

public static int NO_HIT
Kein Treffer.
Constructor Detail

Shape

public Shape(java.lang.Object owner,
             int areaLength)
Konstruktor. Erzeugt ein leeres Shape mit areaLength Einträgen.
Parameters:
owner - Besitzer des Shapes
areaLength - maximale Anzahl der Gebiete

Shape

public Shape(java.lang.Object owner,
             BasicList data)
Konstruiert ein Shape-Objekt mit den GraphicPrimitives aus der listenartigen Struktur data.
Parameters:
owner - Besitzer des Shapes
data - Listenbasierte Struktur mit den GraphicPrimitives für die Gebiete
Method Detail

length

public int length()
Liefert die Anzahl der Gebiete.
Returns:
Anzahl der Gebiete.

owner

public java.lang.Object owner()
Liefert den Besitzer des Shapes
Returns:
Besitzer des Shapes

getArea

public GraphicPrimitive getArea(int i)
Liefert das Gebiet Nr. i zurück.
Parameters:
Nummer - des gewünschten Gebietes.
Returns:
Gebiet

getBounds

public java.awt.Rectangle getBounds()
Liefert das umschließende Rechteck.
Specified by:
getBounds in interface GraphicPrimitive
Returns:
kleinstes umschließendes Rechteck

hit

public int hit(int x,
               int y)
Liefert die Nummer des Gebietes zurück, daß durch den Punkt (x,y) zuerst getroffen wird. Das Feld wird von vorne nach hinten getestet.
Parameters:
x,y - Koordinaten des Punktes
Returns:
Nummer des getroffenen Gebietes oder NO_HIT, falls nichts getroffen wurde.

setArea

public void setArea(int i,
                    GraphicPrimitive prim)
Setzt ein neues Gebiet mit Nummer i
Parameters:
i - Nummer des Gebietes
prim - neues Gebiet

setIntLength

public void setIntLength(int l)
Erzeugt ein neues Integer-Feld zum Speichern von Int-Informationen der Länge l.
Parameters:
l - Länge des Feldes

getInts

public int[] getInts()
Liefert das Integer-Array.
Returns:
Integer-Array

setObjectLength

public void setObjectLength(int l)
Erzeugt ein neues Objekt-Feld zum Speichern von Objekt-Informationen der Länge l.
Parameters:
l - Länge des Feldes

getObjects

public java.lang.Object[] getObjects()
Liefert das Object-Array.
Returns:
Object-Array

in

public boolean in(int x,
                  int y)
Liegt der Punkt (x,y) im Primitiv (inkl. Rand)
Specified by:
in in interface GraphicPrimitive
Returns:
true, falls (x,y) im Primitiv

getCenter

public java.awt.Point getCenter()
Liefert das Zentrum.
Specified by:
getCenter in interface GraphicPrimitive
Following copied from interface: gishur.gui.GraphicPrimitive
Returns:
Zentrum

translate

public void translate(int dx,
                      int dy)
Verschiebt das GraphicPrimitive um den Vektor (dx,dy).
Specified by:
translate in interface GraphicPrimitive
Parameters:
dx,dy - Verschiebungsvektor

paint

public void paint(java.awt.Graphics g)
Malt das Primitiv auf das Graphics g.
Specified by:
paint in interface GraphicPrimitive
Parameters:
Graphics, - auf dem gemalt wird.

toString

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