• canvas--贝塞尔曲线


    ---动画实现贝塞尔曲线---

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
    </head>
    <style>
        div{
             50px;
            height: 50px;
            background: purple;
            position: absolute;
            top: 0px;
            left: 0px;
            animation-name: sport;
            animation-duration: 5s;
            animation-timing-function: cubic-bezier(.17,.67,1,-0.04) /* 三次贝塞尔曲线 */ 
        }
        @keyframes sport{
            from{
                top: 0px;
                left: 0px;
            }
            to{
                top: 600px;
                left: 600px;
            }
        }
    </style>
    <body>
        <!-- 7day -->
        <!-- 实例网址https://cubic-bezier.com/ -->
        <div></div>
    </body>
    </html>
    

     ------二次贝塞曲线 ------

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
        <style>
            canvas{
                border: 1px dashed gray;
            }
        </style>
        <script type="text/javascript">
            window.onload = function() {
                // 绘制二次贝塞尔曲线
                // 格式:ctx.quadraticCurveTo(cx,cy,x2,y2);
                // 得到canvas对象
                var oCanvas = document.getElementById("canvas");
                if(oCanvas.getContext){
                    // 得到2d上下文
                    var oContext = oCanvas.getContext("2d")
                    // 绘制
                    // 开始点
                    oContext.moveTo(150,150);
                    oContext.quadraticCurveTo(300,150,400,400);
                    oContext.strokeStyle = 'green';
                    // 描边路径
                    oContext.stroke()
                }
            }
        </script>
    </head>
    <body>
        <!-- 实例网址 -->
        <!-- http://blogs.sitepointstatic.com/examples/tech/canvas-curves/quadratic-curve.html -->
        <canvas id="canvas" width="600" height="600"></canvas>
    </body>
    </html>
    

      

    ----三次贝塞尔曲线---

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
        <style>
            canvas{
                border: 1px dashed gray;
            }
        </style>
        <script>
            window.onload = function(){
                // 绘制三次贝塞尔曲线
                // 格式:ctx.bezierCurveTo(ct1,cy1,cx2,cy2,x,y);
                var oCanvas = document.getElementById("canvas");
                if(oCanvas.getContext){
                    var oContext = oCanvas.getContext("2d");
                    // 开始绘制路径
                    oContext.beginPath();
                    // 起始点
                    oContext.moveTo(200,200);
                    // 绘制三次贝塞尔曲线
                    oContext.bezierCurveTo(300,200,350,250,500,500);
                    // 描边路径
                    oContext.stroke();
                }
            }
        </script>
    </head>
    <body>
        <!-- 有两个控制点 -->
        <canvas id="canvas" width="600" height="600"></canvas>
    </body>
    </html>
    

      

  • 相关阅读:
    session
    php增删改查,分页
    sql题
    php简单的数据增删改查
    php简单登录注册验证
    js题
    jQHTML(获取内容和属性)
    jQ效果(动画)
    Codeforces Round #460 (Div. 2): D. Substring(DAG+DP+判环)
    POJ 2891 中国剩余定理(不互素)
  • 原文地址:https://www.cnblogs.com/fdxjava/p/13961649.html
Copyright © 2020-2023  润新知