if Affine then return; end

Affine = {
	Transform = function(vList, xOff, yOff)
		assert(vList, "No vertex list given.")
		
		xOff = xOff or 0;
		yOff = yOff or 0;
		
		for _, vert in pairs(vList) do
			vert.x = vert.x + xOff
			vert.y = vert.y + yOff
		end
	end,
	
	Rotate = function(vList, angle)
		assert(vList, "No vertex list given.")
		
		angle = angle or 0;
		
		for _, vert in pairs(vList) do
			vert.x = vert.x * cos(angle) - vert.y * sin(angle)
			vert.y = vert.x * sin(angle) + vert.y * cos(angle)
		end
	end,
	
	Scale = function(vList, xScale, yScale)
		assert(vList, "No vertex list given.")
		
		xScale = xScale or 1;
		yScale = yScale or 1;
		
		for _, vert in pairs(vList) do
			vert.x = vert.x * xScale
			vert.y = vert.y * yScale
		end				
	end,
}