Mini-Paint
Tecnologías : Java2D, Flujos, JDBC, Swing
Proyectos Relacionados: Editor de Imágenes (bitmaps), Micro-PhotoShop, Micro-Instagram y Presentaciones electrónicas
Caja de Herramientas ( ToolBox )
Circulo u ovalo
Circulo u ovalo rellenos
Rectangulo
Rectangulo
Tipos de Linea
Linea solida
Linea punteada
Diferentes grosores de linea
*Curvas de Bezier (Java2D)
Borrar todo el dibujo
Goma de borrar
Insertar Texto
En la inserción de texto permitir que el usuario seleccione
tipo de fuente, tamaño, color y las coordenadas x, y
(usando el ratón)
Insertar Imagen
En la inserción de imagen permitir que el usuario seleccione
el archivo de la imagen y las coordenadas x, y (usando el ratón)
Spray
Paleta de Colores (JColorChooser)
Lienzo (zona de dibujo)
Guardar el dibujo en disco
serializar de 2 maneras
vectorialmente (poco espacio)
como pixmap (mucho espacio) usar JDBC para almacenar como un BLOB
Recuperar el dibujo de disco
Red (equipo)
Sockets o RMI
bloquear una zona (rectangular) del lienzo a otras maquinas
Entregar
Código fuente y ejecutable con los siguientes datos
Nombre completo
Grupo
Proyecto final de Programación Orientada a Objetos
Incluir dichos datos y en cada archivo del código fuente como un comentario usando /* */.
Documentación
Imprimir pantallas que muestren ejemplos de ejecuciones del programa además incluir portada
con los datos mencionados
Nota: Para las formas Circulo, Rectangulo, Linea, Imagen y Texto hacer uso de jerarquía de herencia y polimorfismo
public abstract class Forma {
public abstract void dibuja(Graphics g);
}
public class Circulo extends Forma {
//variables instancia
//Constructor y otros metodos
public void dibuja(Graphics g){
//codigo
}
}
public class Linea extends Forma {
//variables instancia
//Constructor y otros metodos
public void dibuja(Graphics g){
//codigo
}
}
public class Rectangulo extends Forma {
//variables instancia
//Constructor y otros metodos
public void dibuja(Graphics g){
//codigo
}
}