Title:
Interactive web-based virtual reality with java 3D
Personal Author:
Publication Information:
Hershey, PA : IGI Global, 2009
Physical Description:
xv, 475 p. : ill. ; 26 cm.
ISBN:
9781599047898
Added Author:
Available:*
Library | Item Barcode | Call Number | Material Type | Item Category 1 | Status |
---|---|---|---|---|---|
Searching... | 30000010190915 | QA76.73.J38 K595 2009 | Open Access Book | Book | Searching... |
On Order
Summary
Summary
With the emergence of the Java 3D API, the creation of high quality 3D animated graphics for Java applications and applets becomes a possibility. With numerous aspects of the business, science, medical, and educational fields implementing this technology, the need for familiarity of Java 3D amplifies.""Interactive Web-Based Virtual Reality with Java 3D"" provides both advanced and novice programmers with comprehensive, detailed coverage of all of the important issues in Java 3D. This essential book delivers illustrations of essential keywords, syntax, and methods to provide an easy-to-read learning experience for the reader.
Table of Contents
Preface | p. ix |
Chapter I Virtual Reality and Java 3D | p. 1 |
Introduction | p. 1 |
Interactive 3D Computer Graphics | p. 1 |
Virtual Reality | p. 3 |
Web-Based Virtual Reality | p. 5 |
VRML | p. 6 |
Java 3D | p. 8 |
Mixed Reality | p. 10 |
Summary | p. 11 |
References | p. 12 |
Chapter II Java 3D Overview | p. 18 |
Introduction | p. 18 |
Getting Started | p. 19 |
A Simple Java 3D Program for a RotatingCube | p. 20 |
Scene Graph Basics | p. 22 |
Scene Graph for the RotatingCube | p. 24 |
View Branch for the RotatingCube | p. 25 |
Content Branch for the RotatingCube | p. 26 |
Branch Group | p. 27 |
Transform Group | p. 28 |
Simple Universe | p. 28 |
Difference Between Java 3D Applet and Application | p. 29 |
Summary | p. 30 |
References | p. 30 |
Chapter III Geometry Objects | p. 32 |
Introduction | p. 32 |
Shape3D | p. 32 |
GeometryArray Class | p. 35 |
GeometryStripArray | p. 43 |
IndexedGeometryArray | p. 56 |
IndexedStripArray | p. 63 |
Creating an Object Using Multiple Geometry Classes | p. 69 |
Utility Class | p. 71 |
Summary | p. 72 |
References | p. 73 |
Chapter IV Appearance Objects | p. 75 |
Introduction | p. 75 |
PointAttributes | p. 79 |
LineAttributes | p. 82 |
PolygonAttributes | p. 82 |
ColoringAttributes | p. 86 |
TransparencyAttributes | p. 87 |
RenderingAttributes | p. 89 |
Material | p. 93 |
Summary | p. 95 |
References | p. 96 |
Chapter V Textures | p. 97 |
Introduction | p. 97 |
Texture Loading | p. 98 |
Texture Coordinates | p. 99 |
Texture Properties | p. 100 |
Texture Attributes | p. 101 |
Texture Coordinate Generation | p. 103 |
Multilevel Texturing | p. 106 |
MultiTexture | p. 106 |
Texture in Applets | p. 110 |
Summary | p. 112 |
References | p. 112 |
Chapter VI Lighting, Fog, and Background | p. 114 |
Introduction | p. 114 |
Material | p. 115 |
Ambient Light | p. 117 |
Directional Light | p. 118 |
Point Light | p. 120 |
Spot Light or Cone Light | p. 122 |
Light Scopes | p. 122 |
Fog | p. 124 |
Background | p. 128 |
Summary | p. 130 |
References | p. 130 |
Chapter VII Animation Objects | p. 132 |
Introduction | p. 132 |
Behavior and Animation | p. 133 |
Alpha Object | p. 133 |
Interpolator Object | p. 134 |
PositionInterpolator | p. 135 |
PositionPathInterpolator | p. 136 |
RotationInterpolator | p. 138 |
RotationPathInterpolator | p. 138 |
RotPosPathInterpolator | p. 140 |
ScaleInterpolator | p. 142 |
RotPosScalePathInterpolator | p. 143 |
SwitchValueInterpolator | p. 144 |
TransparencyInterpolator | p. 145 |
ColorInterpolator | p. 146 |
Billboard | p. 146 |
Level of Detail (LOD) | p. 153 |
Morph | p. 155 |
Summary | p. 158 |
References | p. 158 |
Chapter VIII Interaction | p. 159 |
Introduction | p. 159 |
Behavior Class | p. 160 |
Bounding Region | p. 163 |
Wakeup Condition and Criterion | p. 165 |
Keyboard and Mouse Events | p. 168 |
Posted Events | p. 169 |
Collision Events | p. 176 |
Elapsed Time and Frame Events | p. 176 |
Events due to Changes in Positions and Transforms | p. 180 |
Platform Entry and Exit Events | p. 183 |
Sensor Entry and Exit Events | p. 185 |
Combining Different Wakeup Criteria | p. 185 |
Summary | p. 186 |
References | p. 186 |
Chapter IX Picking | p. 188 |
Introduction | p. 188 |
PickRotateBehavior, PickTranslateBehavior, and PickZoomBehavior | p. 189 |
Picking Classes in General | p. 189 |
Customizing Picking Behavior Class | p. 193 |
PickTool | p. 194 |
Point and Ray Picking Shape | p. 195 |
Ray Segment Picking Shape | p. 196 |
Cone Picking Shape | p. 201 |
Cylinder Picking Shape | p. 206 |
Picking Objects within a Specified Bound from a Certain Position | p. 209 |
Picking in a Virtual Instrument Panel | p. 212 |
Summary | p. 215 |
References | p. 215 |
Chapter X Navigation, Input Devices, and Collision | p. 217 |
Introduction | p. 217 |
Keyboard Navigation Using KeyBoardBehavior | p. 218 |
User Defined Keyboard Navigation | p. 219 |
Navigation Using Mouse Utility Class | p. 223 |
User-Defined Mouse Navigation | p. 227 |
Input Device | p. 229 |
Sensors | p. 232 |
Collisions | p. 234 |
Summary | p. 236 |
References | p. 237 |
Chapter XI Multiple Views | p. 238 |
Introduction | p. 238 |
View Model | p. 239 |
Single View | p. 240 |
Multiple Views | p. 243 |
View Attach Policy and Activation Radius | p. 245 |
Projection Policy | p. 246 |
Clip Distance | p. 248 |
Window Eyepoint Policy and Field of View | p. 248 |
Conventional Camera-Based View | p. 249 |
Visibility, Screen Scale, Window Movement, and Frame Cycle Time | p. 252 |
Canvas3D | p. 252 |
PhysicalBody and PhysicalEnvironment | p. 258 |
Example Applications | p. 260 |
Summary | p. 263 |
References | p. 263 |
Chapter XII Audio | p. 264 |
Introduction | p. 264 |
BackgroundSound | p. 265 |
PointSound | p. 266 |
ConeSound | p. 268 |
Aural Environment | p. 269 |
Summary | p. 273 |
References | p. 275 |
Chapter XIII A Web-Based 3D Real Time Oscilloscope Experiment | p. 276 |
Introduction | p. 276 |
System Reference Model and Working Principle | p. 279 |
Scene Graph and Main Applet | p. 279 |
Control Buttons, Sliders, Knobs, and Other Objects | p. 282 |
Custom Behavior | p. 283 |
Navigation Behavior | p. 284 |
Collision Detection Behavior | p. 285 |
Picking Behavior | p. 286 |
Summary | p. 288 |
References | p. 288 |
Appendix A Downloading Software | p. 290 |
Appendix B Running the Rotating Cube Program | p. 295 |
Appendix C ViewManager | p. 301 |
Appendix D Main Applet for Web-Based 3D Experiment | p. 308 |
Appendix E Scene Graph Implementation for Web-Based 3D Experiment | p. 322 |
Appendix F Knob Class for Web-Based 3D Experiment | p. 350 |
Appendix G Navigation and Collision Detection for Web-Based 3D Experiment | p. 355 |
Appendix H Picking for Web-Based 3D Experiment | p. 371 |
Appendix I Program Summary and Screen Capture | p. 441 |
About the Authors | p. 469 |
Index | p. 470 |