java爱心效果代码来了「终于解决」

java爱心效果代码来了「终于解决」Java爱心代码来了

大家好,欢迎来到IT知识分享网。

爱心❤代码来了

村上春树说:“仪式是一件很重要的事。”
现实生活被琐事充斥,仪式感总是被人遗忘,凑合的晚饭、乱丢的衣物、杂乱无章的生活让原本平淡的生活过得一潭死水,找不到生活的乐趣。
在这里插入图片描述

童话《小王子》里狐狸对小王子说:“你最好在每天相同的时间来,比如你在下午四点钟来,那么从三点钟起,我就开始感到幸福。时间越临近,我就感到越幸福。到了四点钟我就会坐立不安,如果你随便什么时候来,我就不知道在什么时间准备我的心情,仪式能让我觉得某一天某一刻都会与众不同。”

接下来是爱心代码及展示效果
代码展示

import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.Toolkit;
import java.util.jar.JarOutputStream;
import javax.swing.JFrame;
class Cardioid extends JFrame { 
   
//定义窗口大小

    private static final int WIDTH = 900;
    private static final int HEIGHT = 800;
//获取屏幕大小
    private static final int WINDOW_WIDTH = Toolkit.getDefaultToolkit().getScreenSize().width;
    private static final int WINDOW_HEIGHT = Toolkit.getDefaultToolkit().getScreenSize().height;
//构造函数
    public Cardioid() { 
   
//设置窗口标题
        super("♥爱心");

//设置背景色

        this.setBackground(Color.BLACK);
//设置窗口位置
        this.setLocation((WINDOW_WIDTH - WIDTH) / 2, (WINDOW_HEIGHT - HEIGHT) / 2);
//设置窗口大小
        this.setSize(WIDTH, HEIGHT);
//设置窗口布局
        this.setLayout(getLayout());
//设置窗口可见
        this.setVisible(true);
//设置窗口的默认关闭方式
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }

//图形函数
    public void paint(Graphics g) { 
   
//横纵坐标及半径
        double x, y, r;
//绘制图形
        double z = 0.0;
        double size=10;
        int jj=0;
        while (true) { 
   
            Image image = this.createImage(WIDTH, HEIGHT);
            Graphics pic = image.getGraphics();
            if (jj%2==0){ 
   
                size=14.5;
            }else { 
   
                size=15;
            }
            for (int ii = 30; ii > 0; ii--) { 
   
                Color color = new Color(255, 175, (int) (20 * Math.random()) + 220);
                for (int i = 1; i < 400; i++) { 
   
                    int px = (int) (Math.random() * 10);
                    int py = (int) (Math.random() * 10);
                    x = 16 * (Math.sin(z) * Math.sin(z) * Math.sin(z)) * (size) + Math.pow((-1), px) * Math.random() * ii * Math.sqrt(ii) + WIDTH / 2;
                    y = -(13 * Math.cos(z) - 5 * Math.cos(2 * z) - 2 * Math.cos(3 * z) - Math.cos(4 * z)) * (size) + Math.pow((-1), py) * Math.random() * ii * Math.sqrt(ii) + HEIGHT * 1 / 3;
                    z += (Math.PI / 2.0) / 80;
                    pic.setColor(color);
// pic.setColor(new Color(0, 255, 255));
                    pic.fillOval((int) x, (int) y, 2, 2);

                if (ii < 3) { 
   
                    pic.setFont(new Font("楷体", Font.BOLD, 40));//设置字体
                    pic.setColor(Color.pink);
                    pic.drawString("宝贝", WIDTH / 2 - 100, 240);//绘制字符串
                    pic.drawString("爱你呦", WIDTH / 2, 280);//绘制字符串
                    g.drawImage(image, 0, 0, this);
                }
            }
            jj++;
            if (jj>100){ 
   
                break;
            }
            try { 
   
                Thread.sleep(500);
            } catch (InterruptedException e) { 
   
                e.printStackTrace();
            }
        }
    }
}
public class Heart { 
   
    public static void main(String[] args) { 
   
        new Cardioid();
    }
}

效果展示
在这里插入图片描述

代码展示:

import javax.swing.*;
import java.awt.*;

public class heart extends JFrame { 
   
    private static final long serialVersionUID = -1284128891908775645L;

    // 定义加载窗口大小

    public static final int GAME_WIDTH = 500;

    public static final int GAME_HEIGHT = 500;
    // 获取屏幕窗口大小
    public static final int WIDTH = Toolkit.getDefaultToolkit().getScreenSize().width;

    public static final int HEIGHT = Toolkit.getDefaultToolkit().getScreenSize().height;

    public heart() { 
   

        // 设置窗口标题
        this.setTitle("心形曲线");
        // 设置窗口初始位置
        this.setLocation((WIDTH - GAME_WIDTH) / 2, (HEIGHT - GAME_HEIGHT) / 2);
        // 设置窗口大小
        this.setSize(GAME_WIDTH, GAME_HEIGHT);
        // 设置背景色
        this.setBackground(Color.BLACK);
        // 设置窗口关闭方式
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        // 设置窗口显示
        this.setVisible(true);
    }
    @Override
    public void paint(Graphics g) { 
   
        double x, y, r;
        Image OffScreen = createImage(GAME_WIDTH, GAME_HEIGHT);
        Graphics drawOffScreen = OffScreen.getGraphics();
        for (int i = 0; i < 90; i++) { 
   
            for (int j = 0; j < 90; j++) { 
   
                r = Math.PI / 45 * i * (1 - Math.sin(Math.PI / 45 * j)) * 18;
                x = r * Math.cos(Math.PI / 45 * j) * Math.sin(Math.PI / 45 * i) + GAME_WIDTH / 2;
                y = -r * Math.sin(Math.PI / 45 * j) + GAME_HEIGHT / 4;
                //设置画笔颜色
                drawOffScreen.setColor(Color.PINK);
                // 绘制椭圆
                drawOffScreen.fillOval((int) x, (int) y, 2, 2);
            }
            // 生成图片
            g.drawImage(OffScreen, 0, 0, this);
        }
    }

    public static void main(String[] args) { 
   
        heart demo = new heart();
        demo.setVisible(true);
    }
}

下面是展示效果

在这里插入图片描述
最后祝大家开开心心,奔赴简单快乐的生活!!!

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/26123.html

(0)
上一篇 2023-05-21 12:00
下一篇 2023-06-27 11:00

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信