Tutorial applet figura

Solo disponible en BuenasTareas
  • Páginas : 5 (1204 palabras )
  • Descarga(s) : 0
  • Publicado : 10 de diciembre de 2011
Leer documento completo
Vista previa del texto
TUTORIAL DEL PROGRAMA DE FIGURAS IMPLEMENTANDO ARCHIVOS

Primero, el programa esta compuesto por 3 paquetes: físico, lógico y presentación.

PAQUETE LOGICA

Este paquete esta compuesto por las clases que se encargan de hacer los cálculos y de graficar, además de otras cosas.

CIRCULO

Primero se declaran las variables como la ubicación y el radio del circulo, luego se agrega elconstructor con las variables .Como podemos ver la clase circulo hereda de la clase geometría, la cual contiene los métodos abstractos para poder hallar el área y el perímetro del circulo.

public class Circulo extends Geometria {
static int numCirculos = 0;
public static final double PI=3.14159265358979323846;
public double x, y, r;
public Circulo(double x, double y, double r) {
this.x=x;this.y=y; this.r=r;
numCirculos++;
}
public Circulo(double r) { this(0.0, 0.0, r); }
public Circulo(Circulo c) { this(c.x, c.y, c.r); }
public Circulo() { this(0.0, 0.0, 1.0); }

A continuación, agregamos las funciones como el área, el perímetro y las comparaciones de los círculos.

public double perimetro() { return 2.0 * PI * r; }
public double area() { return PI * r * r; }public Circulo elMayor(Circulo c) {
if (this.r>=c.r) return this; else return c;
}
public static Circulo elMayor(Circulo c, Circulo d) {
if (c.r>=d.r) return c; else return d;
}
}

CIRCULO GRAFICO

Esta clase hereda de la clase círculo, y por lo tanto sus variables, e implementa la interfase dibujable, además debemos importar algunas librerías de awt.

import java.awt.Graphics;import java.awt.Color;

public class CirculoGrafico extends Circulo implements Dibujable {
Color color;
Ahora hacemos el constructor, el súper se usa para incluir las variables que se encuentran en la clase circulo.
public CirculoGrafico(double x, double y, double r, Color unColor) {
super(x, y, r);
this.color = unColor;
}

Estos son los métodos de la interfase Dibujable que captura losvalores de su posición y tamaño.

public void dibujar(Graphics dw) {
dw.setColor(color);
dw.drawOval((int)(x-r),(int)(y-r),(int)(2*r),(int)(2*r));
dw.fillOval((int)(x-r),(int)(y-r),(int)(2*r),(int)(2*r));
}
public void setPosicion(double x, double y) {
;
}

DIBUJABLE

Esta es la interfase del programa que contiene los métodos que captan la posición y del dibujo de las figuras.import java.awt.Graphics;

public interface Dibujable {

public void setPosicion(double x, double y);
public void dibujar(Graphics dw);
}

GEOMETRIA

Esta clase es la abstracta que contiene los métodos de área y perímetro de las figuras.

public abstract class Geometria {
public abstract double perimetro();
public abstract double area();
}

PANEL DIBUJO

Esta clase es lautilizada para dibujar las figuras en el ejecutable, esta clase usa un panel de awt para dibujar.

import java.awt.*;
import java.util.ArrayList;
import java.util.Iterator;
public class PanelDibujo extends Panel {
private ArrayList v;

Este es el constructor que contiene una variable arraylist para poder dibujar las figuras que se deseen.
public PanelDibujo(ArrayList va) {
super(newFlowLayout());
this.v = va;
}

Esta función dibuja las figuras y por medio de un ciclo se dibuja una por una hasta que termine el ciclo, además contiene un objeto de la clase dibujable.

public void paint(Graphics g) {
Dibujable dib;
Iterator it;
it = v.iterator();
while(it.hasNext()) {
dib = (Dibujable)it.next();
dib.dibujar(g);
}

RECTANGULO

Esta clase también hereda dela clase Geometría, ya que también usa sus métodos de área y perímetro. Aquí se declaran las variables de posición inicial en los ejes X y Y: p1x y p1y; y los de posición final p2x y p2y.

public class Rectangulo extends Geometria {
private static int numRectangulos = 0;
protected double x1, y1, x2, y2;
public Rectangulo(double p1x, double p1y, double p2x, double p2y) {
x1 = p1x;
x2 =...
tracking img