Class TLcdLOSCoverage

java.lang.Object
com.luciad.tea.TLcdLOSCoverage
All Implemented Interfaces:
ILcdLOSCoverage, Cloneable

public class TLcdLOSCoverage extends Object implements ILcdLOSCoverage
Default ILcdLOSCoverage implementation that allows to set the line-of-sight coverage properties.
  • Constructor Details

    • TLcdLOSCoverage

      public TLcdLOSCoverage(ILcdPoint aCenterPoint, ILcdGeoReference aCenterPointReference, double aCenterPointAltitude, TLcdCoverageAltitudeMode aCenterPointAltitudeMode, double aRadiusMax, double aRadiusStep, double aAngleStart, double aAngleArc, double aAngleStep)
      Creates a new line-of-sight coverage with the specified parameters. Note that the center point and the center point reference cannot be set to null, if this is the case a NullPointerException is thrown.
      Parameters:
      aCenterPoint - The center point around which the coverage is defined.
      aCenterPointReference - The reference in which the center point is defined.
      aCenterPointAltitude - The altitude of the center point.
      aCenterPointAltitudeMode - The altitude mode indicating how to interpret the altitude of the center point.
      aRadiusMax - The maximum radial extent in meters.
      aRadiusStep - The radial discretization step size in meters.
      aAngleStart - The start angle in degrees.
      aAngleArc - The arc angle in degrees.
      aAngleStep - The angular discretization step size in degrees.
      Throws:
      NullPointerException - when the given aCenterPoint or aCenterPointReference is null.
    • TLcdLOSCoverage

      public TLcdLOSCoverage(ILcdPoint aCenterPoint, ILcdGeoReference aCenterPointReference, double aCenterPointAltitude, TLcdCoverageAltitudeMode aCenterPointAltitudeMode, double aRadiusMax, double aAngleStart, double aAngleArc, ILcdGeoReference aTargetReference, double aSampleDensity, double aRadialFraction)
      Creates a new line-of-sight coverage with the specified parameters. Note that the center point and the center point reference cannot be set to null, if this is the case a NullPointerException is thrown. The angular and radial step sizes of this coverage are calculated using the given target reference, the sample density and the radial fraction.

      The sample density is the average number of samples that will be taken for an area equal to one square unit in model reference. For a geodetic target reference, it is the average number of samples for an area of 1 degree latitude by 1 degree longitude. For a grid target reference, it is usually (depending on the unit of measure of the reference) the average number of samples per meter square. From this parameter, the radial and angular sample steps are computed. The higher the density, the more accurate the result will be, but the longer the computation time will be. The time de/increase linearly with sample density. Reasonable values are usually the densities of the underlying rasters, provided they have the same reference as the target reference.

      The radial fraction is represented by a number in the interval ]0,1] and indicates the fraction of the maximum radius in which the pixel density is at least the same as the sample density. The computation time will de/increase linearly with the radial fraction.

      Parameters:
      aCenterPoint - The center point around which the coverage is defined.
      aCenterPointReference - The reference in which the center point is defined.
      aCenterPointAltitude - The altitude of the center point.
      aCenterPointAltitudeMode - The altitude mode indicating how to interpret the altitude of the center point.
      aRadiusMax - The maximum radial extent in meters.
      aAngleStart - The start angle in degrees.
      aAngleArc - The arc angle in degrees.
      aTargetReference - The target reference in which the sizes should be calculated.
      aSampleDensity - The density of the data sampling at the radius corresponding to the given radial fraction, expressed in the target reference.
      aRadialFraction - A number in the interval ]0,1] which indicates up until which fraction of the maximum radius, the pixel density is at least the same as the given sample density.
      Throws:
      NullPointerException - when the given aCenterPoint or aCenterPointReference is null.
  • Method Details

    • getAngleArc

      public double getAngleArc()
      Returns the arc angle of this coverage, defined in degrees.
      Specified by:
      getAngleArc in interface ILcdLOSCoverage
      Returns:
      the arc angle of this coverage, defined in degrees.
      See Also:
      • setAngleArc(double)
    • getAngleStart

      public double getAngleStart()
      Returns the start angle of this coverage, defined in degrees.
      Specified by:
      getAngleStart in interface ILcdLOSCoverage
      Returns:
      the start angle of this coverage, defined in degrees.
      See Also:
      • setAngleStart(double)
    • getAngleStep

      public double getAngleStep()
      Returns the angle step of this coverage, defined in degrees.
      Specified by:
      getAngleStep in interface ILcdLOSCoverage
      Returns:
      the angle step of this coverage, defined in degrees.
      See Also:
      • setAngleStep(double)
    • getCenterPoint

      public ILcdPoint getCenterPoint()
      Returns the center point of this coverage.
      Specified by:
      getCenterPoint in interface ILcdLOSCoverage
      Returns:
      the center point of this coverage.
      See Also:
      • setCenterPoint(com.luciad.shape.ILcdPoint)
    • getCenterPointAltitudeMode

      public TLcdCoverageAltitudeMode getCenterPointAltitudeMode()
      Returns the altitude mode in which the altitude of the center point should be interpreted.
      Specified by:
      getCenterPointAltitudeMode in interface ILcdLOSCoverage
      Returns:
      the altitude mode in which the altitude of the center point should be interpreted.
    • getCenterPointAltitude

      public double getCenterPointAltitude()
      Returns the altitude of the center point, defined by the getCenterPointAltitudeMode().
      Specified by:
      getCenterPointAltitude in interface ILcdLOSCoverage
      Returns:
      the altitude of the center point, defined by the getCenterPointAltitudeMode().
      See Also:
      • setCenterPointAltitude(double)
    • getCenterPointReference

      public ILcdGeoReference getCenterPointReference()
      Returns the center point reference of this coverage.
      Specified by:
      getCenterPointReference in interface ILcdLOSCoverage
      Returns:
      the center point reference of this coverage.
      See Also:
      • setCenterPointReference(com.luciad.reference.ILcdGeoReference)
    • getRadiusMax

      public double getRadiusMax()
      Returns the maximum radial extent of this coverage, defined in meters.
      Specified by:
      getRadiusMax in interface ILcdLOSCoverage
      Returns:
      the maximum radial extent of this coverage, defined in meters.
      See Also:
      • setRadiusMax(double)
    • getRadiusStep

      public double getRadiusStep()
      Returns the radius step of this coverage, defined in meters.
      Specified by:
      getRadiusStep in interface ILcdLOSCoverage
      Returns:
      the radius step of this coverage, defined in meters.
      See Also:
      • setRadiusStep(double)
    • clone

      public Object clone() throws CloneNotSupportedException
      Description copied from interface: ILcdLOSCoverage
      Making the clone method available for all other classes. All implementations of this interface should support the clone method. This means that this method should never throw a CloneNotSupportedException.
      Specified by:
      clone in interface ILcdLOSCoverage
      Overrides:
      clone in class Object
      Returns:
      a clone of this instance.
      Throws:
      CloneNotSupportedException