首頁 web前端 html教學 怎麼繪製圓角環形圖形

怎麼繪製圓角環形圖形

Nov 27, 2017 am 10:33 AM
圖形 圓角

在很多進度條的形狀上面的選擇,大家都會選擇環形圖。那麼今天就來教大家怎麼用canvas怎麼繪製圓角環形圖,以及進度條模糊的解決方案,希望對你有幫助

* @param {type} radius 圆环半径
* @param {type} lineWidth 圆环宽度
* @param {type} strokeStyle 默认背景
* @param {type} fillStyleArray 数组,圆环色块颜色
* @param {type} capType 类型:round是圆角,square正方形顶帽,butt是正常
* @param {type} percentArray ,数字,每个占据的百分比
* @param {type} startAngle 开始的角度
*  @param {type} criclex,cricley 圆心坐标,一般是canvas的一半,例如:canvas给的宽度是250,高度是250,那么criclex是125
登入後複製

使用方法

           var canvas = document.getElementById('canvas');
           var ctx = canvas.getContext('2d');
           var ring = new Ring("80", "25", "#ccc", ["#a1b91d", "#e9636a", "#e7ba21"], "round");
           ring.drawRing(ctx, 2 * Math.PI / 3, [20, 50, 30],125,125);//占据的百分比分别是20%,50%,30%
登入後複製


原始碼


#原始程式碼很簡單,歡迎大家擴充!

 function Circle(radius, lineWidth, strokeStyle, fillStyleArray, capType) {
   this.radius = radius;    // 圆环半径
   this.lineWidth = lineWidth;  // 圆环边的宽度
   this.strokeStyle = strokeStyle; //边的颜色
   this.fillStyle = fillStyleArray;  //填充色
   this.lineCap = capType;}Circle.prototype.draw = function (ctx,criclex,cricley) {
   ctx.beginPath();
   ctx.arc(criclex, cricley, this.radius, 0, Math.PI * 2, true);  // 坐标为90的圆,这里起始角度是0,结束角度是Math.PI*2
   ctx.lineWidth = this.lineWidth;
   ctx.strokeStyle = this.strokeStyle;
   ctx.stroke();  // 这里用stroke画一个空心圆,想填充颜色的童鞋可以用fill方法};function Ring(radius, lineWidth, strokeStyle, fillStyleArray, capType) {
   Circle.call(this, radius, lineWidth, strokeStyle, fillStyleArray, capType);}Ring.prototype = Object.create(Circle.prototype);Ring.prototype.drawRing = function (ctx, startAngle, percentArray ,criclex,cricley) {
   startAngle = startAngle || 3 * Math.PI / 2;
   percentArray = percentArray || [];
   this.draw(ctx,criclex,cricley);  // 调用Circle的draw方法画圈圈
   var _this = this;
   // angle
   percentArray.forEach(function (item, index) {
       ctx.beginPath();
       var anglePerSec = 2 * Math.PI / (100 / item); // 蓝色的弧度
       ctx.arc(criclex, cricley, _this.radius, startAngle, startAngle + anglePerSec, false); //这里的圆心坐标要和cirle的保持一致
       startAngle = startAngle + anglePerSec;
       ctx.strokeStyle = _this.fillStyle[index];
       ctx.lineCap = _this.lineCap;
       ctx.stroke();
       ctx.closePath();
   })
   //小圆圈覆盖
   ctx.beginPath();
   ctx.arc(criclex, cricley, _this.radius, startAngle, startAngle, false); //这里的圆心坐标要和cirle的保持一致
   ctx.strokeStyle = _this.fillStyle[0];
   ctx.lineCap = _this.lineCap;
   ctx.stroke();
   ctx.closePath();}
登入後複製

相信看了這些案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!


相關閱讀:

CSS的編碼怎麼轉換

CSS3怎麼製作蝴蝶飛舞的動畫

css3怎麼實作圖片封面展示的動畫

#

以上是怎麼繪製圓角環形圖形的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆樹的耳語 - 如何解鎖抓鉤
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1668
14
CakePHP 教程
1428
52
Laravel 教程
1329
25
PHP教程
1273
29
C# 教程
1256
24
修改win11視窗邊角為圓角的指南 修改win11視窗邊角為圓角的指南 Dec 31, 2023 pm 08:35 PM

很多朋友更新好win11系統後,發現win11的介面視窗採用了全新的圓角設計。但是有些人覺得不喜歡這個圓角設計,想要將它修改為曾經的介面,但卻不知道怎麼修改,下面就一起來看看吧。 win11怎麼修改圓角1、win11的圓角設計時內建的系統設置,目前無法修改。 2.所以大家如果不喜歡使用win11的圓角設計的話,可以等微軟提供修改的方法。 3.如果實在使用起來不習慣,還可以選擇退回曾經的win10系統。 4.如果大家不知道如何回退的話,可以查看本站提供的教學。 5.如果使用上方教學無法回退的話,還可

蘋果M3 Ultra推出全新版本,新增32個CPU核心與80個GPU核心 蘋果M3 Ultra推出全新版本,新增32個CPU核心與80個GPU核心 Nov 13, 2023 pm 11:13 PM

這款晶片可能搭載高達80個GPU核心,進而成為M3系列中效能最強大的產品。 Max兩倍核心數量從M1與M2系列的發展模式來看,蘋果的「Ultra」版晶片基本上是「Max」版本的兩倍核心數量,這是因為蘋果實際上將兩顆Max晶片透過內部連接技術結合起來,形成了M1Ultra與M2Ultra。 80個GPU核心M3Ultra可能擁有「高達80個圖形處理核心」。這項預測是基於蘋果晶片的發展路徑:從基礎版到「Pro」版,再到圖形核心數量翻倍的「Max」版,以及CPU和GPU核心都翻倍的「Ultra」版。舉例來

win10搜尋框圓角調整方法 win10搜尋框圓角調整方法 Jan 15, 2024 pm 03:12 PM

win10搜尋框可變圓角的訊息已經有很長的時間,但一直沒有實現,我們一般可以使用註冊表體驗一下win10搜尋框變圓角,那麼下面我們一起看看win10搜尋框可變圓角教程吧。 win10搜尋框可變圓角:1、開啟搜尋框,輸入regedit,進入登錄。 2、電腦\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Search找到此路徑。 3.在空白處,選擇新建-DWORD(32位元)值-將新鍵命名為ImmersiveSearch-數

PPT怎麼組合兩個圖形 PPT怎麼組合兩個圖形 Mar 20, 2024 pm 05:00 PM

大家好,今天我來給小伙伴們分享PPT怎麼組合兩個圖形的具體操作步驟,大家按照這個步驟去做,一步一步就能學會了操作,以後就可以舉一反三了,步驟詳情就在下方,小夥伴們快來認真的看一看吧! 1.首先,在電腦上開啟一個PPT文檔,然後新建一個PPT投影片,(如下圖所示)。 2.接著,在上方選單列項目【插入】中找到【形狀】,並在形狀的下拉框中選擇需要匯入的形狀,(如下圖紅色圈出部分所示)。 3.利用PPT的插入功能,依序將三角形和圓形兩個形狀插入至PPT中,並調整形狀的大小和位置,(如下圖紅色箭頭指向所示)。 4

CSS繪製:如何實現簡單的漸層圖形效果 CSS繪製:如何實現簡單的漸層圖形效果 Nov 21, 2023 pm 04:51 PM

CSS繪製:實現簡單的漸層圖形效果在網頁設計中,漸層圖形效果是一種常見的視覺元素,可以為網站增添吸引人的外觀和體驗。在CSS中,我們可以利用漸層效果輕鬆實現各種圖形的漸層效果,包括矩形、圓形、文字等。本文將介紹如何使用CSS來實現簡單的漸層圖形效果,以及提供具體的程式碼範例。一、線性漸變線性漸層是指從一個點向另一個點漸變的效果。在CSS中,我們可以使用l

2020年amd顯示卡效能排名 2020年amd顯示卡效能排名 Jan 13, 2024 pm 08:54 PM

amd圖形顯示卡排行1、Radeon需要重新寫作的內容是:RX需要重新寫作的內容是:6950XT2、Radeon需要重新寫作的內容是:RX需要重新寫作的內容是:6900XT需要重寫的是:3、Radeon需要重新寫作的內容是:RX需要重新寫作的內容是:6800XT4、Radeon需要重新寫作的內容是:RX需要重新寫作的內容是:6800需要重寫的是:5、Radeon需要重新寫作的內容是: RX需要重新寫作的內容是:6750XT6、Radeon需要重新寫作的內容是:RX需要重新寫作的內容是:6700XT7

CSS版面技巧:實現圓角卡片效果的最佳實踐 CSS版面技巧:實現圓角卡片效果的最佳實踐 Oct 20, 2023 am 11:10 AM

CSS版面技巧:實現圓角卡片效果的最佳實務引言:隨著網頁設計的不斷發展,圓角卡片效果成為了現代化的網頁設計中常見的元素之一。透過使用CSS佈局技巧,我們能夠輕鬆地為網頁添加具有美觀效果的圓角卡片。本文將介紹實現圓角卡片效果的最佳實踐,並提供具體的程式碼範例供參考。一、使用CSS的border-radius屬性建立圓角效果在CSS中,我們可以使用border-r

解決win11沒有圓角和通知的方法 解決win11沒有圓角和通知的方法 Dec 31, 2023 pm 09:53 PM

更新了win11之後發現原先在w​​in10系統上的通知不見了,裡面也沒有了圓角功能讓很多用戶都直呼用不習慣,所以今天就給你們帶來了win11沒有圓角沒有通知解決方法,快來一起看看怎麼操作吧。 win11沒有圓角沒有通知怎麼辦:1.先進入win11系統的桌面。 2、然後點選桌面右下角的「!」選項。 3.此時即可彈出圓角通知。 4.每次使用的時候都必須和日曆彈出這一點得到了很多用戶的吐槽,但是由於win11系統還處於初期,後面慢慢的肯定會進行改善的。

See all articles