java语言动画模拟_java swing动画模拟太阳系行星运行动画特效
package cn.xia.solar;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Image;
import cn.xia.util.GameUtil;
public class Planet extends Star{
//除了图片坐标 行星沿着某个椭圆运行:长轴,短轴,速度,角度; 绕着某个Star.
double longAxis;
double shortAxis;
double speed;
double degree;
Star center;
boolean satellite;
public Planet(Star center,String imgpath, double longAxis, double shortAxis, double speed,boolean satellite) {
this(center, imgpath, longAxis, shortAxis, speed);
this.satellite = satellite;
}
public Planet(Star center,String imgpath, double longAxis, double shortAxis, double speed) {
super(GameUtil.getImage(imgpath));
this.center = center;
this.x=center.x+longAxis;
this.y=center.y;
this.longAxis = longAxis;
this.shortAxis = shortAxis;
this.speed = speed;
this.width = img.getWidth(null);
this.height = img.getHeight(null);
}
public void draw(Graphics g){
//g.drawImage(img,(int)x,(int)y,null);
super.draw(g);
//沿着椭圆轨迹飞行
if(!satellite){
//drawTrace(g);
}
move();
}
public void move(){
x=(center.x+15) + longAxis*Math.cos(degree);
y=(center.y+15) + shortAxis*Math.sin(degree);
degree +=speed;
}
public void drawTrace(Graphics g){
double ovalX,ovalY,ovalWidth,ovalHeigth;
ovalWidth=longAxis*2;
ovalHeigth= shortAxis*2;
ovalX=center.x-longAxis+15;
ovalY=center.y-shortAxis+15;
Color c = g.getColor();
g.setColor(Color.blue);
g.drawOval((int)ovalX, (int)ovalY, (int)ovalWidth, (int)ovalHeigth);
g.setColor(c);
}
public Planet(String imgpath, double x, double y) {
super(imgpath, x, y);
}
public Planet(Image img, double x, double y) {
super(img, x, y);
}
}
java语言动画模拟_java swing动画模拟太阳系行星运行动画特效相关推荐
- html+div+动画效果,html+css3太阳系行星运转动画效果的实现代码
原标题:html+css3太阳系行星运转动画效果的实现代码 做一个太阳系八大行星的运转动画,不包括行星的卫星,所有行星围绕太阳公转,行星采用纯色,暂时没有自转. 效果静态图: 动画中包括:太阳及各行星 ...
- 实现太阳系行星公转动画实例(CSS+HTML5 源码)
实现太阳系行星公转动画实例(CSS+HTML5 源码) 效果图 源代码(CSS+HTML5) 效果图 源代码(CSS+HTML5) <html> <head> <styl ...
- java心形动画效果_java swing实现动态心形图案的代码下载
package com.zuidaima.swing; import java.awt.Color; import java.awt.Graphics; import java.awt.Image; ...
- 基于Java语言双色球摇奖过程的模拟实现
作者 | 顾北 对这个世界充满向往的理想主义者 基于JAVA语言编写,模拟实现双色球摇奖器摇奖过程,产生的有效号码与用户输入的有效号码对比,输出用户的中奖情况. 用户首先输入自己购买的双色球号码(其中 ...
- Java语言特点可移植性_Java 语言具有很多优势和特点,以下()特点能保证软件的可移植性。...
Java 语言具有很多优势和特点,以下()特点能保证软件的可移植性. 更多相关问题 We are always advised that ______________________(从书本汲取知识的 ...
- java语言环境变量_JAVA语言环境变量的设置教程
本文主要向大家介绍了JAVA语言环境变量的设置教程,通过具体的内容向大家展示,希望对大家学习JAVA语言有所帮助. 安装JDK到目录,我这里是C:\Java 右键点击计算机属性 在系统变量里面建 JA ...
- java语言提供结构_java学习之语句结构
在java语言当中存在4中语句结构,分别是: 1.顺序结构 2.判断结构 3.选择结构 4.循环结构 一.顺序结构: 所谓的顺序结构,也就是当不指定其他三种语句结构的情况下,语句是从上往下依次执行的, ...
- java语言编程基础_Java编程基础02——Java语言基础
1_(常量的概述和使用)* A:什么是常量(constant) 在程序执行的过程中其值不可以发生改变 B:Java中常量的分类 字面值常量 自定义常量(面向对象部分讲) C:字面值常量的分类 字符串常 ...
- java语言程序设计一_java语言程序设计(一)-1
java 语言的特点是: 强类型,制定了比较多的语言规范,尽可能在编译阶段检测出更多的错误及警告. 编译和解释,首先将源代码编译成codebyte,运行时,java的运行系统装载和链接需要执行的类,并 ...
最新文章
- iPhone12机型判断
- Simulink仿真 第五节 复用器和分路器
- C++ Primer 5th笔记(chap 17 标准库特殊设施)匹配标志
- FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory
- python 梯度下降_Python解释的闭合形式和梯度下降回归
- exchange java对象,【原】Java并发程序的一个应用Exchanger的实例
- Linux: 举例说明Linux diff 命令
- C++学习 ---- 系列文章
- [置顶] 怎么对待重复的代码
- golang基本语法——变量使用详解
- centos安装Gitlab Runner
- C#做小工具的时候碰到的问题
- Three.js杂记(十一)—— 精灵与粒子(绘制中国地图)
- Vue中动态切换组件
- C#编程,无损压缩图片的一种方法
- 6条开会清单,教你组织一场高效会议!
- 设计模式——策略模式
- ListView 实现阻尼回弹效果 并去除边缘阴影
- PyTorch—torch.utils.data.DataLoader 数据加载类
- h3c查看光纤光功率