translate( 横の距離 , 縦の距離 )図形を平行移動します。これは縦横の移動の幅をそれぞれ引数に渡すだけです。これは非常にシンプルですね。
scale( 横の倍率 , 縦の倍率 , 中心の横位置 , 中心の縦位置 )図形を拡大縮小します。拡大率は第1,2引数で指定します。1倍が同じ大きさとなり、それより小さければ縮小され、大きければ拡大されます。このとき、注意しなければならないのは、「その図形は、どこを中心として拡大縮小されるか」という点です。それを指定するのが第3,4引数です。これで指定された地点から図形が拡大されます。
rotate( 角度 , 真偽値 )図形の回転は、2つの引数指定が用意されています。1つ目は、回転角度と、絶対位置からの角度かどうかを指定する真偽値を引数に渡すものです。例えば連続してrotateが呼び出されたとき、「最後の状態から回転させるか」「最初の状態から回転させるか」を指定するものです。trueにすると、常に「最初の状態から、第1引数の角度だけ回転させる」ということになります。falseなら、「そのときの状態から、更に第1引数の角度だけ回転させる」ということになります。
rotate( 角度 , 中心の横位置 , 中心の縦位置 )
※リストが表示されない場合
AddBlockなどの広告ブロックツールがONになっているとリストなどが表示されない場合があります。これらのツールをOFFにしてみてください。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xml:lang="ja" lang="ja">
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=UTF-8" />
<title>Sample Page</title>
<script type="text/javascript"
src="raphael-min.js" charset="utf-8"></script>
<script type="text/javascript">
<!--
var dragging = false;
var r1 = null;
function init(){
var paper = Raphael(10,25, 300, 300);
var r = paper.rect(0,0,300,300);
r.attr({fill:"#99F",stroke:"#99F",opacity:0.25});
r.mousemove(doAct);
r1 = paper.rect(50,125,200,50);
r1.attr({fill:"red",stroke:"blue","stroke-width":5});
}
function doAct(event){
var x = event.x - 10;
var y = event.y - 25;
r1.rotate(x,true);
r1.scale(y / 100,y / 100,150,150);
}
//-->
</script>
</head>
<body onload="init();">
<h1>サンプル</h1>
<div id="canvas"></div>
</body>
</html>
| << 前へ |