2012-08-17 69 views
3

我一直试图在Core Graphics中绘制一个三角形一段时间。我已经知道如何通过我不太确定这是否是最好的方法。在Core Graphics中画一个三角形

我也想不出如何居中在UIView

这里是我的代码

CGMutablePathRef path = CGPathCreateMutable(); 
CGPathMoveToPoint(path, NULL,10, 100); 
CGPathAddLineToPoint(path, NULL,100,10); 
CGPathAddLineToPoint(path, NULL,200,100); 
CGPathAddLineToPoint(path, NULL,100,100); 
CGPathCloseSubpath(path); 

CGContextSetFillColorWithColor(context, white); 
CGContextAddPath(context, path); 
CGContextFillPath(context); 

回答

1

为中心的三角形,你就必须做一些数学 - 有实际上是三角形的几个“中心”,但是从每个顶点到对面线的中心绘制线的那个中心,将中心定义为这些线交叉的位置。这个中心很容易找到,通过平均x值和y值 - 所以在你有(10,100),(100,10)和(200,100)作为顶点的情况下,中心将是(10 + 100 +200/3,100 + 10 + 100/3)或(103.3,70)。全屏320宽460高的iPhone的中心位于(160,230)。因此,基本上,您需要将三角形中心和屏幕中心之间的差异添加到每个点 - 将x值和160-703.3添加到每个y点,然后绘制相同的三角形,但居中屏幕。

+0

谢谢谢谢 – 2012-08-20 04:57:34