cz.cuni.jagrlib.iface
Interface GlobalIllumination
- All Superinterfaces:
- Breakable, Property
- All Known Implementing Classes:
- Radiosity, RadiosityHierarch
public interface GlobalIllumination
- extends Property, Breakable
General global-illumination method.
Modules implementing this interface should compute light distribution in the whole scene
(optionally the computing will be dependent on the given camera position).
- Since:
- 0.26
Method Summary |
boolean |
illuminate(int maxIterations,
long maxTime)
Computes scene illumination from the scratch. |
void |
setCamera(double[] camera)
Sets camera position (null for no camera = pure global lighting). |
boolean |
updateIllumination(int maxIterations,
long maxTime)
Recomputes illumination according to scene & light-source changes. |
setCamera
void setCamera(double[] camera)
- Sets camera position (
null
for no camera = pure global lighting).
- Parameters:
camera
- World-space coordinates of the camera.
illuminate
boolean illuminate(int maxIterations,
long maxTime)
- Computes scene illumination from the scratch.
If time/iteration limits are nonzero, tries to fulfill them..
This method can be called repeatedly - or in combination with
updateIllumination(int, long)
.
- Parameters:
maxIterations
- If nonzero, defines maximum number of iterations (if applicable).maxTime
- If nonzero, defines maximum time in milliseconds (if applicable).
- Returns:
true
if finished.
updateIllumination
boolean updateIllumination(int maxIterations,
long maxTime)
- Recomputes illumination according to scene & light-source changes.
Scene & light-source changes are expressed in the
SLEData
interface.
Camera position/importance changes should be considered too.
If time/iteration limits are nonzero, tries to fulfill them..
- Parameters:
maxIterations
- If nonzero, defines maximum number of iterations (if applicable).maxTime
- If nonzero, defines maximum time in milliseconds (if applicable).
- Returns:
true
if finished.