function path_addPosition(x, y)
{
	var pos = new Array('x', 'y');
	pos['x'] = x;
	pos['y'] = y;
	var p = this.positions;
	var pl = p.length;
	p[pl] = pos;
}

function path_getPosition(index)
{
	return this.positions[index];
}

function path_addArc(arcframes, radius, x, y, startradian, radians)
{
	if (startradian == undefined)
	{
		startradian = 0;
	}
	if (radians == undefined)
	{
		radians = 6.3;
	}
	x = parseInt(x);
	y = parseInt(y);
	for(i = 0; i < arcframes; i++) {
		var wavepoint = startradian + (radians / arcframes) * (i + 1);
		var newx = parseInt(x) + Math.sin(wavepoint) * radius;
		var newy = parseInt(y) + Math.cos(wavepoint) * radius;
		this.addPosition(newx, newy);
//		alert('adding' + newx + ' ' + newy + ' wp:' + wavepoint);
	}


}

function path_addIrregularArc(arcframes, xradius, yradius, x, y, startradian, radians)
{
	if (startradian == undefined)
	{
		startradian = 0;
	}
	if (radians == undefined)
	{
		radians = 6.3;
	}
	x = parseInt(x);
	y = parseInt(y);
	for(i = 0; i < arcframes; i++) {
		var wavepoint = startradian + (radians / arcframes) * (i + 1);
		var newx = parseInt(x) + Math.sin(wavepoint) * xradius;
		var newy = parseInt(y) + Math.cos(wavepoint) * yradius;
		this.addPosition(newx, newy);
	}
}

function path()
{
	this.positions = new Array();
	this.addPosition = path_addPosition;
	this.getPosition = path_getPosition;
	this.addArc = path_addArc;
	this.addIrregularArc = path_addIrregularArc;
}