
説明/参照:
Explanation:
注意:
* SVGとは何ですか?
SVGとはScalable Vector Graphics
SVGは、Web用のベクトルベースのグラフィックを定義するために使用されます
SVGはグラフィックをXML形式で定義します
SVGグラフィックスがズームまたはサイズ変更されても、品質が低下することはありません。
SVGファイルのすべての要素とすべての属性をアニメートすることができます
SVGはW3C勧告です
*例:
<script>
/ *コンスタント* /
var initialTheta = 0; //最初の回転角度(度)。
var thetaDelta = 0.3; // "遅延"ミリ秒ごとに角を回転させる量(度単位)。
var delay = 10; //アニメーションスチルの間の遅延(ミリ秒単位)。アニメーションの滑らかさに影響します。
var angularLimit = 90; //正方形を回転させる度数の最大値。
/ *
angleLimitの度数を回転させるには、square(angularLimit / thetaDelta)* delayミリ秒がかかります。たとえば、(90 / 0.3)* 10 = 3000ミリ秒(または3秒)で90度回転します。
* /
/ * GLOBALS * /
var theSquare; //四角形の要素への参照と他のものを含みます。
varタイマー; //アニメーションを停止するために使用されるsetInterval()オブジェクトを含みます。
関数init()
/ *
この関数は、ページが読み込まれた後に呼び出されるものとします。
* /
{
theSquare = document.getElementById( "mySquare"); //ページが読み込まれた後にこのカスタムプロパティを設定します。
theSquare.currentTheta = initialTheta; //アニメーションが開始され、timer = setInterval(doAnim、delay)に格納されるときに使用する初期回転角度。 // "timer"がクリアされるまで、 "delay"ミリ秒ごとにdoAnim()関数を呼び出します。
}
関数doAnim()
/ *
この関数は、ミリ秒ごとにsetInterval()によって呼び出されます。
* /
{
if(theSquare.currentTheta> angularLimit)
{
clearInterval(タイマー); //正方形が回転しているので、ブラウザにdoAnim()関数の呼び出しを停止するよう指示します。
戻る; //継続するポイントはありません。今停止する。
}
theSquare.setAttribute( "transform"、 "rotate(" + theSquare.currentTheta + ")"); //正方形を少しだけ回転させます。
theSquare.currentTheta + = thetaDelta; //正方形が回転する角度を少しずつ大きくします。
}
</ script>
</ head>