Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.batik.ext.awt.image
Interface Light

All Known Implementing Classes:
  AbstractLight, DistantLight, PointLight, SpotLight

    public interface Light

Top level interface to model a light element. A light is responsible for computing the light vector on a given point of a surface. A light is typically in a 3 dimensional space and the methods assumes the surface is at elevation 0.

Method Summary
`double[]` | `getColor(boolean linear)`
`void` | `getLight(double x, double y, double z, double[] L)` Computes the light vector in (x, y)
`double[][][]` | `getLightMap(double x, double y, double dx, double dy, int width, int height, double[][][] z)` Returns a light map, starting in (x, y) with dx, dy increments, a given width and height, and z elevations stored in the fourth component on the N array.
`double[][]` | `getLightRow(double x, double y, double dx, int width, double[][] z, double[][] lightRow)` Returns a row of the light map, starting at (x, y) with dx increments, a given width, and z elevations stored in the fourth component on the N array.
`boolean` | `isConstant()`
`void` | `setColor(Color color)` Sets the light color to a new value

Method Detail

### isConstant

    boolean isConstant()

  Returns:
    true if the light is constant over the whole surface

### getLight

    void getLight(double x,
                  double y,
                  double z,
                  double[] L)

  Computes the light vector in (x, y)

  Parameters:
    `x` - x-axis coordinate where the light should be computed
    `y` - y-axis coordinate where the light should be computed
    `z` - z-axis coordinate where the light should be computed
    `L` - array of length 3 where the result is stored

### getLightMap

    double[][][] getLightMap(double x,
                             double y,
                             double dx,
                             double dy,
                             int width,
                             int height,
                             double[][][] z)

  Returns a light map, starting in (x, y) with dx, dy increments, a given width and height, and z elevations stored in the fourth component on the N array.

  Parameters:
    `x` - x-axis coordinate where the light should be computed
    `y` - y-axis coordinate where the light should be computed
    `dx` - delta x for computing light vectors in user space
    `dy` - delta y for computing light vectors in user space
    `width` - number of samples to compute on the x axis
    `height` - number of samples to compute on the y axis
    `z` - array containing the z elevation for all the points
  Returns:
    an array of height rows, width columns where each element is an array of three components representing the x, y and z components of the light vector.

### getLightRow

    double[][] getLightRow(double x,
                           double y,
                           double dx,
                           int width,
                           double[][] z,
                           double[][] lightRow)

  Returns a row of the light map, starting at (x, y) with dx increments, a given width, and z elevations stored in the fourth component on the N array.

  Parameters:
    `x` - x-axis coordinate where the light should be computed
    `y` - y-axis coordinate where the light should be computed
    `dx` - delta x for computing light vectors in user space
    `width` - number of samples to compute on the x axis
    `z` - array containing the z elevation for all the points
    `lightRow` - array to store the light info to, if null it will be allocated for you and returned.
  Returns:
    an array width columns where each element is an array of three components representing the x, y and z components of the light vector.

### getColor

    double[] getColor(boolean linear)

  Parameters:
    `linear` - if true the color is returned in the Linear sRGB colorspace otherwise the color is in the gamma corrected sRGB color space.
  Returns:
    the light's color

### setColor

    void setColor(Color color)

  Sets the light color to a new value

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2008 Apache Software Foundation. All Rights Reserved.