|
3D User Interfaces with Java 3D Jon Barrilleaux 2000 | 520 pages ISBN: 1884777902 |
|||
![]() |
$49.95 | Softbound print book | |
![]() |
$25.00 | PDF ebook | |
Software Changes
History for Version 2.0This version of the software takes advantage of Java 3D 1.2 to fix many of the problems with the original software. It also contains several new classes, which support navigation and common control needs. This is the preferred version, although some minor classes no longer match those described in the book.
All examples have been tested under Java 1.3 and Java 3D 1.2. Because of a bug in Java 3D 1.2, a couple of the examples will only work properly with Java 1.1. To facilitate use of the software under Java 3D 1.1 and 1.2, methods deprecated under 1.2 are still used.
The following is a detailed summary of the changes in this version.
- examples
- CameraNavigating - New. Demonstrates the fly and orbit cameras.
- TextureShading - New. Demonstrates shapes with simultaneous texturing, shading, and transparency.
- j3dui.navigate.*
- OrbitCamera - New. Orbit camera class.
- OrbitCameraControl - New. Default controller for the orbit camera.
- FlyCamera - New. Flying camera class.
- FlyCameraControl - New. Default controller for the fly camera.
- j3dui.control.*
- AbsoluteDragger - New. Convenience class that bundles input drag sensors and filters for absolute mouse and keyboard dragging.
- RelativeDragger - New. Convenience class that bundles input drag sensors and filters for relative mouse and keyboard dragging.
- DirectMapper - New. Convenience class that bundles an input drag mapper and plugin for direct input drag actuation.
- DrmTranslationMapper - New. Convenience class that bundles intuitive and source mappers for DRM translation actuation.
- DrmRotationMapper - New. Convenience class that bundles intuitive and source mappers for DRM rotation actuation.
- WrmTranslationMapper - New. Convenience class that bundles intuitive and source mappers for WRM translation actuation.
- j3dui.control.inputs.*
- InputDragFilterPlugin - Added method stopInputDrag().
- OffsetInputDragPlugin - Added method allowActiveOffset().
- AccelerateInputDragFilter - New. Interprets input drags as accelerations, with the new rate maintained between drags.
- j3dui.control.inputs.sensors.*
- Awt???Sensor - New. A complete set of AWT-based mouse and keyboard sensor classes to replace the Behavior-based ones. All include method getEventOut() for access to a built-in output event splitter.
- ???Sensor - All old sensors have been deprecated and replaced with the new versions throughout the software.
- j3dui.control.mappers.*
- InputDragMapper - Added method getEventOut() for access to a built-in output event splitter.
- j3dui.control.mappers.intuitive.*
- IntuitiveDragMapper - Added method getEventOut() for access to a built-in output event splitter.
- SourceDragMapper - Added method getEventOut() for access to a built-in output event splitter.
- j3dui.feedback.elements.*
- TextureShape - Added method setShading() for support of object shading (if shape geometry contains normals), which works in conjunction with texturing and transparency.
- j3dui.visualize.*
- As a result of a J3D 1.2 bug fix and a workaround for a remaining bug, visualization techniques that require the external view geometry (WorldOverlay, etc.) no longer jitter.
- As a result of a J3D 1.2 bug fix, SwitchNode works correctly in multiple views.
- ChangePoster - Deprecated. (See j3dui.visualize.change.*)
- j3dui.visualize.change.*
- ???ChangeSensor - New. These classes completely replace the ChangePoster kludge. The new change detection model is integrated into the Actuator class for easy and reliable use, and completely avoids the use of J3D behaviors.
- ViewChange??? - New. These classes support a ViewChangeTarget event.
- NodeExternalChange??? - New. These classes support a NodeExternalChangeTarget event.
DESCRIPTION
3D User Interfaces with Java 3D is a practical guide for providing next-generation applications with 3D user interfaces for manipulation of in-scene objects. Emphasis is on standalone and web-based business applications, such as for online sales and mass customization, but much of what this book offers has broad applicability to 3D user interfaces in other pursuits such as scientific visualization and gaming.This book provides an extensive conceptual framework for 3D user interface techniques, and an in-depth introduction to user interface support in the Java 3D API, including such topics as picking, collision, and drag-and-drop. Many of the techniques are demonstrated in a Java 3D software framework included with the book, which also provides developers with many general-purpose building blocks for constructing their own user interfaces.
Applications and their use of 3D are approached realistically. The book is geared towards sophisticated user interfaces for the "everyday user" who doesn't have a lot of time to learn another application--much less a complicated one--and an everyday computer system without exotic devices like head mounted displays and data gloves. Perhaps the best description of this book is: "A roadmap from Java 3D to 'Swing 3D'."
Translation rights for 3D User Interfaces with Java 3D have been granted for Korea. If you are interested in learning where to buy this book in a language other than English, please inquire at your local bookseller.
ABOUT THE AUTHOR...
Jon Barrilleaux is a consultant specializing in the application of 3D graphics, imaging, and virtual reality to solving real world problems. He has over 20 years experience in software development, R&D, and project management, including 14 years in 3D graphics, imaging, and information processing, and 6 years in virtual reality, augmented reality, and computer simulation.
He has been involved in numerous projects to develop 2D and 3D user interfaces for research, training, electronic library, product configuration, e-commerce, and end-user applications. Barrilleaux has B.S. and M.S. degrees in Electrical Engineering from Rice University, TX.

