当前位置:网站首页>Canvas foundation 2 - arc - draw arc
Canvas foundation 2 - arc - draw arc
2022-07-06 13:50:00 【Ling Xiaoding】
List of articles
This article is about canvas Basics 2 - arc - Draw arc , Easy to understand , Xiaobai has no trouble , According to MOOCS liuyubobobo The teacher's video lesson learning and sorting
Video lesson guide : For class network liuyubobobo teacher Gorgeous countdown effect Canvas Fundamentals of drawing and animation
List of articles
1、arc Method to draw an arc
context.arc( The coordinates of the center of the circle x, The coordinates of the center of the circle y, Radius value , Which radian value to start from , End arc , Whether the radian is clockwise or counterclockwise defaults false For clockwise )
startingAngleandendingAngleexplain
2、 A circle
- Draw a circle clockwise
<canvas id="canvas" style="background-color: rgb(200,200,200);display: block;margin: 20px auto;">
The current browser does not support canvas, Please change your browser and try again
</canvas>
<script> var canvas = document.getElementById('canvas') canvas.width = 1024 canvas.height = 768 if (canvas.getContext('2d')) {
var context = canvas.getContext('2d') context.lineWidth = 5 context.strokeStyle = '#005588' context.arc(300, 300, 200, 0, 1.5 * Math.PI) context.stroke() } </script>

2. Draw a circle counterclockwise
<canvas id="canvas" style="background-color: rgb(200,200,200);display: block;margin: 20px auto;">
The current browser does not support canvas, Please change your browser and try again
</canvas>
<script> var canvas = document.getElementById('canvas') canvas.width = 1024 canvas.height = 768 if (canvas.getContext('2d')) {
var context = canvas.getContext('2d') context.lineWidth = 5 context.strokeStyle = '#005588' context.arc(300, 300, 200, 0, 1.5 * Math.PI, true) context.stroke() } </script>

3、closePath characteristic
closePath Represents the end of this path , If the current path is not closed , Will automatically close this path 

4、2048 The board demo
<canvas id="canvas" width="800" height="800" style="display: block; background-color: #eee;margin: 10px auto;">
Out of commission canvas
</canvas>
<script> window.onload = function () {
var canvas = document.getElementById('canvas') var context = canvas.getContext('2d') // drawRoundRect(context, 10, 10, 600, 500, 50) // fillRoundRect(context, 50, 50, 600, 500, 50, '#500') fillRoundRect(context, 150, 150, 500, 500, 10, '#bbada0') for (var i = 0; i < 4; i++) for (var j = 0; j < 4; j++) fillRoundRect(context, 170 + i * 120, 170 + j * 120, 100, 100, 6, '#ccc0b3') } function drawRoundRect(cxt, x, y, width, height, radius) {
if (2 * radius > width || 2 * radius > height) return; cxt.save() cxt.translate(x, y) pathRoundRect(cxt, width, height, radius) cxt.strokeStyle = '#000' cxt.stroke() cxt.restore() } function fillRoundRect(cxt, x, y, width, height, radius, fillColor) {
if (2 * radius > width || 2 * radius > height) return; cxt.save() cxt.translate(x, y) pathRoundRect(cxt, width, height, radius) cxt.fillStyle = fillColor || '#000' cxt.fill() cxt.restore() } function pathRoundRect(cxt, width, height, radius) {
cxt.beginPath() cxt.arc(width - radius, height - radius, radius, 0, Math.PI / 2) cxt.lineTo(radius, height) cxt.arc(radius, height - radius, radius, Math.PI / 2, Math.PI) cxt.lineTo(0, radius) cxt.arc(radius, radius, radius, Math.PI, Math.PI * 3 / 2) cxt.lineTo(width - radius, 0) cxt.arc(width - radius, radius, radius, Math.PI * 3 / 2, Math.PI * 2) cxt.closePath() } </script>
summary
This paper is about canvas In the second quarter , After that, it will continue to update , If you feel it is still practical , It's OK to follow or like , Thank you very much!
边栏推荐
- 2.初识C语言(2)
- ArrayList的自动扩容机制实现原理
- Aurora system model of learning database
- 【九阳神功】2021复旦大学应用统计真题+解析
- 【九阳神功】2022复旦大学应用统计真题+解析
- FAQs and answers to the imitation Niuke technology blog project (II)
- Detailed explanation of redis' distributed lock principle
- 简单理解ES6的Promise
- Pit avoidance Guide: Thirteen characteristics of garbage NFT project
- 【数据库 三大范式】一看就懂
猜你喜欢

FAQs and answers to the imitation Niuke technology blog project (II)

C language Getting Started Guide
![[during the interview] - how can I explain the mechanism of TCP to achieve reliable transmission](/img/d6/109042b77de2f3cfbf866b24e89a45.png)
[during the interview] - how can I explain the mechanism of TCP to achieve reliable transmission

canvas基础1 - 画直线(通俗易懂)

实验六 继承和多态

Mortal immortal cultivation pointer-1

SRC mining ideas and methods

6. Function recursion

3.输入和输出函数(printf、scanf、getchar和putchar)

4. Binary search
随机推荐
5. Download and use of MSDN
【手撕代码】单例模式及生产者/消费者模式
[the Nine Yang Manual] 2020 Fudan University Applied Statistics real problem + analysis
FAQs and answers to the imitation Niuke technology blog project (III)
Miscellaneous talk on May 14
重载和重写的区别
C language to achieve mine sweeping game (full version)
C language Getting Started Guide
Have you encountered ABA problems? Let's talk about the following in detail, how to avoid ABA problems
[modern Chinese history] Chapter 9 test
The difference between cookies and sessions
1. Preliminary exercises of C language (1)
Write a program to simulate the traffic lights in real life.
[the Nine Yang Manual] 2017 Fudan University Applied Statistics real problem + analysis
2. C language matrix multiplication
1. First knowledge of C language (1)
[dark horse morning post] Shanghai Municipal Bureau of supervision responded that Zhong Xue had a high fever and did not melt; Michael admitted that two batches of pure milk were unqualified; Wechat i
3.输入和输出函数(printf、scanf、getchar和putchar)
甲、乙机之间采用方式 1 双向串行通信,具体要求如下: (1)甲机的 k1 按键可通过串行口控制乙机的 LEDI 点亮、LED2 灭,甲机的 k2 按键控制 乙机的 LED1
Wechat applet