java爱心效果代码来了

2023-10-29

爱心❤代码来了

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

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

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

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);
    }
}

下面是展示效果

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

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java爱心效果代码来了 的相关文章

随机推荐

  • 欧式几何与非欧式几何

    欧氏几何 几何学的一门分科 公元前3世纪 古希腊数学家欧几里得把人们公认的一些几何知识作为定义和公理 在此基础上研究图形的性质 推导出一系列定理 组成演绎体系 写出 几何原本 形成了欧氏几何 在其公理体系中 最重要的是平行公理 由于对这一公
  • Java常见的十道语法题-详解

    1 判断 101 200 之间有多少个素数 并输出所有素数 代码如下 判断素数 public static void main String args boolean flag 定义标记语句 for int i 101 i lt 200 i
  • 区块链概述

    一 什么是区块链 区块链是一个信息技术领域的术语 区块链是借由密码学串接以保护内容的自增长的交易记录列表 又称区块 每一个区块包含了前一个区块的哈希值 本区块的时间戳记以及交易数据 通常用默克尔树结构的哈希值表示 这样的设计使得区块内容具有
  • Chromedriver安装和配置

    首先安装Chromedriver 下载网址 http npm taobao org mirrors chromedriver 找到与你chrome浏览器对应版本的下载 上面只是一部分 如果没有的可以上百度查一下 然后指定路径进行安装 这里我
  • 【Python编程】Python实现生产者消费者模式(多线程爬虫)

    Python实现生产者消费者模式 多线程爬虫 1 多组件的Pipeline技术架构 复杂的事情一般都不会一下子做完 而是会分很多中间步骤一步步完成 2 生产者消费者爬虫的架构 3 多线程数据通信的 queue Queue queue Que
  • Order By 和 Group By的适用场景

    Order By和Group By看起来很像 但实际上使用用途和适用场景实际上很大的不同 Order By Order By是排序根据所给字段进行排序 select from s order by sname desc sage desc
  • tensorflow 1.13.1 安装采坑

    环境 win10 x64位 cuda10 1 cudnn 7 5 vs2013 vs2015 distributed GTX1060 按照网上的教程安装 如下面博客 https blog csdn net huanyingzhizai ar
  • Android WebView打不开网页

    今天给公司前端同事打了个webview测试包 发现页面打不开 有两个原因 1 测试webview包没有配置好 特别是缓存没配置的同事用到h5缓存就打不开了 正确配置如下 设置支持javascript webView getSettings
  • Python第三方拓展包(安装下载方法)

    找到安装的位置 第一种方法 Anaconda集成环境 Anaconda集成环境 优点太多了 百度一大堆介绍 Anaconda的优点总结起来就八个字 省时省心 分析利器 省时省心 Anaconda通过管理工具包 开发环境 Python版本 大
  • JS点击计数存储案例

    项目功能要求 点击页面红色块默认不计数 点击开始按钮后再点击红色块则开始计数 点击结束按钮后再点击红色块则不计数 关闭页面并再次打开页面 界面会显示上次关闭页面时的计数值 代码设计 本项目结合了前端页面的设计和JS的使用 具体代码如下
  • 编译器工具 Flex Bison for Windows 简单入门例子

    最近从事一个系统仿真软件的开发 里面定义了自己的描述性语言MSL MSL语言经FlexBison转换成C语言 然后用C编译器来编译并计算仿真 现在领域驱动开发比较热门 有机会定义自己的语言对程序员来说是比较有成就感的 免不了要去学习编译原理
  • 笔记本电脑电池怎么拆_笔记本电脑电池的容量单位是Wh,手机是mAh,二者怎么比较?...

    Hello大家好 我是兼容机之家的小牛 目前很多轻薄本都搭载了全功能的Type C接口 大都支持PD充电 所以有的机友出门的时候就不会带上笔记本的 板砖 适配器了 往往会选择购买一个手机 电脑通用的PD充电器 大家平时都知道自己的手机电量是
  • steam创客教室

    人生不同阶段都有不同的使命 在学生阶段 学习掌握知识 为他们以后的人生获得成就的能力 就是他们这个阶段最重要的使命 格物斯坦小坦克的学生生涯也是这样做的 为了这个使命 他们必须要学习忍耐 学会放弃 学会付出 这不仅仅是学习的需要 也是人生的
  • 用 Python 爬取股票实时数据

    今天我们一起来学习一个 Python 爬虫实战案例 我们的目标网站就是东方财富网 废话不多说 开搞 网站分析 东方财富网地址如下 http quote eastmoney com center gridlist html hs a boar
  • 解读Android LOG机制的实现:(5)获取LOG的应用程序LogCat

    解读Android LOG机制的实现 5 获取LOG的应用程序LogCat 田海立 CSDN 2011 07 27 Android提供的LOG机制的实现贯穿了Java JNI 本地c c 实现以及LINUX内核驱动等Android的各个层次
  • 三步教你实现MyEclipse的debug远程调试

    MyEclipse远程调试程序是个神奇的东西 有时一个项目本地运行没问题可放到服务器上 同样的条件就是结果不一样 有时服务器上工程出点问题需要远程调测 于是就灰常想看一下程序在远程运行时候的状态 希望让程序在远程运行 还可以在本机打断点跟一
  • 执行力的关键在于中层,成败的关键在于细节

    编者注 这是一位国内著名企业总裁在一次工作会议上的讲话 文中说到完美的 细节 一定是完美执行力的结果 并且切中时弊的指出 执行力的关键在于中层 如何做到这一点 关键就是要建立一个保证中层执行力到位的强势文化 也许真正落实到位 不但首先会冲击
  • Nodejs

    一 是什么 中间件 Middleware 是介于应用系统和系统软件之间的一类软件 它使用系统软件所提供的基础服务 功能 衔接网络上应用系统的各个部分或不同的应用 能够达到资源共享 功能共享的目的 在NodeJS中 中间件主要是指封装http
  • 华为OD机试 - 阿里巴巴找黄金宝箱(IV)(Java)

    题目描述 一贫如洗的樵夫阿里巴巴在去砍柴的路上 无意中发现了强盗集团的藏宝地 藏宝地有编号从0 N的箱子 每个箱子上面有一个数字 箱子排列成一个环 编号最大的箱子的下一个是编号为0的箱子 请输出每个箱了贴的数字之后的第一个比它大的数 如果不
  • java爱心效果代码来了

    爱心 代码来了 村上春树说 仪式是一件很重要的事 现实生活被琐事充斥 仪式感总是被人遗忘 凑合的晚饭 乱丢的衣物 杂乱无章的生活让原本平淡的生活过得一潭死水 找不到生活的乐趣 童话 小王子 里狐狸对小王子说 你最好在每天相同的时间来 比如你