viernes, 27 de febrero de 2009

Codigo deFiguras Primitivas en Java con Documentacion

mport java.awt.*;
import java.awt.event.*;

// Clase de control del ejemplo
class java1516 extends Frame {

// Función de control de la aplicación
public static void main( String[] args ) {
// Se instancia un objeto de la clase
new java1516();
}

// Contructor de la clase
public java1516() {
this.setTitle( "Tutorial de Java, Gráficos" );
this.setSize( 475,275 );
this.setVisible( true );

// Clase anidada que permite terminar la ejecución de la animación
this.addWindowListener(
// Definición de la clase anónima para controlar el cierre de
// la ventana
new WindowAdapter() {
public void windowClosing( WindowEvent evt ) {
// Se concluye el programa
System.exit( 0 );
}
} );
}

// Se sobrecarga el método paint()
public void paint( Graphics g ){
g.setColor( Color.red );

// Trasladamos el origen de coordenadas que se sitúa en la
// esquina superior izquierda, para evitar el problema que se
// produce con insets. De este modo el origen de coordenadas sí
// que lo dejamos situado en la zona cliente del objeto Frame
// que es la que se utiliza para pintas
g.translate( this.getInsets().left,this.getInsets().top );

// Línea simple
g.drawLine( 10,0,50,50 );
g.setColor( Color.black );
g.drawString( "drawLine",10,62 );
g.setColor( Color.red );

// Se crean dos arrays de coordenadas para pintar una
// polilínea
int x1Datos[] = {80,130,80,130};
int y1Datos[] = {0,50,50,0};
g.drawPolyline( x1Datos,y1Datos,4 );
g.setColor( Color.black );
g.drawString( "drawPolyline",70,62 );
g.setColor( Color.red );

// Rectángulo
g.drawRect( 150,0,50,50 );
g.setColor( Color.black );
g.drawString( "drawRect",150,62 );
g.setColor( Color.red );

// Rectángulo relleno
g.fillRect( 220,0,50,50 );
g.setColor( Color.black );
g.drawString( "fillRect",225,62 );
g.setColor( Color.red );

// Rectángulo redondeado
g.drawRoundRect( 300,0,50,50,10,10 );
g.setColor( Color.black );
g.drawString( "drawRoundRect",280,62 );
g.setColor( Color.red );

// Rectángulo redondeado relleno
g.fillRoundRect( 385,0,50,50,10,10 );
g.setColor( Color.black );
g.drawString( "fillRoundRect",375,62 );

// Pinta un rectángulo 3D, sobresaliendo de la pantalla
// No parece demasiado 3D
g.setColor( Color.gray );//draw the 3D stuff in gray
g.draw3DRect( 10,90,55,25,true );
// Rectángulo 3D, pulsado
g.draw3DRect( 70,90,50,25,false );
g.setColor( Color.black );
g.drawString( "draw3DRect",30,140 );

// Rectángulo 3D relleno. Se ha puesto un fondo gris
// con lo cual se puede apreciar mucho mejor el efecto
// de tres dimensiones
// Fondo gris
g.setColor( Color.gray );
g.fillRect( 145,75,130,55 );
g.fill3DRect( 155,90,50,25,true );
// Rectángulo 3D relleno, pulsado
g.fill3DRect( 215,90,50,25,false );
g.setColor( Color.red );
// De todos modos, la apariencia de tres dimensiones
// con 3DRect no es demasiado buena, porque es necesario
// seleccionar muy bien la paleta de colores para que
// se genere la ilusión de 3D
g.setColor( Color.black );
g.drawString( "fill3DRect",180,140 );
g.setColor( Color.red );

// Pinta un ángulo de 255 grados inscrito en un rectángulo
g.drawRect( 300,77,50,50 );
g.drawArc( 300,77,50,50,0,225 );
g.setColor( Color.black );
g.drawString( "drawArc",305,140 );
g.setColor( Color.red );

// Angulo relleno de 255 grados inscrito en un rectángulo
g.drawRect( 385,77,50,50 );
g.fillArc( 385,77,50,50,0,225 );
g.setColor( Color.black );
g.drawString( "fillArc",395,140 );
g.setColor( Color.red );

// Elipse, con el eje grande horizontal
g.drawOval( 10,165,50,25 );
// Círculo
g.drawOval( 70,150,50,50 );
g.setColor( Color.black );
g.drawString( "drawOval",35,218 );
g.setColor( Color.red );

// Elipse rellena, con el eje grande vertical
g.fillOval( 170,150,25,50 );
// Círculo relleno
g.fillOval( 210,150,50,50 );
g.setColor( Color.black );
g.drawString( "fillOval",185,218 );
g.setColor( Color.red );

// Polígono
int x2Datos[] = {300,350,300,350};
int y2Datos[] = {150,200,200,150};
g.drawPolygon( x2Datos,y2Datos,4 );
g.setColor( Color.black );
g.drawString( "drawPolygon",290,218 );
g.setColor( Color.red );

// Polígono relleno
int x3Datos[] = {385,435,385,435};
int y3Datos[] = {150,200,200,150};
g.fillPolygon( x3Datos,y3Datos,4 );
g.setColor( Color.black );
g.drawString( "fillPolygon",385,218 );
}
}

No hay comentarios:

Publicar un comentario