Class TLcdP2PRadarPropagationFunctionSkyBackground

java.lang.Object
com.luciad.tea.TLcdP2PRadarPropagationFunctionSkyBackground
All Implemented Interfaces:
ILcdP2PPropagationFunction

public class TLcdP2PRadarPropagationFunctionSkyBackground extends Object implements ILcdP2PPropagationFunction
Computes the intervisibility with sky in background between the defining points. The definition of a visibility with sky in background states that in a given distance aSkyDistance after the end point no terrain background is found. This propagation function results in one of the following values:

The following image gives a visual explanation of this propagation function. The red line denotes the result given this terrain profile and the visibility properties of the helicopter pilot. The black line corresponds to the distance after the end point in which the terrain is taken into account as possible background.

Point-to-point propagation with sky in background
  • Constructor Details

    • TLcdP2PRadarPropagationFunctionSkyBackground

      public 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. The definition of a visibility with sky in background states that there is no elevation data behind the end point for the given aSkyDistance.

      Currently, two earth representation modes are supported. If another representation mode is used, an IllegalArgumentException will be thrown.

      Parameters:
      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.
      Throws:
      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).
  • Method Details

    • computeVisibility

      public 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.

      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.

      Specified by:
      computeVisibility in interface ILcdP2PPropagationFunction
      Parameters:
      aP2PCoverage - The point-to-point coverage to use.
      aComputationReference - The reference in which to compute the visibility.
      Returns:
      the computed visibility status.
      Throws:
      NullPointerException - if one of the arguments is null.