在三角形区域iphone中绘制图像

时间:2010-05-10 14:16:52

标签: iphone

我使用这段代码绘制一个三角形

CGPoint center;

center = CGPointMake(x1, x2);
CGContextMoveToPoint(context, center.x, center.y);
for(int i = 0; i < 3; i++)
{
    switch (i) {
        case 0:
            CGContextAddLineToPoint(context, y1, y2);
            break;
        case 1:
            CGContextAddLineToPoint(context, z1, z2);
            break;
        case 2:
            CGContextAddLineToPoint(context, x1, x2);
            break;
        default:
            break;
    }

}

现在我的uiview绘制了三角形。我的图像大小应为(420 * 300)。我想在三角形区域加载此图像。 (不在此三角区域之外)。

任何人都可以帮助我吗?

提前致谢.....

1 个答案:

答案 0 :(得分:3)

将行添加到上下文调用CGContextClip后,然后绘制图像(CGContextDrawImage)。您的图像将被路径剪裁。如果愿意,您可以使用相同的路径将三角形绘制为线条。

你可能会发现你的图像是颠倒的,所以你可能需要在绘制前应用变换 - 例如:

CGContextTranslateCTM ( context, 0, image.size.height );