国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 開(kāi)發(fā) > HTML5 > 正文

Canvas多邊形繪制的實(shí)現(xiàn)方法

2024-09-05 07:22:58
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

前言

Canvas繪制多變形非常簡(jiǎn)單,只要懂得Canvas路徑 + 簡(jiǎn)單的初中數(shù)學(xué)知識(shí)即可完成

CodePen打開(kāi)

解析

思路如上,非常簡(jiǎn)單,計(jì)算每一個(gè)點(diǎn)的位置通過(guò)lineTo()繪制路徑即可

核心代碼解析如下(或在CodePen中查看):

function drawPolygonPath(sideNum, radius, originX, originY, ctx){  ctx.beginPath();  const unitAngle = Math.PI * 2 / sideNum; //計(jì)算單元角度  let angle = 0; //初始角度  let xLength, yLength;  // ctx.moveTo(originX, originY);  for(let i = 0; i < sideNum; i++){ //遍歷計(jì)算點(diǎn),并lineTo()繪制路徑    xLength = radius * Math.cos(angle);    yLength = radius * Math.sin(angle);    ctx.lineTo(originX + xLength, originY - yLength);//繪制路徑    angle += unitAngle;  }  ctx.closePath();//閉合路徑,也可在for循環(huán)中多一次循環(huán)lineTo()至起點(diǎn)}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持武林網(wǎng)。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 九寨沟县| 大田县| 衡水市| 澜沧| 洛浦县| 江门市| 雷州市| 贵定县| 屯留县| 磐石市| 阿坝县| 灵璧县| 闽清县| 伊通| 元江| 保亭| 巴青县| 汝州市| 元阳县| 崇义县| 米脂县| 扎鲁特旗| 溧水县| 瑞金市| 郎溪县| 德安县| 嫩江县| 祁东县| 焦作市| 和平县| 收藏| 福清市| 原阳县| 阿合奇县| 尼勒克县| 房山区| 文昌市| 株洲市| 玉林市| 菏泽市| 广宁县|