radar-coord-conversion-utility  0.7
RadarGeoCoord_util Class Reference

Class to calculate point coordinates related to radar place and coordinates. More...

#include <radarcoordlib/RadarGeoCoord_util.hpp>

Inheritance diagram for RadarGeoCoord_util:
RadarPoint_util

Public Member Functions

bool AeqdCoords2GeoCoords ()
 Compute geographic coordinates from Aeqd coordinates. More...
 
bool calculateGeodesicParam ()
 Calculate Earth distance and Azimuth from radar site to the point set. More...
 
virtual bool fillCoords ()
 Compute point coordinates for all Aeqd,Geographic and Geodesic systems. More...
 
bool GeoCoords2AeqdCoords ()
 Compute Aeqd coordinates fro Geographic coordinates. More...
 
float getAntennaTowerHeight ()
 get beam electromagnetic focus height above surface value More...
 
float getAzimuth ()
 Get Azimuth of geodetic between radar site and point. More...
 
float getHeightR ()
 get radar height above msl value More...
 
float getLatR ()
 get radar latitude value More...
 
float getLonR ()
 get radar longitude value More...
 
float getPointLat ()
 Get point latitude. More...
 
float getPointLon ()
 Get point longitude. More...
 
float getPointXCoord ()
 Get point X coordinate (Aeqd projection centred on radar site) More...
 
float getPointYCoord ()
 Get point y coordinate (Aeqd projection centred on radar site) More...
 
float getSurfaceDistance ()
 Get distance on the Earth surface. More...
 
bool invertGeodesicCalculation ()
 Calculate geographic and gnomonic coordinates from Earth distance and Azimuth. More...
 
bool isAzimuthSet ()
 Check if geodetic Azimuth is set. More...
 
bool isGeodesicCoordsSet ()
 Check if point Geodetic coordinates are set. More...
 
bool isPointAeqdCoordsSet ()
 Check if point Aeqd coordinates are valid. More...
 
bool isPointGeoCoordsSet ()
 Check if point Geographic coordinates are valid. More...
 
bool isPointLatitudeSet ()
 Check if point latitude is valid and set. More...
 
bool isPointLongitudeSet ()
 Check if point longitude is valid and set. More...
 
bool isPointXCoordSet ()
 Check if point X coordinate is valid. More...
 
bool isPointYCoordSet ()
 Check if point Y coordinate is valid. More...
 
bool isSurfaceDistanceSet ()
 Check if. More...
 
 RadarGeoCoord_util ()
 Constructor. More...
 
 RadarGeoCoord_util (float latr, float lonr, float heightr, float aTH)
 Constructor with radar coordinates passed Point coordinates are set to missing value. More...
 
virtual void setPoint2Missing ()
 Set Point coordinates to missing. More...
 
void setPointAeqdCoords (float X, float Y, bool cleanOtherCoords=true)
 Set Aeqd coordinates (Aeqd projection centred on radar site) More...
 
void setPointGeoCoords (float lat, float lon, bool cleanOtherCoords=true)
 Set point geographic coordinates. More...
 
void setPointGeodesicCoordinate (float Azimuth, float SurfaceDist, bool cleanOtherCoords=true)
 Set Geodesic coordinate (Azimuth, Surface distance) More...
 
void setRadarCoord (float latr, float lonr, float heightr, float aTH, bool cleanPointCoord=true)
 Set radar coordinates. More...
 

Protected Member Functions

void setAntennaTowerHeight (float value)
 set beam electromagnetic focus height above surface value More...
 
void setAzimuth (float value)
 Set Azimuth of geodetic between radar site and point. More...
 
void setHeightR (float value)
 set radar height above msl value More...
 
void setLatR (float value)
 set radar latitude value More...
 
void setLonR (float value)
 set radar longitude value More...
 
void setPointLat (float value)
 Set point latitude. More...
 
void setPointLon (float value)
 Set point longitude. More...
 
void setPointXCoord (float value)
 Set point X coordinate (Aeqd projection centred on radar site) More...
 
void setPointYCoord (float value)
 Set point y coordinate (Aeqd projection centred on radar site) More...
 
void setSurfaceDistance (float value)
 Set distance on the Earth surface. More...
 

Protected Attributes

float Azimuth
 
float Lat_p
 
float Lon_p
 
RadarSite radar_site
 
float surfaceDistance
 
float Xcoord_p
 
float Ycoord_p
 

Detailed Description

Class to calculate point coordinates related to radar place and coordinates.

This class compute (back and for) Earth coordinate calculations of a single point
related to radar position.

The point coordinate could be passed as one of the following options:

  • Geographic (Latitude, Longitude)
  • Aeqd projection centred on the radar site (Xcoord, Ycoord) in meter
  • Geodetic coordinate (Azimuth, distance over Earth surface) (Degree, meter)

Constructor & Destructor Documentation

◆ RadarGeoCoord_util() [1/2]

RadarGeoCoord_util::RadarGeoCoord_util ( )

Constructor.

Inizialize radar site coordinates at
Lat : 0. N - Lon : 0. E - Height : 0. m - Antennatower height : 0. m
Point coordinates are set to missing value

◆ RadarGeoCoord_util() [2/2]

RadarGeoCoord_util::RadarGeoCoord_util ( float  latr,
float  lonr,
float  heightr,
float  aTH 
)

Constructor with radar coordinates passed Point coordinates are set to missing value.

Parameters
latr- Radar site Latitude
lonr- Radar site Longitude
heightr- Height above the msl of radar site (antenna tower not included)
aTH- Height of the electric antenna focus related above the surface

Member Function Documentation

◆ AeqdCoords2GeoCoords()

bool RadarGeoCoord_util::AeqdCoords2GeoCoords ( )

Compute geographic coordinates from Aeqd coordinates.

Returns
true if geographich coordinates are calculated

◆ calculateGeodesicParam()

bool RadarGeoCoord_util::calculateGeodesicParam ( )

Calculate Earth distance and Azimuth from radar site to the point set.

One of Aeqd or Geographic coords should be set Detail description
Geodesic parameters are calculate based on GeographicLib available at http://sourceforge.net/projects/geographiclib/

Returns
True if calculation of Geodetic parameters converge
False if calcualtion is not possible

◆ fillCoords()

bool RadarGeoCoord_util::fillCoords ( )
virtual

Compute point coordinates for all Aeqd,Geographic and Geodesic systems.

Returns
True if calculation of coordinate is done
False if calcualtion is not possible

Reimplemented in RadarPoint_util.

◆ GeoCoords2AeqdCoords()

bool RadarGeoCoord_util::GeoCoords2AeqdCoords ( )

Compute Aeqd coordinates fro Geographic coordinates.

Returns
true if gnomonic coordinates are calculated

◆ getAntennaTowerHeight()

float RadarGeoCoord_util::getAntennaTowerHeight ( )

get beam electromagnetic focus height above surface value

Returns
Height of the electric antenna focus related above the surface

◆ getAzimuth()

float RadarGeoCoord_util::getAzimuth ( )

Get Azimuth of geodetic between radar site and point.

Returns
Azimuth (degree from North clockwise)

◆ getHeightR()

float RadarGeoCoord_util::getHeightR ( )

get radar height above msl value

Returns
Height above the msl of radar site (antenna tower not included)

◆ getLatR()

float RadarGeoCoord_util::getLatR ( )

get radar latitude value

Returns
Radar site Latitude

◆ getLonR()

float RadarGeoCoord_util::getLonR ( )

get radar longitude value

Returns
Radar site Longitude

◆ getPointLat()

float RadarGeoCoord_util::getPointLat ( )

Get point latitude.

Returns
latitude (degree N)

◆ getPointLon()

float RadarGeoCoord_util::getPointLon ( )

Get point longitude.

Returns
longitude (degree E)

◆ getPointXCoord()

float RadarGeoCoord_util::getPointXCoord ( )

Get point X coordinate (Aeqd projection centred on radar site)

Returns
x coordinate (meter)

◆ getPointYCoord()

float RadarGeoCoord_util::getPointYCoord ( )

Get point y coordinate (Aeqd projection centred on radar site)

Returns
y coordinate (meter)

◆ getSurfaceDistance()

float RadarGeoCoord_util::getSurfaceDistance ( )

Get distance on the Earth surface.

Returns
Distance over Earth surface (meter)

◆ invertGeodesicCalculation()

bool RadarGeoCoord_util::invertGeodesicCalculation ( )

Calculate geographic and gnomonic coordinates from Earth distance and Azimuth.

Detail description
Invert Geodesic calculation are based on GeographicLib available at http://sourceforge.net/projects/geographiclib/

Returns
True if calculation of iGeographic coordinate is done
False if calcualtion is not possible

◆ isAzimuthSet()

bool RadarGeoCoord_util::isAzimuthSet ( )

Check if geodetic Azimuth is set.

Returns
true if geodetic azimuth is set.

◆ isGeodesicCoordsSet()

bool RadarGeoCoord_util::isGeodesicCoordsSet ( )

Check if point Geodetic coordinates are set.

Returns
true if set

◆ isPointAeqdCoordsSet()

bool RadarGeoCoord_util::isPointAeqdCoordsSet ( )

Check if point Aeqd coordinates are valid.

Returns
true if both coordinates are set

◆ isPointGeoCoordsSet()

bool RadarGeoCoord_util::isPointGeoCoordsSet ( )

Check if point Geographic coordinates are valid.

◆ isPointLatitudeSet()

bool RadarGeoCoord_util::isPointLatitudeSet ( )

Check if point latitude is valid and set.

Returns
true if latitude valide and set.

◆ isPointLongitudeSet()

bool RadarGeoCoord_util::isPointLongitudeSet ( )

Check if point longitude is valid and set.

Returns
true if longitude valide and set.

◆ isPointXCoordSet()

bool RadarGeoCoord_util::isPointXCoordSet ( )

Check if point X coordinate is valid.

Returns
true if coordinate is set

◆ isPointYCoordSet()

bool RadarGeoCoord_util::isPointYCoordSet ( )

Check if point Y coordinate is valid.

Returns
true if coordinate is set

◆ isSurfaceDistanceSet()

bool RadarGeoCoord_util::isSurfaceDistanceSet ( )

Check if.

Returns
true if geodetice distance is set.

◆ setAntennaTowerHeight()

void RadarGeoCoord_util::setAntennaTowerHeight ( float  value)
protected

set beam electromagnetic focus height above surface value

Parameters
value- Height of the electric antenna focus related above the surface
Exceptions
RadarCoordBadDataException- if value passed if outsite [0, +100]

◆ setAzimuth()

void RadarGeoCoord_util::setAzimuth ( float  value)
protected

Set Azimuth of geodetic between radar site and point.

Parameters
[in]valueAzimuth (degree from North clockwise)

◆ setHeightR()

void RadarGeoCoord_util::setHeightR ( float  value)
protected

set radar height above msl value

Parameters
[in]value- Height above the msl of radar site (antenna tower not included)

◆ setLatR()

void RadarGeoCoord_util::setLatR ( float  value)
protected

set radar latitude value

Parameters
[in]value- Radar site Latitude
Exceptions
RadarCoordBadDataException- if value passed if outsite [-90, +90]

◆ setLonR()

void RadarGeoCoord_util::setLonR ( float  value)
protected

set radar longitude value

Parameters
[in]value- Radar site Longitude
Exceptions
RadarCoordBadDataException- if value passed if outsite [-180, +180]

◆ setPoint2Missing()

void RadarGeoCoord_util::setPoint2Missing ( )
virtual

Set Point coordinates to missing.

Reimplemented in RadarPoint_util.

◆ setPointAeqdCoords()

void RadarGeoCoord_util::setPointAeqdCoords ( float  X,
float  Y,
bool  cleanOtherCoords = true 
)

Set Aeqd coordinates (Aeqd projection centred on radar site)

Parameters
[in]X- x coordinate (meter)
[in]Y- y coordinate (meter)
[in]cleanOtherCoordsIf true Geodesic and Geographic coordinate will be unset.

◆ setPointGeoCoords()

void RadarGeoCoord_util::setPointGeoCoords ( float  lat,
float  lon,
bool  cleanOtherCoords = true 
)

Set point geographic coordinates.

Parameters
[in]lat- latitude (degree N)
[in]lon- longitude (degree E)
[in]cleanOtherCoordsIf true Geodesic and Aeqd coordinate will be unset.

◆ setPointGeodesicCoordinate()

void RadarGeoCoord_util::setPointGeodesicCoordinate ( float  Azimuth,
float  SurfaceDist,
bool  cleanOtherCoords = true 
)

Set Geodesic coordinate (Azimuth, Surface distance)

Parameters
[in]Azimuthdirection from radar site (Degree N)
[in]SurfaceDistdistance over the Earth surface between radar site and Earth point
[in]cleanOtherCoordsIf true Aeqd and Geographic coordinate will be unset.

◆ setPointLat()

void RadarGeoCoord_util::setPointLat ( float  value)
protected

Set point latitude.

Parameters
[in]value- latitude (degree N)
Exceptions
RadarCoordBadDataExceptionif value passed if outsite [-90, +90]

◆ setPointLon()

void RadarGeoCoord_util::setPointLon ( float  value)
protected

Set point longitude.

Parameters
[in]value- longitude (degree E)
Exceptions
RadarCoordBadDataExceptionif value passed if outsite [-180, +180]

◆ setPointXCoord()

void RadarGeoCoord_util::setPointXCoord ( float  value)
protected

Set point X coordinate (Aeqd projection centred on radar site)

Parameters
[in]value- x coordinate (meter)

◆ setPointYCoord()

void RadarGeoCoord_util::setPointYCoord ( float  value)
protected

Set point y coordinate (Aeqd projection centred on radar site)

Parameters
[in]value- y coordinate (meter)

◆ setRadarCoord()

void RadarGeoCoord_util::setRadarCoord ( float  latr,
float  lonr,
float  heightr,
float  aTH,
bool  cleanPointCoord = true 
)

Set radar coordinates.

Parameters
[in]latrRadar site Latitude
[in]lonrRadar site Longitude
[in]heightrHeight above the msl of radar site (antenna tower not included)
[in]aTHHeight of the electric antenna focus related above the surface
[in]cleanPointCoordif true all point coordinate are cleaned

◆ setSurfaceDistance()

void RadarGeoCoord_util::setSurfaceDistance ( float  value)
protected

Set distance on the Earth surface.

Parameters
[in]valuedistance over Earth surface (meter)

Member Data Documentation

◆ Azimuth

float RadarGeoCoord_util::Azimuth
protected

Azimuth

Azimuth form north of the geodetic line at the radar site

◆ Lat_p

float RadarGeoCoord_util::Lat_p
protected

Lat_p

Latitude coordinate for the point evaluated

See also
generic::checkLatitude

◆ Lon_p

float RadarGeoCoord_util::Lon_p
protected

Lon_p

Longitude coordinate for the point evaluated

See also
generic::checkLongitude

◆ radar_site

RadarSite RadarGeoCoord_util::radar_site
protected

Radar_site

Radar site coordinate

◆ surfaceDistance

float RadarGeoCoord_util::surfaceDistance
protected

surfaceDistance

Distance between radar and point on the geodetic line

◆ Xcoord_p

float RadarGeoCoord_util::Xcoord_p
protected

Xcoord_p

Aeqd X coordinate value for the point evaluated

◆ Ycoord_p

float RadarGeoCoord_util::Ycoord_p
protected

Ycoord_p

Aeqd Y coordinate value for the point evaluated


The documentation for this class was generated from the following files: