canvas中手动绘制椭圆的方法

讲解:canvas手动绘制椭圆是通过两点进行绘制,相当于绘制一个矩形,然后它的内切椭圆(已知起点和终 点)。假设起点为(bx,by)终点为(ex,ey)
(1)椭圆半轴(下面会用到此参数):

var axisx = Math.abs((ex- bx)/2);  //半轴是自然数,所以加了绝对值
var axisy = Math.abs((ey-by)/2);

(2)椭圆中心点(下面会用到此参数):

var centerx = axisx+Math.min(bx,ex);
var centery = axisy+Math.min(by,ey);

具体方法
1.canvas自带的绘制椭圆方法:ellipse(x, y, radiusX, radiusY, rotation, startAngle, endAngle, anticlockwise)参数的意思ellipse(椭圆中心点的x值,椭圆中心点的y值,半径x,半径y,旋转角度,起始角,结束角,顺时针还是逆时针),其中顺时针还是逆时针可以不写。

function drawellipse(bx,by,ex,ey){  var canvas = document.getElementById("canvas");var  ctx=canvas.getContext('2d')           ctx.beginPath();  //开始绘制            ctx.lineWidth =2; // 可以设置椭圆线的宽度            ctx.ellipse(centerx,centery,axisx,axisy,0,0,2*Math.PI);            ctx_anno.strokeStyle = "#07F407";  //设置椭圆线的颜色            ctx.stroke();}

2.参数方程法

 function drawellipse(bx,by,ex,ey){     var canvas = document.getElementById("canvas");var  ctx=canvas.getContext('2d')        var step = (axisx>axisy)?1/axisx:1/axisy; // 每次循环绘制step,使得每次循环所绘制的路径(弧线)接近1像素          ctx.beginPath();            ctx.moveTo(centerx+axisx,centery);         for(var i=0;i<2*Math.PI;i+=step){             ctx.lineTo(centerx+axisx*Math.cos(i),centery+axisy*Math.sin(i)); //数方程为x = a * cos(i), y = b * sin(i),i表示弧度          } ctx.closePath(); ctx.stroke();}

canvas中手动绘制椭圆的方法相关推荐

  1. Windows XP中手动安装驱动程序的方法

    Windows XP中手动安装驱动程序的方法 参考网址:https://jingyan.baidu.com/article/cdddd41c44cb1b53ca00e15f.html 今天小编教大家如 ...

  2. cad绘制椭圆的方法有几种_你还在头疼CAD系统变量如何设置?这些你知道几个吗?...

    CAD有很多系统变量有些是默认的有些是需要我们自己设置的这样也是为了方便.系统变量是由操作系统定义的数据存储位置,无论谁登录该计算机,该位置都相同组的用户可以添加新的变量或更改这些值.cad系统变量c ...

  3. cad绘制椭圆的方法有几种_CAD新手入门教学:如何绘制矩形?

    各位热爱CAD的知友们,图图开了一个[电脑版的CAD教程]合辑,以后每周五给大家分享CAD教程啦,记得一定要来看呀!(仅为新手教学,大佬看见可直接说出更简易操作) 其实绘制矩形在CAD中来说,真的是一 ...

  4. html5 clip,canvas中使用clip()函数裁剪方法

    未使用裁剪绘制一个圆 *{margin:0;padding:0;} html,body{width:100%;height:100%;overflow:hidden;background-color: ...

  5. 第162天:canvas中Konva库的使用方法

    本篇接着上一篇:第157天:帆布知识基础详解  继续来写. 五,Konva的使用快速上手 5.1 Konva的整体理念 阶段 | + ------ + ------ + | | 图层 | | + -- ...

  6. html5绘制矩形动画,HTML5 Canvas中绘制矩形实例

    本文翻译自Steve Fulton & Jeff Fulton HTML5 Canvas, Chapter 2, "The Basic Rectangle Shape". ...

  7. html5画椭圆的完整代码,HTML5 Canvas中绘制椭圆的4种方法

    概述 HTML5中的Canvas并没有直接提供绘制椭圆的方法,下面是对几种绘制方法的总结.各种方法各有优缺,视情况选用.各方法的参数相同: 1.context为Canvas的2D绘图环境对象, 2.x ...

  8. html如何画出四个圆圈,HTML5 Canvas中绘制椭圆的4种方法

    概述 HTML5中的Canvas并没有直接提供绘制椭圆的方法,下面是对几种绘制方法的总结.各种方法各有优缺,视情况选用.各方法的参数相同: 1.context为Canvas的2D绘图环境对象, 2.x ...

  9. html5 canvas 椭圆,html5中怎么利用Canvas绘制椭圆

    html5中怎么利用Canvas绘制椭圆 发布时间:2021-07-08 16:32:10 来源:亿速云 阅读:58 作者:Leah html5中怎么利用Canvas绘制椭圆,针对这个问题,这篇文章详 ...

  10. html5画布椭圆,在html5的Canvas上绘制椭圆的几种方法总结

    概述 HTML5中的Canvas并没有直接提供绘制椭圆的方法,下面是对几种绘制方法的总结.各种方法各有优缺,视情况选用.各方法的参数相同: context为Canvas的2D绘图环境对象, x为椭圆中 ...

最新文章

  1. ref和out的区别
  2. 当下火热的大数据视频,免费送(含源码)
  3. Asp.net单点登录解决方案
  4. 2009年的强悍流行语~
  5. Swift 十进制二进制转换 (How to convert a decimal number to binary in Swift)
  6. centos出现磁盘坏道,怎么检索和修复
  7. ​​使用win7超级终端连接华为交换机并配置端口镜像
  8. js与php时间戳,js时间戳与日期格式之间的互转
  9. 树 | 突然间,看了这篇文章,树我懂了!
  10. Debian Linux下的Python学习——入门
  11. Entity Framework安装方法
  12. Linux 的 ‘sort’命令的14个有用的范例(一)
  13. 计算机电源分金牌,机·科普贴:电脑电源金、银、铜牌到底是什么意思?
  14. 硬盘播放器和pc计算机,电脑可不可以用来当电影播放器用
  15. Linux进程管理软件supervisord使用心得
  16. 无人驾驶—激光雷达与相机
  17. there is no source code available for the current location 解决方法
  18. Shell Perl Python 脚本语言介绍
  19. linux在u盘中运行,在U盘中直接运行Linux的详细步骤
  20. 钉钉开放平台API对接第一讲

热门文章

  1. 加州大学戴维斯计算机博士生,加州大学戴维斯分校计算机排名及研究生申请条件是什么...
  2. 拜腾“难”飞:全球化饮鸩止渴?
  3. 谷歌gmail注册入口_将Gmail设置为Google Chrome中mailto链接的默认应用程序
  4. scp 给ipv6_scp传输常用命令
  5. c语言中primesum函数,c语言之函数
  6. PYTHON 用几何布朗运动模型和蒙特卡罗MONTE CARLO随机过程模拟股票价格可视化分析耐克NKE股价时间序列数据...
  7. Python—Pytest+Allure定制报告
  8. 分享老齐【学方法】宽信用周期对股市的影响!
  9. 机顶盒利旧改造,实现安卓和Linux双系统启动
  10. centos7 开机自动启动程序