看着挺好玩的,是一圈旋转的五角星,而且隐藏再出现时颜色会发生变化,hoho~
//we can see that the packages sort in alphabetically order automatically
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.geom.GeneralPath;
import javax.swing.JFrame;
public class generalPath extends JFrame{
//constructor
generalPath(){
//call the super constructor
super("generalPath display written by lwfcgz@csdn");
setSize(500,600);
setVisible(true);
}
//paint every time the window has the focus
public void paint(Graphics g){
//call the super constructor
super.paint(g);
//use two arrays to record the path trace
int xValues[]={55,67,109,73,83,55,27,37,1,43};
int yValues[]={0,36,36,54,96,72,96,54,36,36};
Graphics2D g2d=(Graphics2D) g;
GeneralPath gen=new GeneralPath();
gen.moveTo(xValues[0], yValues[0]);
//generate the general path required for drawing the Graphics
for(int i=1;i<xValues.length;i++){
gen.lineTo(xValues[i], yValues[i]);
}
//to generate a close figure
gen.closePath();
g2d.translate(200, 200);
for(int i=1;i<=20;i++){
//rotate a certain angle every time
g2d.rotate(Math.PI/10);
g2d.setColor(new Color( (int)(Math.random()*255),
(int)(Math.random()*255),
(int)(Math.random()*255)) );
g2d.fill(gen);
}
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
generalPath path=new generalPath();
path.setDefaultCloseOperation(EXIT_ON_CLOSE);
}
}