|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcz.cuni.jagrlib.DefaultProperty
cz.cuni.jagrlib.Piece
cz.cuni.jagrlib.DefaultLightSource
public abstract class DefaultLightSource
Default implementation of LightSource
interface.
Simple and supersampled variants point to each other.
Field Summary | |
---|---|
protected static String |
CATEGORY
Object category. |
protected Intersectable |
inter
Object used for light-source visibility tests. |
static String |
KEY_LIGHT
JGL script key: lights. |
static String |
PARAMS
Property name: light source parameters. |
protected boolean |
plugInter
Accelerator: connected intersectable was tried? |
protected String |
scriptName
JGL script file-name. |
protected static String |
TEMPLATE_NAME
Object template identifier. |
Fields inherited from class cz.cuni.jagrlib.Piece |
---|
channels, info, pl, plugs, reg, TEMPLATE_TYPE, userBreak |
Fields inherited from interface cz.cuni.jagrlib.iface.LightSource |
---|
COLOR |
Fields inherited from interface cz.cuni.jagrlib.iface.Property |
---|
LOGGING, STATISTICS, TEXT_DESCRIPTION |
Fields inherited from interface cz.cuni.jagrlib.Template |
---|
ALL_PLUGS, C_1D, C_2D, C_3D, C_ALPHA, C_BINARY, C_BREP, C_CAMERA, C_CIRCLE, C_CLIP, C_COMPRESSION, C_CURVE, C_DATA, C_DRAW, C_EDITOR, C_ELLIPSE, C_FILL, C_FILTER, C_FLOAT, C_FUNCTION, C_IMAGE, C_INTEGER, C_IO, C_LIGHT, C_LINE, C_METRIC, C_POLYGON, C_PROJECTION, C_RADIOSITY, C_RASTER, C_RENDER, C_SAMPLE, C_SCENE, C_SET, C_SOLID, C_TEXT, C_TRANSFORM, C_VECTOR, C_VIEWER, C_WORKER, CAT_EMPTY, EMPTY, IFACE, JAGRLIB, JAGRLIB2, MANIPULATOR_COMBO, MANIPULATOR_CUSTOM, MANIPULATOR_DEFAULT, MANIPULATOR_MULTILINE, PL_ALPHAMASK, PL_BITMASK, PL_CODEC, PL_COLORMAP, PL_COMPARE, PL_DATA, PL_DIRECT, PL_EDITOR, PL_FILTER, PL_FUNCTION, PL_IMAGE, PL_IMPORT, PL_INPUT, PL_INTERSECTION, PL_LIGHTSOURCE, PL_ORDER, PL_OUTPUT, PL_PALETTE, PL_PROPERTY, PL_QUANTIZER, PL_RASTER, PL_RENDER, PL_STREAM, PL_TRANSFORM, PL_TRIGGER, PL_WINDOW, TYPE_BOOLEAN, TYPE_DOUBLE, TYPE_FLOAT, TYPE_INTEGER, TYPE_LONG, TYPE_OBJECT, TYPE_STRING |
Constructor Summary | |
---|---|
DefaultLightSource()
|
Method Summary | |
---|---|
protected boolean |
assertInter()
Asserts the inter accelerator. |
boolean |
getDirection(MicroFacet mf,
double[] dir)
Returns light direction between the source and the given MicroFacet . |
boolean |
getDirection(MicroFacet mf,
int order,
int total,
double[] dir)
Returns light direction between the source and the given MicroFacet . |
boolean |
getIntensity(MicroFacet mf,
double[] color)
Returns light intensity coming from the source to the given MicroFacet . |
boolean |
getIntensity(MicroFacet mf,
int order,
int total,
double[] color)
Returns light intensity coming from the source to the given MicroFacet . |
boolean |
lights(MicroFacet mf)
Lighting test from the source to the given MicroFacet . |
boolean |
lights(MicroFacet mf,
int order,
int total)
Lighting test from the source to the given MicroFacet . |
Intersectable |
setIntersectable(Intersectable intersect)
Sets intersectable object (for light-source of visibility: lights(MicroFacet) , ..). |
Methods inherited from class cz.cuni.jagrlib.Piece |
---|
className, connect, findPlug, findPlug, getInfo, getInterface, getInterface, getPlug, getReg, init, isCompatible, isCompatible, isConnected, logError, logWarning, myInterface, newInputPlug, newOptOutputPlug, newOutputPlug, newPlug, noTemplates, propBegin, propBounds, propDefault, propEnd, propEnum, propManipulator, propManipulator, setProgressListener, setRegStrings, setTemplate, setTemplateDynamic, stop |
Methods inherited from class cz.cuni.jagrlib.DefaultProperty |
---|
booleanProperty, booleanProperty, colorDoubleProperty, colorProperty, commit, doubleProperty, doubleProperty, doubleProperty, enumProperty, floatProperty, floatProperty, floatProperty, get, intProperty, intProperty, intProperty, longProperty, longProperty, longProperty, set, set, stringProperty |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface cz.cuni.jagrlib.iface.Property |
---|
commit, get, set |
Field Detail |
---|
public static final String KEY_LIGHT
public static final String PARAMS
protected String scriptName
protected Intersectable inter
protected boolean plugInter
protected static final String TEMPLATE_NAME
protected static final String CATEGORY
Constructor Detail |
---|
public DefaultLightSource()
Method Detail |
---|
protected boolean assertInter()
inter
accelerator.
true
if failed.public Intersectable setIntersectable(Intersectable intersect)
lights(MicroFacet)
, ..).
setIntersectable
in interface LightSource
public boolean lights(MicroFacet mf)
MicroFacet
.
lights
in interface LightSource
mf
- The checked MicroFacet
(point on surface of some solid).
getIntensity(cz.cuni.jagrlib.MicroFacet, double[])
,
getDirection(cz.cuni.jagrlib.MicroFacet, double[])
public boolean lights(MicroFacet mf, int order, int total)
MicroFacet
.
Super-sampling variant.
lights
in interface LightSource
mf
- The checked MicroFacet
(point on surface of some solid).order
- Order of this sample inside the actual pixel.total
- Total number of samples in the actual pixel.
getIntensity(cz.cuni.jagrlib.MicroFacet, double[])
,
getDirection(cz.cuni.jagrlib.MicroFacet, double[])
public boolean getIntensity(MicroFacet mf, double[] color)
MicroFacet
.
getIntensity
in interface LightSource
mf
- The MicroFacet
(point on surface of some solid).color
- Pre-allocated double[C] array to hold result - light intensity
coming from the source to the given point (C can be either 1
/for monochrome computing/, 3 /for RGB color system/ or greater /for more
complex spectral color sampling/).
lights(cz.cuni.jagrlib.MicroFacet)
,
getDirection(cz.cuni.jagrlib.MicroFacet, double[])
public boolean getIntensity(MicroFacet mf, int order, int total, double[] color)
MicroFacet
.
Super-sampling variant.
getIntensity
in interface LightSource
mf
- The MicroFacet
(point on surface of some solid).order
- Order of this sample inside the actual pixel.total
- Total number of samples in the actual pixel.color
- Pre-allocated double[C] array to hold result - light intensity
coming from the source to the given point (C can be either 1
/for monochrome computing/, 3 /for RGB color system/ or greater /for more
complex spectral color sampling/).
lights(cz.cuni.jagrlib.MicroFacet)
,
getDirection(cz.cuni.jagrlib.MicroFacet, double[])
public boolean getDirection(MicroFacet mf, double[] dir)
MicroFacet
.
getDirection
in interface LightSource
mf
- The MicroFacet
(point on surface of some solid).dir
- Pre-allocated array to hold the result - normalised direction vector
from the MicroFacet
to the light source.
lights(cz.cuni.jagrlib.MicroFacet)
,
getIntensity(cz.cuni.jagrlib.MicroFacet, double[])
public boolean getDirection(MicroFacet mf, int order, int total, double[] dir)
MicroFacet
.
Super-sampling variant.
getDirection
in interface LightSource
mf
- The MicroFacet
(point on surface of some solid).order
- Order of this sample inside the actual pixel.total
- Total number of samples in the actual pixel.dir
- Pre-allocated array to hold the result - normalised direction vector
from the MicroFacet
to the light source.
lights(cz.cuni.jagrlib.MicroFacet)
,
getIntensity(cz.cuni.jagrlib.MicroFacet, double[])
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |