Re: Issues with CIFilters and CALayers
Re: Issues with CIFilters and CALayers
- Subject: Re: Issues with CIFilters and CALayers
- From: Gordon Apple <email@hidden>
- Date: Thu, 27 Feb 2014 11:38:16 -0600
- Thread-topic: Issues with CIFilters and CALayers
Thank you. I would have never found that. But what does “enabled” do? Or,
more precisely, what does “not enabled” do? If a filter is not enabled, does
that mean it is transparent and simply passes input to output? I can’t
believe something so simple in concept as a freeze filter is so difficult to
implement. CIFilters are black magic. They just don’t seem to follow the
usual expectations of software constructs.
I did get my highlighting filter to work, using color blend and/or a
GaussianBlur embedded filter for the background, with controllable
parameters. The user can even live-draw and edit the clear areas of the
filter (used as a transient layer in a presentation layer stack). It
provides a very nice effect for drawing attention to specific areas.
On 2/27/14 9:42 AM, "Kevin Meaney" <email@hidden> wrote:
> 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@hidden> 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?
>> >
>> >
_______________________________________________
Cocoa-dev mailing list (email@hidden)
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:
This email sent to email@hidden