2010bEquipe07 Estudo do Código Fonte

De Wiki DAINF
Edição feita às 15h11min de 15 de setembro de 2010 por Matheus.araujo (disc | contribs)

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. o ElementInformation  Classe genérica dentro do pacote. o BallInformation  Especialização da classe “ElementInformation” para representar informações sobre a bola. o RobotInformation  Especialização da classe “ElementInformation” para representar informações sobre o robô. o 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. o VisualElement  Interface que representa um elemento visual do jogo. o MovingElement  Classe abstrata que representa um elemento que se movimenta no jogo, implementação de “VisualElement”. o 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. o Wall  Classe que representa uma parede, implementa “VisualElement”. o WallCollisionPoint  Classe para simular um ponto da parede com massa infinita, especializa “MovingElement”. o Ball  Classe para representar a bola, especializa “MovingElement”. o Robot  Classe para representar o robô, especializa “MovingElement”. • br.ufrgs.f180.gui Pacote com a GUI (Graphical User Interface). o AboutDialog  Janela “Sobre”. o MainWindow  Janala 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. o 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. o 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.

Ferramentas pessoais