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.
- Version:
- $Id: SpotLight.java 1733416 2016-03-03 07:07:13Z gadams $
- Author:
- Vincent Hardy
|
Constructor Summary |
SpotLight(double lightX,
double lightY,
double lightZ,
double pointAtX,
double pointAtY,
double pointAtZ,
double specularExponent,
double limitingConeAngle,
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,
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 © 2000–2017 Apache Software Foundation. All rights reserved.