zoukankan      html  css  js  c++  java
  • 程序员的乐趣

    情人节-程序员的乐趣

    2013-08-13 23:32:30

    乘情人节还没有过去,作为一个屌丝程序员,从来没有过过情人节。不过我们也有自己的乐趣,这个时候貌似只有海子的《面朝大海》能够啊Q式慰藉自己。

    不多说了,早上上班的时候看到google首页,就感觉很有爱,不过当时没怎么玩,只是点点了,听听背景音乐,感觉甚好。话说作为程序员,看看国内某著名搜索引擎的情况就显得捉襟见肘了。咱没鄙视它的权利,没准它还会鄙视我等屌丝程序员,有zf支持,能赚钱才是硬道理啊!作为屌丝程序员还是先玩玩谷歌的小游戏,不为搜索,只想玩玩,呵呵,谁叫咱单身屌丝。上传几张图片,祝福哪些牛郎、织女们!!!

    first

    second

    third.

    作为成员员,怎么也不能只玩玩这个吧,搞个小程序也许更有爱!呵呵。

    复制代码
     1  /**  
     2  * filename:Star.java  
     3  *  
     4  * CopyRight:  
     5  * Date:2013-8-13  
     6  * Copyright JanneLee Corporation 2013   
     7  * Copyright
     8  * version 1.0 
     9  */
    10 import java.awt.Color;  
    11 import java.awt.Graphics;  
    12 import java.awt.Image;  
    13 import java.awt.Toolkit;  
    14 import javax.swing.JFrame;  
    15   
    16 public class StarTwo extends JFrame implements Runnable {  
    17     private static final long serialVersionUID = 1L;
    18     public static final int GAME_WIDTH = 500;  
    19     public static final int GAME_HEIGHT = 500;  
    20     public static final int WIDTH = Toolkit.getDefaultToolkit()  
    21             .getScreenSize().width;  
    22     public static final int HEIGHT = Toolkit.getDefaultToolkit()  
    23             .getScreenSize().height;  
    24   
    25     public StarTwo() {  
    26         this.setTitle("情人节快乐");  
    27         this.setLocation((WIDTH - GAME_WIDTH) / 2, (HEIGHT - GAME_HEIGHT) / 2);  
    28         this.setSize(GAME_WIDTH, GAME_HEIGHT);  
    29         this.setBackground(Color.BLACK);  
    30         this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  
    31         this.setVisible(true);  
    32     }  
    33   
    34     @Override  
    35     public void paint(Graphics g) {  
    36           
    37         double x, y, r;  
    38         Image OffScreen = createImage(GAME_WIDTH, GAME_HEIGHT);  
    39         Graphics drawOffScreen = OffScreen.getGraphics();  
    40   
    41         for (int i = 0; i < 90; i++) {  
    42             for (int j = 0; j < 90; j++) {  
    43                 r = Math.PI / 45 * i * (1 - Math.sin(Math.PI / 45 * j)) * 18;  
    44                 x = r * Math.cos(Math.PI / 45 * j) * Math.sin(Math.PI / 45 * i)  
    45                         + GAME_WIDTH / 2;  
    46                 y = -r * Math.sin(Math.PI / 45 * j) + GAME_HEIGHT / 4;  
    47                   
    48                 drawOffScreen.setColor(Color.RED);  
    49                 drawOffScreen.fillOval((int) x, (int) y, 2, 2);  
    50             }  
    51             g.drawImage(OffScreen, 0, 0, this);  
    52         }  
    53     }  
    54   
    55     public static void main(String[] args) {  
    56         StarTwo demo = new StarTwo();  
    57         Thread t = new Thread(demo);  
    58         t.start();  
    59     }  
    60   
    61     @Override  
    62     public void run() {  
    63         while (true) {  
    64             try {  
    65                 Thread.sleep(4000);  
    66                 this.repaint();  
    67             } catch (InterruptedException e) {  
    68                 e.printStackTrace();  
    69             }  
    70         }  
    71     }  
    72 }  
    复制代码

    作为玩,还体验了一下javafx.perfect啊。

    复制代码
     1   
     2  /**  
     3  * filename:Star.java  
     4  *  
     5  * CopyRight:  
     6  * Date:2013-8-13  
     7  * Copyright JanneLee Corporation 2013   
     8  * Copyright
     9  * version 1.0 
    10  */
    11 
    12     import javafx.application.Application;
    13     import javafx.scene.Scene;
    14     import javafx.scene.canvas.Canvas;
    15     import javafx.scene.canvas.GraphicsContext;
    16     import javafx.scene.layout.StackPane;
    17     import javafx.scene.paint.Color;
    18     import javafx.stage.Stage;
    19 
    20     public class Star extends Application {
    21 
    22         @Override
    23         public void start(Stage primaryStage) {
    24             int width, height;
    25             Canvas canvas = new Canvas(350, 350);
    26             width = (int) canvas.getWidth();
    27             height = (int) canvas.getHeight();
    28 
    29             GraphicsContext gc = canvas.getGraphicsContext2D();
    30             double x, y, r;
    31             for (int i = 0; i <= 90; i++  ) {
    32                 for (int j = 0; j <= 90; j++  ) {
    33                     //转换为直角坐标系,设置偏移量,使图画居中
    34                     r = Math.PI / 45 * i * (1 - Math.sin(Math.PI / 45 * j)) * 19;
    35                     x = r * Math.cos(Math.PI / 45 * j) * Math.sin(Math.PI / 45 * i)+width / 2;
    36                     y = -r * Math.sin(Math.PI / 45 * j)+height / 4;
    37 
    38                     gc.setFill(Color.RED);
    39                     gc.fillOval(x, y, 2, 2);
    40                     gc.fillOval(x, y, 1, 1);
    41                 }
    42             }
    43 
    44             StackPane root = new StackPane();
    45             root.getChildren().add(canvas);
    46             Scene scene = new Scene(root, Color.BLACK);
    47             System.out.println("r=a(1-sinθ)");
    48             primaryStage.setTitle("情人节快乐!");
    49             primaryStage.setScene(scene);
    50             primaryStage.show();
    51         }
    52 
    53         public static void main(String[] args) {
    54             launch(args);
    55         }
    56     }
    复制代码

     


    作者:Janne Lee 
    邮箱:JanneLeeMAC@gmail.com 
    出处:http://www.cnblogs.com/accipiter/ 
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 
    该文章也同时发布在我的独立博客中-Accipter'blog

  • 相关阅读:
    LeetCode Binary Tree Inorder Traversal
    LeetCode Populating Next Right Pointers in Each Node
    LeetCode Construct Binary Tree from Inorder and Postorder Traversal
    LeetCode Reverse Linked List II
    LeetCode Populating Next Right Pointers in Each Node II
    LeetCode Pascal's Triangle
    Palindrome Construct Binary Tree from Preorder and Inorder Traversal
    Pascal's Triangle II
    LeetCode Word Ladder
    LeetCode Binary Tree Zigzag Level Order Traversal
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/3256830.html
Copyright © 2011-2022 走看看