黑马程序员技术交流社区

标题: java爱心代码。发给你心爱的人吧 [打印本页]

作者: 413520953    时间: 2015-11-2 00:26
标题: java爱心代码。发给你心爱的人吧
package com.zuidaima.swing;  
  
import java.awt.Color;  
import java.awt.Graphics;  
import java.awt.Image;  
import java.awt.Toolkit;  
  
import javax.swing.JFrame;  
  
@SuppressWarnings("serial")  
class Cardioid extends JFrame {  
    // 定义窗口大小  
    private static final int WIDTH = 480;  
    private static final int HEIGHT = 600;  
  
    // 获取屏幕大小  
    private static int WINDOW_WIDTH = Toolkit.getDefaultToolkit()  
            .getScreenSize().width;  
    private static 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(DISPOSE_ON_CLOSE);  
    }  
  
    public void paint(Graphics g) {  
  
        double x, y, r; // 横纵坐标及半径  
        Image image = this.createImage(WIDTH, HEIGHT);  
        Graphics pic = image.getGraphics();  
  
        // 绘制图形  
        for (int i = 0; i < 100; i++) {  
            for (int j = 0; j < 100; j++) {  
                r = Math.PI / 45 + 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)  
                        + WIDTH / 2;  
  
                y = -r * Math.sin(Math.PI / 45 * j) + HEIGHT / 2;  
  
                pic.setColor(Color.MAGENTA);  
                pic.fillOval((int) x, (int) y, 2, 2);  
            }  
            // 生成图片  
            g.drawImage(image, 0, 0, this);  
  
        }  
  
    }  
  
    public static void main(String[] args) {  
  
        new Cardioid();  
    }  
  
}  
作者: chenhaiqian    时间: 2015-11-2 01:17
厉害
作者: 刻骨铭心    时间: 2015-11-2 07:35
有点意思,我试试
作者: rookiefly    时间: 2015-11-2 07:40

作者: jlq    时间: 2015-11-2 09:51
bangbang da da da
作者: liuqianfly    时间: 2015-11-2 15:35
这是啥?
作者: kevin986745    时间: 2015-11-2 17:12
进来看看,谢谢!
作者: 洋葱头头    时间: 2015-11-2 22:58
效果图呢..




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2