2010bEquipe07 Estudo do Código Fonte

De Wiki DAINF

2010bEquipe07

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.

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.

DemoTeam

Representa um time de demonstração.

com.cloudgarden.resource

Pacote para manipulação dos parâmetros do toolkit SWT, Standard Widget Toolkit.

SWTResourceManager

Classe única do pacote para manipulação de recursos gráficos como Fonte, Cor, Imagem e Cursor.


DIAGRAMA DE CLASSES

Diagrama de Classes elaborado pela equipe para o programa Tewnta.

Clique no link abaixo.

Imagem:twenta.jpg

Ferramentas pessoais