<!doctype html><html><head><title>canvas太阳系</title><meta charset='utf-8'></head><body><canvas width='1000' height='1000' style='background:#000' id='canvas'>您的浏览器不支持HTML5 canvas,无法查看canvas效果</canvas><script type="text/javascript">//获取canvas绘图环境var context = document.getElementById('canvas').getContext('2d');var time = 0;//星球轨道function drawTrack(){for(var i = 0; i < 8; i ){//开始路径context.beginPath();context.arc(500,500,(i 1)*50,0,360,false);//关闭路径context.closePath();context.strokeStyle = '#fff';context.stroke();}}//执行以下此函数,画出各星球的轨道drawTrack();//星球 星球对象的构造方法 实例化后能画出所有的星球function Star(x,y,radius,sColor,eColor,cycle){//星球需要的哪些属性//星球的坐标点this.x = x;this.y = y;//星球的半径this.radius = radius;//星球的颜色this.sColor = sColor;this.eColor = eColor;//公转周期this.cycle = cycle;//绘画出星球this.draw = function(){ //异次元空间进行绘画context.save();//重设0,0坐标点context.translate(500,500);//设置旋转角度context.rotate(time*360/this.cycle*Math.PI/180);context.beginPath();context.arc(this.x,this.y,this.radius,0,360,false);context.closePath();//星球的填充色(径向渐变 开始色和结束色)this.color = context.createRadialGradient(this.x,this.y,0,this.x,this.y,this.radius);this.color.addColorStop(0,this.sColor);this.color.addColorStop(1,this.eColor);context.fillStyle = this.color;context.fill();context.restore();time =1;}}//各星球构造方法 从star中继承function Sun(){Star.call(this,0,0,20,'#f00','#f90',0);}function Mercury(){Star.call(this,0,-50,10,'#A69697','#5C3E40',87.70);}function Venus(){Star.call(this,0,-100,10,'#C4BBAC','#1F1315',224.701);}function Earth(){Star.call(this,0,-150,10,'#78B1E8','#050C12',365.2422);}function Mars(){Star.call(this,0,-200,10,'#CEC9B6','#76422D',686.98);}function Jupiter(){Star.call(this,0,-250,10,'#C0A48E','#322222',4332.589);}function Saturn(){Star.call(this,0,-300,10,'#F7F9E3','#5C4533',10759.5);}function Uranus(){Star.call(this,0,-350,10,'#A7E1E5','#19243A',30799.095);}function Neptune(){Star.call(this,0,-400,10,'#0661B2','#1E3B73',164.8*365);}//各星球对象的实例化var sun = new Sun();var water = new Mercury();var gold = new Venus();var diqiu = new Earth();var fire = new Mars();var wood = new Jupiter();var soil = new Saturn();var sky = new Uranus();var sea = new Neptune();function move(){//清除画布context.clearRect(0,0,1000,1000);//重新绘制一遍轨道drawTrack();sun.draw();water.draw();gold.draw();diqiu.draw();fire.draw();wood.draw();soil.draw();sky.draw();sea.draw();}//星球围绕太阳运动起来setInterval(move,100);</script></body></html>
下载html5实现太阳系转动效果用户还喜欢
- 18480 文章数
- 500万+ 热度
作者专栏
编辑推荐
- 淡抹u2引擎,修复内容较多,物有所值
- 界域传说·经典巨作=传世单机(一键安装)
- 丸子版本(175个传世版本大集合)
- GS版本:神话公益服务端+客户端
- 图片放大工具(放大图片不模糊)
- 剪映无限制VIP版
- 传奇世界客户端下载器,史上最全传世客户端
- 传世GS20220920商业引擎注册+登录配置器 解压密码是1
- U2官方排行榜游戏网关 支持元神,支持传家宝
- GS开战传世客户端+服务端
- (淡漠夕阳)u2引擎合区工具
- 传世GS引擎消除“你的游戏客户端版本号过旧,请及时更新”提示
- 传世一机多区双线路配置器--免密码版本
- 传世凤凰登陆器劫持修复软件
- SQLite3 for Navicat
- 传奇世界npc对话框编辑工具
- 传世GS落霞铭文服务器端
- gs_20210409引擎包+注册机(无限制)
- 传奇世界NPC对话封包查看器[支持时长版和极速版]
- 彩虹引擎传世脚本编辑工具1.7版来了,支持函数脚本翻译
评论