1 前言
使用 CGAffineTransformMakeTranslation 函數創建一個仿射位移變換(affine translation transformation)。將被繪制到圖形環境上的一切,到一個新的位置,而不需要修改你的繪圖代碼。
2 代碼實例
ZYViewControllerView.m
[plain] - (void)drawRect:(CGRect)rect{
CGMutablePathRef path = CGPathCreateMutable();
CGRect rectangle = CGRectMake(10.0f, 10.0f, 200.0f,
300.0f);
//將矩形向右移動100而縱向不變
CGAffineTransform transform = CGAffineTransformMakeTranslation(100.0f, 0.0f);
/* Add the rectangle to the path */
CGPathAddRect(path,&transform, rectangle);
/* Get the handle to the current context */
CGContextRef currentContext = UIGraphicsGetCurrentContext();
/* Add the path to the context */
CGContextAddPath(currentContext,path);
/* Set the fill color to cornflower blue */
[[UIColor colorWithRed:0.20f green:0.60f blue:0.80f alpha:1.0f] setFill];
/* Set the stroke color to brown */
[[UIColor brownColor] setStroke];
/* Set the line width (for the stroke) to 5 */
CGContextSetLineWidth(currentContext,5.0f);
/* Stroke and fill the path on the context */
CGContextDrawPath(currentContext,kCGPathFillStroke);
/* Dispose of the path */
CGPathRelease(path);
}