2009-11-30 4 views
0

У меня странная проблема с кварцем. В первый раз, когда я запустил часть кода ниже, линия будет нарисована, как линия справа на изображении. Во второй раз (и каждый раз после) эти строки выполняются, линия будет выглядеть как линия слева. Почему это выглядит так? Это все дряблое и, кажется, темная граница. Если вы нарисуете кривую с непрозрачностью, она будет довольно яркой в ​​первый раз, и очень темная вторая.iPhone Кварцевая кривая неровная и имеет темную границу

CGContextSetRGBFillColor(context, 0.0,0.0,0.0,0.0); 
CGContextClearRect(context, CGRectMake(0, 0, 320, 480)); 
CGContextSetRGBFillColor(context, 0, 0, 0, 0); 
CGContextSetBlendMode(context, kCGBlendModeNormal); 
CGContextSetRGBStrokeColor(context, 1.0, 1.0, 1.0, 1.0); 
CGContextSetLineWidth(context, 4.0); 

CGContextMoveToPoint(context, p1.x, p1.y); 
CGContextAddCurveToPoint(context, cp1.x, cp1.y, cp2.x, cp2.y, p2.x, p2.y); 

CGContextDrawPath(context, kCGPathStroke); 

alt text http://pici.se/pictures/NPTbVloLR.png

ответ

0

сглаживанием OFF? также вы можете убедиться, что значения x и y округлены, так как Quartz Framework отлично не обрабатывает половину.