serwer.mapa
Class Mapy

java.lang.Object
  extended byjava.rmi.server.RemoteObject
      extended byjava.rmi.server.RemoteServer
          extended byjava.rmi.server.UnicastRemoteObject
              extended byserwer.mapa.Mapy
All Implemented Interfaces:
InterfejsMapy, java.rmi.Remote, java.io.Serializable

public class Mapy
extends java.rmi.server.UnicastRemoteObject
implements InterfejsMapy

Mapy dostarcza operacji na warstwach mapy. Celem drobnej optymalizacji obiekt przy inicjalizacji wczytuje z bazy danych zapamiętane w niej warstwy.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class java.rmi.server.RemoteObject
ref
 
Constructor Summary
Mapy()
          Tworzy nową instancję klasy i wczytuje obiekty typu WarstwaMapy z bazy.
 
Method Summary
 FragmentMapy[] pobierzFragmenty(WarstwaMapy warstwa, int ile, java.awt.Point centralnyPkt)
          Znajduje zadaną liczbę sąsiadujących fragmentów mapy takich, że zadany punkt centralny wypada mniej więcej centralnie zestawu.
 void przesun00(WarstwaMapy warstwa, int offsetx, int offsety)
          Przesuwa na podanej warstwie lokalizację punktu 0,0, uaktualniając informację o wszystkich fragmentach mapy na warstwie.
 WarstwaMapy[] warstwy()
          Zwraca posortowaną względem skali listę wszystkich znanych obiektów typu WarstwaMapy.
 FragmentMapy wybierzNajlepszyFragment(java.util.List ogloszenia)
          Do zadanego zestawu ogłoszeń dobiera fragment mapy (i tym samym odpowiednią warstwę), który będzie najwłaściwszy do zaprezentowania tegoż zestawu.
 int zapiszFragment(WarstwaMapy warstwa, FragmentMapy bazowy, int gdziex, int gdziey, int offsetx, int offsety, PlikGraficzny obraz)
          Zapamiętuje w bazie danych fragmenty mapy wygenerowane z podanego obrazka.
 void zapiszWarstwe(WarstwaMapy warstwa)
          Zapamiętuje w bazie danych warstwę mapy.
 ZarzWarstwaMapy zarzWarstwaMapy(WarstwaMapy warstwa)
          Przygotowuje i zwraca obiekt zarządzania warstwą mapy ZarzWarstwaMapy.
 
Methods inherited from class java.rmi.server.UnicastRemoteObject
clone, exportObject, exportObject, exportObject, unexportObject
 
Methods inherited from class java.rmi.server.RemoteServer
getClientHost, getLog, setLog
 
Methods inherited from class java.rmi.server.RemoteObject
equals, getRef, hashCode, toString, toStub
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Mapy

public Mapy()
     throws Wyjatek,
            java.rmi.RemoteException
Tworzy nową instancję klasy i wczytuje obiekty typu WarstwaMapy z bazy.

Throws:
Wyjatek - w przypadku błędu bazy danych
java.rmi.RemoteException - w przypadku błędy inicjalizacji struktur sieciowych
Method Detail

warstwy

public WarstwaMapy[] warstwy()
Zwraca posortowaną względem skali listę wszystkich znanych obiektów typu WarstwaMapy.

Specified by:
warstwy in interface InterfejsMapy
Returns:
lista wszystkich warstw

zarzWarstwaMapy

public ZarzWarstwaMapy zarzWarstwaMapy(WarstwaMapy warstwa)
Przygotowuje i zwraca obiekt zarządzania warstwą mapy ZarzWarstwaMapy.

Parameters:
warstwa - warstwa, którą chcemy zarządzać
Returns:
obiekt zarządzania warstwą mapy

zapiszWarstwe

public void zapiszWarstwe(WarstwaMapy warstwa)
                   throws Wyjatek
Zapamiętuje w bazie danych warstwę mapy.

Specified by:
zapiszWarstwe in interface InterfejsMapy
Parameters:
warstwa - warstwa mapy
Throws:
Wyjatek - w przypadku błędu tworzenia katalogu warstwy lub błędu bazy danych

wybierzNajlepszyFragment

public FragmentMapy wybierzNajlepszyFragment(java.util.List ogloszenia)
                                      throws Wyjatek
Do zadanego zestawu ogłoszeń dobiera fragment mapy (i tym samym odpowiednią warstwę), który będzie najwłaściwszy do zaprezentowania tegoż zestawu.

Specified by:
wybierzNajlepszyFragment in interface InterfejsMapy
Parameters:
ogloszenia - lista ogłoszeń, dla których szukamy fragmentu
Returns:
najwłaściwszy fragment mapy
Throws:
Wyjatek - w przypadku błędu bazy danych

pobierzFragmenty

public FragmentMapy[] pobierzFragmenty(WarstwaMapy warstwa,
                                       int ile,
                                       java.awt.Point centralnyPkt)
Znajduje zadaną liczbę sąsiadujących fragmentów mapy takich, że zadany punkt centralny wypada mniej więcej centralnie zestawu.

Specified by:
pobierzFragmenty in interface InterfejsMapy
Parameters:
warstwa - warstwa mapy, której rzecz dotyczy
ile - pierwiastek z liczby fragmentów do znalezienia
centralnyPkt - centralny punkt w szukanym zestawie fragmentów mapy
Returns:
tablica fragmentów mapy

zapiszFragment

public int zapiszFragment(WarstwaMapy warstwa,
                          FragmentMapy bazowy,
                          int gdziex,
                          int gdziey,
                          int offsetx,
                          int offsety,
                          PlikGraficzny obraz)
                   throws Wyjatek
Zapamiętuje w bazie danych fragmenty mapy wygenerowane z podanego obrazka.

Specified by:
zapiszFragment in interface InterfejsMapy
Parameters:
warstwa - warstwa, na której ma być dodany fragment
bazowy - określa fragment, z którym sąsiaduje nowy (może być null, jeśli gdzieX == gdzieY == 0)
gdziex - przesunięcie na współrzędnej x mierzone w obiektach FragmentMapy względem bazowego
gdziey - przesunięcie na współrzędnej y mierzone w obiektach FragmentMapy względem bazowego
offsetx - przesunięcie w pikselach na współrzędnej x względem lewego górnego rogu obrazka. określa punkt, z którego należy zacząć wycinanie fragmentów mapy
offsety - przesunięcie w pikselach na współrzędnej y względem lewego górnego rogu obrazka. określa punkt, z którego należy zacząć wycinanie fragmentów mapy
obraz - obrazek reprezentujący mapkę
Returns:
liczba wyłuskanych z obrazka fragmentów mapy
Throws:
Wyjatek - w przypadku błędu bazy danych

przesun00

public void przesun00(WarstwaMapy warstwa,
                      int offsetx,
                      int offsety)
               throws Wyjatek
Przesuwa na podanej warstwie lokalizację punktu 0,0, uaktualniając informację o wszystkich fragmentach mapy na warstwie.

Specified by:
przesun00 in interface InterfejsMapy
Parameters:
warstwa - warstwa, na której przesuwamy 0,0
offsetx - przesunięcie w punktach względnych na osi x
offsety - przesunięcie w punktach względnych na osi y
Throws:
Wyjatek - w przypadku błędu bazy danych

NIIKT, Zespół Gr0No3