当前位置:网站首页>canvas - 圆形
canvas - 圆形
2022-07-24 05:18:00 【梅花三】
使用 arc() 或 arcTo() 方法画圆形
效果图:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
#cvs {
background-color: #ccc;
}
</style>
</head>
<body>
<div id='container'>
<canvas id='cvs'>
sorry, your browser doesn't support canvas API.
</canvas>
</div>
</body>
<script>
window.onload = function() {
// 获取画布
const cvs = document.querySelector('#cvs')
cvs.width = 800
cvs.height = 800
// 获取画笔
const ctx = cvs.getContext('2d')
const PI = Math.PI
drawCircle(350, 350, 50, PI, PI * 2)
drawCircle(400, 400, 50, PI * 3 / 2, PI * 1 / 2)
drawCircle(350, 450, 50, 0, PI)
drawCircle(300, 400, 50, PI * 1 / 2, PI * 3 / 2)
drawCircle(350, 400, 100, 0, PI * 2)
drawCircle(350, 400, 50, 0, PI * 2)
ctx.strokeStyle = '0f0'
ctx.strokeRect(300, 350, 100, 100)
function drawCircle(x, y, r, startAngle, endAngle) {
ctx.moveTo(x, y)
ctx.beginPath()
ctx.arc(x, y, r, startAngle, endAngle)
ctx.strokeStyle = 'lime'
ctx.stroke()
}
}
</script>
</html>
效果图:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
#cvs {
background-color: #ccc;
}
</style>
</head>
<body>
<div id='container'>
<canvas id='cvs'>
sorry, your browser doesn't support canvas API.
</canvas>
</div>
</body>
<script>
window.onload = function() {
// 获取画布
const cvs = document.querySelector('#cvs')
cvs.width = 800
cvs.height = 600
// 获取画笔
const ctx = cvs.getContext('2d')
ctx.globalAlpha = 0.5
for(let i = 0; i < 50; i++) {
ctx.beginPath()
ctx.arc(Math.random() * 800, Math.random() * 600, Math.random() * 50, 0, Math.PI * 2)
const fillStyle = 'rgb(' + randomRGB() + ',' + randomRGB() + ',' + randomRGB() + ')'
ctx.fillStyle = fillStyle
ctx.fill()
}
function randomRGB() {
return Math.floor(Math.random() * 256)
}
}
</script>
</html>
边栏推荐
猜你喜欢
随机推荐
special effects - 鼠标移动,出现泡泡拖尾
8.使用二次几何体技术,在屏幕上绘制一个上小下大的柱体。
Opengl模拟现实生活中,球掉到地面上再弹起来的过程,在屏幕上绘制一个球,球从上往下掉,碰到地面,再弹起来。
字符串_方法_01match方法
C语言从入门到入土——函数
JDBC encapsulates a parent class to reduce code duplication
String的字符串常量池和intern()详解
AttributeError: ‘NoneType‘ object has no attribute ‘shape‘
C语言入门篇 概述
Handwritten ORM framework
Scikit learn notes
用C语言写出三子棋
C语言从入门到入土——数组
在屏幕上绘制一个运动的茶壶,茶壶先慢慢向屏幕里面移动,越变越小,越变越模糊;然后慢慢变大,越变越清晰,一直往返重复。为场景添加光照,材质和雾效果。通过键盘’a’’s’’d’来选择不同的雾效模式
新语法01_Es6新语法
Generics and annotations
T 11-20
Neo4j修改标签名
数据类型概括
T 1-5









