码迷,mamicode.com
首页 > 其他好文 > 详细

怎样绘制一个与两条直线相切的圆弧

时间:2019-09-23 13:40:30      阅读:374      评论:0      收藏:0      [点我收藏+]

标签:doctype   var   set   back   rect   script   height   div   turn   

需要使用ctx.arcTo(), 参数是两个控制点的坐标, 比如下面的例子: 

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>

<body>
    <canvas id="canv" width="300" height="300"></canvas>
    <script>
        function draw() {
            var canvas = document.getElementById(canv);
            if (!canvas.getContext) return;
            var ctx = canvas.getContext("2d");
            ctx.beginPath();
            ctx.moveTo(50, 50);
            //参数1、2:控制点1坐标   参数3、4:控制点2坐标  参数4:圆弧半径
            ctx.arcTo(200, 50, 200, 200, 140);
            ctx.lineTo(200, 200)
            ctx.stroke();

            // 绘制控制点
            ctx.beginPath();
            ctx.rect(50, 50, 5, 5);
            ctx.rect(200, 50, 5, 5)
            ctx.rect(200, 200, 5, 5)
            ctx.fill();
        }
        draw();
    </script>
</body>

</html>

 

技术图片

 

注意: 

1. ctx.arcTo() 可以绘制与两条直线相切的圆弧;

2. ctx.rect() 可以绘制闭合的矩形; 

function draw() {
    var canvas = document.getElementById(‘canv‘);
    if (!canvas.getContext) return;
    var ctx = canvas.getContext("2d");
    ctx.beginPath();
    ctx.rect(100, 100, 100, 50);
    ctx.stroke();
}
draw();

技术图片

 

怎样绘制一个与两条直线相切的圆弧

标签:doctype   var   set   back   rect   script   height   div   turn   

原文地址:https://www.cnblogs.com/aisowe/p/11571801.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!