2010bEquipe07 Estudo do Código Fonte
Linha 29: | Linha 29: | ||
=br.ufrgs.f180.api.model= | =br.ufrgs.f180.api.model= | ||
Pacote com um conjunto de informações sobre os elementos do jogo. | Pacote com um conjunto de informações sobre os elementos do jogo. | ||
− | + | ==ElementInformation== | |
− | + | Classe genérica dentro do pacote. | |
− | + | ==BallInformation== | |
− | + | Especialização da classe “ElementInformation” para representar informações sobre a bola. | |
− | + | ==RobotInformation== | |
− | + | Especialização da classe “ElementInformation” para representar informações sobre o robô. | |
− | + | ==GameInformation== | |
− | + | Especialização da classe “GameInformation” para representar informações sobre o jogo. | |
− | + | =br.ufrgs.f180.api.model= | |
Pacote com os elementos físicos visuais do jogo. | Pacote com os elementos físicos visuais do jogo. | ||
− | + | ==VisualElement== | |
− | + | Interface que representa um elemento visual do jogo. | |
− | + | ==MovingElement== | |
− | + | Classe abstrata que representa um elemento que se movimenta no jogo, implementação de “VisualElement”. | |
− | + | ==GameField== | |
− | + | Classe responsável por representar tanto a simulação física quanto a apresentação visual do campo de jogo, com origem cartesiana no canto esquerdo inferior da tela. | |
− | + | ==Wall== | |
− | + | Classe que representa uma parede, implementa “VisualElement”. | |
− | + | ==WallCollisionPoint== | |
− | + | Classe para simular um ponto da parede com massa infinita, especializa “MovingElement”. | |
− | + | ==Ball== | |
− | + | Classe para representar a bola, especializa “MovingElement”. | |
− | + | ==Robot== | |
− | + | Classe para representar o robô, especializa “MovingElement”. | |
− | + | =br.ufrgs.f180.gui= | |
Pacote com a GUI (Graphical User Interface). | Pacote com a GUI (Graphical User Interface). | ||
− | + | ==AboutDialog== | |
− | + | Janela “Sobre”. | |
− | + | ==MainWindow== | |
− | + | Janela principal do programa, contém o método “main” do programa e os métodos da atualização da interface. | |
− | + | =br.ufrgs.f180.resources= | |
Pacote com recursos necessaries para o jogo. | Pacote com recursos necessaries para o jogo. | ||
− | + | ==GameProperties== | |
− | + | Classe responsável por armazenar os parâmetros físicos da simulação, especializa a classe “Properties”, genérica do Java. | |
− | + | =br.ufrgs.f180.server= | |
Pacote com informações do servidor. | Pacote com informações do servidor. | ||
− | + | ==Game== | |
− | + | Classe que representa o jogo. | |
o Server | o Server | ||
Classe responsável por implementar o servidor do jogo para comunicação com os clientes. | Classe responsável por implementar o servidor do jogo para comunicação com os clientes. |
Edição de 16h14min de 15 de setembro de 2010
O código Fonte
Tabela de conteúdo |
br.ufrgs.f180.math
Pacote de bibliotecas matemáticas comuns utilizadas em todo o programa. Compreende as classes:
Point
Representa um ponto no plano com coordenadas X e Y.
Line
Representa uma linha no plano com dois pontos P1 e P2.
Circle
Representa um círculo no plano com um centro (Point) e raio.
Matrix
Representa uma matriz 2x2.
Vector
Representa um vetor. É uma especialização da classe “Point” e implementa a interface Cloneable, para que seja possível fazer uma cópia de si mesma.
MathUtils
Funções auxiliares úteis genéricas.
br.ufrgs.f180.api
Pacote com API (Application Programming Interface, Interface de Programação de Aplicações) fornecida aos jogadores para se comunicar com o simulador.
Player
Principal API fornecida aos jogadores para se conectar e comunicar com o simulador. Seu objetivo é fornecer a mesma “visão” que se tem em um jogo de futebol de robôs real. As APIs são publicadas como serviço “Web” e estão disponíveis assim que o sistema é iniciado. Um fluxo normal de jogo consiste em: 1. Login da equipe; 2. Registro de até cinco jogadores; 3. Fornecimento do movimento (ação) dos jogadores; 4. Ler a posição dos jogadores e informações; (volta ao 3) 5. Desconectar.
PlayerImpl
Implementação da Classe Player.
br.ufrgs.f180.api.model
Pacote com um conjunto de informações sobre os elementos do jogo.
ElementInformation
Classe genérica dentro do pacote.
BallInformation
Especialização da classe “ElementInformation” para representar informações sobre a bola.
RobotInformation
Especialização da classe “ElementInformation” para representar informações sobre o robô.
GameInformation
Especialização da classe “GameInformation” para representar informações sobre o jogo.
br.ufrgs.f180.api.model
Pacote com os elementos físicos visuais do jogo.
VisualElement
Interface que representa um elemento visual do jogo.
MovingElement
Classe abstrata que representa um elemento que se movimenta no jogo, implementação de “VisualElement”.
GameField
Classe responsável por representar tanto a simulação física quanto a apresentação visual do campo de jogo, com origem cartesiana no canto esquerdo inferior da tela.
Wall
Classe que representa uma parede, implementa “VisualElement”.
WallCollisionPoint
Classe para simular um ponto da parede com massa infinita, especializa “MovingElement”.
Ball
Classe para representar a bola, especializa “MovingElement”.
Robot
Classe para representar o robô, especializa “MovingElement”.
br.ufrgs.f180.gui
Pacote com a GUI (Graphical User Interface).
AboutDialog
Janela “Sobre”.
MainWindow
Janela principal do programa, contém o método “main” do programa e os métodos da atualização da interface.
br.ufrgs.f180.resources
Pacote com recursos necessaries para o jogo.
GameProperties
Classe responsável por armazenar os parâmetros físicos da simulação, especializa a classe “Properties”, genérica do Java.
br.ufrgs.f180.server
Pacote com informações do servidor.
Game
Classe que representa o jogo. o Server Classe responsável por implementar o servidor do jogo para comunicação com os clientes. • br.ufrgs.f180.team Pacote para um time de demonstração. o DemoTeam Representa um time de demonstração. • com.cloudgarden.resource Pacote para manipulação dos parâmetros do toolkit SWT, Standard Widget Toolkit. o SWTResourceManager Classe única do pacote para manipulação de recursos gráficos como Fonte, Cor, Imagem e Cursor.