﻿easyUI.math = {
	getAngle:function(x0,y0,x1,y1){//取倾斜角,起点x,y,终点x,y
		var x = x1 - x0,y = y0 - y1;
		var _angle = Math.floor(Math.atan(y/x)*(180/Math.PI));
		return (x<0)?_angle+180:(y<0)?_angle+360:_angle;
	},
	angle2Direct:function(angle){//角度转8方向
		if(isNaN(angle)){return 0;}
		if(255<angle && angle<285){return 0;}//6点钟方向(南)
		if(195<angle && angle<255){return 1;}//7、8点钟方向(西南)
		if(165<angle && angle<195){return 2;}//9点钟方向(西)
		if(105<angle && angle<165){return 3;}//10、11点钟方向(西北)
		if(75<angle && angle<105){return 4;}//12点钟方向(北)
		if(15<angle && angle<75){return 5;}//1、2点钟方向(东北)
		if(345<angle || angle<15){return 6;}//3点钟方向(东)
		if(285<angle && angle<345){return 7;}//4、5点钟方向(东南)
	},
	bezier2:function(t,p0,p1,p2){//2次贝塞尔曲线
		return (1-t) * (1-t) * p0 + 2 * t * (1-t) * p1 + t * t * p2;
	},
	bezier3:function(t,p0,p1,p2,p3){//3次贝塞尔曲线
		return Math.pow(1-t, 3) * p0 + 3 * t * Math.pow(1-t, 2) * p1 + 3 * t * t * (1-t) * p2 + t * t * t * p3;
	}
}
