# Class AmbientLight

java.lang.Object
javax.media.j3d.SceneGraphObject
javax.media.j3d.Node
javax.media.j3d.Leaf
javax.media.j3d.Light
javax.media.j3d.AmbientLight

public class AmbientLight extends Light
An ambient light source object. Ambient light is that light that seems to come from all directions. The AmbientLight object has the same attributes as a Light node, including color, influencing bounds, scopes, and a flag indicating whether this light source is on or off. Ambient reflections do not depend on the orientation or position of a surface. Ambient light has only an ambient reflection component. It does not have diffuse or specular reflection components.

For more information on Java 3D lighting, see the class description for Light.

## Field Summary

### Fields inherited from class Light

`ALLOW_COLOR_READ, ALLOW_COLOR_WRITE, ALLOW_INFLUENCING_BOUNDS_READ, ALLOW_INFLUENCING_BOUNDS_WRITE, ALLOW_SCOPE_READ, ALLOW_SCOPE_WRITE, ALLOW_STATE_READ, ALLOW_STATE_WRITE`

### Fields inherited from class Node

`ALLOW_AUTO_COMPUTE_BOUNDS_READ, ALLOW_AUTO_COMPUTE_BOUNDS_WRITE, ALLOW_BOUNDS_READ, ALLOW_BOUNDS_WRITE, ALLOW_COLLIDABLE_READ, ALLOW_COLLIDABLE_WRITE, ALLOW_LOCAL_TO_VWORLD_READ, ALLOW_LOCALE_READ, ALLOW_PARENT_READ, ALLOW_PICKABLE_READ, ALLOW_PICKABLE_WRITE, ENABLE_COLLISION_REPORTING, ENABLE_PICK_REPORTING`

## Constructor Summary

Constructors
Constructor
Description
`AmbientLight()`
Constructs and initializes an ambient light using default parameters.
`AmbientLight(boolean lightOn, javax.vecmath.Color3f color)`
Constructs and initializes an ambient light using the specified parameters.
`AmbientLight(javax.vecmath.Color3f color)`
Constructs and initializes an ambient light using the specified parameters.

## Method Summary

Modifier and Type
Method
Description
`Node`
`cloneNode(boolean forceDuplicate)`
Used to create a new instance of the node.

### Methods inherited from class Light

`addScope, getAllScopes, getColor, getEnable, getInfluencingBoundingLeaf, getInfluencingBounds, getScope, indexOfScope, insertScope, numScopes, removeAllScopes, removeScope, removeScope, setColor, setEnable, setInfluencingBoundingLeaf, setInfluencingBounds, setScope, updateNodeReferences`

### Methods inherited from class Node

`cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, duplicateNode, getBounds, getBoundsAutoCompute, getCollidable, getLocale, getLocalToVworld, getLocalToVworld, getParent, getPickable, setBounds, setBoundsAutoCompute, setCollidable, setPickable`

### Methods inherited from class SceneGraphObject

`clearCapability, clearCapabilityIsFrequent, duplicateSceneGraphObject, getCapability, getCapabilityIsFrequent, getName, getUserData, isCompiled, isLive, setCapability, setCapabilityIsFrequent, setName, setUserData, toString`

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

## Constructor Details

### AmbientLight

public AmbientLight()
Constructs and initializes an ambient light using default parameters.

### AmbientLight

public AmbientLight(javax.vecmath.Color3f color)
Constructs and initializes an ambient light using the specified parameters.

Parameters:
  `color` - the color of the light source.

### AmbientLight

public AmbientLight(boolean lightOn, javax.vecmath.Color3f color)
Constructs and initializes an ambient light using the specified parameters.

Parameters:
  `lightOn` - flag indicating whether this light is on or off.
  `color` - the color of the light source.

## Method Details

### cloneNode

public Node cloneNode(boolean forceDuplicate)
Used to create a new instance of the node. This routine is called by `cloneTree` to duplicate the current node.

Overrides:
  `cloneNode` in class `Node`
Parameters:
  `forceDuplicate` - when set to `true`, causes the `duplicateOnCloneTree` flag to be ignored. When `false`, the value of each node's `duplicateOnCloneTree` variable determines whether NodeComponent data is duplicated or copied.
See Also:
  - `Node.cloneTree()`
  - `Node.cloneNode(boolean)`
  - `Node.duplicateNode(Node, boolean)`
  - `NodeComponent.setDuplicateOnCloneTree(boolean)`