Class TLcyLOSCoverageBackEnd
- an altitude descriptor to create a propagation function with;
- create an
ILcdLOSCoverage
; - create an
TLcdLOSCoverageFactory
; - create propagation functions for the coverage factory to use.
- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
The property name for a line-of-sight coverage's altitude.static final String
The property name for a line-of-sight coverage's altitude mode.static final String
The property name for a line-of-sight coverage's arc angle.static final String
The property name for a line-of-sight coverage's associated domain object.static final String
Deprecated.static final String
The property name for the fixed height of a fixed height propagation function.static final String
The property name for the fixed height model of a fixed height propagation function.static final String
The property name for a line-of-sight coverage's radar K-factor.static final String
The property name for a line-of-sight coverage's location.static final String
The property name for a line-of-sight coverage's model reference .static final String
The property name for a line-of-sight coverage's maximum radius.static final String
The property name for a line-of-sight coverage's maximum vertical angle.static final String
The property name for a line-of-sight coverage's minimum vertical angle.static final String
The property name for a line-of-sight coverage's propagation function.static final String
Denotes a propagation function with fixed height.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 a line-of-sight coverage's start angle.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
ConstructorDescriptionTLcyLOSCoverageBackEnd
(ILcyLucyEnv aLucyEnv) Default constructor for the line-of-sight coverage back-end. -
Method Summary
Modifier and TypeMethodDescriptioncreateCoverage
(ALcyProperties aProperties) Creates a new line-of-sight coverage, based on the given properties.createLOSCoverageFactory
(ALcyProperties aProperties) Returns a line-of-sight coverage factory with which to compute coverages.Returns aTLspLOSCalculator
used to calculateILcdLOSCoverageMatrix
instances, which make use of OpenCL functionality and are therefore faster than the defaultILcdLOSCoverageMatrix
calculator.createModelDescriptor
(ALcyProperties aProperties) Returns a model descriptor suitable for the add-on's used models.createPropagationFunction
(ALcyProperties aProperties) Creates a new line-of-sight propagation function, based on the given properties.createPropagationMatrixRasterValueMapper
(String aPropagationFunctionKey) Returns anILcdMatrixRasterValueMapper
for the given propagation function ID.retrievePropagationFunctionLabel
(String aPropagationFunctionKey) Returns a displayable label for the given propagation function ID.Methods inherited from class com.luciad.lucy.addons.tea.ALcyTEABackEnd
createAltitudeDescriptor, createAltitudeMatrixViewFactory, createAltitudeProvider, getLucyEnv
-
Field Details
-
DOMAIN_OBJECT_CONTEXT_KEY
The property name for a line-of-sight coverage's associated domain object. The associated property value is of typeTLcyDomainObjectContext
.- See Also:
-
LOCATION_KEY
The property name for a line-of-sight coverage's location. The associated property value is of typeILcdPoint
.- See Also:
-
LOCATION_REFERENCE_KEY
The property name for a line-of-sight coverage's model reference . The associated property value is of typeILcdGeoReference
.- See Also:
-
ALTITUDE_KEY
The property name for a line-of-sight coverage's altitude. The associated property value is of type double, expressed in meters.- See Also:
-
ALTITUDE_MODE_KEY
The property name for a line-of-sight coverage's altitude mode. The associated property value is of typeTLcdCoverageAltitudeMode
.- See Also:
-
START_ANGLE_KEY
The property name for a line-of-sight coverage's start angle. The associated property value is of type double, expressed in radians.- See Also:
-
ARC_ANGLE_KEY
The property name for a line-of-sight coverage's arc angle. The associated property value is of type double, expressed in radians.- See Also:
-
MAX_RADIUS_KEY
The property name for a line-of-sight coverage's maximum radius. The associated property value is of type double, expressed in meters.- See Also:
-
MIN_VERTICAL_ANGLE_KEY
The property name for a line-of-sight coverage's minimum vertical angle. The associated property value is of type double, expressed in radians.- See Also:
-
MAX_VERTICAL_ANGLE_KEY
The property name for a line-of-sight coverage's maximum vertical angle. The associated property value is of type double, expressed in radians.- See Also:
-
K_FACTOR_KEY
The property name for a line-of-sight coverage's radar K-factor. The associated property value is of type double, expressed without unit, default 1.0.- See Also:
-
PROPAGATION_FUNCTION_KEY
The property name for a line-of-sight coverage's propagation function. The associated property value is one ofPROPAGATION_FUNCTION_VALUE_FIXED_HEIGHT
,PROPAGATION_FUNCTION_VALUE_NORMAL
andPROPAGATION_FUNCTION_VALUE_SKY_BACKGROUND
.- See Also:
-
FIXED_HEIGHT_AMSL_KEY
Deprecated.replaced byFIXED_HEIGHT_KEY
andFIXED_HEIGHT_MODE_KEY
The property name for the fixed height of a fixed height propagation function. The associated property value is of type double, expressed in height AMSL.- See Also:
-
FIXED_HEIGHT_KEY
The property name for the fixed height of a fixed height propagation function. The associated property value is of type double, expressed in meters.- See Also:
-
FIXED_HEIGHT_MODE_KEY
The property name for the fixed height model of a fixed height propagation function. The associated property value is of typeTLcdCoverageAltitudeMode
.- 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:
-
PROPAGATION_FUNCTION_VALUE_FIXED_HEIGHT
Denotes a propagation function with fixed height.- See Also:
-
-
Constructor Details
-
TLcyLOSCoverageBackEnd
Default constructor for the line-of-sight coverage 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 line-of-sight coverage model descriptor
-
createPropagationFunction
Creates a new line-of-sight propagation function, based on the given properties. This implementation supports three functions: normal, sky in background, and fixed height. The type of function returned depends on the PROPAGATION_FUNCTION_KEY property.
Note that in some situations this propagation function is by default replaced by a
TLspLOSCalculator
. To know the circumstances in which theTLspLOSCalculator
is used, seecreateLspLOSCoverageCalculator()
.- Parameters:
aProperties
- The arguments of this method. For the normal and sky in background functions, the following properties are needed:ALcyTEABackEnd.ALTITUDE_PROVIDER_KEY
, an altitude provider of typeALcdTerrainElevationProvider
ALTITUDE_MODE_KEY
, the altitude modeMIN_VERTICAL_ANGLE_KEY
, the minumum vertical angleMAX_VERTICAL_ANGLE_KEY
, the maximum vertical angle
FIXED_HEIGHT_KEY
, the fixed heightFIXED_HEIGHT_MODE_KEY
, the altitude mode
- Returns:
- a new line-of-sight propagation function
- See Also:
-
createCoverage
Creates a new line-of-sight coverage, based on the given properties.- Parameters:
aProperties
- The arguments of this method. The following properties are needed:ALcyTEABackEnd.QUALITY_KEY
, the quality on which to base the coverage's sample densityLOCATION_KEY
, coverage's locationLOCATION_REFERENCE_KEY
, the geo-reference of the locationDOMAIN_OBJECT_CONTEXT_KEY
, the coverage's associated domain object. Objects implementingILcdOriented
will have their orientation added to the start angle.ALTITUDE_KEY
, the coverage's altitudeALTITUDE_MODE_KEY
, the coverage's altitude modeSTART_ANGLE_KEY
, the coverage's start angleARC_ANGLE_KEY
, the coverage's arc angleMAX_RADIUS_KEY
, the coverage's maximum radiusALcyTEABackEnd.TARGET_REFERENCE_KEY
, the geo-reference of the target object. This property is used to compute the required step sizes.
- Returns:
- a new line-of-sight coverage
-
createLOSCoverageFactory
Returns a line-of-sight coverage factory with which to compute coverages.- Parameters:
aProperties
- This implementation does not require any arguments.- Returns:
- a line-of-sight coverage factory
-
createLspLOSCoverageCalculator
Returns a
TLspLOSCalculator
used to calculateILcdLOSCoverageMatrix
instances, which make use of OpenCL functionality and are therefore faster than the defaultILcdLOSCoverageMatrix
calculator. For performance reasons, we advice to reuse the line-of-sight calculator as much as possible.Note that this calculator will be only be used when all the following statements hold true:
- Lightspeed is available.
- The "useOpenCLSpeedup" flag, found in
TLcyLOSCoverageAddOn
's config file, is set to true. - The altitude mode of the resulting
ILcdLOSCoverageMatrix
is 'above ground', 'above mean sea level' or 'above geoid' - The requested line-of-sight function type is 'normal'. So it is not 'fixed height' or 'sky in background'.
Warning: when the Lightspeed line-of-sight calculator created by this method is no longer needed, it should be disposed if a dispose method is available. If such a method is available and it is not disposed of, memory leaks could occur.- Returns:
- a
TLspLOSCalculator
used to calculateILcdLOSCoverageMatrix
instances. Can benull
, in case the calculator could not be created while OpenCL is supported. - Throws:
UnsupportedOperationException
- An exception is thrown when either no Lightspeed license option is available or when OpenCL is not supported.- See Also:
-
retrievePropagationFunctionLabel
Returns a displayable label for the given propagation function ID.- Parameters:
aPropagationFunctionKey
- one ofPROPAGATION_FUNCTION_VALUE_NORMAL
,PROPAGATION_FUNCTION_VALUE_SKY_BACKGROUND
, orPROPAGATION_FUNCTION_VALUE_FIXED_HEIGHT
.- Returns:
- a user-friendly label
-
createPropagationMatrixRasterValueMapper
public ILcdMatrixRasterValueMapper createPropagationMatrixRasterValueMapper(String aPropagationFunctionKey) Returns anILcdMatrixRasterValueMapper
for the given propagation function ID.- Parameters:
aPropagationFunctionKey
- one ofPROPAGATION_FUNCTION_VALUE_NORMAL
,PROPAGATION_FUNCTION_VALUE_SKY_BACKGROUND
, orPROPAGATION_FUNCTION_VALUE_FIXED_HEIGHT
.- Returns:
- a value mapper for creating a LOS coverage raster
-
FIXED_HEIGHT_KEY
andFIXED_HEIGHT_MODE_KEY