Class TLcdConeOfSilenceViewshed

java.lang.Object
com.luciad.tea.viewshed.TLcdConeOfSilenceViewshed
All Implemented Interfaces:
ILcdViewshed

public class TLcdConeOfSilenceViewshed extends Object implements ILcdViewshed

An implementation of viewshed that emulates a cone of silence around an observer.

A cone of silence can be thought of as a cone above and below the observer, the volume of which is invisible to the observer. The two cones are defined using two separate angles. These angles are then rotated around the observer horizontally to form cones. The arc of this rotation can also be adjusted so that cone of silence becomes a partial cone.

Since:
11.0
  • Constructor Details

    • TLcdConeOfSilenceViewshed

      public TLcdConeOfSilenceViewshed(TLcdPositionalViewshedObserver aPositionalObserver, double aAngleStart, double aAngleArc, double aMinVerticalAngle, double aMaxVerticalAngle, ILcdGeoReference aHorAngleReference, ILcdModelModelTransformation aModelModelTransformation)
      Parameters:
      aPositionalObserver - The position of the observer, expressed in the reference of the viewshed.
      aAngleStart - A start angle in degrees.
      aAngleArc - An arc angle in degrees.
      aMinVerticalAngle - A minimum vertical angle, given in degrees.
      aMaxVerticalAngle - A maximum angle, given in degrees.
      aHorAngleReference - The reference in which the horizontal arc parameters are expressed.
      aModelModelTransformation - A model to model transformation that transforms from the given parameters to the reference of the viewshed.
  • Method Details

    • setAngleStart

      public void setAngleStart(double aAngleStart)
      Sets the horizontal start angle of cone of silence. Expressed in degrees.
      Parameters:
      aAngleStart - A start angle in degrees.
    • setAngleArc

      public void setAngleArc(double aAngleArc)
      Sets the horizontal arc of the cone of silence. Expressed in degrees.
      Parameters:
      aAngleArc - An arc angle in degrees.
    • setMinVerticalAngle

      public void setMinVerticalAngle(double aMinVerticalAngle)
      Sets a minimimum vertical angle of the cone of silence, expressed in degrees. 0 degrees points toward the earth (nadir), 180 degrees points to the sky (zenith). Must be between 0 and 180 degrees.
      Parameters:
      aMinVerticalAngle - A minimum vertical angle, given in degrees.
    • setMaxVerticalAngle

      public void setMaxVerticalAngle(double aMaxVerticalAngle)
      Sets a maximum vertical angle of the cone of silence, expressed in degrees. 0 degrees points toward the earth (nadir), 180 degrees points to the sky (zenith). Must be between 0 and 180.
      Parameters:
      aMaxVerticalAngle - A maximum angle, given in degrees.
    • getAngleStart

      public double getAngleStart()
      Gets the horizontal start angle of cone of silence. Expressed in degrees.
      Returns:
      A start angle in degrees.
    • getAngleArc

      public double getAngleArc()
      Gets the horizontal arc angle of cone of silence. Expressed in degrees.
      Returns:
      An arc angle in degrees.
    • getMinVerticalAngle

      public double getMinVerticalAngle()
      Gets the minimimum vertical angle of the cone of silence, expressed in degrees in the source reference specified at construction. 0 degrees points toward the earth (nadir), 180 degrees points to the sky (zenith).
      Returns:
      a minimum vertical angle, given in degrees.
    • getMaxVerticalAngle

      public double getMaxVerticalAngle()
      Gets the maximum vertical angle of the cone of silence, expressed in degrees in the source reference specified at construction. 0 degrees points toward the earth (nadir), 180 degrees points to the sky (zenith).
      Returns:
      A maximum angle, given in degrees.
    • getVisibility

      public double getVisibility(ILcdPoint aPoint)
      Description copied from interface: ILcdViewshed
      Returns the visibility of a given point.
      Specified by:
      getVisibility in interface ILcdViewshed
      Parameters:
      aPoint - The point to check visibility of. The point must be given in the reference in which the viewshed is defined.
      Returns:
      A double indicating the visibility of the point. This value will be bound between 0 and 1. 0 represents non-visible. 1 represents fully visible. Anything in between 0 and 1 is partially visible, depending on specific cases.
    • getReference

      public ILcdGeoReference getReference()
      Description copied from interface: ILcdViewshed
      Returns the reference in which this viewshed is defined.
      Specified by:
      getReference in interface ILcdViewshed
      Returns:
      The reference in which viewshed is defined