Class TLcyVisibilityBackEnd
java.lang.Object
com.luciad.lucy.addons.tea.ALcyTEABackEnd
com.luciad.lucy.addons.tea.visibility.TLcyVisibilityBackEnd
Back-end functionality for a TEA visibility add-on.
It provides the following functionality to calculate visibility values:
- create a
TLcdVisibilityMatrixViewFactory
to calculate visibility values; - create propagation functions for the visibility factory to use;
- an altitude descriptor to create a propagation function with;
- create a contour finder to visualize visibility results as contours.
- create a
TLcdMatrixViewRasterFactory
to visualize visibility results as a raster.
- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
Property name for the domain object context associated with a shape to calculate a visibility result for.static final String
The property name for the propagation function of the visibility computation.static final String
Denotes a normal propagation function.static final String
Denotes a propagation function with sky in background.static final String
The property name for thePROPAGATION_FUNCTION_VALUE_SKY_BACKGROUND
distance after the end point in which the terrain is taken into account as possible background.Fields inherited from class com.luciad.lucy.addons.tea.ALcyTEABackEnd
ALTITUDE_PROVIDER_KEY, DISPLAY_NAME_KEY, MODEL_DISPLAY_NAME_KEY, MODEL_REFERENCE_KEY, QUALITY_KEY, SHAPE_KEY, SHAPE_REFERENCE_KEY, SOURCE_NAME_KEY, TARGET_REFERENCE_KEY, VIEW_KEY
-
Constructor Summary
ConstructorDescriptionTLcyVisibilityBackEnd
(ILcyLucyEnv aLucyEnv) Default constructor for the visibility back-end. -
Method Summary
Modifier and TypeMethodDescriptioncreateAltitudeDescriptor
(ALcyProperties aProperties) Returns an altitude descriptor suitable for the add-on's purposes.createAltitudeProvider
(ALcyProperties aProperties) Returns a view-based altitude provider.createContourFinder
(ALcyProperties aProperties) Returns a contour finder to visualize visibility results as contours.createMatrixViewRasterFactory
(ALcyProperties aProperties) Returns a matrix view raster factory to visualize visibility as a raster.createModelDescriptor
(ALcyProperties aProperties) Returns a model descriptor suitable for the add-on's used models.createPropagationFunction
(ALcyProperties aProperties) Creates a new visibility propagation function, based on the given properties.createPropagationMatrixRasterValueMapper
(String aPropagationFunctionKey) Returns aILcdMatrixRasterValueMapper
for the given propagation function ID.createVisibilityDescriptor
(ALcyProperties aProperties) Returns a visibility descriptor with visibility mappings suitable for this add-on.createVisibilityMatrixViewFactory
(ALcyProperties aProperties) Returns a visibility matrix view factory with which to compute visibility matrix views.retrievePropagationFunctionLabel
(String aPropagationFunctionKey) Returns a displayable label for the given propagation function ID.Methods inherited from class com.luciad.lucy.addons.tea.ALcyTEABackEnd
createAltitudeMatrixViewFactory, getLucyEnv
-
Field Details
-
PROPAGATION_FUNCTION_KEY
The property name for the propagation function of the visibility computation. The associated property value is one ofPROPAGATION_FUNCTION_VALUE_NORMAL
andPROPAGATION_FUNCTION_VALUE_SKY_BACKGROUND
.- See Also:
-
SKY_DISTANCE_KEY
The property name for thePROPAGATION_FUNCTION_VALUE_SKY_BACKGROUND
distance after the end point in which the terrain is taken into account as possible background.- See Also:
-
PROPAGATION_FUNCTION_VALUE_NORMAL
Denotes a normal propagation function.- See Also:
-
PROPAGATION_FUNCTION_VALUE_SKY_BACKGROUND
Denotes a propagation function with sky in background.- See Also:
-
DOMAIN_OBJECT_CONTEXT_KEY
Property name for the domain object context associated with a shape to calculate a visibility result for.- See Also:
-
-
Constructor Details
-
TLcyVisibilityBackEnd
Default constructor for the visibility back-end.- Parameters:
aLucyEnv
- the Lucy environment for which the back-end will be used
-
-
Method Details
-
createModelDescriptor
Returns a model descriptor suitable for the add-on's used models.- Specified by:
createModelDescriptor
in classALcyTEABackEnd
- Parameters:
aProperties
- a properties object with the following parameters:ALcyTEABackEnd.SOURCE_NAME_KEY
: The source name that was used to retrieve the data from, usenull
to indicate that it was created from scratch.ALcyTEABackEnd.DISPLAY_NAME_KEY
: the display name that the model descriptor should use @return a suitable model descriptor
- Returns:
- a visibility model descriptor
-
createAltitudeProvider
Returns a view-based altitude provider.Note that an altitude provider using the altitude mode
TLcdCoverageAltitudeMode.ABOVE_OBJECT
is not supported. If this method returns such an altitude provider, the visibility layer will not be able to compute the visibility and will remain empty.- Overrides:
createAltitudeProvider
in classALcyTEABackEnd
- Parameters:
aProperties
- a properties object with the following parameters:ALcyTEABackEnd.VIEW_KEY
the view for which to provide altitude valuesALcyTEABackEnd.QUALITY_KEY
the quality value to base the provider's pixel density on
- Returns:
- a view-based altitude provider
-
createAltitudeDescriptor
Returns an altitude descriptor suitable for the add-on's purposes.Note that this descriptor can be used by the back-end's contour finder; it does not include Double.NaN values.
- Overrides:
createAltitudeDescriptor
in classALcyTEABackEnd
- Parameters:
aProperties
- this implementation does not use any properties- Returns:
- an altitude descriptor suitable for the add-on's purposes
-
createVisibilityDescriptor
Returns a visibility descriptor with visibility mappings suitable for this add-on.- Parameters:
aProperties
- this implementation does not use any properties- Returns:
- a visibility descriptor suitable for this add-on
-
createPropagationFunction
Creates a new visibility propagation function, based on the given properties. This implementation supports two functions: normal, and sky in background. The type of function returned depends on thePROPAGATION_FUNCTION_KEY
property.- Parameters:
aProperties
- The arguments of this method. The following properties are needed:PROPAGATION_FUNCTION_KEY
, one ofPROPAGATION_FUNCTION_VALUE_NORMAL
orPROPAGATION_FUNCTION_VALUE_SKY_BACKGROUND
ALcyTEABackEnd.ALTITUDE_PROVIDER_KEY
, an altitude provider of typeALcdTerrainElevationProvider
- Returns:
- a new visibility propagation function
-
createVisibilityMatrixViewFactory
public TLcdVisibilityMatrixViewFactory createVisibilityMatrixViewFactory(ALcyProperties aProperties) Returns a visibility matrix view factory with which to compute visibility matrix views.- Parameters:
aProperties
- This implementation does not require any arguments.- Returns:
- a visibility matrix view factory
-
createMatrixViewRasterFactory
Returns a matrix view raster factory to visualize visibility as a raster.- Parameters:
aProperties
- This implementation does not require any arguments.- Returns:
- a matrix view raster factory
-
createContourFinder
Returns a contour finder to visualize visibility results as contours.- Parameters:
aProperties
- This implementation does not require any arguments.- Returns:
- a contour finder
-
createPropagationMatrixRasterValueMapper
public ILcdMatrixRasterValueMapper createPropagationMatrixRasterValueMapper(String aPropagationFunctionKey) Returns aILcdMatrixRasterValueMapper
for the given propagation function ID.- Parameters:
aPropagationFunctionKey
- one of one ofPROPAGATION_FUNCTION_VALUE_NORMAL
orPROPAGATION_FUNCTION_VALUE_SKY_BACKGROUND
- Returns:
- a value mapper for creating a LOS coverage raster
-
retrievePropagationFunctionLabel
Returns a displayable label for the given propagation function ID.- Parameters:
aPropagationFunctionKey
- one of one ofPROPAGATION_FUNCTION_VALUE_NORMAL
orPROPAGATION_FUNCTION_VALUE_SKY_BACKGROUND
- Returns:
- a user-friendly label
-