two.js 是面向现代 web 浏览器的一个二维绘图 api。two.js 可以用于多个场合:svg,canvas 和 webgl,旨在使平面形状和动画的创建更方便,更简洁。本文主要介绍了基于two.js实现=星球环绕动画效果的示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望能帮助到大家。
two.js 有一个内置的动画循环,可搭配其他动画库。two.js 包含可伸缩矢量图形解释器,这意味着开发人员和设计人员都可以在商业应用中,如 adobe illustrator 中创建 svg 元素,并把它引入 two.js 使用场景中。
效果如下:
下面是核心js code html就不贴了,需要引入two.js文件:
var elem = document.getelementbyid('draw-animation');
var two = new two({ width: 700, height: 700 }).appendto(elem);
//外层大运行轨迹
var track = two.makecircle(0, 0, 200);
track.fill='transparent';
track.stroke='#3366ff';
track.linewidth=3;
//sun
var sun = two.makecircle(0,0,80);
sun.fill='#ff8000';
sun.stroke='#ff0000';
sun.linewidth=5;
//earth
var earth = two.makecircle(0,0,50);
earth.fill='#9acd32';
//moon
var moon = two.makecircle(100,0,30);
moon.fill='#1c75bc';
//inline 小的运行轨迹
var inline = two.makecircle(0,0,100);
inline.stroke='#3366ff';
inline.fill='transparent';
inline.linewidth=3;
//group 分组 一类型为一组
var group = two.makegroup(inline,earth,moon);
console.dir(group);
var group1 = two.makegroup(sun,track,group);
group1.translation.set(two.width / 2, two.height / 2); //平移(x,y)父元素的一半
group.translation.set(200, 0);
group.scale = 0.8; //比例
two.bind('update', function(framecount) {//执行动画
group1.rotation += 0.01 *2* math.pi;
group.rotation += 0.01 * math.pi;
}).play();
相关推荐:
javascript canvas实现旋转动画
jquery鼠标悬停内容动画切换效果实现代码
jquery模拟天猫购物车动画效果实例分享
以上就是two.js实现星球环绕动画效果的详细内容。