Я думаю, что 96 - это довольно небольшое число, и вам не нужно об этом слишком беспокоиться. Если вы используете CGPoints, вы можете использовать NSValue для переноса точек (вместо NSStrings), используя его метод [NSValue valueWithCGPoint:] на iPhone или [NSValue valueWithPoint:] в Mac OS X 10.5.
При этом довольно просто создать массив CGPoints, если вы знаете их заранее. Я говорил об этих опциях (для строк, а не для точек) здесь . В этом случае вы можете просто сделать 2D-массив в C следующим образом:
CGPoint myArray[32][3];
А затем используйте его как CGPoint onePoint = myArray[2][1];