CGAffineTransform的使用

时间:2023-11-17 13:59:20

typedef struct CGAffineTransform CGAffineTransform;

struct CGAffineTransform {

CGFloat a, b, c, d;

CGFloat tx, ty;

};

const CGAffineTransform CGAffineTransformIdentity;

CGAffineTransform CGAffineTransformMake(CGFloat a, CGFloat b,

CGFloat c, CGFloat d, CGFloat tx, CGFloat ty);

CGAffineTransform CGAffineTransformMakeTranslation(CGFloat tx,

CGFloat ty) ;

//大小变化

CGAffineTransform CGAffineTransformMakeScale(CGFloat sx, CGFloat sy);

//旋转

CGAffineTransform CGAffineTransformMakeRotation(CGFloat angle);

bool CGAffineTransformIsIdentity(CGAffineTransform t);

CGAffineTransform CGAffineTransformTranslate(CGAffineTransform t,

CGFloat tx, CGFloat ty);

//在t的基础上放大变化

CGAffineTransform CGAffineTransformScale(CGAffineTransform t,

CGFloat sx, CGFloat sy) ;

CGAffineTransform CGAffineTransformInvert(CGAffineTransform t);

CGAffineTransform CGAffineTransformConcat(CGAffineTransform t1,

CGAffineTransform t2);

bool CGAffineTransformEqualToTransform(CGAffineTransform t1,

CGAffineTransform t2);

CGPoint CGPointApplyAffineTransform(CGPoint point,

CGAffineTransform t);

GSize CGSizeApplyAffineTransform(CGSize size, CGAffineTransform t);

CGRect CGRectApplyAffineTransform(CGRect rect, CGAffineTransform t);