📜  在Java小程序中画笑脸(1)

📅  最后修改于: 2023-12-03 14:51:17.830000             🧑  作者: Mango

在Java小程序中画笑脸

在Java小程序中,我们可以使用一些基本的图形接口来画出各种各样的图形,包括笑脸。本文将介绍如何使用Java的Graphics2D类来绘制一个简单的笑脸。

准备工作

在开始正式绘制笑脸之前,我们需要准备好绘图基础,即绘图区域和画笔。在Swing框架中,我们可以继承JPanel类创建一个绘图区域,并在paintComponent方法中使用Graphics2D对象进行绘制。具体代码如下:

import java.awt.Graphics;
import java.awt.Graphics2D;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class DrawingPanel extends JPanel {
    public void paintComponent(Graphics g) {
        Graphics2D g2d = (Graphics2D) g;
        // 绘制代码在这里
    }
}

public class Main {
    public static void main(String[] args) {
        JFrame frame = new JFrame("Java小程序画笑脸");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        DrawingPanel panel = new DrawingPanel();
        frame.add(panel);
        frame.setSize(400, 400);
        frame.setVisible(true);
    }
}
绘制笑脸

接下来,我们就可以开始绘制笑脸了。首先,我们需要绘制一个圆形的脸底部,代码如下:

g2d.drawOval(100, 100, 200, 200); // 绘制脸底部的圆形

其中,drawOval方法的四个参数分别为圆形左上角坐标x和y,圆形的宽度和高度。

接下来,我们可以绘制两个圆形的眼睛,并在中心点绘制两个小圆,代码如下:

g2d.drawOval(150, 150, 30, 30); // 绘制左眼
g2d.drawOval(220, 150, 30, 30); // 绘制右眼
g2d.fillOval(160, 160, 10, 10); // 左眼中心小圆
g2d.fillOval(230, 160, 10, 10); // 右眼中心小圆

其中,fillOval方法的四个参数分别为圆形左上角坐标x和y,圆形的宽度和高度,绘制的是实心圆形。

最后,我们可以绘制一个弧形作为嘴巴,代码如下:

g2d.drawArc(150, 200, 100, 80, 180, 180); // 绘制嘴巴

其中,drawArc方法的六个参数分别为弧形左上角坐标x和y,弧形的宽度和高度,起始角度和扫描角度,用于控制弧形的大小和方向。

最终的绘制代码如下:

g2d.drawOval(100, 100, 200, 200); // 绘制脸底部的圆形
g2d.drawOval(150, 150, 30, 30); // 绘制左眼
g2d.drawOval(220, 150, 30, 30); // 绘制右眼
g2d.fillOval(160, 160, 10, 10); // 左眼中心小圆
g2d.fillOval(230, 160, 10, 10); // 右眼中心小圆
g2d.drawArc(150, 200, 100, 80, 180, 180); // 绘制嘴巴

最终效果如下:

笑脸

总结

通过本文的介绍,我们学习了如何使用Java的Graphics2D类来绘制一个简单的笑脸。当然,Java的绘图接口非常强大,我们可以根据需要使用更多复杂的绘图方法来实现更多的效果。