2011-11-23 23 views
5

Estoy haciendo una aplicación de pintar con los dedos y me está costando darle a mi pincel una agradable sensación y textura de pincel.Trazos de acarreo utilizando un patrón de color para simular la textura del pincel

tengo este código:

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

pero mi salida es la siguiente:
Image of Mouse

La textura de mi cepillo es de baldosas. ¿Cómo puedo adaptarlo al tamaño del trazo y detener el mosaico de la imagen?

+0

¿Has descubierto la respuesta? –

+0

¿Alguna vez has encontrado una solución a esto? – DivineDesert

+0

@Bruno allí! ¡respondí! Espero que ayude! – SeongHo

Respuesta

7

¡Aquí encontré una solución!

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

¿Y el rendimiento en esto es bueno? – jjxtra

+1

¿Podría proporcionar una muestra de cómo se veía esto? Sé que estoy pidiendo mucho considerando que esto fue hace más de un año, pero también estoy interesado en esta área y estoy evaluando varios documentos/publicaciones en línea para su implementación. – kurtzbot

Cuestiones relacionadas