İlk iki saniyede iki UIImageView var. İkinci görüntünün parçasını görünür yapmak için fırça ile ilk görüntü parçasını silmek istiyorum (fırça yumuşak kenarlı bir png resim).UIImageView parçasını png-brush ve UIBezierPath ile silme
yaptığım bu arada: ve touchesMoved
1) [kendini setNeedsDisplayInRect: [kendini brushRectForPoint: touch_location]]; (CGRect) I çağrı rect'in:
2) (void) drawRect de [_brush drawAtPoint: touch_location blendMode: kCGBlendModeDestinationOut alfa: 1];
Tamam çalışır, ancak sıklığı yerine tek bir uzun hat kullanıcısı çok hızlı parmağını hareket ederse o zaman kısa çizgilerle (hatta puan) bir sürü olsun, yeterli touchesMoved.
Ben UIBezierPath ve example bilgisini bulundu ama yazar sadece yoluna göre çizgiler çizer:
Ben UIBezierPath ile benim png fırça çizebilirsiniz nasılCGContextRef context = UIGraphicsGetCurrentContext();
CGContextAddPath(context, path);
CGContextSetLineCap(context, kCGLineCapRound);
CGContextSetLineWidth(context, self.lineWidth);
CGContextSetStrokeColorWithColor(context, self.lineColor.CGColor);
CGContextStrokePath(context);
?
Bu
teşekkür gibi bir şey çok ihtiyacım var!
Dokunma konumunun hareketli ortalaması nasıl? Bu biraz gecikme (arzu edilen veya olmayacak) getirecek, ancak "atlayış" düzleştirecektir. MA periyodu ne kadar uzun olursa, pürüzsüz olur, ancak daha fazla gecikme olur. – verec
Tamam, anlıyorum, ama elbette gecikme iyi değil. Her neyse, fikrin için teşekkürler. Bu konuda bir şeyler yapmaya çalışacağım. –