Intro
Speaker's qualifications
The Big Question - 1
The Big Question - 2
The Big Question - 3
The Big Question - 4
The Big Question - 5
No, no, no
Presentation Goal
Agenda
Agenda - Graphics
Graphics
GlassPane: Not just a pane in the glass
GlassPane: example
Gradients - 1
Gradients - 2
Gradients: Example - 1
Gradients: Example - 2
Alpha Composite
Alpha Composite: SrcOver - 1
Alpha Composite: SrcOver - 2
Alpha Composite: DstIn
DstIn: Example
Agenda
Animation: It's About Time
Timers: Wakeup Calls
javax.swing.Timer
Beyond the Built-in Timers
Timing Framework
Timing Framework: The Basics - 1
Timing Framework: The Basics - 2
BasicRace: The Code
TimingFramework: Advanced
Non-Linear Interpolation
Interpolation: Acceleration/Deceleration
Interpolation: Interpolator interface
LinearInterpolator
DiscreteInterpolator
SplineInterpolator
PropertySetter
PropertySetter Example
SetterRace: The Code
But Wait, There's More!
Animation: Summary
Agenda
Animated Transitions
AnimTrans
AnimTrans: Example
AnimTrans: How it Works
AnimTrans: Tips and Tricks
Agenda
JOGL
Historical 3D/Swing Interaction
New in JavaSE 6: GLJPanel
Agenda
Bring Life to Your Applications
Transitions
Fade to Black, Timing Code
Fade to Black, Painting Code
Highlights
Highlights, Timing Code
Progress Indicators
Progress, Timing Code
Progress, Painting Code
Motion
Animation and whizzy graphical effects can be totally gratuitous, but they can also be used to make applications more effective and users more productive. This session examines fundamentals of timing and animation and shows techniques for implementing cool effects on Swing components. It also discusses recent advances in combining 2-D and 3-D effects in the Java Platform, Special Edition (Java SE) 6 ("Mustang") release.
Chet Haase is a Java Platform, Standard Edition (Java SE) client architect in the Java Desktop Group. He works with the client teams to make Java technology on the desktop more productive, useful, and successful. This means tracking desktop application development in general and making sure that Java software meets and hopefully exceeds developer requirements. His background is in graphics, both 2D and 3D, so he tend to focus more on graphics-specific issues in general, such as performance and graphical effects for GUI toolkits. He writes about Desktop Java issues such as graphics, performance, and Swing effects on blog at http://weblogs.java.net/blog/chet.
Romain Guy is a French student currently working as an intern with the Swing Team at Sun Microsystems. He has 7 years of experience in Java development, as an Open Source and freelance developer. He also works as a freelance journalist for a French computing magazine, as a translator for OReilly and taugh Java in a University. Today Romain focuses on UI design and humane interaction.