2011年9月19日月曜日

HTML5 Canvasで図形描画

HTML5の新規APIのCanvasの使い方について。

実際にcanvasタグを使うときは、Javascriptで処理を記載するらしい。

まずはcanvas要素をbodyタグに記載




次にその要素に四角形を描画してみる。
描画するにはcanvasタグからgetContextメソッドで2d要素を指定してオブジェクトを取得する。

そのオブジェクトに対して以下を行うと描画可能。
  1. begienPath(); で描画開始指定
  2. lineWidth で線の太さ指定
  3. strokeStyle で線の色を指定
  4. moveTo で開始位置に移動
  5. lineTo で線を描画
  6. closePath で開始位置にパスをつなげる
  7. stroke で描画
そのほか
  • fillStyle で塗りつぶしの色を指定可能
  • fill で塗りつぶし可能
以下ソース。
<!DOCTYPE html>
<html>
<head>


<body>


</body>


つづいて円を描画。
描画のステップはほとんど四角形とおんなじ。

違うところは四角形でパスをつなぐところ(4~6)を、円描画の角度を指定して描画するところ。


  • 開始角度の指定(ラジアン)
  • 終了角度の指定(ラジアン) 2π=360度
  • arcで描画(x座標、y座標、半径、開始角度、終了角度、描画が時計まわり=false)
で以下ソース。
<!DOCTYPE html>
<html>
<head>


<body>


</body>

簡単ですねー。楽しいですねー。

ちなみにcanvas描画したものをクリアするにはclearRectを使って以下の用なメソッドをつくればOK。
function drawClear(){
    var cvs = document.getElementById("cvs").getContext("2d");
    cvs.clearRect(0,0,500,500);
}

0 件のコメント:

いまさらだけど、いまだからこその農業IoT 第1回

久々投稿 転職してはや2年半。バタバタしてる中で、あーっという間に時間は過ぎてきた。 仕事はそれなりに順調だけど、ただやっぱり自分で何かを起こす!ということはではできていなく、、、年齢45をこえ、、、、、とくに昔からずーとやろうやろうと言って実現できてなかっった農業IoT。。 去...