org.apache.batik.ext.awt.image
Class SpotLight
java.lang.Object
org.apache.batik.ext.awt.image.AbstractLight
org.apache.batik.ext.awt.image.SpotLight
- All Implemented Interfaces:
- Light
public class SpotLight
- extends AbstractLight
A light source which emits a light of constant intensity in all directions.
Constructor Summary |
SpotLight(double lightX,
double lightY,
double lightZ,
double pointAtX,
double pointAtY,
double pointAtZ,
double specularExponent,
double limitingConeAngle,
java.awt.Color lightColor)
|
Method Summary |
void |
getLight(double x,
double y,
double z,
double[] L)
Computes the light vector in (x, y, z) |
void |
getLight4(double x,
double y,
double z,
double[] L)
computes light vector in (x, y, z). |
double |
getLightBase(double x,
double y,
double z,
double[] L)
Computes the light vector in (x, y, z) |
double[][] |
getLightRow4(double x,
double y,
double dx,
int width,
double[][] z,
double[][] lightRow)
|
double |
getLightX()
|
double |
getLightY()
|
double |
getLightZ()
|
double |
getLimitingConeAngle()
|
double |
getPointAtX()
|
double |
getPointAtY()
|
double |
getPointAtZ()
|
double |
getSpecularExponent()
|
boolean |
isConstant()
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
SpotLight
public SpotLight(double lightX,
double lightY,
double lightZ,
double pointAtX,
double pointAtY,
double pointAtZ,
double specularExponent,
double limitingConeAngle,
java.awt.Color lightColor)
getLightX
public double getLightX()
- Returns:
- the light's x position
getLightY
public double getLightY()
- Returns:
- the light's y position
getLightZ
public double getLightZ()
- Returns:
- the light's z position
getPointAtX
public double getPointAtX()
- Returns:
- x-axis coordinate where the light points to
getPointAtY
public double getPointAtY()
- Returns:
- y-axis coordinate where the light points to
getPointAtZ
public double getPointAtZ()
- Returns:
- z-axis coordinate where the light points to
getSpecularExponent
public double getSpecularExponent()
- Returns:
- light's specular exponent (focus)
getLimitingConeAngle
public double getLimitingConeAngle()
- Returns:
- light's limiting cone angle
isConstant
public boolean isConstant()
- Specified by:
isConstant
in interface Light
- Overrides:
isConstant
in class AbstractLight
- Returns:
- true if the light is constant over the whole surface
getLightBase
public final double getLightBase(double x,
double y,
double z,
double[] L)
- Computes the light vector in (x, y, z)
- Parameters:
x
- x-axis coordinate where the light should be computedy
- y-axis coordinate where the light should be computedz
- z-axis coordinate where the light should be computedL
- array of length 3 where the result is stored
- Returns:
- the intensity factor for this light vector.
getLight
public final void getLight(double x,
double y,
double z,
double[] L)
- Computes the light vector in (x, y, z)
- Parameters:
x
- x-axis coordinate where the light should be computedy
- y-axis coordinate where the light should be computedz
- z-axis coordinate where the light should be computedL
- array of length 3 where the result is stored,
x,y,z are scaled by light intensity.
getLight4
public final void getLight4(double x,
double y,
double z,
double[] L)
- computes light vector in (x, y, z).
- Parameters:
x
- x-axis coordinate where the light should be computedy
- y-axis coordinate where the light should be computedz
- z-axis coordinate where the light should be computedL
- array of length 4 where result is stored.
0,1,2 are x,y,z respectively of light vector (normalized).
3 is the intensity of the light at this point.
getLightRow4
public double[][] getLightRow4(double x,
double y,
double dx,
int width,
double[][] z,
double[][] lightRow)
Copyright ? 2008 Apache Software Foundation. All Rights Reserved.