1. 程式人生 > >IOS開發中的CGFloat、CGPoint、CGSize和CGRect

IOS開發中的CGFloat、CGPoint、CGSize和CGRect

http://developer.apple.com/library/ios/#documentation/GraphicsImaging/Reference/CGGeometry/Reference/reference.html

CGGeometry類定義幾何元素的結構和操作幾何元素的函式。

1、資料型別:

CGFloat: 浮點值的基本型別
CGPoint: 表示一個二維座標系中的點
CGSize: 表示一個矩形的寬度和高度
CGRect: 表示一個矩形的位置和大小

typedef float CGFloat;// 32-bit
typedef double CGFloat;// 64-bit

struct CGPoint {
    CGFloat x;
    CGFloat y;
};
typedef struct CGPoint CGPoint;

struct CGSize {
    CGFloat width;
    CGFloat height;
};
typedef struct CGSize CGSize;

struct CGRect {
    CGPoint origin;
    CGSize size;
};
typedef struct CGRect CGRect;

注意:CGRect資料結構的高度和寬度可以是負數。例如,一個矩形的原點是[0.0,0.0]和大小是[10.0,10.0]。這個矩形完全等同原點是[10.0,10.0]和大小是[-10.0,-10.0]的矩形。

2、使用值來建立幾何元素的方法

CGPointMake
CGRectMake
CGSizeMake

CGPoint CGPointMake (
   CGFloat x,
   CGFloat y
);

CGSize CGSizeMake (
   CGFloat width,
   CGFloat height
);

CGRect CGRectMake (
   CGFloat x,
   CGFloat y,
   CGFloat width,
   CGFloat height
);
    CGFloat ten=10.0f;
    CGPoint point = CGPointMake(0.0f, 0.0f);
    CGSize size = CGSizeMake(10.0f, 10.0f);
    CGRect rect = CGRectMake(point.x, point.y, size.width, size.height);
    NSLog(@"ten: %f", ten);
    NSLog(@"point: %@", NSStringFromCGPoint(point));
    NSLog(@"size: %@", NSStringFromCGSize(size));
    NSLog(@"rect: %@", NSStringFromCGRect(rect));