canvas学习之初始化第一档填充圆

本文介绍了如何在HTML5中使用Canvas元素进行2D绘图,包括获取Canvas上下文、设置填充颜色、绘制圆形以及填充规则。示例代码演示了创建一个红色填充的圆形,并解释了beginPath(),arc()和fill()等关键方法的用途。此外,文章还提及了非零规则在填充路径中的应用。
摘要由CSDN通过智能技术生成

创建canvas

咱们就直接上代码吧

<body>
    <!-- 增加一个canvas标签,height和width都是canvas带有的属性,这里他们不需要带有px -->
    <canvas height="200" width="400" style="background:green;"></canvas>
</body>
<script>
    const canvas = document.querySelector('canvas') //获取canvas标签
    const context = canvas.getContext('2d') // getContext(value) 他的value可以有多种类,目前使用2d,也就是平面画图
    // 以上代码,我们就成功获取了一个canvas
<script>

getContex(value)
value:

  1. ‘2d’ 简单来说就是我们可以创建一个平面模型,此参数可以返回一个WebGLRenderingContext(WebGL渲染上下文)对象
  2. ‘webgl’ 或 ‘experimental-webgl‘ ,此参数可以返回一个WebGLRenderingContext(WebGL渲染上下文)对象, WebGL(全写Web Graphics Library)是一种3D绘图协议,说白了就是让我们在浏览器中绘制3d模型,这个东西我感觉咱们可以直接去看three.js了
    3.‘webgl2’,此参数可以返回一个webGL2RenderingContext对象,可以用来绘制三维3D效果跟上面一样只不过就是升级过的版本
    4.’bitmaprenderer’,创建一个ImageBitmapRenderingContext(位图渲染上下文),可以借助给定的ImageBitmap替换Canavs的内容。
2d模型的构建

上面都是概念性的东西,我们主要已2d为主,学会2d再说其他的
首先我们完成一个圆形的绘制(颜色填充所形成的圆)

const minRaduis = Math.min(canvas.width,canvas.height)/2//获取最大半径
context.fillStyle = 'red' //设置填充的颜色
context.beginPath() // 开始绘制
context.arc(canvas.width/2,canvas.height/2,minRaduis,0,Math.PI/2) //圆的绘制
context.fill() // 对设置的颜色进行填充

我们上面用到了

  1. beginPath()方法,简单理解就是重新开始一个新的图形的绘制
  2. arc()方法,圆弧绘制方法,形成圆的方法
  3. fiil()方法,路径填充的方法。

1.fill(fillRule填充规则,用来确定一个点实在路径内还是路径外。
2.fill(path,fillRule),path指path2d对象
fillRule: 1.nonzero(非零规则)2. nonzero(奇偶规则)

nonzero规则:顾名思意就是“非零规则”,用通俗的话讲,就算计算某些东西是不是0,如果不是0则内部,填充;如果是0则外部,不填充。

nonzero规则:顾名思意就是“非零规则”,用通俗的话讲,就算计算某些东西是不是0,如果不是0则内部,填充;如果是0则外部,不填充。

可以通过另一篇文章搞清楚填充规则-》点击此处进入另一篇,我是看了两遍才明白。

那么一个简单的填充圆就完成了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值