トップページ  > Canvas  > rotate(angle)

★Canvasリファレンス

context . rotate(angle) …… 回転する
Internet Explorer9 Firefox2Firefox3Firefox4 Google Chrome1Google Chrome2Google Chrome3Google Chrome4Google Chrome5Google Chrome6 Safari3Safari4Safari5 Opera9Opera10
広告

rotate(angle)メソッドは、回転する際に使用します。 引数angleは回転角度を表します。回転方向は時計回り、単位はラジアンとなります。

ラジアンは角度を表す単位の一つで、「度数÷180×π」で算出されます。 π(≒3.14)はJavaScriptではMath.PIプロパティで求めることができます。 例えば、時計回りに45度回転させたい場合には、 「45/180*Math.PI」と記述することで45度に相当するラジアン値を指定することができます。

回転の中心は座標(0,0)、つまり、<canvas>要素の左上端となります。

■変形を適用する際の注意点

変形を適用する場合には、先に変形を指定してから図形を描画するという順序になります。 変形を後から指定しても、先に描画した図形には変形が適用されないので注意してください。

複数の変形を適用する際には、指定順序を意識する必要があります。 例えば、拡大→回転→拡大の順序と、拡大→拡大→回転の順序では、それぞれの変形結果が異なる場合があります。 一例を挙げると、 「正方形の幅を2倍に拡大→幅を2倍に拡大→90度回転」では、幅が4倍の長方形が90度回転した状態(縦長の長方形)となりますが、 「正方形の幅を2倍に拡大→90度回転→幅を2倍に拡大」では、幅と高さがそれぞれ2倍の正方形となります。

複数の変形を適用する際には、実行する変形の順序とは逆順にソースを記述する必要があります。

■引数(値)の説明

angle
回転角度(単位はラジアンで「度数/180*Math.PI」で指定)

■使用例

HTML + JavaScriptソース

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>canvasで図形を描く</title>
<script type="text/javascript">
<!--
function test() {
  //描画コンテキストの取得
  var canvas = document.getElementById('sample');
  if (canvas.getContext) {
    var context = canvas.getContext('2d');
    //ここに具体的な描画内容を指定する
    //左から80上から20の位置に幅50高さ50の輪郭の四角形を描く
    context.strokeRect(80,20,50,50);

    //時計回り45度の回転を指定した上で、
    //左から80上から20の位置に幅50高さ50の塗りつぶしの四角形を描く
    context.rotate(45/180*Math.PI);
    context.fillRect(80,20,50,50);
  }
}
//-->
</script>
</head>
<body onLoad="test()">
<h2>Canvasで図形を描く</h2>
<canvas width="300" height="150" id="sample" style="background-color:yellow;">
図形を表示するには、canvasタグをサポートしたブラウザが必要です。
</canvas>
</body>
</html>
↓↓↓

ブラウザ上の表示

Canvasで図形を描く

図形を表示するには、canvasタグをサポートしたブラウザが必要です。

■関連項目

<canvas> …… 図形を描くHTML5から追加
広告
Sponsors
広告
MuuMuu Domain!
ドメイン取るならお名前.com
現役エンジニアのオンライン家庭教師【CodeCamp】
サイトに広告を掲載してお小遣いが稼げる!【A8.net】
Node.jsコース
はじめてのプログラミングコース
▲ページ先頭へ
HTMLクイックリファレンスについて
© HTMQ