//http://www2.ocn.ne.jp/~hasshi/java1.htm

x	= new Array();	//　X座標
y	= new Array();	//　Y座標
//centerX = 400;		//　回転の中心X座標 def 240	
//centerY = 280;		//　回転の中心Y座標 def 150
R = 160;				//初期半径	def 200
maxR = 160;				//最大半径	
moveNum = 10;		//　一度に移動するレイヤーの数
//timerID = 0;			//　タイマー変数
//time	= 100;			//　１回あたりの移動速度（割り込み間隔）def 100
pi = Math.PI / 180;		//　角度からラジアン変換用
step = 0;			//　回転角度	def 0

centerX = self.screen.width/2 - 50;
centerY = self.screen.height/2 - 100;
//	newWidth = self.screen.width / 1.2;
//	newHeight = self.screen.height / 1.05;
//	parent.window.resizeTo(newWidth, newHeight);

speed = 1;		//回転速度 1速い 20遅い
spflg = 1;		//回転flag -1減速 1加速 0手動{PageUp/PageDown}
offset = -2;	//収束速度 (def -10)
osflg = 1;		//収束flag -1減速 1加速 0手動{工事予定}
autostop = 1800	// 自動停止時間(1/10sec)

function rotateTitle(){

	if(time % 20 == 0){
		if(spflg == 1){
			if(speed < 10){
				speed++;
			}else{spflg = -1;}
		}
		else if(spflg == -1){
			if(speed > 1){
				speed--;
			}else{spflg = 1;}
		}
	}
	if(time % 17 == 0){
		if(osflg == 1){
			if(offset < -1){
				offset++;
			}else{osflg = -1;}
		}
		else if(osflg == -1){
			if(offset > -10){
				offset--;
			}else{osflg = 1;}
		}
	}	
	for (i=0; i<moveNum; i++){
		layerName = "ABCDEFGHIJ".charAt(i);		//　レイヤー名取得
		sita = (i * 360 / moveNum)+step;
		COS = Math.cos(sita * pi);
		SIN = Math.sin(sita * pi);
		X = (COS + SIN)*R +centerX;
		Y = (SIN - COS)*R +centerY;
		if (document.layers)	{ document[layerName].left = X; document[layerName].top = Y; }
		if (document.all)	{ window[layerName].style.pixelLeft = X; window[layerName].style.pixelTop = Y; }
	}
	R = R + offset;
	if ((R < -maxR) || (R > maxR)) offset = -offset;
	//step = step + 10;
	step = step + speed;
}


// thx to wakaba (2004-06-24)
function document.onkeydown(){
//	alert(event.keyCode + 'が押されました');
	switch(event.keyCode){
		case 19 : // [Pause]
		case 32 : // [Space]
			return Pause();
		case 33 : // [PageUp]
		case 74 : // [j]
			return	speedchg(1);
		case 34 : // [PageDown]
		case 70 : // [f]
			return	speedchg(-1);
		case 75 : // [k]
			return	offsetchg(-1);
		case 68 : // [d]
			return	offsetchg(+1);
		case 65 : // [a]
			//→自動変速モード
			spflg = 1;		osflg = 1;
			window.status= '自動変速モード';
			return;
		case 83 : // [s]
			autostop = 0;	//→３分間自動停止解除
			window.status= '自動停止解除';
			return;
	}
}

//回転速度の調節
function speedchg(x) {
	spflg = 0;
	window.status= '再生速度:' + speed;
	speed += x;
	if(speed > 20)	speed = 20;
	if(speed < 1)	speed = 1;
} 

//収束速度の調節
function offsetchg(x) {
	osflg = 0;
	window.status= '収束速度:' + -offset;
	offset += x;
	if(offset > -1)		offset = -1;
	if(offset < -10)	offset = -10;
} 

// (Start/Stop)
function Pause() {
	timer1 = timer1 ? clearTimeout(timer1) : Timer();
}

