介绍
two.js是一个前端绘制2d图形的api。可以使用svg,canvas,webgl进行渲染。
基本使用
代码如下:
- <!DOCTYPE html>
 - <html lang="en">
 - <head>
 -     <meta charset="UTF-8">
 -     <title>two.js demo1</title>
 -     <script src = './lib/two.js'></script>
 - </head>
 - <body>
 - <div id="draw-shapes"></div>
 - </body>
 -  
 - <!-- 画基本图形 -->
 - <script type="text/javascript">
 -     function drawImg() {
 -  
 -         let elem = document.getElementById("draw-shapes");
 -         let params = {width: 285, height: 200};
 -         let two = new Two(params).appendTo(elem);
 -  
 -         let circle = two.makeCircle(72, 100, 50);
 -         let rect = two.makeRectangle(213, 100, 100, 100);
 -  
 -         circle.fill = '#FF8000';
 -         circle.stroke = 'orangered';
 -         circle.linewidth = 5;
 -  
 -         rect.fill = 'rgb(0, 200, 255)';
 -         rect.opacity = 0.75;
 -         rect.noStroke();
 -  
 -         two.update();
 -     }
 -  
 -     window.onload=function(){
 -  
 -         drawImg();
 -     }
 - </script>
 -  
 - </html>
 
 
运行截图如下:

代码如下:
- <!DOCTYPE html>
 - <html lang="en">
 - <head>
 -     <meta charset="UTF-8">
 -     <title>two.js demo2</title>
 -     <script src = './lib/two.js'></script>
 - </head>
 - <body>
 - <div id="draw-shapes"></div>
 - </body>
 -  
 - <script type="text/javascript">
 -  
 -     <!-- 图形和组 -->
 -     function drawImg() {
 -  
 -         let elem = document.getElementById("draw-shapes");
 -         let params = {width: 285, height: 200};
 -         let two = new Two(params).appendTo(elem);
 -  
 -         let circle = two.makeCircle(-70, 0, 50);
 -         let rect = two.makeRectangle(70, 0, 100, 100);
 -         circle.fill = '#FF8000';
 -         circle.stroke = 'orangered';
 -         rect.fill = 'rgba(0, 200, 255, 0.75)';
 -         rect.stroke = '#1C75BC';
 -  
 -         let group = two.makeGroup(circle, rect);
 -  
 -         group.translation.set(two.width / 2, two.height / 2);
 -         group.rotate = Math.PI;
 -         group.scale = 0.75;
 -  
 -         group.linewidth = 7;
 -  
 -         two.update();
 -     }
 -  
 -     window.onload=function(){
 -  
 -         drawImg();
 -     }
 - </script>
 -  
 - </html>
 
 
运行截图如下:

代码如下:
- <!DOCTYPE html>
 - <html lang="en">
 - <head>
 -     <meta charset="UTF-8">
 -     <title>two.js demo3</title>
 -     <script src = './lib/two.js'></script>
 - </head>
 - <body>
 - <div id="draw-shapes"></div>
 - </body>
 -  
 - <script type="text/javascript">
 -  
 -     <!-- motion -->
 -     function drawImg() {
 -  
 -         let elem = document.getElementById("draw-shapes");
 -         let params = {width: 285, height: 200};
 -         let two = new Two(params).appendTo(elem);
 -  
 -         let circle = two.makeCircle(-70, 0, 50);
 -         let rect = two.makeRectangle(70, 0, 100, 100);
 -         circle.fill = '#FF8000';
 -         circle.stroke = 'orangered';
 -         rect.fill = 'rgba(0, 200, 255, 0.75)';
 -         rect.stroke = '#1C75BC';
 -  
 -         let group = two.makeGroup(circle, rect);
 -  
 -         group.translation.set(two.width / 2, two.height / 2);
 -         group.rotate = Math.PI;
 -         group.scale = 0;
 -         group.noStroke();
 -  
 -         two.bind('update', function (frameCount) {
 -  
 -             if(group.scale > 0.9999){
 -  
 -                 group.scale = group.rotation = 0;
 -             }
 -  
 -             let t = (1 - group.scale) * 0.125;
 -             group.scale += t;
 -             group.rotation += t * 4 * Math.PI;
 -         }).play();
 -     }
 -  
 -     window.onload=function(){
 -  
 -         drawImg();
 -     }
 - </script>
 -  
 - </html>
 
 
运行截图如下:


                


















