Class TLcyViewshedBackEnd
java.lang.Object
com.luciad.lucy.addons.tea.ALcyTEABackEnd
com.luciad.lucy.addons.tea.viewshed.TLcyViewshedBackEnd
Back-end functionality for a TEA viewshed add-on. It provides the following functionality to
calculate viewsheds:
- Creating a viewshed for a set of properties.
- Creating a composite viewshed for a list of viewsheds
- Creating a viewshed raster for a set of properties.
To add support for custom models, override the createViewshed(com.luciad.lucy.util.properties.ALcyProperties, java.util.List)
- Since:
- 11.0
- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
The property name for the altitude type of a viewshed.static final String
The property name for a viewshed's arc angle.static final String
The property name for the list of areas used for the viewshed calculations.static final String
The property name for an eyepoint.static final String
The property name for model reference of the property value represented byEYEPOINT_KEY
The associated property value is of typeILcdGeoReference
.static final String
The key used to identify the fixed height offset which is used when sampling the generated viewshed using a viewshed raster.static final String
The property name for a viewshed's maximum vertical angle.static final String
The property name for a viewshed's minimum vertical angle.static final String
The property name of the models which will be used to calculate the viewshed.static final String
The property name for a viewshed's start angle.static final String
The property name for the viewshed.static final String
The property name for the model of the viewshed.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
ConstructorDescriptionTLcyViewshedBackEnd
(ILcyLucyEnv aLucyEnv) Default constructor for the viewshed back-end. -
Method Summary
Modifier and TypeMethodDescriptioncreateCompositeViewshed
(List<ILcdViewshed> aViewshedList) Creates a composite for a given list of viewsheds.createModelDescriptor
(ALcyProperties aProperties) Returns a model descriptor suitable for the add-on's used models.createMultilevelRaster
(ALcyProperties aProperties) Creates a multilevel raster for a given properties object.createViewshed
(ALcyProperties aProperties, List<ILcdModel> aUsedModelsSFCT) Creates a viewshed for a single eyepoint.Methods inherited from class com.luciad.lucy.addons.tea.ALcyTEABackEnd
createAltitudeDescriptor, createAltitudeMatrixViewFactory, createAltitudeProvider, getLucyEnv
-
Field Details
-
EYEPOINT_KEY
The property name for an eyepoint. The associated property value is of typeILcdPoint
.- See Also:
-
EYEPOINT_REFERENCE_KEY
The property name for model reference of the property value represented byEYEPOINT_KEY
The associated property value is of typeILcdGeoReference
.- See Also:
-
AREA_BOUNDS_LIST_KEY
The property name for the list of areas used for the viewshed calculations. The asociated property value is a list ofTLcyDomainObjectContext
instances, each with anILcdBounded
instance as its domain object.- See Also:
-
MODELS_KEY
The property name of the models which will be used to calculate the viewshed. The associated property value is an array ofILcdModel
s- See Also:
-
VIEWSHED_KEY
The property name for the viewshed. The associated property value is of typeILcdViewshed
- See Also:
-
VIEWSHED_MODEL_KEY
The property name for the model of the viewshed. The associated property value is of typeILcdModel
- See Also:
-
ALTITUDE_TYPE_KEY
The property name for the altitude type of a viewshed. The associated property value is aString
. It can be either "REGULAR" or "SUN_POSITION".- See Also:
-
START_ANGLE_KEY
The property name for a viewshed's start angle. The associated property value is of type double, expressed in radians.- See Also:
-
ARC_ANGLE_KEY
The property name for a viewshed's arc angle. The associated property value is of type double, expressed in radians.- See Also:
-
MIN_VERTICAL_ANGLE_KEY
The property name for a viewshed'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 viewshed's maximum vertical angle. The associated property value is of type double, expressed in radians.- See Also:
-
FIXED_HEIGHT_OFFSET_KEY
The key used to identify the fixed height offset which is used when sampling the generated viewshed using a viewshed raster. The associated property value is a double, expressed in meters.- See Also:
-
-
Constructor Details
-
TLcyViewshedBackEnd
Default constructor for the viewshed 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 viewshed model descriptor
-
createViewshed
Creates a viewshed for a single eyepoint.
The following properties are supplied in the
aProperties
object:MODELS_KEY
: An array of models for which the viewshed calculation occurs.EYEPOINT_KEY
: The eyepoint which for which a viewshedneeds to be createdEYEPOINT_REFERENCE_KEY
: The reference of the eyepoint which for which a viewshed needs to be createdAREA_BOUNDS_LIST_KEY
: A list of bounds(asTLcyDomainObjectContext
instances that should be used for the viewshed calculations.VIEWSHED_MODEL_KEY
: The reference of the model in which the viewshed resides. This is not the same as the reference of the actual viewshed.ALTITUDE_TYPE_KEY
: The altitude type of the given eyepointMIN_VERTICAL_ANGLE_KEY
, the minumum vertical angle (used for cone of silence)MAX_VERTICAL_ANGLE_KEY
, the maximum vertical angle (used for cone of silence)START_ANGLE_KEY
, the start angle (used for cone of silence)ARC_ANGLE_KEY
, the arc angle (used for cone of silence)ALcyTEABackEnd.QUALITY_KEY
, the step size in meters for terrain
- Parameters:
aProperties
- A properties file containing the properties described above.aUsedModelsSFCT
- An empty list of models that gets filled at the end of this method with the models that were used to create this viewshed.- Returns:
- A valid viewshed for the given properties.
-
createCompositeViewshed
Creates a composite for a given list of viewsheds.- Parameters:
aViewshedList
- A list of viewsheds that were computed usingcreateViewshed(com.luciad.lucy.util.properties.ALcyProperties, java.util.List)
.- Returns:
- A composite viewshed. Or null if the viewshed list was empty or null.
-
createMultilevelRaster
Creates a multilevel raster for a given properties object.The following properties are supplied in the
aProperties
object:MODELS_KEY
: An array of models for which the viewshed calculation occurs.AREA_BOUNDS_LIST_KEY
: A list of bounds(asTLcyDomainObjectContext
instances that should be used for the viewshed calculations.VIEWSHED_MODEL_KEY
: The reference of the model in which the viewshed resides. This is not the same as the reference of the actual viewshed.ALcyTEABackEnd.QUALITY_KEY
, the step size in meters for terrainFIXED_HEIGHT_OFFSET_KEY
, the offset (in meters) with which the viewshed should be sampled above terrain.VIEWSHED_KEY
, the viewshed for which a viewshed raster should be created
- Parameters:
aProperties
- A properties file containing the properties described above.- Returns:
- A valid
TLcdViewshedMultilevelRaster
for the given properties. This method returns null if the viewshed was null. This is usually due to the viewshed being cancelled.
-