2012-08-17 70 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