2011-11-23 6 views
5

Sto realizzando un'applicazione per la pittura con le dita e sto facendo fatica a dare al pennello una piacevole sensazione e consistenza simile a un pennello.Tracciatura dei tracciati utilizzando un colore di motivo per simulare la trama del pennello

ho questo codice:

UIColor * brushTexture = [UIColor colorWithPatternImage:[UIImage imageNamed:@"Brush_Black.png"]]; 
    CGContextSetStrokeColorWithColor(UIGraphicsGetCurrentContext(), brushTexture.CGColor); 

ma la mia uscita è come questo:
Image of Mouse

La trama del mio pennello è piastrellato. Come posso adattarlo alla dimensione del tratto e interrompere la piastrellatura dell'immagine?

+0

Hai scoperto la risposta? –

+0

Avete mai trovato una soluzione a questo ?? – DivineDesert

+0

@Bruno lì! ho risposto! spero che ti aiuti! – SeongHo

risposta

7

Qui ho trovato una soluzione!

UIImage *texture = [UIImage imageNamed:"brush.png"]  
    CGPoint vector = CGPointMake(currentPoint.x - endPoint.x, currentTPoint.y - endPoint.y); 
    CGFloat distance = hypotf(vector.x, vector.y); 
    vector.x /= distance; 
    vector.y /= distance; 
    for (CGFloat i = 0; i < distance; i += 1.0f) { 
     CGPoint p = CGPointMake(endPoint.x + i * vector.x, endPoint.y + i * vector.y); 
     [texture drawAtPoint:p blendMode:blendMode alpha:0.5f]; 
    } 
+0

E la performance su questo è buona? – jjxtra

+1

Potresti fornire un campione per come è stato? So che sto chiedendo molto considerando che questo era più di un anno fa, ma sono anche interessato a questo settore e sto valutando diversi documenti/post online per l'implementazione. – kurtzbot

Problemi correlati