# Package javax.media.j3d

Provides the core set of classes for the 3D graphics API for the Java platform; click here for more information, including explanatory material that was formerly found in the guide.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  AudioDevice | The AudioDevice Class defines and encapsulates the audio device's basic information and characteristics.
  AudioDevice3D | The AudioDevice3D class defines a 3D audio device that is used to set sound and aural attributes.
  AudioDevice3DL2 | Extends AudioDevice3D to include reverb and environmental audio parameters that are defined in the MIDI Manufactures' Association Interactive Audio Special Interest Group (MMA IASIG) Level 2 Specification.
  GeometryUpdater | The GeometryUpdater interface is used in updating geometry data that is accessed by reference from a live or compiled GeometryArray object.
  GraphStructureChangeListener | Listener interface for monitoring structural changes to live scene graphs.
  ImageComponent2D.Updater | The ImageComponent2D.Updater interface is used in updating image data that is accessed by reference from a live or compiled ImageComponent object.
  ImageComponent3D.Updater | The ImageComponent3D.Updater interface is used in updating image data that is accessed by reference from a live or compiled ImageComponent object.
  InputDevice | InputDevice is the interface through which Java 3D and Java 3D application programs communicate with a device driver.
  RenderingErrorListener | Listener interface for monitoring Java 3D rendering errors.
  ShaderErrorListener | Listener interface for monitoring errors in Shader Programs.

- Class Summary
  Class | Description
  --- | ---
  Alpha | The alpha NodeComponent object provides common methods for converting a time value into an alpha value (a value in the range 0 to 1).
  AlternateAppearance | The AlternateAppearance leaf node is used for overriding the Appearance component of selected nodes.
  AmbientLight | An ambient light source object.
  Appearance | The Appearance object defines all rendering state that can be set as a component object of a Shape3D node.
  AuralAttributes | The AuralAttributes object is a component object of a Soundscape node that defines environmental audio parameters that affect sound rendering.
  Background | The Background leaf node defines a solid background color and a background image that are used to fill the window at the beginning of each new frame.
  BackgroundSound | A BackgroundSound node defines an unattenuated, nonspatialized sound source that has no position or direction.
  Behavior | The Behavior leaf node provides a framework for adding user-defined actions into the scene graph.
  Billboard | The Billboard behavior node operates on the TransformGroup node to cause the local +z axis of the TransformGroup to point at the viewer's eye position.
  BoundingBox | This class defines an axis aligned bounding box which is used for bounding regions.
  BoundingLeaf | The BoundingLeaf node defines a bounding region object that can be referenced by other nodes to define a region of influence (Fog and Light nodes), an application region (Background, Clip, and Soundscape nodes), or a scheduling region (Sound and Behavior nodes).
  BoundingPolytope | A BoundingPolytope defines a polyhedral bounding region using the intersection of four or more half spaces.
  BoundingSphere | This class defines a spherical bounding region which is defined by a center point and a radius.
  Bounds | The abstract base class for bounds objects.
  BranchGroup | The BranchGroup serves as a pointer to the root of a scene graph branch; BranchGroup objects are the only objects that can be inserted into a Locale's set of objects.
  Canvas3D | The Canvas3D class provides a drawing canvas for 3D rendering.
  CgShaderProgram | The CgShaderProgram object is a concrete implementation of a ShaderProgram node component for NVIDIA's Cg shader language.
  Clip | The Clip leaf node defines the back, or far, clip distance in the virtual universe.
  ColoringAttributes | The ColoringAttributes object defines attributes used in color selection and shading model.
  ColorInterpolator | Color interpolation behavior.
  CompressedGeometry | Deprecated As of Java 3D version 1.4.
  CompressedGeometryHeader | Deprecated As of Java 3D version 1.4.
  ConeSound | The ConeSound node object defines a PointSound node whose sound source is directed along a specific vector in space.
  DecalGroup | The DecalGroup node is an ordered group node used for defining decal geometry on top of other geometry.
  DepthComponent | Abstract base class that defines a 2D array of depth (Z) values.
  DepthComponentFloat | A 2D array of depth (Z) values in floating point format in the range [0,1].
  DepthComponentInt | A 2D array of depth (Z) values in integer format.
  DepthComponentNative | A 2D array of depth (Z) values stored in the most efficient format for a particular device.
  DirectionalLight | A DirectionalLight node defines an oriented light with an origin at infinity.
  DistanceLOD | This class defines a distance-based LOD behavior node that operates on a Switch group node to select one of the children of that Switch node based on the distance of this LOD node from the viewer.
  ExponentialFog | The ExponentialFog leaf node extends the Fog leaf node by adding a fog density that is used as the exponent of the fog equation.
  Fog | The Fog leaf node defines a set of fog parameters common to all types of fog.
  Font3D | The Font3D object is used to store extruded 2D glyphs.
  FontExtrusion | The FontExtrusion object is used to describe the extrusion path for a Font3D object.
  Geometry | Geometry is an abstract class that specifies the geometry component information required by a Shape3D node.
  GeometryArray | The GeometryArray object contains separate arrays of positional coordinates, colors, normals, texture coordinates, and vertex attributes that describe point, line, or polygon geometry.
  GeometryStripArray | The GeometryStripArray object is an abstract class that is extended for a set of GeometryArray strip primitives.
  GLSLShaderProgram | The GLSLShaderProgram object is a concrete implementation of a ShaderProgram node component for the OpenGL GLSL shading language.
  GraphicsConfigTemplate3D | This class is used to obtain a valid GraphicsConfiguration that can be used by Java 3D.
  GraphicsContext3D | A GraphicsContext3D object is used for immediate mode rendering into a 3D canvas.
  Group | The Group node object is a general-purpose grouping node.
  HiResCoord | The HiResCoord object specifies the location of scene components within the Virtual Universe.
  ImageComponent | Abstract class that is used to define 2D or 3D ImageComponent classes used in a Java 3D scene graph.
  ImageComponent2D | This class defines a 2D image component.
  ImageComponent3D | This class defines a 3D image component.
  IndexedGeometryArray | The IndexedGeometryArray object contains separate integer arrays that index into the arrays of positional coordinates, colors, normals, texture coordinates, and vertex attributes.
  IndexedGeometryStripArray | The IndexedGeometryStripArray object is an abstract class that is extended for a set of IndexedGeometryArray strip primitives.
  IndexedLineArray | The IndexedLineArray object draws the array of vertices as individual line segments.
  IndexedLineStripArray | The IndexedLineStripArray object draws an array of vertices as a set of connected line strips.
  IndexedPointArray | The IndexedPointArray object draws the array of vertices as individual points.
  IndexedQuadArray | The IndexedQuadArray object draws the array of vertices as individual quadrilaterals.
  IndexedTriangleArray | The IndexedTriangleArray object draws the array of vertices as individual triangles.
  IndexedTriangleFanArray | The IndexedTriangleFanArray object draws an array of vertices as a set of connected triangle fans.
  IndexedTriangleStripArray | The IndexedTriangleStripArray object draws an array of vertices as a set of connected triangle strips.
  Interpolator | Interpolator is an abstract class that extends Behavior to provide common methods used by various interpolation subclasses.
  J3DBuffer | Java 3D wrapper class for java.nio.Buffer objects.
  J3DGraphics2D | The J3DGraphics2D class extends Graphics2D to provide 2D rendering into a Canvas3D.
  Leaf | The Leaf node is an abstract class for all scene graph nodes that have no children.
  Light | The Light leaf node is an abstract class that defines a set of parameters common to all types of light.
  LinearFog | The LinearFog leaf node defines fog distance parameters for linear fog.
  LineArray | The LineArray object draws the array of vertices as individual line segments.
  LineAttributes | The LineAttributes object defines all rendering state that can be set as a component object of a Shape3D node.
  LineStripArray | The LineStripArray object draws an array of vertices as a set of connected line strips.
  Link | A Link leaf node allows an application to reference a shared graph, rooted by a SharedGroup node, from within a branch graph or another shared graph.
  Locale | A Locale object defines a high-resolution position within a VirtualUniverse, and serves as a container for a collection of BranchGroup-rooted subgraphs (branch graphs), at that position.
  LOD | An LOD leaf node is an abstract behavior class that operates on a list of Switch group nodes to select one of the children of the Switch nodes.
  Material | The Material object defines the appearance of an object under illumination.
  MediaContainer | The MediaContainer object defines all sound data: cached state flag, and associated sound media.
  ModelClip | The ModelClip leaf node defines a set of 6 arbitrary clipping planes in the virtual universe.
  Morph | Deprecated As of Java 3D version 1.4.
  NioImageBuffer | The NioImageBuffer class is a container for an image whose DataBuffer is specified via a java.nio.Buffer.
  Node | The Node class provides an abstract class for all Group and Leaf Nodes.
  NodeComponent | NodeComponent is a common superclass for all scene graph node component objects such as: Geometry, Appearance, Material, Texture, etc.
  NodeReferenceTable | The NodeReferenceTable object is used by a leaf node's `updateNodeReferences` method called by the `cloneTree` method.
  OrderedGroup | The OrderedGroup node is a Group that ensures its children render in a specified order.
  OrientedShape3D | The OrientedShape3D leaf node is a Shape3D node that is oriented along a specified axis or about a specified point.
  PathInterpolator | PathInterpolator behavior.
  PhysicalBody | This object contains a specification of the user's head.
  PhysicalEnvironment | This object contains a specification of the physical environment in which the view will be generated.
  PickBounds | PickBounds is a finite pick shape defined with a Bounds object.
  PickCone | PickCone is the abstract base class of all cone pick shapes.
  PickConeRay | PickConeRay is an infinite cone ray pick shape.
  PickConeSegment | PickConeSegment is a finite cone segment pick shape.
  PickCylinder | PickCylinder is the abstract base class of all cylindrical pick shapes.
  PickCylinderRay | PickCylinderRay is an infinite cylindrical ray pick shape.
  PickCylinderSegment | PickCylinderSegment is a finite cylindrical segment pick shape.
  PickInfo | The PickInfo object contains the computed information about a pick hit.
  PickPoint | Deprecated As of Java 3D version 1.4, use PickBounds with a BoundingSphere that has a small radius.
  PickRay | PickRay is an infinite ray pick shape.
  PickSegment | PickSegment is a line segment pick shape.
  PickShape | An abstract class for describing a pick shape that can be used with the BranchGroup and Locale picking methods.
  PointArray | The PointArray object draws the array of vertices as individual points.
  PointAttributes | The PointAttributes object defines all attributes that apply to point primitives.
  PointLight | The PointLight object specifies an attenuated light source at a fixed point in space that radiates light equally in all directions away from the light source.
  PointSound | The PointSound node (a sub-class of the Sound node) defines a spatially located sound source whose waves radiate uniformly in all directions from a given location in space.
  PolygonAttributes | The PolygonAttributes object defines attributes for rendering polygon primitives.
  PositionInterpolator | Position interpolator behavior.
  PositionPathInterpolator | PositionPathInterpolator behavior.
  QuadArray | The QuadArray object draws the array of vertices as individual quadrilaterals.
  Raster | The Raster object extends Geometry to allow drawing a raster image that is attached to a 3D location in the virtual world.
  RenderingAttributes | The RenderingAttributes object defines common rendering attributes for all primitive types.
  RenderingError | RenderingError is a container object that holds the details of a runtime error that occurs in the Java 3D rendering system.
  RotationInterpolator | Rotation interpolator behavior.
  RotationPathInterpolator | RotationPathInterpolator behavior.
  RotPosPathInterpolator | RotPosPathInterpolator behavior.
  RotPosScalePathInterpolator | RotPosScalePathInterpolation behavior.
  ScaleInterpolator | Scale interpolation behavior.
  SceneGraphObject | SceneGraphObject is the common superclass for all scene graph objects.
  SceneGraphPath | A SceneGraphPath object represents the path from a Locale to a terminal node in the scene graph.
  Screen3D | The Screen3D Object contains all information about a particular screen.
  Sensor | The Sensor Class encapsulates an object that provides real-time data.
  SensorRead | A SensorRead encapsulates all the information associated with a single reading of a sensor, including a timestamp, a transform, and, optionally, button values.
  Shader | The Shader object is the abstract base class for programmable shader code.
  ShaderAppearance | The ShaderAppearance object defines programmable shading attributes that can be set as a component object of a Shape3D node.
  ShaderAttribute | The ShaderAttribute object encapsulates a uniform attribute for a shader programs.
  ShaderAttributeArray | The ShaderAttributeArray object encapsulates a uniform shader attribute whose value is specified explicitly.
  ShaderAttributeBinding | The ShaderAttributeBinding object encapsulates a uniform attribute whose value is bound to a Java 3D system attribute.
  ShaderAttributeObject | The ShaderAttributeObject class is an abstract class that encapsulates a uniform shader attribute whose value is specified explicitly.
  ShaderAttributeSet | The ShaderAttributeSet object provides uniform attributes to shader programs.
  ShaderAttributeValue | The ShaderAttributeValue object encapsulates a uniform shader attribute whose value is specified explicitly.
  ShaderError | ShaderError is a container object that holds the details of a runtime error that occurs while compiling or executing a programmable shader.
  ShaderProgram | The ShaderProgram node component object is the abstract base class for programmable shader programs.
  Shape3D | The Shape3D leaf node specifies all geometric objects.
  SharedGroup | The SharedGroup provides the ability to manipulate an instanced scene graph.
  Sound | Sound node is an abstract class that defines the properties common to all sound sources.
  Soundscape | The Soundscape Leaf Node defines the attributes that characterize the listener's environment as it pertains to sound.
  SourceCodeShader | The SourceCodeShader object is a shader that is defined using text-based source code.
  SpotLight | The SpotLight object specifies an attenuated light source at a fixed point in space that radiates light in a specified direction from the light source.
  Switch | The Switch node controls which of its children will be rendered.
  SwitchValueInterpolator | SwitchValueInterpolator behavior.
  TexCoordGeneration | The TexCoordGeneration object contains all parameters needed for automatic texture coordinate generation.
  Text3D | A Text3D object is a text string that has been converted to 3D geometry.
  Texture | The Texture object is a component object of an Appearance object that defines the texture properties used when texture mapping is enabled.
  Texture2D | Texture2D is a subclass of Texture class.
  Texture3D | Texture3D is a subclass of Texture class.
  TextureAttributes | The TextureAttributes object defines attributes that apply to texture mapping.
  TextureCubeMap | TextureCubeMap is a subclass of Texture class.
  TextureUnitState | The TextureUnitState object defines all texture mapping state for a single texture unit.
  Transform3D | A generalized transform object represented internally as a 4x4 double-precision floating point matrix.
  TransformGroup | Group node that contains a transform.
  TransformInterpolator | TransformInterpolator is an abstract class that extends Interpolator to provide common methods used by various transform related interpolator subclasses.
  TransparencyAttributes | The TransparencyAttributes object defines all attributes affecting transparency of the object.
  TransparencyInterpolator | TransparencyInterpolator behavior.
  TriangleArray | The TriangleArray object draws the array of vertices as individual triangles.
  TriangleFanArray | The TriangleFanArray object draws an array of vertices as a set of connected triangle fans.
  TriangleStripArray | The TriangleStripArray object draws an array of vertices as a set of connected triangle strips.
  View | The View object contains all parameters needed in rendering a three dimensional scene from one viewpoint.
  ViewPlatform | The ViewPlatform leaf node object controls the position, orientation and scale of the viewer.
  ViewSpecificGroup | The ViewSpecificGroup node is a Group whose descendants are rendered only on a specified set of views.
  VirtualUniverse | A VirtualUniverse object is the top-level container for all scene graphs.
  WakeupAnd | Class specifying any number of wakeup conditions ANDed together.
  WakeupAndOfOrs | Class specifying any number of OR wakeup conditions ANDed together.
  WakeupCondition | An abstract class specifying a single wakeup Condition.
  WakeupCriterion | An abstract class specifying a singleton wakeup Criterion.
  WakeupOnActivation | Class specifying a wakeup the first time an active Viewplatform's activation volume intersects with this object's scheduling region.
  WakeupOnAWTEvent | Class that specifies a Behavior wakeup when a specific AWT event occurs.
  WakeupOnBehaviorPost | Class that specifies a Behavior wakeup when a specific behavior object posts a specific event
  WakeupOnCollisionEntry | Class specifying a wakeup when the specified object collides with any other object in the scene graph.
  WakeupOnCollisionExit | Class specifying a wakeup when the specified object no longer collides with any other object in the scene graph.
  WakeupOnCollisionMovement | Class specifying a wakeup when the specified object moves while in collision with any other object in the scene graph.
  WakeupOnDeactivation | Class specifying a wakeup on first detection of a Viewplatform's activation volume no longer intersecting with this object's scheduling region.
  WakeupOnElapsedFrames | Class specifying a wakeup when a specific number of frames have elapsed.
  WakeupOnElapsedTime | Class specifying a wakeup when a specific number of milliseconds have elapsed.
  WakeupOnSensorEntry | Class specifying a wakeup on first sensor intersection with the specified boundary.
  WakeupOnSensorExit | Class specifying a wakeup on first detection of sensors no longer intersecting the specified boundary.
  WakeupOnTransformChange | Class specifying a wakeup when the transform within a specified TransformGroup changes
  WakeupOnViewPlatformEntry | Class specifying a wakeup when an active ViewPlatform intersects the specified boundary.
  WakeupOnViewPlatformExit | Class specifying a wakeup when an active ViewPlatform no longer intersects the specified boundary.
  WakeupOr | Class specifying any number of wakeup conditions ORed together.
  WakeupOrOfAnds | Class specifying any number of AND wakeup conditions ORed together.

- Enum Summary
  Enum | Description
  --- | ---
  ImageComponent.ImageClass | Used to specify the class of the image being wrapped.
  NioImageBuffer.ImageType | Used to specify the type of the image.

- Exception Summary
  Exception | Description
  --- | ---
  BadTransformException | Indicates an attempt to use a Tranform3D object that is inappropriate for the object in which it is being used.
  CapabilityNotSetException | Indicates an access to a live or compiled Scene Graph object without the required capability set.
  DanglingReferenceException | During a `cloneTree` call an updated reference was requested for a node that did not get cloned.
  IllegalRenderingStateException | Indicates an illegal state for rendering.
  IllegalSceneGraphException | Indicates an illegal Java 3D scene graph.
  IllegalSharingException | Indicates an illegal attempt to share a scene graph object.
  MultipleParentException | Indicates an attempt to add a node that is already a child of one group node, into another group node.
  RestrictedAccessException | Indicates an attempt to access or modify a state variable without permission to do so.
  SceneGraphCycleException | Indicates a graph that contains a cycle.
  SoundException | Indicates a problem in loading or playing a sound sample.

## Package javax.media.j3d Description

Provides the core set of classes for the 3D graphics API for the Java platform; click here for more information, including explanatory material that was formerly found in the guide.

The 3D API is an application programming interface used for writing three-dimensional graphics applications and applets. It gives developers high-level constructs for creating and manipulating 3D geometry and for constructing the structures used in rendering that geometry. Application developers can describe very large virtual worlds using these constructs, which provide the runtime system with enough information to render these worlds efficiently.

Copyright 1996-2008 Sun Microsystems, Inc. All Rights Reserved. Use is subject to license terms.