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:
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
Suscribirse a:
Entradas (Atom)
Con la tecnología de Blogger.