com.jme.light
Class Light

java.lang.Object
  extended bycom.jme.light.Light
All Implemented Interfaces:
java.io.Serializable
Direct Known Subclasses:
AmbientLight, DirectionalLight, PointLight

public abstract class Light
extends java.lang.Object
implements java.io.Serializable

Light defines the attributes of a light element. This class is abstract and intended to be subclassed by specific lighting types. A light will illuminate portions of the scene by assigning its properties to the objects in the scene. This will affect the objects color values, depending on the color of the ambient, diffuse and specular light components. Ambient light defines the general light of the scene, that is the intensity and color of lighting if no particular lights are affecting it. Diffuse lighting defines the reflection of light on matte surfaces. Specular lighting defines the reflection of light on shiny surfaces.

Version:
$Id: Light.java,v 1.4 2004/07/06 05:04:10 cep21 Exp $
Author:
Mark Powell
See Also:
Serialized Form

Field Summary
static int LT_AMBIENT
          defines the lighting type as ambient.
static int LT_DIRECTIONAL
          defines the lighting type as directional.
static int LT_POINT
          defines the lighting type as point.
static int LT_SPOT
          defines the lighting type as spot.
 
Constructor Summary
Light()
          Constructor instantiates a new Light object.
 
Method Summary
 ColorRGBA getAmbient()
          getAmbient returns the ambient color value for this light.
 float getConstant()
          getConstant returns the value for the constant attenuation.
 ColorRGBA getDiffuse()
          getDiffuse returns the diffuse color value for this light.
 float getLinear()
          getLinear returns the value for the linear attenuation.
 float getQuadratic()
          getQuadratic returns the value for the quadratic attentuation.
 ColorRGBA getSpecular()
          getSpecular returns the specular color value for this light.
abstract  int getType()
          getType returns the type of the light that has been created.
 boolean isAttenuate()
          isAttenuate returns true if attenuation is to be used for this light.
 boolean isEnabled()
          isEnabled returns true if the light is enabled, false otherwise.
 void setAmbient(ColorRGBA ambient)
          setAmbient sets the ambient color value for this light.
 void setAttenuate(boolean attenuate)
          setAttenuate sets if attenuation is to be used.
 void setConstant(float constant)
          setConstant sets the value for the constant attentuation.
 void setDiffuse(ColorRGBA diffuse)
          setDiffuse sets the diffuse color value for this light.
 void setEnabled(boolean value)
          setEnabled sets the light on or off.
 void setLinear(float linear)
          setLinear sets the value for the linear attentuation.
 void setQuadratic(float quadratic)
          setQuadratic sets the value for the quadratic attenuation.
 void setSpecular(ColorRGBA specular)
          setSpecular sets the specular color value for this light.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LT_AMBIENT

public static final int LT_AMBIENT
defines the lighting type as ambient.

See Also:
Constant Field Values

LT_DIRECTIONAL

public static final int LT_DIRECTIONAL
defines the lighting type as directional.

See Also:
Constant Field Values

LT_POINT

public static final int LT_POINT
defines the lighting type as point.

See Also:
Constant Field Values

LT_SPOT

public static final int LT_SPOT
defines the lighting type as spot.

See Also:
Constant Field Values
Constructor Detail

Light

public Light()
Constructor instantiates a new Light object. All light color values are set to white.

Method Detail

getType

public abstract int getType()
getType returns the type of the light that has been created.

Returns:
the type of light that has been created.

getConstant

public float getConstant()
getConstant returns the value for the constant attenuation.

Returns:
the value for the constant attenuation.

setConstant

public void setConstant(float constant)
setConstant sets the value for the constant attentuation.

Parameters:
constant - the value for the constant attenuation.

getLinear

public float getLinear()
getLinear returns the value for the linear attenuation.

Returns:
the value for the linear attenuation.

setLinear

public void setLinear(float linear)
setLinear sets the value for the linear attentuation.

Parameters:
linear - the value for the linear attenuation.

getQuadratic

public float getQuadratic()
getQuadratic returns the value for the quadratic attentuation.

Returns:
the value for the quadratic attenuation.

setQuadratic

public void setQuadratic(float quadratic)
setQuadratic sets the value for the quadratic attenuation.

Parameters:
quadratic - the value for the quadratic attenuation.

isAttenuate

public boolean isAttenuate()
isAttenuate returns true if attenuation is to be used for this light.

Returns:
true if attenuation is to be used, false otherwise.

setAttenuate

public void setAttenuate(boolean attenuate)
setAttenuate sets if attenuation is to be used. True sets it on, false otherwise.

Parameters:
attenuate - true to use attenuation, false not to.

isEnabled

public boolean isEnabled()
isEnabled returns true if the light is enabled, false otherwise.

Returns:
true if the light is enabled, false if it is not.

setEnabled

public void setEnabled(boolean value)
setEnabled sets the light on or off. True turns it on, false turns it off.

Parameters:
value - true to turn the light on, false to turn it off.

getSpecular

public ColorRGBA getSpecular()
getSpecular returns the specular color value for this light.

Returns:
the specular color value of the light.

setSpecular

public void setSpecular(ColorRGBA specular)
setSpecular sets the specular color value for this light.

Parameters:
specular - the specular color value of the light.

getDiffuse

public ColorRGBA getDiffuse()
getDiffuse returns the diffuse color value for this light.

Returns:
the diffuse color value for this light.

setDiffuse

public void setDiffuse(ColorRGBA diffuse)
setDiffuse sets the diffuse color value for this light.

Parameters:
diffuse - the diffuse color value for this light.

getAmbient

public ColorRGBA getAmbient()
getAmbient returns the ambient color value for this light.

Returns:
the ambient color value for this light.

setAmbient

public void setAmbient(ColorRGBA ambient)
setAmbient sets the ambient color value for this light.

Parameters:
ambient - the ambient color value for this light.