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.
Constructor and Description |
---|
TLcdConeOfSilenceViewshed(TLcdPositionalViewshedObserver aPositionalObserver,
double aAngleStart,
double aAngleArc,
double aMinVerticalAngle,
double aMaxVerticalAngle,
ILcdGeoReference aHorAngleReference,
ILcdModelModelTransformation aModelModelTransformation) |
Modifier and Type | Method and Description |
---|---|
double |
getAngleArc()
Gets the horizontal arc angle of cone of silence.
|
double |
getAngleStart()
Gets the horizontal start angle of cone of silence.
|
double |
getMaxVerticalAngle()
Gets the maximum vertical angle of the cone of silence, expressed in degrees in the source
reference specified at construction.
|
double |
getMinVerticalAngle()
Gets the minimimum vertical angle of the cone of silence, expressed in degrees in the source
reference specified at construction.
|
ILcdGeoReference |
getReference()
Returns the reference in which this viewshed is defined.
|
double |
getVisibility(ILcdPoint aPoint)
Returns the visibility of a given point.
|
void |
setAngleArc(double aAngleArc)
Sets the horizontal arc of the cone of silence.
|
void |
setAngleStart(double aAngleStart)
Sets the horizontal start angle of cone of silence.
|
void |
setMaxVerticalAngle(double aMaxVerticalAngle)
Sets a maximum vertical angle of the cone of silence, expressed in degrees.
|
void |
setMinVerticalAngle(double aMinVerticalAngle)
Sets a minimimum vertical angle of the cone of silence, expressed in degrees.
|
public TLcdConeOfSilenceViewshed(TLcdPositionalViewshedObserver aPositionalObserver, double aAngleStart, double aAngleArc, double aMinVerticalAngle, double aMaxVerticalAngle, ILcdGeoReference aHorAngleReference, ILcdModelModelTransformation aModelModelTransformation)
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.public void setAngleStart(double aAngleStart)
aAngleStart
- A start angle in degrees.public void setAngleArc(double aAngleArc)
aAngleArc
- An arc angle in degrees.public void setMinVerticalAngle(double aMinVerticalAngle)
aMinVerticalAngle
- A minimum vertical angle, given in degrees.public void setMaxVerticalAngle(double aMaxVerticalAngle)
aMaxVerticalAngle
- A maximum angle, given in degrees.public double getAngleStart()
public double getAngleArc()
public double getMinVerticalAngle()
public double getMaxVerticalAngle()
public double getVisibility(ILcdPoint aPoint)
ILcdViewshed
getVisibility
in interface ILcdViewshed
aPoint
- The point to check visibility of. The point must be given in the reference
in which the viewshed is defined.public ILcdGeoReference getReference()
ILcdViewshed
getReference
in interface ILcdViewshed