UIBezierPath と-touches...
UIView のメソッドを使用して簡単な描画コードを作成しました。絵はうまくいきますが、私はいくつかの悪い経験をしました.
私が非常にゆっくりと絵を描いているとき、それはうまく機能します。しかし、速く描けば描くほど、線はエッジの効いたものになります。では、それらを「滑らか」にしてエッジの効かない(ポイントを増やす)にはどうすればよいですか?
setLineWidth
太い線幅で使用すると、線が非常に醜くなります。
これは、醜いが実際に 何を意味するかを示す画像です。
なんであんなに太い線が引けるの!?
編集:ここにいくつかのコード
- (void)drawInRect:(CGRect)rect
{
for(UIBezierPath *path in pathArray) {
[[UIColor blackColor] setStroke];
[path setLineWidth:50.0];
[path stroke];
}
}
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
startPoint = [[touches anyObject] locationInView:self];
}
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{
UIBezierPath *path = [UIBezierPath bezierPath];
[path moveToPoint:startPoint];
[path addLineToPoint:[[touches anyObject] locationInView:self]];
if(isDrawing) {
[pathArray removeLastObject];
}
else {
isDrawing = YES;
}
[pathArray addObject:path];
[path close];
[self setNeedsDisplay];
}
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
{
isDrawing = NO;
}
誰かがこれらの問題で私を助けてくれることを願っています。どうもありがとう、よろしく、ジュリアン