Dibuja figuras en java

Que saludos pues bien ahora empezamos a poner las practicas que he realizado en clases de la UPP pues aca empezaremos con algo que me pidieron en una clase de programación en java que decia algo asi … Realizar un programa que realice un pequeño tablero donde se puedan dibujar figuras gometricas como cuadrado, triangulo, circulo, estrella y un lapiz donde se ponga coordenadas iniciales x y y ,para comenzar a dibujar las fijuras, las figuras deben poder arrastrarse con el putero del mouse…..

entonces el funcionamiento es:

Doble click para seleccionar algun color en particular solo tengo 3, seleccionas coordenadas inciales para mostrar la imagen puedes menter un rango de10 80 para que puede ser visible y por ultimo doble click en cualquier palabra de la figura a dibujar, en caso que no se elija color ni las coordenadas iniciales entonces la fijura aparecera enla esquina superior izquierda y podras arrastrar la magen en cualquier parte del pequeño tablero para mejor entendimiento…Vean lo que hace

ver aca el ejemplo: aqui

Pues bien ahora chequen en dato como funciona para esto hice una divicion de las clases

Clases para dibujar las figuras

  • Circunferecia
  • Estrella
  • Escribir
  • Rectangulo
  • Triangulo

Interface para implementar las clases para dibujar las figuras

  • InterfaceFigura

Clase para poder arrastrar alguna imagen sin modificar de posición ni de tamaño alguna otra figura que ya este dibujada en el tablero

  • LienzoParaArrastrarFiguras

Y aqui es el Applet para poder visualizar el tablero y dibujar las figuras

  • proyecto

 

Vean aca todo el chouuuu… para ver lo que hace y la relacion que tienen todas las clases generadas

import java.awt.*;
import java.applet.*;
import javax.swing.*;

public class proyecto extends Applet
{
List lista,lista2;
TextField txtx,txty; //cajas te texto para coordenadas
Color KO=Color.BLACK; //color pàra las figuras
private int ultimo_x,ultimo_y;ubica la posición del puntero
Boolean bandera=false;
LienzoParaArrastrarFiguras c = new LienzoParaArrastrarFiguras(); //aca el objeto
/**
* Construye el applet, metiendo el lienzo con las figuras.
*/
public void init()
{
lista=new List(4,false);
lista2=new List(4,false);

//añade alemenrtos a la lista
lista.addItem(«Cuadrado»);
lista.addItem(«Triangulo»);
lista.addItem(«Circulo»);
lista.addItem(«Estrella»);
lista.addItem(«Lapiz»);

lista2.addItem(«Rojo»);
lista2.addItem(«Verde»);
lista2.addItem(«Azul»);

Label labelx=new Label(«X:»,Label.RIGHT);
Label labely=new Label(«Y:»,Label.RIGHT);
txtx=new TextField(4);
txty=new TextField(4);
txtx.setText(«0»);
txty.setText(«0»);

add(lista);
add(lista2);
add(labelx);
add(txtx);
add(labely);
add(txty);
add(c);

}

public boolean action(Event evtobj, Object arg){

if(evtobj.target instanceof List)

if(arg.equals(«Rojo»))
KO= Color.RED;
else if(arg.equals(«Verde»))
KO= Color.GREEN;
else if(arg.equals(«Azul»))
KO= Color.BLUE;

if(arg.equals(«Cuadrado»))
c.addFigura(new Rectangulo(Integer.parseInt(txtx.getText()),Integer.parseInt(txty.getText()), 50, 33,KO));

if(arg.equals(«Circulo»))
c.addFigura(new Circunferecia(64, 8, 22, KO));

if(arg.equals(«Triangulo»))
c.addFigura(new triangulo(Integer.parseInt(txtx.getText()),Integer.parseInt(txty.getText()),KO));

if(arg.equals(«Estrella»))
c.addFigura(new estrella(Integer.parseInt(txtx.getText()),Integer.parseInt(txty.getText()),KO));

if(arg.equals(«Lapiz»))
bandera=true;

add(c);

return false;
}//fin init

public boolean mouseDown(Event e, int x, int y)
{//Es llamado cuando el usuario hace clic
ultimo_x=x;
ultimo_y=y; //Recuerda la llocalizacon d
return true;
}

public boolean mouseDrag(Event e, int x, int y)
{
Graphics g=getGraphics();
if(bandera=true){

c.addFigura(new escribir(ultimo_x,ultimo_y,x,y,KO));
add(c);
}
ultimo_x=x;
ultimo_y=y; //Se actualiza la posicion guardada
return true;
}

}

ahora si no entienden esto pues chequen mejor todo y bajen los archivos aca tan….

descargar

 

Deja un comentario