Package com.luciad.tea.viewshed
Class TLcdProductVisibilityComposite
java.lang.Object
com.luciad.tea.viewshed.TLcdProductVisibilityComposite
- All Implemented Interfaces:
ILcdVisibilityComposite
This ILcdVisibilityComposite
returns the product of all provided visibilities.
For instance, if an instance of TLcdProductVisibilityComposite
would obtain visibilities 0.2, 0.5 and 0.8 respectively, then
the result of this viewshed would be 0.08.
A possible use case for this composite implementation is the combination of multiple (possibly) transparent objects for the same 3D scene, each of which individually cause the scene to become more invisible in their projections away from the observer. For instance, if each object is a glass window, and each window has a viewshed that only partially causes the scene to be invisible, then combining the viewsheds of these windows can be combined to form a single viewshed of the scene.
- Since:
- 11.0
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptiondouble
compose
(double aPreviousVisibility, double aCurrentVisibility) Performs one compositing step by combining the previously accumulated visibility value with a new value.double
Returns the visibility value with which the compositing should be initialized.boolean
stop
(double aVisibility) Checks whether additional compositing steps are useful.
-
Constructor Details
-
TLcdProductVisibilityComposite
public TLcdProductVisibilityComposite()Creates a new instance ofTLcdProductVisibilityComposite
-
-
Method Details
-
initialVisibility
public double initialVisibility()Description copied from interface:ILcdVisibilityComposite
Returns the visibility value with which the compositing should be initialized.- Specified by:
initialVisibility
in interfaceILcdVisibilityComposite
- Returns:
- the visibility value with which the compositing should be initialized.
-
compose
public double compose(double aPreviousVisibility, double aCurrentVisibility) Description copied from interface:ILcdVisibilityComposite
Performs one compositing step by combining the previously accumulated visibility value with a new value.- Specified by:
compose
in interfaceILcdVisibilityComposite
- Parameters:
aPreviousVisibility
- the previously accumulated visibility valueaCurrentVisibility
- new visibility value- Returns:
- the new composited visibility value
-
stop
public boolean stop(double aVisibility) Description copied from interface:ILcdVisibilityComposite
Checks whether additional compositing steps are useful.- Specified by:
stop
in interfaceILcdVisibilityComposite
- Parameters:
aVisibility
- the accumulated visibility value so far.- Returns:
- whether compositing should be terminated
-