GeoTessCPP: geotess::Horizon Class Reference

GeoTessCPP 2.0.0 Software to facilitate storage and retrieval of 3D information about the Earth.

- Main Page
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Friends Macros
Public Member Functions | Protected Attributes
geotess::Horizon Class Reference

`#include <Horizon.h>`

Inheritance diagram for geotess::Horizon:

List of all members.

## Public Member Functions
| Horizon (const int &lyrIndex)
virtual | ~Horizon ()
virtual string | class_name ()
virtual double | getValue ()
virtual double | getRadius (const double *position, Profile **profiles)
virtual double | getRadius (GeoTessPosition &position)
virtual int | getLayerIndex ()
virtual string | str ()

## Protected Attributes
int | layerIndex

## Detailed Description

Horizon is an abstract class that represents a single "surface" within a model. This might be a surface of constant radius, constant depth, the top or bottom of a layer, etc. The surface can be constrained to a specified layer, or can cross layer boundaries. There are derived classes for each of these, HorizonRadius, HorizonDepth, and HorizonLayer. A Horizon class implements a single basic function, getRadius(). That method can take either a GeoTessPosition object or a vertex position and the 1D array of Profiles associated with that vertex.

Author:
  sballar

## Constructor & Destructor Documentation

geotess::Horizon::Horizon | ( | const int & | lyrIndex | ) |
| inline

Default constructor.

virtual geotess::Horizon::~Horizon | ( |  | ) |
| inlinevirtual

## Member Function Documentation

virtual string geotess::Horizon::class_name | ( |  | ) |
| inlinevirtual

Reimplemented in geotess::HorizonLayer, geotess::HorizonDepth, and geotess::HorizonRadius.

virtual int geotess::Horizon::getLayerIndex | ( |  | ) |
| inlinevirtual

Retrieve the index of the layer that was specified at construction. If >= 0 and < the number of layers in the model then the radius of this Horizon object will be constrained to be within the radii of the top and bottom of this layer.

Returns:
  layer index, or -1.

virtual double geotess::Horizon::getRadius | ( | const double * | position,
|  | Profile ** | profiles
| ) |  |
| virtual

Return the radius of the Horizon at the specified geographic position and constrained by the specified array of Profiles, all of which are assumed to reside at the specified position.

Parameters:

  position | the unit vector representing the position where the radius is to be determined. This should correspond to the position of the supplied array of Profiles.
  profiles | a 1D array of profiles at the specified position. The number of elements must be equal to the number of layers in the model with the first layer being the deepest (closest to the center of the Earth) and the last layer being the shallowest (farthest from the center of the Earth).

Returns:
  the radius of the Horizon at the specified position and perhaps constrained to reside in the specified layer. Units are km.

Reimplemented in geotess::HorizonDepth, geotess::HorizonRadius, and geotess::HorizonLayer.

virtual double geotess::Horizon::getRadius | ( | GeoTessPosition & | position | ) |
| virtual

Return the radius of the Horizon at the position of the specified GeoTessPosition object.

Parameters:

  position |

Returns:
  the radius of the Horizon at the specified position and perhaps constrained to reside in the specified layer. Units are km.

Exceptions:

  GeoTessException |

Reimplemented in geotess::HorizonDepth, geotess::HorizonRadius, and geotess::HorizonLayer.

virtual double geotess::Horizon::getValue | ( |  | ) |
| virtual

HorizonDepth objects return depth, HorizonRadius object return radius, and HorizonLayer object return fraction.

Reimplemented in geotess::HorizonDepth, geotess::HorizonRadius, and geotess::HorizonLayer.

virtual string geotess::Horizon::str | ( |  | ) |
| virtual

Reimplemented in geotess::HorizonDepth, geotess::HorizonRadius, and geotess::HorizonLayer.

## Member Data Documentation

int geotess::Horizon::layerIndex
| protected

If layerIndex is >= 0 and < the number of layers represented in a model, then the returned radius will be constrained to be between the top and bottom of the specified layer. Otherwise, the radius will not be so constrained.

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

- include/Horizon.h