martes, 23 de enero de 2018

graphics2d

Esta clase Graphics2D amplía la clase Graphics para proporcionar un control más sofisticado sobre la geometría, las transformaciones de coordenadas, la gestión del color y el diseño del texto. Esta es la clase fundamental para representar formas bidimensionales, texto e imágenes en la plataforma Java (tm).

nos sirve para dibujar componentes dentro del JPanel incluyento del metodo abstracto paintComponet(graphics g), en la cual recive un parametro graphics la cual sirve para poder dibujar

Continiete estos componentes que son de graphics2d:

Rectangle2d();
Ellipse2d();
Line2d();
y demas componentes

PARA MAYOR INFORMACION VISITAR LA PAGINA DE LA API DE JAVA 


EJEMPLO DE USO DE GRAPHICS2D

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package pruebajfram;

import java.awt.*;
import java.awt.geom.Ellipse2D;
import java.awt.geom.Line2D;
import java.awt.geom.Rectangle2D;
import javax.swing.*;

/**
 *
 * @author levi
 */
public class PruebajFram {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        pantilla pantilar = new pantilla();
        pantilar.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    }

}

class pantilla extends JFrame {

    public pantilla() {
        setVisible(true);
        setSize(600, 450);
        setLocation(400, 200);
        setTitle("Creando texto en jframen");
        lamina miLamina = new lamina();
        add(miLamina);
    }
}

class lamina extends JPanel {

    @Override
    public void paintComponent(Graphics grphcs) {
        super.paintComponent(grphcs);
       
        Graphics2D gr = (Graphics2D) grphcs;
        Rectangle2D rec = new Rectangle2D.Double(200, 100, 200, 300);
        gr.draw(rec);
        gr.draw(new Line2D.Double(200, 100, 400, 400));
        Ellipse2D eclipse = new Ellipse2D.Double();
        eclipse.setFrame(rec);
        gr.draw(eclipse);

        double anchoX = rec.getCenterX();
        double alturaY = rec.getCenterY();
        int radio = 200;
        Ellipse2D eclipse2d = new Ellipse2D.Double();
        eclipse2d.setFrameFromCenter(anchoX, alturaY, anchoX + radio, alturaY + radio);
        gr.draw(eclipse2d);

    }

}

Share:

0 comentarios:

Publicar un comentario

BTemplates.com

Buscar este blog

Archivo del Blog

Con tecnología de Blogger.