
function createCircles() {
	
	//clear things
	_circlepaper.clear();
	_counter = 0;
	_circleset = null;
	_circleset = _circlepaper.set();
	
	//create a circle set
	var n = nextIntBetween(2,4);

	for(var i=1; i<=n;i++){
		_circleset.push(drawCircle());
	}
	//hide 'em
	_circleset.attr({opacity:0});
	
	//fade 'em in
	_circleset.animate({opacity:1}, 400, startCirclesAnimating);
	
};


function drawCircle(){ 
	
	var s = nextIntBetween(_strokeMin, _strokeMax);
	var intRadius = nextIntBetween(1, _diameter-_strokeMax);
	var c = _colors[nextIntBetween(0,_colors.length-1)];
	if((intRadius+s)*2 >_diameter )
	{
		intRadius=((_diameter-s)/2)-4;
	}
	var circ = _circlepaper.circle(_diameter/2, _diameter/2, intRadius);
	circ.attr({"fill-opacity": 0,"stroke-width": s, stroke: c});
	return circ;
}

function animateCircle(myCircle){
	var s = nextIntBetween(_strokeMin, _strokeMax);
	var intRadius = nextIntBetween(1, _diameter-_strokeMax);
	var c = _colors[nextIntBetween(0, _colors.length-1)];
	if((intRadius+s)*2 >_diameter )
	{
		intRadius=((_diameter-s)/2)-4;
	}
	var t = nextIntBetween(1000, 5000);
	myCircle.animate({fill: 'none', stroke: c, r:intRadius, 'stroke-width':s}, t, circleFinishedAnimatingHandler);
}

function startCirclesAnimating(){
	
	for (var i=0; i<_circleset.length; i++){
		var myCircle = _circleset[i];
		animateCircle(myCircle);
	}
}

function circleFinishedAnimatingHandler(){
	animateCircle(this);
}


function nextIntBetween(min, max){
	return Math.round(min + ((max - min) * Math.random()));
}
