Una forma sencilla y rápida de aprender JAVA, observando y deduciendo cómo se comporta el lenguaje a través de ejemplos prácticos.

Archivo del blog

viernes, 23 de diciembre de 2022

Crear curva Bézier. Uso de método curveTo de GeneralPath.

Un ejemplo de cómo utilizar el método curveTo de GeneralPath para crear una curva Bézier.
 

Código (Bezier.java): 

package bezier;

import java.awt.BasicStroke;
import java.awt.Graphics;
import java.awt.Color;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.awt.geom.GeneralPath;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class Bezier extends JPanel {

    @Override
    public void paintComponent(Graphics g) {

        super.paintComponent(g);
        Graphics2D g2d = (Graphics2D) g;
        g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
        g2d.setStroke(new BasicStroke(4.0f));

        int ancho = getWidth();
        int alto = getHeight();
        int x1 = ancho / 4;
        int y1 = alto / 4;
        int x2 = 3 * ancho / 4;
        int y2 = alto / 4;
        int x3 = ancho / 4;
        int y3 = 3 * alto / 4;
        int x4 = 3 * ancho / 4;
        int y4 = 3 * alto / 4;
        GeneralPath path = new GeneralPath();
        path.moveTo(x1, y1);
        path.curveTo(x2, y2, x3, y3, x4, y4);
        g2d.setColor(Color.BLUE);
        g2d.draw(path);
    }

    public static void main(String[] args) {
        JFrame ventana = new JFrame("Curva Bézier");
        ventana.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        ventana.add(new
Bezier());
        ventana.setSize(256, 256);
        ventana.setVisible(true);
    }
}


Resultado:



Con la tecnología de Blogger.