濮阳杆衣贸易有限公司

主頁 > 知識庫 > html5之Canvas路徑繪圖、坐標(biāo)變換應(yīng)用實(shí)例

html5之Canvas路徑繪圖、坐標(biāo)變換應(yīng)用實(shí)例

熱門標(biāo)簽:洛陽市伊川縣地圖標(biāo)注中心官網(wǎng) 地圖標(biāo)注自己去過的地方 電銷機(jī)器人視頻 搜狗星級酒店地圖標(biāo)注 標(biāo)準(zhǔn)智能外呼系統(tǒng) 平頂山電子地圖標(biāo)注怎么修改 江蘇高頻外呼系統(tǒng)線路 會(huì)聲會(huì)影怎樣做地圖標(biāo)注效果 高德地圖標(biāo)注錯(cuò)誤怎么修改
在上一篇中我們了解html5的Canvas ,在這一篇中不用多說,寫一個(gè)html5的時(shí)鐘應(yīng)用程序試手。在這里主要設(shè)置了坐標(biāo)變換的平移(translate)和旋轉(zhuǎn)變換(ratate),以及html5 Canvas的路徑繪圖,beginPath,closePath,rect,arc等,還有就是html5 Canvas路徑繪圖重要的繪圖狀態(tài)的保存和恢復(fù)機(jī)制,save,restore。
多的也不說了,直接上代碼,有不解的歡迎提問,以及對我的建議指教都可以。
ff下效果圖
 
代碼

復(fù)制代碼
代碼如下:

<html>
<head>
</head>
<body>
<canvas id="myCanvas" width="600" height="300">你的瀏覽器還不支持哦</canvas>
<script type="text/javascript">
var c = document.getElementById("myCanvas");
var cxt = c.getContext("2d");
var slen = 60;
var mlen = 50;
var hlen = 40;
cxt.strokeRect(0, 0, c.width, c.height);
cxt.beginPath();
cxt.strokeStyle = "#00f";
cxt.fillStyle = "#00f";
cxt.arc(200, 150, 5, 0, 2 * Math.PI, true);
cxt.fill();
cxt.closePath();
cxt.beginPath();
cxt.strokeStyle = "#00f";
cxt.arc(200, 150, 100, 0, 2 * Math.PI, true);
cxt.stroke();
cxt.closePath();
cxt.beginPath();
cxt.translate(200, 150); //平移原點(diǎn);
cxt.rotate(-Math.PI / 2);
cxt.save();
for (var i = 0; i < 60; i++) {
if (i % 5 == 0) {
// cxt.fillStyle = "#ff0000";
cxt.fillRect(80, 0, 20, 5);
cxt.fillText("" + (i / 5 == 0 ? 12 : i / 5), 70, 0);
} else {
// cxt.strokeStyle = "#00f";
cxt.fillRect(90, 0, 10, 2);
}
//document.getElementById("div1").innerText += " " + i;
cxt.rotate(Math.PI / 30);
}
cxt.closePath();
var ls = 0, lm = 0, lh = 0;
function Refresh() {
cxt.restore();
cxt.save();
cxt.rotate(ls * Math.PI / 30);
cxt.clearRect(5, -1, slen+1, 2+2);
cxt.restore(); cxt.save();
cxt.rotate(lm * Math.PI / 30);
cxt.clearRect(5, -1, mlen+1, 3+2);
cxt.restore(); cxt.save();
cxt.rotate(lh * Math.PI / 6);
cxt.clearRect(5, -3, hlen+1, 4+2);
var time = new Date();
var s = ls=time.getSeconds();
var m = lm=time.getMinutes();
var h = lh=time.getHours();
cxt.restore();
cxt.save();
cxt.rotate(s * Math.PI / 30);
cxt.fillRect(5, 0, slen, 2);
cxt.restore(); cxt.save();
cxt.rotate(m * Math.PI / 30);
cxt.fillRect(5, 0, mlen, 3);
cxt.restore(); cxt.save();
cxt.rotate(h * Math.PI / 6);
cxt.fillRect(5, -2, hlen, 4);
}
var MyInterval = setInterval("Refresh();", 1000);
</script>
<div id="div1" style=" background:#00f;"></div>
</body>
</html>

標(biāo)簽:松原 廣東 蚌埠 常德 阿克蘇 果洛 鄂爾多斯 廣西

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《html5之Canvas路徑繪圖、坐標(biāo)變換應(yīng)用實(shí)例》,本文關(guān)鍵詞  html5,之,Canvas,路徑,繪圖,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《html5之Canvas路徑繪圖、坐標(biāo)變換應(yīng)用實(shí)例》相關(guān)的同類信息!
  • 本頁收集關(guān)于html5之Canvas路徑繪圖、坐標(biāo)變換應(yīng)用實(shí)例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    宜昌市| 甘肃省| 驻马店市| 康乐县| 腾冲县| 阿瓦提县| 武山县| 应城市| 甘孜| 长葛市| 错那县| 济南市| 沽源县| 叙永县| 垣曲县| 岐山县| 吕梁市| 长垣县| 黄陵县| 盘锦市| 信丰县| 新丰县| 永济市| 分宜县| 平潭县| 讷河市| 东港市| 鹿泉市| 永济市| 阿瓦提县| 卓尼县| 汉源县| 永康市| 长武县| 芜湖市| 聂荣县| 图们市| 浪卡子县| 永吉县| 乐平市| 三门峡市|