Para dibujar una linea utilizamos las siguientes lineas de código
package graficos;import java.awt.Frame;
import java.awt.Graphics;
import java.awt.Color;
class Pantalla extends Frame {
public Pantalla() {
this.setSize(200,150 );
this.setVisible( true );
}
public void paint(Graphics g) {
g.setColor(Color.Blue);
g.drawLine(50, 50, 100, 100);
}
public static void main( String[] args ) {
Pantalla p = new Pantalla();
}
}
Para dibujar un circulo utilizaremos el siguiente código
import java.awt.*; import java.awt.event.*;
class Circulos extends Frame implements ActionListener {
static public void main(String[]args){
new Circulos().show();
}
//componentes
private Button
circulo=new Button("dibujar círculo"),
quit=new Button("quit");
//tela de dibujo
private Canvas cv=new Canvas();
private final int W=300,H=300;//ancho y alto
//constructor
public Circulos() {
//diagramar ventana
setSize(W,H+2*25);//25 pixeles por borde
setLayout(new BorderLayout());
//agregar componentes
add("North",circulo);
add("South",quit);
cv.setSize(W,H); //tamaño de la tela
add("Center",cv);
//activar escuchador
circulo.addActionListener(this);
quit.addActionListener(this);
}
//dibujar Circulo
public void actionPerformed(ActionEvent x){
if(x.getSource()==quit) System.exit(0);
//coordenadas del centro del circulo
int h=U.azar(0,W-1), v=U.azar(0,H-1);
//diámetro y radio
int d=U.azar(0,Math.min(W,H)-1), r=d/2;
//obtener objeto de clase Graphics
Graphics g=cv.getGraphics();
//establecer color (convención RGB)
g.setColor(new Color(U.azar(0,255), //rojo
U.azar(0,255), //verde
U.azar(0,255)));//azul
Para dibujar un rectángulo usaremos el código siguiente
Para dibujar un rectángulo en pantalla, basta con llamar al método drawRect() indicando la posición en que deseamos colocar la esquina superior-izquierda del rectángulo y su ancho y alto. Por ejemplo, el código siguiente, Rect1.java, pinta un rectángulo alrededor del applet que lo contiene:import java.awt.*; import java.applet.Applet; public class Rect1 extends Applet { int ancho,alto; public void init() { Dimension d = size(); // devuelve el tamaño del applet ancho = d.width; alto = d.height; repaint(); } public void paint( Graphics g ) { g.drawRect( 0,0,ancho-1,alto-1 ); } }El método drawRect() pinta un rectángulo abierto, si queremos un rectángulo relleno, tendremos que invocar al método fillRect(), que tiene idéntica sintaxis. El código siguiente, Rect2.java, pinta un rectángulo relleno en el centro del applet que lo contiene:import java.awt.*; import java.applet.Applet; public class Rect2 extends Applet { int apAncho; int apAlto; int x,y,ancho,alto; public void init() { Dimension d = size(); apAncho = d.width; apAlto = d.height; ancho = apAncho/3; alto = apAlto/3; x = (apAncho - ancho)/2; y = (apAlto - alto)/2; repaint(); } public void paint( Graphics g ) { g.drawRect( 0,0,apAncho-1,apAlto-1 ); g.fillRect( x,y,ancho-1,alto-1 ); } }Para dibujar una curva haremos lo siguiente
Eljava.awt.geompaquete que permite crear un segmento de curva cuadrática o cúbica.Segmento de curva cuadrática
ElQuadCurve2Dclase implementa laforma deinterfaz. Esta clase representa un segmento de curva paramétrica cuadrática en (x, y) el espacio de coordenadas. LosQuadCurve2D.FloatyQuadCurve2D.Doublesubclases especificar una curva cuadrática en flotador y doble precisión.VariossetCurvemétodos se utilizan para especificar dos puntos extremos y un punto de la curva, cuyas coordenadas se puede definir directamente, por las coordenadas de otros puntos y mediante el uso de una matriz dada control. Un método muy útil,setCurve(QuadCurve2D), establece el cuadrática la curva con los mismos puntos finales y el punto de control como una curva que se suministra. Por ejemplo:// Crear nueva QuadCurve2D.Float QuadCurve2D q = new QuadCurve2D.Float (); // Dibujar QuadCurve2D.Float con coordenadas set q.setCurve (x1, y1, ctrlx, ctrly, x2, y2); g2.draw (q);Segmento de curva cúbica
ElCubicCurve2Dclase también implementa laforma deinterfaz. Esta clase representa un segmento de curva paramétrica cúbico en (x, y) el espacio de coordenadas.CubicCurve2D.FloatyCubicCurve2D.Doublesubclases especificar una curva cúbica en flotador y de doble precisión.ElCubicCurve2Dclase tiene métodos similares para establecer la curva como elQuadraticCurve2Dclase, excepto con un segundo punto de control. Por ejemplo:// Crear nueva CubicCurve2D.Double CubicCurve2D c = new CubicCurve2D.Double (); // Dibujar CubicCurve2D.Double con coordenadas set c.setCurve (x1, y1, ctrlx1, ctrly1, ctrlx2, ctrly2, x2, y2); g2.draw (c);


No hay comentarios.:
Publicar un comentario