NSArrayにCGRectとかCGPointとかCGSizeを格納する方法

ここが参考になった。
http://discussions.apple.com/thread.jspa?messageID=8157595


数値に対してNSNumberがあるように、
NSValueっていうラッパークラスがあるらしい。

CGRect rect = CGRectMake(x,y,w,h);
NSValue *rectValue = [NSValue valueWithCGRect:rect];


NSValueからCGRectを取り出す場合は

CGRect rect = [someNSValue CGRectValue];


NSValueのメソッド定義みるとこんな感じ

+ (NSValue *)valueWithCGPoint:(CGPoint)point;
+ (NSValue *)valueWithCGSize:(CGSize)size;
+ (NSValue *)valueWithCGRect:(CGRect)rect;
+ (NSValue *)valueWithCGAffineTransform:(CGAffineTransform)transform;
+ (NSValue *)valueWithUIEdgeInsets:(UIEdgeInsets)insets;