如何在iPad App中使用Glow效果绘制线条

时间:2012-10-02 12:35:05

标签: iphone objective-c ipad

我已经在我的应用程序中集成了一条线。我没有使用OpenGl或任何其他类似的框架。现在我想给这些线条添加发光效果。知道怎么做吗?

1 个答案:

答案 0 :(得分:1)

使用UIBezierPath作为绘制线,如下面的代码......

您可以按以下方式初始化UIBezierPath

    UIBezierPath *myPath=[[UIBezierPath alloc]init];
    myPath.lineWidth=10;
    brushPattern=[UIColor redColor]; //This is the color of my stroke

然后你有Touch方法来处理和跟踪你的触摸坐标。当您在屏幕上开始触摸时,您会要求UIBezierPath移动到该触摸点

UITouch *mytouch=[[touches allObjects] objectAtInd
[myPath moveToPoint:[mytouch locationInView:self]];

当您移动手指时,您可以通过以下方式在TouchMoved方法中的BezierPath中添加这些点

UITouch *mytouch=[[touches allObjects] objectAtIndex:0];
[myPath addLineToPoint:[mytouch locationInView:self]];

由于我们需要不断刷新屏幕,所以一旦我们绘制它就出现在屏幕上,我们通过在TouchMethod中调用以下方法来刷新UIView子类,这样一旦BezierPath发生任何变化,它就会反映在屏幕上。

[self setNeedsDisplay];

谈论为您完成所有绘图的drawRect方法,您需要在屏幕上设置笔划的颜色(笔触颜色表示将在屏幕上完成绘画的颜色。)以及混合模式。您可以尝试不同的混合模式并查看结果。

- (void)drawRect:(CGRect)rect
{
    [brushPattern setStroke];
    [myPath strokeWithBlendMode:kCGBlendModeNormal alpha:1.0];

}

另见以下链接..

http://soulwithmobiletechnology.blogspot.in/2011/05/uibezierpath-tutorial-for-iphone-sdk-40.html

我希望这可以帮助你...

:)