まずハート型のパターンを作成し、作成した文字列をハート型の位置と長さに応じて切り詰めて、必要な位置に出力します。 , we can たくさんの愛が画面に現れます。
(推奨チュートリアル: java 入門チュートリアル )
実装コード:
package ddd; import java.awt.*; import javax.swing.JFrame; public class Cardioid extends JFrame { //获取屏幕大小 private static final int WIDTH = 500; private static final int HEIGHT = 500; private static int WINDOW_WIDTH = Toolkit.getDefaultToolkit().getScreenSize().width; private static int WINDOW_HEIGHT = Toolkit.getDefaultToolkit().getScreenSize().height; public Cardioid(){ super("I love you");//设置窗口标题 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 = -2; i < 90; i++) { for (int j = -2; j < 90; 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/3; 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(); } }
(推奨学習ビデオ: java コース )
達成効果:
以上がJava が中国のバレンタインデーの告白アーティファクトを実装の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。