| |
| |
| |
Visualization, Media, and Imaging on the Java Platform | |
| |
| |
3D Modeling and Visualization with Java 3D | |
| |
| |
The Java Media Framework | |
| |
| |
Loading and Manipulating Images | |
| |
| |
Summary | |
| |
| |
| |
2D Graphics and Imaging on the Java Platform: The Java 2D, Java Advanced Imaging, and Java Image I/O APIs | |
| |
| |
| |
Imaging and Graphics on the Java Platform | |
| |
| |
Evolution of Graphics and Imaging on the Java Platform | |
| |
| |
Graphics Versus Imaging | |
| |
| |
Coordinate Spaces: User Space and Device Space | |
| |
| |
Finding Out About Device Space | |
| |
| |
What Is Rendering? | |
| |
| |
Graphics Context | |
| |
| |
The Basic Recipe for Rendering in Java 2D | |
| |
| |
Imaging Fundamentals | |
| |
| |
Java Images: A Raster and a ColorModel | |
| |
| |
The Immediate Mode Rendering Model | |
| |
| |
Rendering Independence: The Renderable and Rendered Imaging Layers | |
| |
| |
The Pull Model | |
| |
| |
Graphics Capabilities in JAI | |
| |
| |
Client-Server Imaging | |
| |
| |
Image I/O | |
| |
| |
Summary | |
| |
| |
| |
Graphics Programming with the Java 2D API | |
| |
| |
The Basic Java 2D Recipe | |
| |
| |
Set the Graphics2D Context ... | |
| |
| |
...and Render Something | |
| |
| |
Rendering on Components | |
| |
| |
Shape Primitives | |
| |
| |
Graphics Stroking | |
| |
| |
Fill Attributes and Painting | |
| |
| |
Transparency and Compositing | |
| |
| |
Text | |
| |
| |
Clipping | |
| |
| |
Coordinate Space Transformations | |
| |
| |
Techniques for Graphical User Input | |
| |
| |
Double Buffering | |
| |
| |
Comprehensive Example: Kspace Visualization | |
| |
| |
Summary | |
| |
| |
| |
Immediate Mode Imaging Model | |
| |
| |
Push Imaging Model | |
| |
| |
Pixel Storage and Conversion | |
| |
| |
Immediate Mode Imaging Model | |
| |
| |
Summary | |
| |
| |
| |
Image I/O API | |
| |
| |
Image Formats | |
| |
| |
Reading and Writing Basics | |
| |
| |
Service Provider Interfaces | |
| |
| |
IIOParam Classes | |
| |
| |
Metadata | |
| |
| |
Final Plug-in Code | |
| |
| |
ch5ImageMetadata | |
| |
| |
Summary | |
| |
| |
| |
Java Advanced Imaging | |
| |
| |
Introduction | |
| |
| |
JAI Image Classes | |
| |
| |
The JAI Class | |
| |
| |
JAI IO | |
| |
| |
Advanced Topics | |
| |
| |
Native Acceleration | |
| |
| |
Summary | |
| |
| |
| |
Time-Based Media: The Java Media Framework | |
| |
| |
| |
Time-Based Media and the JMF: An Introduction | |
| |
| |
Time-Based Media | |
| |
| |
Processing Media | |
| |
| |
Audio Primer | |
| |
| |
Video Primer | |
| |
| |
What Is the JMF? | |
| |
| |
Java and Time Based Media: A Short History | |
| |
| |
Media Formats and Content Types Supported by JMF | |
| |
| |
Levels of Usage of the JMF API | |
| |
| |
Programming Paradigms When Using JMF | |
| |
| |
Structure of the API | |
| |
| |
Time--A Central Concept | |
| |
| |
Bare Bones Player Applet--A First Applet Using JMF | |
| |
| |
Summary | |
| |
| |
| |
Controlling and Processing Media with JMF | |
| |
| |
Detailed Time Model | |
| |
| |
The Control and Processing Chains | |
| |
| |
Managing the Complexity | |
| |
| |
It's All About Control | |
| |
| |
Sourcing Media and Media Format | |
| |
| |
MediaHandler | |
| |
| |
Playing Media | |
| |
| |
Conserving Media | |
| |
| |
PlugIns | |
| |
| |
Processing Media | |
| |
| |
Media Capture | |
| |
| |
Summary | |
| |
| |
| |
RTP and Advanced Time-Based Media Topics | |
| |
| |
What's RTP? | |
| |
| |
RTP with the JMF | |
| |
| |
Extending the JMF | |
| |
| |
JMFCustomizer | |
| |
| |
Synchronization | |
| |
| |
The JMF in Conjunction with Other APIs | |
| |
| |
Java Sound | |
| |
| |
Future Directions for the JMF | |
| |
| |
Summary | |
| |
| |
| |
Visualization and Virtual Environments: The Java 3D API | |
| |
| |
| |
3D Graphics, Virtual Reality, and Visualization | |
| |
| |
What Is 3D? | |
| |
| |
The Java 3D Scene Graph | |
| |
| |
Inside the Rendering Pipeline | |
| |
| |
Thread Scheduling | |
| |
| |
Geometric Modeling | |
| |
| |
Reducing Unnecessary Rendering Through Culling | |
| |
| |
Spatial Transformation | |
| |
| |
The Java 3D View Model | |
| |
| |
Particle Systems | |
| |
| |
Texture Mapping | |
| |
| |
Modeling Light and Shadows | |
| |
| |
User Interaction in 3D Space | |
| |
| |
Unjarring the Java 3D Utilities | |
| |
| |
Summary | |
| |
| |
| |
Creating the Virtual World | |
| |
| |
Revisiting the Java 3D Scene Graph | |
| |
| |
Recipe for Writing a Java 3D Application | |
| |
| |
Organizing the Scene Graph Through BranchGroups | |
| |
| |
Grouping Scene Graph Elements | |
| |
| |
Adding Prebuilt Behaviors to the Scene Graph | |
| |
| |
Capability Bits | |
| |
| |
Using 3D Geometry | |
| |
| |
Texture Mapping | |
| |
| |
Backgrounds | |
| |
| |
Lighting | |
| |
| |
Fog | |
| |
| |
Adding 3D Sound | |
| |
| |
Vector Math Library | |
| |
| |
| |
MR Physics Visualization | |
| |
| |
| |
Neuronal Spike Visualization | |
| |
| |
Summary | |
| |
| |
| |
Interaction with the Virtual World | |
| |
| |
Types of 3D User Interaction | |
| |
| |
The Behavior Class | |
| |
| |
Picking | |
| |
| |
Navigation | |
| |
| |
Collision Detection and Avoidance | |
| |
| |
Level of Detail | |
| |
| |
Using Swing with Java 3D | |
| |
| |
The BillboardBehavior | |
| |
| |
Animation Through Interpolators and Alpha Objects | |
| |
| |
Introduction to Sensors | |
| |
| |
| |
The Java 3D View Model | |
| |
| |
The Big Chain of Transforms | |
| |
| |
Advantages of the Java 3D View Model | |
| |
| |
Policy Matters | |
| |
| |
The Most Basic Example | |
| |
| |
Stereo Viewing | |
| |
| |
Head Tracking and the Sensor Class | |
| |
| |
Using Java 3D's View Model as a Camera Model | |
| |
| |
Building a CAVE or Wedge with Java 3D | |
| |
| |
Summary | |
| |
| |
| |
Bringing It All Together: Integrated Java Media Applications | |
| |
| |
| |
Integrating the Java Media APIs | |
| |
| |
Integrated Applications | |
| |
| |
JMF-J3D Interactions: Prototype for a Streaming 3D Chat Room | |
| |
| |
ROAM: Java-JAI-J3D Image Tiling Example | |
| |
| |
Summary | |
| |
| |
Index | |