Package com.luciad.tea
Class TLcdLOSRadarPropagationFunctionCoverageMatrixWrapper
java.lang.Object
com.luciad.tea.TLcdLOSRadarPropagationFunctionCoverageMatrixWrapper
- All Implemented Interfaces:
ILcdLOSPropagationFunction
,ILcdLOSRadarPropagationFunction
public class TLcdLOSRadarPropagationFunctionCoverageMatrixWrapper
extends Object
implements ILcdLOSRadarPropagationFunction
Wrapper class, enabling multiple step processing of line-of-sight computation results.
This class wraps the result of a line-of-sight computation with a radar propagation function as
a line-of-sight propagation function. This function can be used as input for other propagation
functions (as
TLcdLOSRadarPropagationFunctionSkyBackground
) without having to redo the
original line-of-sight computations.-
Field Summary
Fields inherited from interface com.luciad.tea.ILcdLOSRadarPropagationFunction
INVISIBLE, UNKNOWN
-
Constructor Summary
ConstructorDescriptionTLcdLOSRadarPropagationFunctionCoverageMatrixWrapper
(ILcdLOSCoverageMatrix aLOSCoverageMatrix, ILcdLOSRadarPropagationFunction aLOSRadarPropagationFunction) Creates a propagation function which delegates its methods to a fixed line-of-sight coverage matrix (ILcdLOSCoverageMatrix
). -
Method Summary
Modifier and TypeMethodDescriptionvoid
applyForAzimuthSFCT
(double aAzimuth, ILcdLOSCoverageMatrix aLOSCoverageMatrixSFCT) Stores the fixed matrix values for the given azimuthaAzimuth
in the given polar matrixaEditablePolarMatrixViewSFCT
.createLOSCoverageMatrix
(ILcdLOSCoverage aLOSCoverage, ILcdGeoReference aMatrixReference) Creates a clone of the fixed coverage matrix with which this instance was created.Returns the altitude mode indicating the definition of the resulting line-of-sight values.Returns the earth representation mode used by this instance.double
Returns the K-factor indicating the reflection of radar waves on the atmosphere.double
Returns the maximum radar tilt angle in degrees, starting from 0 at the horizontal plane to 90 at zenith.double
Returns the azimuth in degrees where the maximum radar tilt angle occurs.double
Returns the maximum angle of the vertical extent in degrees, starting from 0 at the ground to 180 at zenith.double
Returns the minimum angle of the vertical extent in degrees, starting from 0 at the ground to 180 at zenith.Returns the elevation provider used to retrieve the terrain elevation data.void
initialize
(ILcdLOSCoverage aLOSCoverage, ILcdGeoReference aMatrixReference) Empty implementation because the fixed coverage matrix is already initialized.
-
Constructor Details
-
TLcdLOSRadarPropagationFunctionCoverageMatrixWrapper
public TLcdLOSRadarPropagationFunctionCoverageMatrixWrapper(ILcdLOSCoverageMatrix aLOSCoverageMatrix, ILcdLOSRadarPropagationFunction aLOSRadarPropagationFunction) Creates a propagation function which delegates its methods to a fixed line-of-sight coverage matrix (ILcdLOSCoverageMatrix
). Note that the coverage matrix and the propagation function cannot be set tonull
. If this condition is not met, aNullPointerException
will be thrown.- Parameters:
aLOSCoverageMatrix
- The fixed coverage matrix to use in this propagation function.aLOSRadarPropagationFunction
- The propagation function used to create the fixed coverage matrix.- Throws:
NullPointerException
- when the argumentaLOSCoverageMatrix
or the argumentaLOSRadarPropagationFunction
isnull
.
-
-
Method Details
-
createLOSCoverageMatrix
public ILcdLOSCoverageMatrix createLOSCoverageMatrix(ILcdLOSCoverage aLOSCoverage, ILcdGeoReference aMatrixReference) Creates a clone of the fixed coverage matrix with which this instance was created.- Specified by:
createLOSCoverageMatrix
in interfaceILcdLOSPropagationFunction
- Parameters:
aLOSCoverage
- The covered area and the intermediate step sizes.aMatrixReference
- The reference in which this matrix is defined.- Returns:
- the created coverage matrix.
-
initialize
Empty implementation because the fixed coverage matrix is already initialized.- Specified by:
initialize
in interfaceILcdLOSPropagationFunction
- Parameters:
aLOSCoverage
- The covered area to use.aMatrixReference
- The matrix reference in which to compute the matrix values.
-
applyForAzimuthSFCT
Stores the fixed matrix values for the given azimuthaAzimuth
in the given polar matrixaEditablePolarMatrixViewSFCT
. Note that the method assumes that the matrix contains a column for that specific azimuth.- Specified by:
applyForAzimuthSFCT
in interfaceILcdLOSPropagationFunction
- Parameters:
aAzimuth
- The azimuth in degrees.aLOSCoverageMatrixSFCT
- The coverage matrix to update.- Throws:
NullPointerException
- if the aLOSCoverageMatrixSFCT isnull
.
-
getEarthRepresentationMode
Description copied from interface:ILcdLOSRadarPropagationFunction
Returns the earth representation mode used by this instance.- Specified by:
getEarthRepresentationMode
in interfaceILcdLOSRadarPropagationFunction
- Returns:
- the earth representation mode used by this instance.
-
getAltitudeMode
Description copied from interface:ILcdLOSRadarPropagationFunction
Returns the altitude mode indicating the definition of the resulting line-of-sight values.- Specified by:
getAltitudeMode
in interfaceILcdLOSRadarPropagationFunction
- Returns:
- the altitude mode indicating the definition of the resulting line-of-sight values.
-
getKFactor
public double getKFactor()Description copied from interface:ILcdLOSRadarPropagationFunction
Returns the K-factor indicating the reflection of radar waves on the atmosphere. For radar computations, values should be greater than 1, usually 4/3. Setting the value equal to 1 will yield the same results as visual line-of-sight computations.- Specified by:
getKFactor
in interfaceILcdLOSRadarPropagationFunction
- Returns:
- the K-factor indicating the reflection of radar waves on the atmosphere.
-
getMaxVerticalAngle
public double getMaxVerticalAngle()Description copied from interface:ILcdLOSRadarPropagationFunction
Returns the maximum angle of the vertical extent in degrees, starting from 0 at the ground to 180 at zenith. It is the maximum vertical angle when the radar tilt angle is set to zero.- Specified by:
getMaxVerticalAngle
in interfaceILcdLOSRadarPropagationFunction
- Returns:
- the maximum angle of the vertical extent in degrees.
-
getMinVerticalAngle
public double getMinVerticalAngle()Description copied from interface:ILcdLOSRadarPropagationFunction
Returns the minimum angle of the vertical extent in degrees, starting from 0 at the ground to 180 at zenith. It is the minimum vertical angle when the radar tilt angle is set to zero.- Specified by:
getMinVerticalAngle
in interfaceILcdLOSRadarPropagationFunction
- Returns:
- the minimum angle of the vertical extent in degrees.
-
getMaxRadarTiltAngle
public double getMaxRadarTiltAngle()Description copied from interface:ILcdLOSRadarPropagationFunction
Returns the maximum radar tilt angle in degrees, starting from 0 at the horizontal plane to 90 at zenith.- Specified by:
getMaxRadarTiltAngle
in interfaceILcdLOSRadarPropagationFunction
- Returns:
- the maximum radar tilt angle in degrees.
-
getMaxRadarTiltAzimuth
public double getMaxRadarTiltAzimuth()Description copied from interface:ILcdLOSRadarPropagationFunction
Returns the azimuth in degrees where the maximum radar tilt angle occurs.- Specified by:
getMaxRadarTiltAzimuth
in interfaceILcdLOSRadarPropagationFunction
- Returns:
- the azimuth in degrees where the maximum radar tilt angle occurs.
-
getTerrainElevationProvider
Description copied from interface:ILcdLOSRadarPropagationFunction
Returns the elevation provider used to retrieve the terrain elevation data.- Specified by:
getTerrainElevationProvider
in interfaceILcdLOSRadarPropagationFunction
- Returns:
- the elevation provider used to retrieve the terrain elevation data.
-