First a note. The name property is declared as a CACIFilterAdditions in CACIFilterAdditions.h.
I think you will need to draw the CIImage to your CIContext and then generate a CGImage to capture its state for future reference and then generate a new CIImage from the CGImage. I believe the CIImage that is the output of a filter is more a recipe about how to generate an image and not a bitmap representation of the image which I think is where your problem lies. Kevin Sent from my iPhone On 24 Feb 2014, at 17:28, Gordon Apple <[email protected]> wrote: > Apparently, my comment about not understanding this construct for > setValueForKeyPath was correct. It actually works. I finally got the > highlighting filter to work and update properly. Now I¹m trying to do > something much simpler, i.e., construct a freezeFilter. Nothing I¹ve tried > so far works. Apparently, a CIFilter is expected to be stateless function > such as outputImage = f(inputImage, parameters). Not accepting this premiss, > I decided to try caching the first output image ( from the outputImage > method), then return the cashed image thereafter, an ultra simple concept, > except that it does not work. Any reason, besides what I postulated, why > this shouldn¹t work? > > > On 2/23/14 3:06 PM, "Gordon Apple" <[email protected]> wrote: > >> We have run into a number is issues trying to use CIFilters with CALayers: >> >> 1. When a layer is hidden, its filters, especially background filters, should >> be temporarily removed, or at least bypassed. Hiding the layer should make >> if >> effectively non-existent in the displayed layer stack. >> >> 2. The docs should tell you that in a CIFilter you cannot auto-synthesize >> filter input parameters. This simply does not work, especially for >> inputImage. >> >> 3. The docs for CALayer filters and background filters say you should name >> your filters for use in changing parameters. I.e., filter.name = @²myFilter². >> Amazingly, this works, in spite of the fact that there is no public property >> called ³name² for a CIFilter. >> >> 4. The example keyPath makes no sense whatsoever, unless we just don¹t >> understand keyPaths: >> >> [layer setValue:XXX forKeyPath:@²backgroundFilters.myFilter.filterParam²]; >> >> backgroundFilters is an array of filters. myFilter is a property value of >> some >> element of the array. (huh?) >> >> 5. We need some decent documentation of what in GL Shading Language is >> actually relevant to writing ciKernels, besides the one page addendum >> provided. >> >> 6. And, of course, the problem we have already mentioned in a previous post >> about getting a CALayer to update when a filter parameter is changed. > > > _______________________________________________ > > 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: > https://lists.apple.com/mailman/options/cocoa-dev/ktam%40yvs.eu.com > > This email sent to [email protected] _______________________________________________ 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: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to [email protected]
