On Jul 22, 2016, at 1:08 AM, Trygve Inda <cocoa...@xericdesign.com> wrote:
> 
>> But that’s not a great way to do this. You’ve made an image, you’ve encoded 
>> it
>> as TIFF data, then you’ve made a new image, which has decoded the TIFF data 
>> to
>> make a new image rep/bitmap.
>> 
>> You could just add the representation directly to a new NSImage (warning:
>> typed into Mail, check method names):
>> 
>> NSImage* myImage = [[NSImage alloc] initWithSize:NSMakeSize(width,height)];
>> 
>> [myImage addRepresentation:theBitmapIMadeFirst];
>> 
>> [theBitmapIMadeFirst release]; // because NSImage retained it
> 
> 
> I don't think the second part will work because of my workflow:
> 
> At Launch: Create pixel buffer that is 1000 x 1000 pixels
> 
> Looping thread
> 1. Fill pixel buffer with pixels based on some algorithm
> 2. create an NSImage with these pixels
> 3. pass it to the main thread to be drawn in a window
> Restart the loop with a  slightly modified algorithm
> 
> If calling this:
> [myImage addRepresentation:theBitmapIMadeFirst];
> 
> Only causes the NSImage to retain it, then when I change the pixels in the
> bitmap, they get changed in the NSImage.
> 
> I need the NSImage to keep the pixels as they existed when I created it.

Hint: NSBitmapImageRep conforms to the NSCopying protocol.

Regards,
Ken


_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to