Home > Store > Programming > Java
Filthy Rich Clients: Developing Animated and Graphical Effects for Desktop Java™ Applications
- By Chet Haase, Romain Guy
- Published Aug 9, 2007 by Addison-Wesley Professional. Part of the Java Series series.
- Copyright 2008
- Dimensions: 7x9-1/4
- Pages: 608
- Edition: 1st
- Book
- ISBN-10: 0-13-241393-0
- ISBN-13: 978-0-13-241393-0
Register your product to gain access to bonus material or receive a coupon.
Product Author Bios
Chet Haase is a client architect in the Java SE group at Sun Microsystems. Passionate about graphics, he works with all desktop Java technologies, including Swing and Java 2D. He’s worked with graphics technologies from 2D to 3D and from applications down to the driver level. Chet holds an M.S. in computer and information sciences from the University of Oregon and a B.A. in math from Carleton College.
Romain Guy has served as a software engineer at Google and on the Swing Team at Sun Microsystems. His primary interests are graphics and graphical user interface development. Romain has written for several print and online journals, and he holds an M.S. in computer and information sciences.
Filthy Rich Clients refers to ultra-graphically rich applications that ooze cool. They suck the user in from the outset and hang on to them with a death grip of excitement. Filthy Rich Clients: Developing Animated and Graphical Effects for Desktop Java™ Applications shows you how to build better, more effective, cooler desktop applications that intensify the user experience.
The keys to Filthy Rich Clients are graphical and animated effects. These kinds of effects provide ways of enhancing the user experience of the application through more attractive GUIs, dynamic effects that give your application a pulse, and animated transitions that keep your user connected to the logical flow of the application. The book also discusses how to do so effectively, making sure to enrich applications in sensible ways.
In-depth coverage includes
- Graphics and GUI fundamentals: Dig deep into the internals of how Swing and Java 2D work together to display GUI applications onscreen. Learn how to maximize the flexibility of these libraries and use them most effectively.
- Performance: Follow in-depth discussions and tips throughout the book that will help you write high-performing GUI applications.
- Images: Understand how images are created and used to make better Java applications.
- Advanced graphics: Learn more about elements of Swing and Java 2D that are of particular benefit to Filthy Rich Clients.
- Animation: Discover general concepts of animation, as well as how to use the facilities provided in the Java platform. Learn new utility libraries that vastly simplify animations in Java.
- Effects: Learn how to create, customize, and use static and animated effects—the mainstays of Filthy Rich Clients.
Code examples illustrate key concepts, and the book’s companion Web site, http://filthyrichclients.org, includes extensive demos, utility libraries, additional information on related technologies, and more.
Informal, fun, and, most of all, useful, this book is great for any developer working with Java to build desktop applications.
Related Articles
Chet Haase and Romain Guy Talk Java UI
Enhance Java GUIs with Windows Icons
Introduce Animated Cursors to Java GUIs, Part 1
|
38 of 39 people found the following review helpful
This review is from: Filthy Rich Clients: Developing Animated and Graphical Effects for Desktop Java Applications (Paperback)
This is one of those "fun books" on Java that you used to see so much of in the 90's but are pretty much no longer written. This book is about building better desktop applications that employ interesting graphical and animated effects. This book was meant to be worked through from beginning to end, although if you are already familiar with the technology that does not mean you can't skip around. The book has plenty of code and some math. However, as in the example in the section on morphing, the book does not try to get into heavy-duty math. If there are open source libraries that do the trick, as there are in the case of morphing effects, the authors refer you to that library. They do explain math if all it involves is something on the level of fairly simple matrix algebra - blurring for example. The book is not a primer on Swing. It assumes the reader has experience in that area. However, some of the touchier aspects of Swing that may not be self-evident to even experienced Swing...
Read more
4 of 4 people found the following review helpful
This review is from: Filthy Rich Clients: Developing Animated and Graphical Effects for Desktop Java Applications (Paperback)
This book will save you hours of trouble shooting the little things that don't work as intuitively as they should in Java.I have not found an un-useful idea here. It also shows you how to make your application more efficient (faster). The author has already done the timing tests and offer you the results and the routes you should take. All in all, a fantastic find.
3 of 3 people found the following review helpful
This review is from: Filthy Rich Clients: Developing Animated and Graphical Effects for Desktop Java Applications (Paperback)
To push java's ui capabilities has in the past been a bit of a struggle due to the many ways of dealing with Swing, repaints, events, animation etc. This book is an absolute life saver in terms of presenting a unified best practice strategy for everything a ui developer would wish to do in java. It creates very simple applications with solid explanations of what the code is doing, from the low level to the high level. It is also written in a very personable style and the book moves easily and logically through the related material. I wish I had read this book 4 years ago.
|
› See all 11 customer reviews...
Online Sample Chapter
Using Java 2D's Image-Processing Model
Index
Preface
Foreword
Introduction
Table of Contents
Foreword xvii
Preface xix
Acknowledgments xxv
About the Authors xxvii
Introduction 1
Part I: Graphics and GUI Fundamentals 9
Chapter 1: Desktop Java Graphics APIs: Swing, AWT, and Java 2D 11
Abstract Window Toolkit (AWT) 12
Java 2D 13
Swing 13
Chapter 2: Swing Rendering Fundamentals 15
Events 16
Swing Painting 17
Swing Rendering 20
Double-Buffering 28
Threading 31
Chapter 3: Graphics Fundamentals 43
Java 2D 43
Rendering 45
Chapter 4: Images 91
Image Types 92
BufferedImage 95
Image Scaling 98
Chapter 5: Performance 115
Use the Clip 115
Compatible Images 121
Managed Images 126
Intermediate Images 134
Optimal Primitive Rendering 143
Benchmark 144
Command-Line Flags 145
Part II: Advanced Graphics Rendering 151
Chapter 6: Composites 153
AlphaComposite 153
AlphaComposite: The 12 Rules 155
Creating and Setting Up an AlphaComposite 163
Common Uses of AlphaComposite 164
Issues with AlphaComposite 168
Create Your Own Composite 170
Summary 177
Chapter 7: Gradients 179
Two-Stops Linear Gradient 179
Special Effects with Regular Gradients 182
Multistops Linear Gradient 187
Radial Gradient 189
Optimizing Gradients 193
Chapter 8: Image Processing 199
Image Filters 200
Processing an Image with BufferedImageOp 201
AffineTransformOp 203
ColorConvertOp 204
ConvolveOp 206
LookupOp 211
RescaleOp 213
Custom BufferedImageOp 214
A Note about Filters Performance 222
Summary 222
Chapter 9: Glass Pane 223
Painting on the Glass Pane 225
Blocking Input Events 230
Chapter 10: Layered Panes 237
Using Layered Pane Layers 238
Ordering Components within a Single Layer 242
Layered Panes and Layouts 243
Alternative to JLayeredPane with Layouts 244
Chapter 11: Repaint Manager 249
When Swing Gets Too Smart 249
Meet the RepaintManager 251
A Reflection on RepaintManager 253
Summary 262
Part III: Animation 263
Chapter 12: Animation Fundamentals 265
It’s About Time 265
Fundamental Concepts 266
Frame-Based Animation 266
Timing (and Platform Timing Utilities) 275
Resolution 288
Animating Your Swing Application 300
Summary 314
Chapter 13: Smooth Moves 315
Background: Why Does My Animation Look Bad? 315
What Makes Animations Choppy, and How to Smooth Them Out 316
SmoothMoves: The Demo 335
Summary 341
Chapter 14: Timing Framework: Fundamentals 343
Introduction 343
Core Concepts 345
Interpolation 359
Summary 378
Chapter 15: Timing Framework: Advanced Features 379
Triggers 379
Property Setters 392
Summary 420
Part IV: Effects 421
Chapter 16: Static Effects 423
Blur 423
Reflection 434
Drop Shadows 437
Highlights 442
Sharpening 450
Summary 458
Chapter 17: Dynamic Effects 459
Motion 460
Fading 465
Pulse 473
Spring 484
Morphing 489
Summary 495
Chapter 18: Animated Transitions 497
Animating Application State Segues 497
Animated Transitions: The Library 501
Example: SearchTransition 503
Example: SearchTransition Revisited: Customization 516
Example: ImageBrowser 519
Animated Transitions: Under the Hood, or How Do You Get Swing to Do That? 527
Summary 530
Chapter 19: Birth of a Filthy Rich Client 531
Aerith 531
Workflow Paper Design 533
The Vision 535
Screen Paper Design 537
Mockup 538
From Mockup to Code 540
But . . . I’m Not an Artist! 544
Choosing Nice Colors 545
Read Design Books 547
Summary 548
Conclusion 549
Index 553
Downloadable Sample Chapter

This book includes free shipping!
This book includes free shipping!
eBook (Watermarked)
$47.99
$38.39
Includes EPUB, MOBI, and PDF
About eBook Formats
This eBook includes the following formats, accessible from your Account page after purchase:
EPUBThe open industry format known for its reflowable content and usability on supported mobile devices.
MOBIThe eBook format compatible with the Amazon Kindle and Amazon Kindle applications.
PDFThe popular standard, used most often with the free Adobe® Reader® software.
This eBook requires no passwords or activation to read. We customize your eBook by discretely watermarking it with your name, making it uniquely yours.
- Request an Instructor or Media review copy.
- Corporate, Academic, and Employee Purchases
- International Buying Options
Get access to thousands of books and training videos about technology, professional development and digital media from more than 40 leading publishers, including Addison-Wesley, Prentice Hall, Cisco Press, IBM Press, O'Reilly Media, Wrox, Apress, and many more. If you continue your subscription after your 30-day trial, you can receive 30% off a monthly subscription to the Safari Library for up to 12 months. That's a total savings of $199.

