public class TLcdP2PRadarPropagationFunctionSkyBackground extends Object implements ILcdP2PPropagationFunction
aSkyDistance
after the end point no terrain
background is found. This propagation function results in one of the following values:
TLcdVisibilityStatus.VISIBLE
: when the two points are visible to each other.TLcdVisibilityStatus.INVISIBLE
: when the two points are invisible to each other.TLcdVisibilityStatus.UNCERTAIN
: for points where the intervisibility is unknown. For
example when no or invalid elevation data was found between the defining points.Constructor and Description |
---|
TLcdP2PRadarPropagationFunctionSkyBackground(TLcdEarthRepresentationMode aEarthRepresentationMode,
ALcdTerrainElevationProvider aTerrainElevationProvider,
double aKFactor,
double aSkyDistance)
Creates a propagation function which computes the intervisibility with sky in background between
the defining points.
|
Modifier and Type | Method and Description |
---|---|
TLcdVisibilityStatus |
computeVisibility(ILcdP2PCoverage aP2PCoverage,
ILcdGeoReference aComputationReference)
Computes the intervisibility with sky in background between the defining points of the coverage
aP2PCoverage in the reference aComputationReference and returns the
result as a TLcdVisibilityStatus . |
public TLcdP2PRadarPropagationFunctionSkyBackground(TLcdEarthRepresentationMode aEarthRepresentationMode, ALcdTerrainElevationProvider aTerrainElevationProvider, double aKFactor, double aSkyDistance)
aSkyDistance
.
Currently, two earth representation modes are supported. If another representation mode is used,
an IllegalArgumentException
will be thrown.
aEarthRepresentationMode
- The mode indicating which earth representation to use.aTerrainElevationProvider
- The terrain elevation provider.aKFactor
- A 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
point-to-point computations.aSkyDistance
- The distance after the end point in which the terrain is taken into
account as possible background. If no background is found, the end
point is visible with sky as background.NullPointerException
- when the argument aTerrainElevationProvider
is
null
.IllegalArgumentException
- if the argument aKFactor
is smaller than or
equal to zero and if the argument aEarthRepresentationMode
is not one of
the expected values (TLcdEarthRepresentationMode.SPHERICAL_FIXED_RADIUS
or
TLcdEarthRepresentationMode.SPHERICAL_EULER_RADIUS
).public TLcdVisibilityStatus computeVisibility(ILcdP2PCoverage aP2PCoverage, ILcdGeoReference aComputationReference)
aP2PCoverage
in the reference aComputationReference
and returns the
result as a TLcdVisibilityStatus
.
A point is visible with sky in background if the point is intervisible from the start point and
if in a given distance after the point no terrain background is found. The distance is configured
in the constructor of this instance. Refer to the class documentation for more information about
the different visibility values.
Note that currently only GEODETIC computation references are supported.computeVisibility
in interface ILcdP2PPropagationFunction
aP2PCoverage
- The point-to-point coverage to use.aComputationReference
- The reference in which to compute the visibility.NullPointerException
- if one of the arguments is null
.