アプリケーションに線の描画を統合しました。私はOpenGlまたは他の同様のフレームワークを使用していません。今、私はこれらの線にグロー効果を与えたいと思います。それを行う方法はありますか?
1 に答える
以下のコードのように線を描くためにUIBezierPathを使用してください...
次のようにUIBezierPathを初期化できます
UIBezierPath *myPath=[[UIBezierPath alloc]init];
myPath.lineWidth=10;
brushPattern=[UIColor redColor]; //This is the color of my stroke
次に、タッチの座標を処理および追跡するタッチメソッドがあります。画面上でタッチが始まると、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
これがお役に立てば幸いです...
:)