zoukankan      html  css  js  c++  java
  • createjs easal.js制作了一个很简单的链路图

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8" />
            <title></title>
        </head>
        <body>
            
            <canvas id="demoCanvas" width="388" height="218" style="background-color: #243356;"></canvas>
            
            <script src="js/lib/jquery-2.1.0.js" type="text/javascript" charset="utf-8"></script>
            <script src="js/lib/easal/lib/easeljs-0.8.2.combined.js" type="text/javascript" charset="utf-8"></script>
            <script type="text/javascript">
                var draw = {};
                (function(){
                    var stage = new createjs.Stage('demoCanvas');
                    
                    //画四方形
                    function drawRect(param){
                        var p = $.extend(true, {
                            x: 0,
                            y: 0,
                             80,
                            height: 20,
                            fill: 'red'
                        }, param);
                        
                        var circle = new createjs.Shape();
                        circle.graphics.beginFill(p.fill).drawRect(p.x,p.y,p.width,p.height);
                        stage.addChild(circle);
                        stage.update();
                    }
                    //画直线
                    function drawLine(param){
                        var p = $.extend(true, {
                            x: 0,
                            y: 0,
                            x1: 10,
                            y1: 10,
                            fill: 'red'
                        } , param);
                        
                        var g= new createjs.Graphics();
                        g.setStrokeStyle(2);
                        g.beginStroke("#7FFF00");
                        //g.beginFill("red");
                        g.moveTo(p.x,p.y).lineTo(p.x1,p.y1);
                        g.endStroke();
                        
                        _drawToCanvas(g);
                    }
                    
                    //文字
                    function write(param){
                        var p = $.extend(true, {
                            x: 0,
                            y: 0,
                            color: "#333",
                            text: ""
                        }, param);
                        var txt = new createjs.Text(p.text , "14px 微软雅黑" , p.color);
                        txt.lineWidth = 150;
                        txt.x = p.x;
                        txt.y = p.y;
                        stage.addChild(txt);
                        stage.update();
                    }
                    
                    function _drawToCanvas(graphics, canvas){
                        canvas = canvas || 'demoCanvas';
                        stage = stage || new createjs.Stage(canvas);
                        
                        var shape = new createjs.Shape(graphics);
                        
                        stage.addChild(shape);
                        
                        stage.update();
                    }
                    
                    draw = {
                        drawRect: drawRect,
                        drawLine: drawLine,
                        write: write
                    }
                })();
                
                draw.drawLine({
                    x: 190,
                    y: 40,
                    x1: 80,
                    y1: 150
                });
                
                draw.drawLine({
                    x: 190,
                    y: 40,
                    x1: 190,
                    y1: 150
                });
                
                draw.drawLine({
                    x: 190,
                    y: 40,
                    x1: 300,
                    y1: 150
                });
                
                draw.drawRect({
                    fill: 'skyblue',
                    x: 150,
                    y: 20
                });
                
                draw.drawRect({
                    fill: 'skyblue',
                    x: 40,
                    y: 150
                });
                
                draw.drawRect({
                    fill: 'skyblue',
                    x: 150,
                    y: 150
                });
                
                draw.drawRect({
                    fill: 'skyblue',
                    x: 260,
                    y: 150
                });
                
                draw.write({
                    text: "宿 迁",
                    x: 175,
                    y: 20
                });
                
                draw.write({
                    text: "移 动",
                    x: 60,
                    y: 150
                });
                
                draw.write({
                    text: "联 通",
                    x: 175,
                    y: 150
                });
                
                draw.write({
                    text: "电 信",
                    x: 285,
                    y: 150
                });
            </script>
        </body>
    </html>

      1 <!DOCTYPE html>
      2 <html>
      3     <head>
      4         <meta charset="utf-8" />
      5         <title></title>
      6     </head>
      7     <body>
      8         
      9         <canvas id="demoCanvas" width="388" height="218" style="background-color: #243356;"></canvas>
     10         
     11         <script src="js/lib/jquery-2.1.0.js" type="text/javascript" charset="utf-8"></script>
     12         <script src="js/lib/easal/lib/easeljs-0.8.2.combined.js" type="text/javascript" charset="utf-8"></script>
     13         <script type="text/javascript">
     14             $(function(){
     15     var draw = {};
     16     (function(){
     17         var stage = new createjs.Stage('demoCanvas');
     18         
     19         //画四方形
     20         function drawRect(param){
     21             var p = $.extend(true, {
     22                 x: 0,
     23                 y: 0,
     24                  80,
     25                 height: 40,
     26                 fill: 'red'
     27             }, param);
     28             
     29             var circle = new createjs.Shape();
     30             circle.graphics.beginFill(p.fill).drawEllipse(p.x,p.y,p.width,p.height);
     31             stage.addChild(circle);
     32             stage.update();
     33         }
     34         //画直线
     35         function drawLine(param){
     36             var p = $.extend(true, {
     37                 x: 0,
     38                 y: 0,
     39                 x1: 10,
     40                 y1: 10,
     41                 fill: 'red'
     42             } , param);
     43             
     44             var g= new createjs.Graphics();
     45             var aaaa = g.setStrokeDash([10,5]);
     46             g.beginStroke("#7FFF00");
     47             //g.beginFill("red");
     48             g.moveTo(p.x,p.y).lineTo(p.x1,p.y1);
     49             g.endStroke();
     50             _drawToCanvas(g);
     51         }
     52         
     53         //文字
     54         function write(param){
     55             var p = $.extend(true, {
     56                 x: 0,
     57                 y: 0,
     58                 color: "#333",
     59                 text: ""
     60             }, param);
     61             var txt = new createjs.Text(p.text , "14px 微软雅黑" , p.color);
     62             txt.lineWidth = 150;
     63             txt.x = p.x;
     64             txt.y = p.y;
     65             stage.addChild(txt);
     66             stage.update();
     67         }
     68         
     69         function _drawToCanvas(graphics){
     70             //canvas = canvas || 'demoCanvas';
     71             stage = stage || new createjs.Stage(canvas);
     72             
     73             var shape = new createjs.Shape(graphics);
     74             
     75             stage.addChild(shape);
     76             var i = 5;
     77             createjs.Ticker.on('tick' , function(){
     78                 i--;
     79                 graphics._strokeDash.offset = i;
     80                 stage.update();
     81             })
     82             stage.update();
     83         }
     84         
     85         draw = {
     86             drawRect: drawRect,
     87             drawLine: drawLine,
     88             write: write
     89         }
     90     })();
     91     
     92     draw.drawLine({
     93         x: 190,
     94         y: 150,
     95         x1: 80,
     96         y1: 40
     97     });
     98     
     99     draw.drawLine({
    100         x: 190,
    101         y: 150,
    102         x1: 190,
    103         y1: 40
    104     });
    105     
    106     draw.drawLine({
    107         x: 190,
    108         y: 150,
    109         x1: 300,
    110         y1: 40
    111     });
    112     
    113     draw.drawRect({
    114         fill: 'skyblue',
    115         x: 150,
    116         y: 150
    117     });
    118     
    119     draw.drawRect({
    120         fill: '#007FCC',
    121         x: 40,
    122         y: 20
    123     });
    124     
    125     draw.drawRect({
    126         fill: '#DA0009',
    127         x: 150,
    128         y: 20
    129     });
    130     
    131     draw.drawRect({
    132         fill: '#7DB926',
    133         x: 260,
    134         y: 20
    135     });
    136     
    137     draw.write({
    138         text: "宿 迁",
    139         x: 175,
    140         y: 160
    141     });
    142     
    143     draw.write({
    144         text: "移 动",
    145         x: 60,
    146         y: 30
    147     });
    148     
    149     draw.write({
    150         text: "联 通",
    151         x: 175,
    152         y: 30
    153     });
    154     
    155     draw.write({
    156         text: "电 信",
    157         x: 285,
    158         y: 30
    159     });
    160 });
    161 
    162         </script>
    163     </body>
    164 </html>

    增加了动态效果

  • 相关阅读:
    启动matlab时总是直接跳转到安装界面的解决方案
    毕业倒计时
    PARAMETER和ARGUMENT的区别
    在Windows上使用Ubuntu共享的打印机
    Ubuntu 16.04 + CUDA 8.0 + cuDNN v5.1 + TensorFlow(GPU support)安装配置详解
    深度学习硬件购买指南
    GeForce GTX 1080 ti安装记录
    What is a TensorFlow Session?
    来来来,干了这碗毒鸡汤……
    [译] 理解 LSTM(Long Short-Term Memory, LSTM) 网络
  • 原文地址:https://www.cnblogs.com/xudy/p/6118500.html
Copyright © 2011-2022 走看看