CGFloat pointRatio = i/sides;
Когда вы делите 2 целых числа, результат также будет целым числом - 0 в вашем случае.Вы должны убедиться, что будет выполнено деление с плавающей запятой:
CGFloat pointRatio = 1.0f*i/sides;
// Or even better
CGFloat pointRatio = i/(CGFloat)sides;
Кстати, почему вы не хотите рисовать окружность, используя встроенную функцию:
CGPathAddEllipseInRect(path, NULL,
CGRectMake(centerX - radius, centerY - radius, 2*radius, 2*radius));