绘制一个自动旋转的彩色圆盘
来源:互联网 发布:2016淘宝节日活动表 编辑:程序博客网 时间:2024/04/29 18:28
public class AnimatePlate extends JFrame{
private static final int DELAY=100;
private int offset;
//窗口的边框
Insets inset;
//颜色数组
Color colors[]={Color.RED,Color.ORANGE,Color.YELLOW,Color.GREEN,Color.BLUE,Color.MAGENTA,Color.CYAN};
//画屏函数
public void paint(Graphics g){
super.paint(g);
if(inset==null){
inset=this.getInsets();
}
int x=inset.left;
int y=inset.top;
int width=this.getWidth()-x-inset.right;
int height=this.getHeight()-y-inset.bottom;
int start=0;
int steps=colors.length;
int stepSize=360/steps;
//如果不能整除,画一周后将会留下一部分区域。
int lack=360%steps;
synchronized (colors) {
for(int i=0;i<steps;i++){
if(lack!=0){
//画最后一块区域,加上少画的角度
if(i==steps-1){
stepSize+=lack;
}
}
int k=(i+offset)%colors.length;
g.setColor(colors[k]);
//画椭圆,前四个参数指定外接矩形,然后起始角度,要填充角度
g.fillArc(x, y, width, height,start, stepSize);
start+=stepSize;
}
}
}
public void start(){
TimerTask task=new TimerTask(){
@Override
public void run() {
offset++;
if(offset>=colors.length){
offset=0;
}
repaint();
}
};
Timer timer=new Timer();
timer.schedule(task, 0, AnimatePlate.DELAY);
}
public static void main(String[] args) {
AnimatePlate frame=new AnimatePlate();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(200, 200);
frame.setVisible(true);
frame.start();
}
}
- 绘制一个自动旋转的彩色圆盘
- 用webgl绘制一个彩色旋转立方体
- 微信小程序例子——使用画布组件绘制一个会自动旋转的正方体
- 43 WebGL绘制一个自动旋转的立方体盒子,点击获取点击位置颜色
- OpenGL:绘制一个旋转的正方形
- 用OpenGL ES绘制一个彩色的三角形
- 自定义逐格走旋转圆盘
- 自定义View______绘制圆盘
- 彩色图像的直方图绘制
- Android 高仿【优酷】圆盘旋转菜单的实现
- Android 高仿【优酷】圆盘旋转菜单的实现(转载)
- Android 高仿【优酷】圆盘旋转菜单 的实现
- Android 高仿【优酷】圆盘旋转菜单 的实现
- Android 高仿【优酷】圆盘旋转菜单的实现 .
- Android 高仿【优酷】圆盘旋转菜单的实现
- Android 高仿【优酷】圆盘旋转菜单的实现
- Android 高仿【优酷】圆盘旋转菜单的实现(转载)
- 关于如何实现圆盘旋转菜单效果的android源代码
- bs系统或网站设计要素碎记
- QtCreator便携增强版,集成Qt4.8和MSVC2010编译器
- nodejs入门
- 多继承时的构造函数调用的顺序
- 传说中的数据结构
- 绘制一个自动旋转的彩色圆盘
- Ubuntu下搭建eclipse C/C++开发环境 [2014-01-16更新]
- Java Collection
- 讨论下Windows平台如何编译Qt5?
- java的exception和error
- android(安卓) 左边图片右边文字的button (按钮)
- Longest Consecutive Sequence
- HDU2710
- PGM格式图像文件读写