999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

使用HTML5繪制扇形的一種方法

2022-04-14 09:59:56湖北三峽職業(yè)技術(shù)學(xué)院周蘇峽
關(guān)鍵詞:利用方法

湖北三峽職業(yè)技術(shù)學(xué)院 周蘇峽

本文介紹使用HTML5的Canvas畫布繪制扇形的一種方法,其實(shí)現(xiàn)思路是利用中畫筆的ARC方法進(jìn)行弧線所圍區(qū)域的填充來實(shí)現(xiàn)扇形的繪制,所附的代碼通用性強(qiáng),對圓形、小于180°扇形、半圓形及大于180°扇形的繪制均能實(shí)現(xiàn),能比較方便地完成在Web頁面前端的動態(tài)繪圖。

1 ARC方法的定義

我們知道在HTML5中可以使用Canvas畫布標(biāo)簽進(jìn)行圖形繪制,當(dāng)定義了一個畫筆后,可以調(diào)用其ARC

方法實(shí)現(xiàn)圓形區(qū)域的填充,格式如下:

ARC(圓心x坐標(biāo),圓心y坐標(biāo),半徑,弧線起點(diǎn),弧線終點(diǎn),順時鐘False|逆時鐘True)

該填充是從弧線起點(diǎn)到弧線終點(diǎn)所走的弧線與起點(diǎn)到終點(diǎn)的連線所圍起來的面積的繪制。由于從起點(diǎn)到終點(diǎn)所走弧線有順時鐘和逆時鐘兩個方向,所以當(dāng)繪制的不是一個完整的正圓時,兩個方向繪制的形狀填充(圖中黑色區(qū)域)是不同的,分別如圖1和圖2所示。

圖1 0到90度順時鐘填充Fig.1 0 to 90 degrees clockwise

圖2 0到90度逆時鐘繪制Fig.2 Reverse the clock drawing 0 to 90 degrees

2 利用ARC方法繪制扇形的思路

2.1 進(jìn)行小于180°的扇形填充

參考圖1可以看出,通過執(zhí)行下面一段JavaScript代碼,其中循環(huán)變量r控制欲繪制的扇形的半徑,

每循環(huán)一次取一個半徑值,就利用Context(2d畫筆)對象的ARC方法順時鐘方向填充一次,然后半徑減1并重復(fù)這樣的填充,直到半徑減到0(縮小到圓心處)為止,從而可以完成一個小于180°的扇形區(qū)域的填充。假如起始角度是0,終止角度是90°,執(zhí)行下面的JavaScript代碼進(jìn)行扇形的繪制,顯示結(jié)果如圖3所示,程序代碼正確。

圖3 0到90度的順時鐘方向扇形填充Fig.3 0 to 90 degrees clockwise direction fan filling

2.2 進(jìn)行大于180°的扇形填充

要繪制大于180°的扇形,例如90°-360°的扇形時,如果仍使用上面的代碼進(jìn)行逆時鐘填充,將會得到圖2所示的顯示結(jié)果,這顯然多出了右下部的一個三角區(qū)域。為了去掉這個多出的部分,我們可以改進(jìn)一下上面的方法,當(dāng)填充的扇形大于180°時,先順時鐘方向填充一次,再用背景色(這里是白色)逆時鐘方向多次填充,以達(dá)到去掉多余部分的目的,從而實(shí)現(xiàn)了大于180°的扇形填充。顯示效果如圖4所示。下面是繪制扇形通用完整的代碼。

圖4 90度到360度的扇形填充Fig.4 Fan filling of 90 degrees to 360 degrees

3 結(jié)語

目前,HTML5在Web前端開發(fā)中廣為流行,在繪圖、動畫及多媒體等方面都有很多應(yīng)用。例如利用標(biāo)簽進(jìn)行進(jìn)度條或直方圖的繪制;利用

代碼一:進(jìn)度條和直方圖

代碼二:音頻和視頻

在實(shí)際的繪圖中,我們可以利用已有的方法加以變化,從而實(shí)現(xiàn)語言沒有直接提供的功能。只要思路奇巧,代碼就可以相當(dāng)簡潔高效。

猜你喜歡
利用方法
利用min{a,b}的積分表示解決一類絕對值不等式
利用倒推破難點(diǎn)
利用一半進(jìn)行移多補(bǔ)少
學(xué)習(xí)方法
利用數(shù)的分解來思考
Roommate is necessary when far away from home
利用
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
賺錢方法
主站蜘蛛池模板: 欧洲在线免费视频| 四虎永久在线精品影院| 激情爆乳一区二区| 日本高清免费一本在线观看| 四虎精品国产永久在线观看| 99久久国产自偷自偷免费一区| 国产在线观看精品| 无码人中文字幕| 国产一区免费在线观看| 啪啪永久免费av| 黄片在线永久| 久久黄色视频影| 国产精品一区二区在线播放| 无码aaa视频| 91福利在线看| 亚洲欧美一区二区三区蜜芽| 国产精品99久久久久久董美香| 欧美中文字幕一区| 午夜毛片福利| 国产精品自在在线午夜区app| 四虎成人精品| 91小视频版在线观看www| 波多野结衣一区二区三视频| 日韩欧美国产中文| 永久免费无码日韩视频| 亚洲AⅤ波多系列中文字幕| 国产亚洲精品无码专| 国产区福利小视频在线观看尤物| 亚洲日韩每日更新| 波多野结衣在线一区二区| 99视频全部免费| 国产精品微拍| 91娇喘视频| 伊人久久婷婷| 国产欧美另类| 国产成人91精品免费网址在线| av在线人妻熟妇| 欧美狠狠干| 日本亚洲成高清一区二区三区| 99er这里只有精品| 毛片久久网站小视频| 午夜a视频| 国产自视频| 国产无码制服丝袜| 国产成人精品一区二区秒拍1o| 国产另类视频| 久久精品人妻中文视频| 欧美成人精品一级在线观看| 亚洲国产天堂久久九九九| 久久国产精品娇妻素人| 东京热一区二区三区无码视频| 成年人免费国产视频| 五月婷婷激情四射| 成年网址网站在线观看| 亚洲,国产,日韩,综合一区| 丁香五月激情图片| 怡红院美国分院一区二区| 亚洲精品视频网| 91视频青青草| jijzzizz老师出水喷水喷出| 成人综合在线观看| 天天色综网| 91精品久久久无码中文字幕vr| 97亚洲色综久久精品| 视频二区亚洲精品| 色九九视频| 老司国产精品视频| 高潮毛片无遮挡高清视频播放| 九九香蕉视频| 久久性视频| 国产91高清视频| 色综合天天综合| 国产免费福利网站| 亚洲中字无码AV电影在线观看| 国产精品第三页在线看| 毛片免费观看视频| 国产喷水视频| 日本欧美一二三区色视频| 亚洲美女操| 国产三级成人| 国产永久在线观看| 好吊日免费视频|