Hi,
I'm applying a Core Image filter to an image in a NSImageView
subclass. The drawing works fine, except it leaks memory, not sure
why. This is my drawRect method. Anything wrong with it? Thanks.
- (void) drawRect:(NSRect)rect
{
[[self image] setFlipped:YES];
CIImage *image = [CIImage imageWithData:[[self image]
TIFFRepresentation]];
if (image !=nil) {
CIFilter *filter = [CIFilter filterWithName:@"CIGaussianBlur"];
[filter setDefaults];
[filter setValue: image forKey: @"inputImage"];
[filter setValue: [NSNumber numberWithFloat:0.7] forKey:
@"inputRadius"];
image = [filter valueForKey: @"outputImage"];
filter = [CIFilter filterWithName:@"CIPerspectiveTransform"];
[filter setDefaults];
[filter setValue: image forKey: @"inputImage"];
[filter setValue:[CIVector vectorWithX:NSMinX(rect)
Y:NSMinY(rect) +
bLeft ] forKey:@"inputBottomLeft"];
[filter setValue:[CIVector vectorWithX:NSMaxX(rect)
Y:NSMinY(rect) +
bRight ] forKey:@"inputBottomRight"];
[filter setValue:[CIVector vectorWithX:NSMinX(rect)
Y:NSMaxY(rect) +
tLeft ] forKey:@"inputTopLeft"];
[filter setValue:[CIVector vectorWithX:NSMaxX(rect)
Y:NSMaxY(rect) +
tRight ] forKey:@"inputTopRight"];
image = [filter valueForKey: @"outputImage"];
CGRect cg;
CIContext *context = [[NSGraphicsContext currentContext]
CIContext];
cg = CGRectMake(NSMinX(rect), NSMinY(rect), NSWidth(rect),
NSHeight(rect));
[context drawImage:image
atPoint:cg.origin
fromRect:cg];
}
}
_______________________________________________
Cocoa-dev mailing list ([email protected])
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com
This email sent to [EMAIL PROTECTED]