ホームページ ウェブフロントエンド jsチュートリアル Javascript と Canvas を組み合わせて単純な循環時計を実装する_JavaScript スキル

Javascript と Canvas を組み合わせて単純な循環時計を実装する_JavaScript スキル

May 16, 2016 pm 04:10 PM
canvas javascript 時計

以前、HTML5 の Canvas 要素について学び、練習のために簡単な時計を実装しました。時計自体は複雑ではなく、美化するための写真は使用されていませんが、スズメは小さく、すべての内臓が備わっていますが、以下にそれを共有します。

デモ効果:

HTML コード:

コードをコピーします コードは次のとおりです:



<頭>

時計







JS コード:

コードをコピー コードは次のとおりです:

var Canvas = {};
Canvas.cxt = document.getElementById('canvasId').getContext('2d');
Canvas.Point = function(x, y){
This.x = x;
This.y = y;
};
/*キャンバス上のすべてのグラフィックを消去*/
Canvas.clearCxt = function(){
var me = this;
var Canvas = me.cxt.canvas;
me.cxt.clearRect(0,0, Canvas.offsetWidth, Canvas.offsetHeight);
};
/*時計*/
Canvas.Clock = function(){
var me = キャンバス、
c = me.cxt,
半径 = 150、/*半径*/
スケール = 20, /*スケールの長さ*/
minangle = (1/30)*Math.PI, /*1 分間のラジアン*/
hourangle = (1/6)*Math.PI, /*1 時間の円弧*/
hourHandLength = 半径/2, /*時針の長さ*/
minHandLength = 半径/3*2, /*分針の長さ*/
secHandLength = radius/10*9, /*秒針の長さ*/
center = new me.Point(c.canvas.width/2, c.canvas.height/2); /*円の中心*/
/*円の中心(文字盤の中心)を描画*/
関数drawCenter(){
c.save();
c.translate(center.x, center.y); c.fillStyle = 'black';
c.beginPath();
c.arc(0, 0, radius/20, 0, 2*Math.PI);
c.closePath();
c.fill();
c.ストローク();
c.restore();
};
/*座標変換により文字盤を描画*/
関数drawBackGround(){
c.save();
c.translate(center.x, center.y) /*翻訳変換*/
; /*スケールを描画*/
関数drawScale(){
c.moveTo(半径 - スケール, 0);
c.lineTo(radius, 0); };
c.beginPath();
c.arc(0, 0, radius, 0, 2*Math.PI, true);
c.closePath();
for (var i = 1; i drawScale();
c.rotate(hourangle) /*回転変換*/
};
/*描画時間(3,6,9,12)*/
c.font = "太字 30px インパック"
c.fillText("3", 110, 10);
c.fillText("6", -7, 120);
c.fillText("9", -120, 10);
c.fillText("12", -16, -100);
c.ストローク();
c.restore();
};
/*時針を描画(h:現在時刻(24時間制))*/
This.drawHourHand = function(h){
h = h === 0? 24: h;
c.save();
c.translate(center.x, center.y); c.rotate(3/2*Math.PI);
c.rotate(h*hourangle);
c.beginPath();
c.moveTo(0, 0);
c.lineTo(hourHandLength, 0);
c.ストローク();
c.restore();
};
/*分針を描画します (m: 現在の分)*/
This.drawMinHand = function(m){
m = m === 0? 60: m;
c.save();
c.translate(center.x, center.y); c.rotate(3/2*Math.PI);
c.rotate(m*minangle);
c.beginPath();
c.moveTo(0, 0);
c.lineTo(minHandLength, 0);
c.ストローク();
c.restore();
};
/*秒針を描画(s:現在の秒)*/
This.drawSecHand = 関数{
s = s === 0? 60: s;
c.save();
c.translate(center.x, center.y); c.rotate(3/2*Math.PI);
c.rotate(s*minangle);
c.beginPath();
c.moveTo(0, 0);
c.lineTo(secHandLength, 0);
c.ストローク();
c.restore();
};
/*現地時間に基づいて時計を描画します*/
This.drawClock = function(){
var me = this;
関数draw(){
var date = new Date();
Canvas.clearCxt();
drawBackGround();
drawCenter();
me.drawHourHand(date.getHours() date.getMinutes()/60);
me.drawMinHand(date.getMinutes() date.getSeconds()/60);
me.drawSecHand(date.getSeconds());
}
draw();
setInterval(draw, 1000);
};
};
var main = function(){
var Clock = new Canvas.Clock();
クロック.drawClock();
};


このコードにはいくつかの簡単なキャンバス要素 API が含まれています。試してみてください。

以上がこの記事の全内容です。Canvas を学ぶ皆さんのお役に立てれば幸いです。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

iPhoneに時計アプリがない:それを修正する方法 iPhoneに時計アプリがない:それを修正する方法 May 03, 2024 pm 09:19 PM

携帯電話に時計アプリがありませんか?日付と時刻は iPhone のステータス バーに引き続き表示されます。ただし、時計アプリがないと、世界時計、ストップウォッチ、目覚まし時計、その他多くの機能を使用できません。したがって、見つからない時計アプリを修正することは、やるべきことリストの一番上に置く必要があります。これらの解決策は、この問題の解決に役立ちます。解決策 1 – 時計アプリを配置する 誤って時計アプリをホーム画面から削除した場合は、時計アプリを元の場所に戻すことができます。ステップ 1 – iPhone のロックを解除し、App ライブラリ ページに到達するまで左にスワイプを開始します。ステップ 2 – 次に、検索ボックスで「時計」を検索します。ステップ 3 – 検索結果に以下の「時計」が表示されたら、それを長押しして、

WebSocket と JavaScript: リアルタイム監視システムを実装するための主要テクノロジー WebSocket と JavaScript: リアルタイム監視システムを実装するための主要テクノロジー Dec 17, 2023 pm 05:30 PM

WebSocketとJavaScript:リアルタイム監視システムを実現するためのキーテクノロジー はじめに: インターネット技術の急速な発展に伴い、リアルタイム監視システムは様々な分野で広く利用されています。リアルタイム監視を実現するための重要なテクノロジーの 1 つは、WebSocket と JavaScript の組み合わせです。この記事では、リアルタイム監視システムにおける WebSocket と JavaScript のアプリケーションを紹介し、コード例を示し、その実装原理を詳しく説明します。 1.WebSocketテクノロジー

JavaScript と WebSocket: 効率的なリアルタイム天気予報システムの構築 JavaScript と WebSocket: 効率的なリアルタイム天気予報システムの構築 Dec 17, 2023 pm 05:13 PM

JavaScript と WebSocket: 効率的なリアルタイム天気予報システムの構築 はじめに: 今日、天気予報の精度は日常生活と意思決定にとって非常に重要です。テクノロジーの発展に伴い、リアルタイムで気象データを取得することで、より正確で信頼性の高い天気予報を提供できるようになりました。この記事では、JavaScript と WebSocket テクノロジを使用して効率的なリアルタイム天気予報システムを構築する方法を学びます。この記事では、具体的なコード例を通じて実装プロセスを説明します。私たちは

簡単な JavaScript チュートリアル: HTTP ステータス コードを取得する方法 簡単な JavaScript チュートリアル: HTTP ステータス コードを取得する方法 Jan 05, 2024 pm 06:08 PM

JavaScript チュートリアル: HTTP ステータス コードを取得する方法、特定のコード例が必要です 序文: Web 開発では、サーバーとのデータ対話が頻繁に発生します。サーバーと通信するとき、多くの場合、返された HTTP ステータス コードを取得して操作が成功したかどうかを判断し、さまざまなステータス コードに基づいて対応する処理を実行する必要があります。この記事では、JavaScript を使用して HTTP ステータス コードを取得する方法を説明し、いくつかの実用的なコード例を示します。 XMLHttpRequestの使用

キャンバス フレームワークを学び、一般的に使用されるキャンバス フレームワークについて詳しく説明します キャンバス フレームワークを学び、一般的に使用されるキャンバス フレームワークについて詳しく説明します Jan 17, 2024 am 11:03 AM

Canvas フレームワークを探索する: 一般的に使用される Canvas フレームワークを理解するには、特定のコード例が必要です。 はじめに: Canvas は HTML5 で提供される描画 API であり、これを通じて豊富なグラフィックスやアニメーション効果を実現できます。描画の効率と利便性を向上させるために、多くの開発者がさまざまな Canvas フレームワークを開発しました。この記事では、一般的に使用される Canvas フレームワークをいくつか紹介し、読者がこれらのフレームワークの使用方法をより深く理解できるように、具体的なコード例を示します。 1.EaselJSフレームワークEa

win10 コンピューターの時計が常に不正確な場合はどうすればよいですか? win10 コンピューターの時間を調整するいくつかの方法 win10 コンピューターの時計が常に不正確な場合はどうすればよいですか? win10 コンピューターの時間を調整するいくつかの方法 Mar 27, 2024 pm 05:10 PM

1. まず、[スタート] メニューをクリックし、[スタート] メニューの [設定] ボタンを選択します。 2. 開いたら、時間と言語の設定を選択します。 3. 時刻を自動設定するように変更します。 4. 自動時刻設定をオフにして、変更したい時刻を選択することもできます。方法 2: 1. [その他の日付、時刻、地域の設定] オプションを開きます。 2. [日時を設定する]を選択します。 3. [インターネット時刻]を選択し、[設定オプションの変更]を開きます。 4. [インターネットタイムサーバーと同期する(S)]にチェックを入れ、[今すぐ更新]をクリックし、[OK]をクリックします。

JavaScript で HTTP ステータス コードを簡単に取得する方法 JavaScript で HTTP ステータス コードを簡単に取得する方法 Jan 05, 2024 pm 01:37 PM

JavaScript で HTTP ステータス コードを取得する方法の紹介: フロントエンド開発では、バックエンド インターフェイスとの対話を処理する必要があることが多く、HTTP ステータス コードはその非常に重要な部分です。 HTTP ステータス コードを理解して取得すると、インターフェイスから返されたデータをより適切に処理できるようになります。この記事では、JavaScript を使用して HTTP ステータス コードを取得する方法と、具体的なコード例を紹介します。 1. HTTP ステータス コードとは何ですか? HTTP ステータス コードとは、ブラウザがサーバーへのリクエストを開始したときに、サービスが

ゲーム開発におけるキャンバスの強力な役割と応用を探る ゲーム開発におけるキャンバスの強力な役割と応用を探る Jan 17, 2024 am 11:00 AM

ゲーム開発におけるキャンバスの力と応用を理解する 概要: インターネット技術の急速な発展に伴い、Web ゲームはプレイヤーの間でますます人気が高まっています。 Web ゲーム開発の重要な部分として、キャンバス テクノロジーがゲーム開発に徐々に登場し、その強力なパワーと応用性を示しています。この記事では、ゲーム開発におけるキャンバスの可能性を紹介し、具体的なコード例を通じてその応用例を示します。 1. Canvas テクノロジの概要 Canvas は HTML5 の新しい要素で、これにより次のことが可能になります。

See all articles