Core Animation - Overview

Overview

Core Animation provides a way for developers to produce animated user interfaces via an implicit animation model as well as an "explicit" model. The developer specifies the original and final states of an object, and Core Animation handles interpolation. This allows animated interfaces to be created with relative ease, as no specific code for the animation is required by the developer.

Core Animation can animate any visual element, and it provides a unified way of accessing Core Image, Core Video, and the other Quartz technologies. Like the rest of the graphics model, Core Animation can be accelerated by a graphics processor (GPU).

Animated sequences execute in a thread independent from the main run loop, allowing application processing to occur while the animation is in progress. In this way, application performance is not affected, and animations can be stopped, reversed, or retargeted while in progress.

Updating an existing Cocoa application to use Core Animation should be a simple process. The standard GUI widgets and windows used by the application need be initially registered into a Core Animation setup function. Beyond that, core animation code can be largely segregated from standard GUI logic.

Read more about this topic:  Core Animation