Diseño
y Programación Orientados a Objetos
1er. Sem 2011
Tarea 3: Applet para Simulador Gráfico de Masas, Resortes y Elásticos como Objetos de Software
Recomendación: Lea detenidamente la tarea. Si algo no lo
entiende, consulte en clases. Si es preciso, se incorporarán
aclaraciones al final.
Sumado a los objetivos de la tares 2, esta tarea tiene por objetivos:
* Generar documentación con Javadoc.
* Crear gráficos en Java.
* Creación de archivos .jar
* Ejercitar el paso de parámetros desde un archivo html a un applet.
* Aplicar elementos de Ingeniería de software.
Descripción General
Básicamente ahora usted podrá correr las simulaciones a través
de Internet usando un Applet. Además deberá crear las clases necesarias
para incluir tres gráficos para alguna bola del experimento: el primer
gráfico mostrará la coordenada X en función del
tiempo, otro con la coordenada Y en función del tiempo, y
el tercer gráfico mostrará la trayectoria del objeto en un gráfico Y versus X.
Trabajo a desarrollar
Desde un punto de vista de la simulación, esta tarea tiene la misma descripción que la tarea 2.
El tiempo de refresco inicial (refresh time) y el paso de simulación
(delta time), deben ser definidos en el html. Ante su ausencia, el
applet usará los mismos valores de la tarea 2. Para ello los nombres de
los parámetros serán: RefreshTime y DeltaTime.
Si usted lo desea puede definir otros parámetros, pero su applet debe
funcionar bien si se especifican los parámetros ya mencionados, sólo
uno de ellos o ninguno de ellos. Más abajo se agrega otro parámetro.
El Applet debe dividir el área de despliegue en dos con JSplitPane. A
la izquierda debe verse la simulación y a la derecha los tres gráficos
ordenados verticalmente. Los gráficos deben tener título, y nombre para
cada eje. El gráfico superior es del tipo y v/s t, el que le sigue x
v/s t y el tercero y v/s x. Los gráficos deben mostrar la posición en
el tiempo y trayectoria de una masa. Para seleccionarla, incorpore el
ítem de menú "Select" directamente en la barra de menú luego del menú
Simulator MyWorld. Al posicionarse sobre Select, debe aparecer un "tool tip"
"Select ball to be plotted). Los gráficos de tiempo deben mostrar sólo
el últimos N segundos de la simulación, donde N es un parámetro
especificados en el HTML (default = 30 segundos). El nombre de este
parámetro en el html es "PlotWindowTime"
Cada vez que se selecciona otra bola, el gráfico parte nuevamente borrando toda historia pasada.
Use Javadoc para documentar los cambios hechos al código.
Prepare sus archivos de modo de incluir una clase PhysicsLab que
permita ejecutar su solución como aplicación y la clase
PhysicsLabApplet que lo haga como applet. Para el caso de PhysicsLab
use los parámetros por omisión (no serán especificados por ningún
html). Su grupo puede optar a 10 puntos de extras si en lugar de usar
aquellos por omisión, usted estudia la clase Properties, y define los
mismos nombre de parámetros indicados antes en un archivo
PhysicsLab.ini.
Resultados Esperados de su Grupo
Entregue todo lo indicado en Normas de Entrega de Tareas.
Incluya un archivo PhysicsLab.html que permita correr su applet.
Debe preparar un archivo PhysicsLab.jar que incluya todo lo requerido para la ejecución de su applet.
La aplicación debe correr usando:
$make run
o bien usando:
$ java -jar PhysicsLab.jar
Su documentación automática con javadoc debe ser generable con:
$ make doc
(OJO no incluya las páginas html generadas por javadoc, éstas serán generadas por este comando cuando el ayudante las revise)
En su archivo de documentación (pdf o html) incorpore un casos de uso de la aplicación, su correspondiente diagrama UML y ponga dos tarjetas CRC.
Ayudas
Será provista según surjan consultas de parte de ustedes.