public class Kamera
extends java.lang.Object
BoundingRechteck
grenzen = new BoundingRechteck(0, 0, 1500, 1000);
meineCam.boundsSetzen(grenzen);
Constructor and Description |
---|
Kamera(int sizeX,
int sizeY,
Zeichenebene z)
Konstruktor fuer Objekte der Klasse Kamera
|
Modifier and Type | Method and Description |
---|---|
void |
boundsSetzen(BoundingRechteck r)
Mit dieser Methode kann man direkt saemtliche Kamera-Bounds-Einstellungen machen.
Ein Bounding-Rechteck gibt die Begrenzung an, die die Kameraperspektive, solange die Bounds nicht deaktiviert werden (ueber die Methode hatBoundsSetzen moeglich),
niemals uebertreten wird. |
void |
fokusLoeschen()
Loescht den Fokus.
Die Kamera bleibt in ihrer letzten Position zurueck bis entweder ein neuer Fokus gesetzt wird oder sie einfach nur verschoben wird. Diese Methode macht das selbe wie loescheFokus , und ist wegen einer einheitlichen Schreibweise
eingeführt. |
void |
fokusSetzen(Raum r)
Setze einen Fokus der Kamera auf ein Objekt.
Dieses Objekt ist ab dann im 'Zentrum' der Kamera. Die Art des Fokus (vorne, hinten, oben, unten, mittig etc...) kann ueber die Methode setzeFokusArt() geaendert werden. Soll das Fokusverhalten beendet werden, muss die paramterlose Methode loescheFokus() ausgefuehrt werden; dann bleibt die Kamera bis auf weiteres in der letzten Position. Diese Methode wrappt lediglich setzeFokus(Raum) , wurde daher zur verhinderung des Orientierungsverlustes
geschrieben. |
void |
fokusVerzugSetzen(Vektor v)
Setzt einen Fokus-Verzug.
|
int |
getX() |
int |
getY() |
void |
hatBoundsSetzen(boolean b)
Setzt, ob das Fokusverhalten durch Bounds begrenzt wird.
|
boolean |
hatFokus() |
void |
loescheFokus()
Loescht den Fokus.
Die Kamera bleibt in ihrer letzten Position zurueck. |
BoundingRechteck |
position()
Die aktuelle Position der Kamera wird zurueckgegeben.
|
void |
positionSetzen(float x,
float y)
Setzt die Position der linken oberen Ecke der Kameraperspektive.
|
void |
positionSetzen(Punkt p)
Setzt die Position der linken oberen Ecke der Kameraperspektive.
|
void |
setzeFokus(Raum r)
Setze einen Fokus der Kamera auf ein Objekt.
Dieses Objekt ist ab dann im 'Zentrum' der Kamera. Die Art des Fokus (vorne, hinten, oben, unten, mittig etc...) kann ueber die Methode setzeFokusArt() geaendert werden. Soll das Fokusverhalten beendet werden, muss die paramterlose Methode loescheFokus() ausgefuehrt werden; dann bleibt die Kamera bis auf weiteres in der letzten Position. |
void |
verschieben(int x,
int y)
Verschiebt die Kamera um einen bestimmten Wert in X- und Y-Richtung.
Alternative Methode fuer diejenigen, denen ein Vektor zu umstaendlich ist. |
void |
verschieben(Vektor v)
Verschiebt die Kamera um einen bestimmten Wert in X- und Y-Richtung.
|
Knoten |
wurzel() |
void |
zeichne(java.awt.Graphics2D g)
Zeichnet alle Objekte neu, die sich auf der Zeichenebene und im Blickfeld der Kamera
befinden.
|
void |
zentrumSetzen(int x,
int y)
Setzt das Zentrum der Kamera.
|
void |
zentrumSetzen(Punkt zentrum)
Setzt das Zentrum der Kamera.
|
public Kamera(int sizeX, int sizeY, Zeichenebene z)
sizeX
- Die X-Laenge des FensterssizeY
- Die Y-Laenge des Fensterspublic void fokusSetzen(Raum r)
setzeFokus(Raum)
, wurde daher zur verhinderung des Orientierungsverlustes
geschrieben.r
- Der Fokuspunkt.setzeFokus(Raum)
public void setzeFokus(Raum r)
r
- Der Fokuspunkt.public void fokusVerzugSetzen(Vektor v)
/*Irgendwo in
der spielsteuernden Klasse* /
cam.fokusVerzugSetzen(new Vektor(0, -100));
v
- Der Vektor, um den ab sofort die Kamera vom Zentrum des Fokus verschoben wird.public void boundsSetzen(BoundingRechteck r)
hatBoundsSetzen
moeglich),
niemals uebertreten wird.r
- Das BoundingRechteck, das die Begrenzung des Raumes angibthatBoundsSetzen(boolean)
public void hatBoundsSetzen(boolean b)
b
- Ob die gesetzten Minimum- und Maximum-Werte auch aktiviert werden sollen.boundsSetzen(BoundingRechteck)
public void fokusLoeschen()
loescheFokus
, und ist wegen einer einheitlichen Schreibweise
eingeführt.loescheFokus()
public void loescheFokus()
public void verschieben(int x, int y)
x
- Die Verschiebung in X-Richtungy
- Die Verschiebung in Y-Richtungverschieben(Vektor)
public void verschieben(Vektor v)
v
- Der die Bewegung beschreibende Vektor.verschieben(int, int)
public void zentrumSetzen(int x, int y)
x
- Die X-Koordinate des Zentrums des Bildesy
- Die Y-Koordinate des Zentrums des BildeszentrumSetzen(Punkt)
public void zentrumSetzen(Punkt zentrum)
zentrum
- Das neue Zentrum der KamerazentrumSetzen(int, int)
public void positionSetzen(Punkt p)
p
- Der Punkt der linken oberen Ecke der KameraperspektivepositionSetzen(float, float)
public void positionSetzen(float x, float y)
x
- Die X-Koordinate der linken oberen Ecke der Kameraperspektivey
- Die Y-Koordinate der linken oberen Ecke der KameraperspektivepositionSetzen(Punkt)
public Knoten wurzel()
public BoundingRechteck position()
public int getX()
public int getY()
public void zeichne(java.awt.Graphics2D g)
public boolean hatFokus()