public class TLcdLOSPropagationFunctionFixedHeight extends Object implements ILcdLOSPropagationFunction
ILcdLOSPropagationFunction
on which it will base its
line-of-sight computations. The radar propagation function computes the minimal heights from which
one is visible. These heights, combined with the cone of visibility, are compared to the given fixed
height, resulting in one of the following values:
VISIBLE
: for points where the object is visible.INVISIBLE
: for points where the object is invisible.CONE_OF_SILENCE
: for the points corresponding to the cone of silence
around the given point.UNKNOWN
: for points where the visibility is unknown. For example when
no elevation data or invalid data was found at that point.Modifier and Type | Field and Description |
---|---|
static int |
CONE_OF_SILENCE
The resulting value for the points corresponding to the cone of
silence around the given point.
|
static int |
INVISIBLE
The resulting value for points where the object is invisible due
to the obstruction of the terrain.
|
static int |
UNKNOWN
The resulting value for points where the visibility is unknown.
|
static int |
VISIBLE
The resulting value for points where the object is visible.
|
Constructor and Description |
---|
TLcdLOSPropagationFunctionFixedHeight(ILcdLOSRadarPropagationFunction aLOSRadarPropagationFunction,
double aFixedHeightAboveEllipsoid)
Creates a propagation function which computes the visibility of points at a fixed height from a given
point.
|
TLcdLOSPropagationFunctionFixedHeight(ILcdLOSRadarPropagationFunction aLOSRadarPropagationFunction,
double aFixedHeight,
TLcdCoverageAltitudeMode aFixedHeightMode)
Creates a propagation function which computes the visibility of points at a fixed height from a given
point.
|
TLcdLOSPropagationFunctionFixedHeight(ILcdLOSRadarPropagationFunction aLOSRadarPropagationFunction,
double aFixedHeight,
TLcdCoverageAltitudeMode aFixedHeightMode,
TLcdLOSOptions aLOSOption)
Creates a propagation function which computes the visibility of points at a fixed height from a given
point.
|
Modifier and Type | Method and Description |
---|---|
void |
applyForAzimuthSFCT(double aAzimuth,
ILcdLOSCoverageMatrix aLOSCoverageMatrixSFCT)
Computes the visibility of points at a fixed height from the center point of a
line-of-sight coverage for a given azimuth and stores the resulting values in
the line-of-sight coverage matrix.
|
ILcdLOSCoverageMatrix |
createLOSCoverageMatrix(ILcdLOSCoverage aLOSCoverage,
ILcdGeoReference aMatrixReference)
Creates a coverage matrix using the line-of-sight coverage
aLOSCoverage and the matrix
reference aMatrixReference . |
void |
initialize(ILcdLOSCoverage aLOSCoverage,
ILcdGeoReference aMatrixReference)
Initialize the propagation function with the given coverage
aLOSCoverage and the given
matrix reference aMatrixReference . |
public static final int INVISIBLE
public static final int UNKNOWN
public static final int CONE_OF_SILENCE
public static final int VISIBLE
public TLcdLOSPropagationFunctionFixedHeight(ILcdLOSRadarPropagationFunction aLOSRadarPropagationFunction, double aFixedHeightAboveEllipsoid)
null
. If this condition is not
met, a NullPointerException
will be thrown.aLOSRadarPropagationFunction
- The propagation function on which to base its computations.aFixedHeightAboveEllipsoid
- The fixed height value defined in meters above ellipsoid.NullPointerException
- when the argument aLOSRadarPropagationFunction
is
null
.IllegalArgumentException
- if the argument aLOSRadarPropagationFunction
does not use the mode TLcdEarthRepresentationMode.SPHERICAL_FIXED_RADIUS
or
TLcdEarthRepresentationMode.SPHERICAL_EULER_RADIUS
and if it uses the altitude
mode TLcdCoverageAltitudeMode.ABOVE_OBJECT
.public TLcdLOSPropagationFunctionFixedHeight(ILcdLOSRadarPropagationFunction aLOSRadarPropagationFunction, double aFixedHeight, TLcdCoverageAltitudeMode aFixedHeightMode)
null
. If this condition is not
met, a NullPointerException
will be thrown.aLOSRadarPropagationFunction
- The propagation function on which to base its computations.aFixedHeight
- The fixed height value.aFixedHeightMode
- The altitude mode indicating how to interpret the fixed height.NullPointerException
- when the argument aLOSRadarPropagationFunction
is
null
.IllegalArgumentException
- if the argument aLOSRadarPropagationFunction
does not use the mode TLcdEarthRepresentationMode.SPHERICAL_FIXED_RADIUS
or
TLcdEarthRepresentationMode.SPHERICAL_EULER_RADIUS
, if it uses the altitude
mode TLcdCoverageAltitudeMode.ABOVE_OBJECT
and if the argument aFixedHeight
is set to TLcdCoverageAltitudeMode.ABOVE_OBJECT
.public TLcdLOSPropagationFunctionFixedHeight(ILcdLOSRadarPropagationFunction aLOSRadarPropagationFunction, double aFixedHeight, TLcdCoverageAltitudeMode aFixedHeightMode, TLcdLOSOptions aLOSOption)
null
. If this condition is not
met, a NullPointerException
will be thrown.aLOSRadarPropagationFunction
- The propagation function on which to base its computations.aFixedHeight
- The fixed height value.aFixedHeightMode
- The altitude mode indicating how to interpret the fixed height.aLOSOption
- A LOS option object containing parameters for the internals of this
propagation function and its resulting coveragesNullPointerException
- when the argument aLOSRadarPropagationFunction
is
null
.IllegalArgumentException
- if the argument aLOSRadarPropagationFunction
does not use the mode TLcdEarthRepresentationMode.SPHERICAL_FIXED_RADIUS
or
TLcdEarthRepresentationMode.SPHERICAL_EULER_RADIUS
, if it uses the altitude
mode TLcdCoverageAltitudeMode.ABOVE_OBJECT
and if the argument aFixedHeight
is set to TLcdCoverageAltitudeMode.ABOVE_OBJECT
.public ILcdLOSCoverageMatrix createLOSCoverageMatrix(ILcdLOSCoverage aLOSCoverage, ILcdGeoReference aMatrixReference)
ILcdLOSPropagationFunction
aLOSCoverage
and the matrix
reference aMatrixReference
. The result of this method is used as input parameter for the
method applyForAzimuthSFCT
, which will store the actual matrix values. The matrix should
be consistent with the given coverage. This means that all matrix rows and columns represent evenly
spaced radii and azimuths as defined by the radial and angular step sizes of the line-of-sight coverage.
The method ILcdLOSPropagationFunction.initialize(com.luciad.tea.ILcdLOSCoverage, com.luciad.reference.ILcdGeoReference)
is called with the same arguments as supplied with this method.
The ILcdLOSCoverageMatrix
created by this method is guaranteed to be capable of determining
its own associatedPointX and associatedPointY properties. These values are not calculated by this ILcdPropagationFunction
. An ILcdLOSPropagationFunction
does not modify the values of the associatedPointX and
associatedPointY for its created ILcdLOSCoverageMatrix
.
createLOSCoverageMatrix
in interface ILcdLOSPropagationFunction
aLOSCoverage
- The covered area and the intermediate step sizes.aMatrixReference
- The reference in which this matrix is defined.public void initialize(ILcdLOSCoverage aLOSCoverage, ILcdGeoReference aMatrixReference)
ILcdLOSPropagationFunction
aLOSCoverage
and the given
matrix reference aMatrixReference
. For performance reasons, it is recommended that this
method initializes all fields that are common to all computations or which do not depend on a specific
azimuth.initialize
in interface ILcdLOSPropagationFunction
aLOSCoverage
- The covered area to use.aMatrixReference
- The matrix reference in which to compute the matrix values.public void applyForAzimuthSFCT(double aAzimuth, ILcdLOSCoverageMatrix aLOSCoverageMatrixSFCT)
INVISIBLE
). Refer
to the class documentation for more information about the different visibility
values used in this propagation function.applyForAzimuthSFCT
in interface ILcdLOSPropagationFunction
aAzimuth
- The azimuth in degrees.aLOSCoverageMatrixSFCT
- The coverage matrix to update.NullPointerException
- if the aLOSCoverageMatrixSFCT is null
.