GeoTessCPP: geotess::GeoTessProfileEmpty Class Reference

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

Public Member Functions | Static Public Member Functions | List of all members
geotess::GeoTessProfileEmpty Class Reference

A Profile object that defines two radii at the bottom and top of the associated layer, and no Data. More...

`#include <GeoTessProfileEmpty.h>`

Inheritance diagram for geotess::GeoTessProfileEmpty:

## Public Member Functions
| GeoTessProfileEmpty (float radBot, float radTop)
| GeoTessProfileEmpty (IFStreamBinary &ifs)
| GeoTessProfileEmpty (IFStreamAscii &ifs)
| GeoTessProfileEmpty (float radii[], int &rIndex)
virtual | ~GeoTessProfileEmpty ()
virtual int | class_size () const
virtual LONG_INT | getMemory ()
virtual const GeoTessProfileType & | getType () const
virtual bool | operator== (const GeoTessProfile &p) const
virtual double | getValue (const GeoTessInterpolatorType &rInterpType, int attributeIndex, double radius, bool allowRadiusOutOfRange) const
virtual double | getValue (int attributeIndex, int nodeIndex) const
virtual bool | isNaN (int nodeIndex, int attributeIndex)
virtual double | getValueTop (int attributeIndex) const
virtual double | getValueBottom (int attributeIndex) const
virtual float | getRadius (int i) const
virtual int | getNRadii () const
virtual int | getNData () const
virtual float * | getRadii ()
virtual GeoTessData ** | getData ()
virtual GeoTessData * | getData (int i)
virtual const GeoTessData & | getData (int i) const
virtual void | setData (const vector< GeoTessData * > &inData)
virtual void | setRadii (const vector< float > &newRadii)
virtual void | setRadius (int index, float radius)
virtual void | setData (int index, GeoTessData *inData)
virtual float | getRadiusTop () const
virtual const GeoTessData & | getDataTop () const
virtual GeoTessData * | getDataTop ()
virtual float | getRadiusBottom () const
virtual const GeoTessData & | getDataBottom () const
virtual GeoTessData * | getDataBottom ()
virtual void | write (IFStreamBinary &ofs)
virtual void | write (IFStreamAscii &ofs)
virtual int | findClosestRadiusIndex (double radius) const
virtual void | setPointIndex (int nodeIndex, int pointIndex)
virtual void | resetPointIndices ()
virtual int | getPointIndex (int nodeIndex) const
virtual void | getWeights (map< int, double > &weights, double dkm, double radius, double hcoefficient) const
virtual void | getCoefficients (map< int, double > &coefficients, double radius, double horizontalCoefficient) const
virtual void | setInterpolationCoefficients (const GeoTessInterpolatorType &interpType, vector< int > &nodeIndexes, vector< double > &coefficients, double &radius, bool &allowOutOfRange)
virtual GeoTessProfile * | copy ()
Public Member Functions inherited from geotess::GeoTessProfile
double | getValue (const vector< int > &nodeIds, const vector< double > &coefficients, int attributeIndex) const
double | getThickness ()
int | getRadiusIndex (double radius) const
virtual int | getRadiusIndex (double radius, int jlo) const
virtual double | getInterpolationCoefficient (int i, double radius, bool allowOutOfRange) const

## Static Public Member Functions
static string | class_name ()
Static Public Member Functions inherited from geotess::GeoTessProfile
static GeoTessProfile * | newProfile (const vector< float > &radii, vector< GeoTessData * > &data)
static GeoTessProfile * | newProfile (const vector< float > &radii, vector< vector< double > > &data)
static GeoTessProfile * | newProfile (const vector< float > &radii, vector< vector< float > > &data)
static GeoTessProfile * | newProfile (const vector< float > &radii, vector< vector< LONG_INT > > &data)
static GeoTessProfile * | newProfile (const vector< float > &radii, vector< vector< int > > &data)
static GeoTessProfile * | newProfile (const vector< float > &radii, vector< vector< short > > &data)
static GeoTessProfile * | newProfile (const vector< float > &radii, vector< vector< byte > > &data)
static GeoTessProfile * | newProfile (float *radii, const int &nRadii, GeoTessData **data, const int &nData)
static GeoTessProfile * | newProfile (float *radii, const int &nRadii, double **values, const int &nNodes, const int &nAttributes)
static GeoTessProfile * | newProfile (float *radii, const int &nRadii, float **values, const int &nNodes, const int &nAttributes)
static GeoTessProfile * | newProfile (float *radii, const int &nRadii, LONG_INT **values, const int &nNodes, const int &nAttributes)
static GeoTessProfile * | newProfile (float *radii, const int &nRadii, int **values, const int &nNodes, const int &nAttributes)
static GeoTessProfile * | newProfile (float *radii, const int &nRadii, short **values, const int &nNodes, const int &nAttributes)
static GeoTessProfile * | newProfile (float *radii, const int &nRadii, byte **values, const int &nNodes, const int &nAttributes)
static string | class_name ()
static int | class_count ()

## Detailed Description

A Profile object that defines two radii at the bottom and top of the associated layer, and no Data.

A Profile object that defines two radii, one at the bottom and other at the top of the associated layer, and no Data. Profiles of this type should never be connected together by the connectivity of a tessellation.

Definition at line 76 of file GeoTessProfileEmpty.h.

## Constructor & Destructor Documentation

## ◆ GeoTessProfileEmpty() [1/4]

geotess::GeoTessProfileEmpty::GeoTessProfileEmpty | ( | float | radBot,
|  | float | radTop
| ) |  |
| inline

Default constructor.

Definition at line 100 of file GeoTessProfileEmpty.h.

## ◆ GeoTessProfileEmpty() [2/4]

geotess::GeoTessProfileEmpty::GeoTessProfileEmpty | ( | IFStreamBinary & | ifs | ) |
| inline

Standard constructor. Reads radii from the provided input file stream.

Definition at line 107 of file GeoTessProfileEmpty.h.

## ◆ GeoTessProfileEmpty() [3/4]

geotess::GeoTessProfileEmpty::GeoTessProfileEmpty | ( | IFStreamAscii & | ifs | ) |
| inline

Standard constructor. Reads radii from the provided input file stream.

Definition at line 115 of file GeoTessProfileEmpty.h.

## ◆ GeoTessProfileEmpty() [4/4]

geotess::GeoTessProfileEmpty::GeoTessProfileEmpty | ( | float | radii[],
|  | int & | rIndex
| ) |  |
| inline

Standard constructor creates references into the supplied array of radii.

Definition at line 123 of file GeoTessProfileEmpty.h.

## ◆ ~GeoTessProfileEmpty()

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

Default destructor.

Definition at line 131 of file GeoTessProfileEmpty.h.

## Member Function Documentation

## ◆ class_name()

static string geotess::GeoTessProfileEmpty::class_name | ( |  | ) |
| inlinestatic

Returns the class name.

Definition at line 136 of file GeoTessProfileEmpty.h.

## ◆ class_size()

virtual int geotess::GeoTessProfileEmpty::class_size | ( |  | ) | const
| inlinevirtual

Returns the class size.

Reimplemented from geotess::GeoTessProfile.

Definition at line 141 of file GeoTessProfileEmpty.h.

## ◆ copy()

virtual GeoTessProfile* geotess::GeoTessProfileEmpty::copy | ( |  | ) |
| inlinevirtual

Returns a deep copy of this profile.

Definition at line 422 of file GeoTessProfileEmpty.h.

## ◆ findClosestRadiusIndex()

virtual int geotess::GeoTessProfileEmpty::findClosestRadiusIndex | ( | double | radius | ) | const
| inlinevirtual

Find the index of the node in this Profile that has radius closest to the supplied radius.

Parameters

  radius | in km

Returns
  The index of the node in this Profile that has radius closest to the supplied radius.

Reimplemented from geotess::GeoTessProfile.

Definition at line 349 of file GeoTessProfileEmpty.h.

## ◆ getCoefficients()

virtual void geotess::GeoTessProfileEmpty::getCoefficients | ( | map< int, double > & | coefficients,
|  | double | radius,
|  | double | horizontalCoefficient
| ) |  | const
| inlinevirtual

Definition at line 403 of file GeoTessProfileEmpty.h.

## ◆ getData() [1/3]

virtual GeoTessData** geotess::GeoTessProfileEmpty::getData | ( |  | ) |
| virtual

Retrieve a reference to all of the Data obects associated with this Profile.

Reimplemented from geotess::GeoTessProfile.

## ◆ getData() [2/3]

virtual GeoTessData* geotess::GeoTessProfileEmpty::getData | ( | int | i | ) |
| virtual

Retrieve a reference the i'th Data object

Reimplemented from geotess::GeoTessProfile.

## ◆ getData() [3/3]

virtual const GeoTessData& geotess::GeoTessProfileEmpty::getData | ( | int | i | ) | const
| virtual

Retrieve a reference the i'th Data object

Reimplemented from geotess::GeoTessProfile.

## ◆ getDataBottom() [1/2]

virtual GeoTessData* geotess::GeoTessProfileEmpty::getDataBottom | ( |  | ) |
| inlinevirtual

Get the Data object at the bottom of the profile.

Reimplemented from geotess::GeoTessProfile.

Definition at line 320 of file GeoTessProfileEmpty.h.

## ◆ getDataBottom() [2/2]

virtual const GeoTessData& geotess::GeoTessProfileEmpty::getDataBottom | ( |  | ) | const
| virtual

Get the Data object at the bottom of the profile.

Reimplemented from geotess::GeoTessProfile.

## ◆ getDataTop() [1/2]

virtual GeoTessData* geotess::GeoTessProfileEmpty::getDataTop | ( |  | ) |
| inlinevirtual

Get the Data object at the top of the profile.

Reimplemented from geotess::GeoTessProfile.

Definition at line 305 of file GeoTessProfileEmpty.h.

## ◆ getDataTop() [2/2]

virtual const GeoTessData& geotess::GeoTessProfileEmpty::getDataTop | ( |  | ) | const
| virtual

Get the Data object at the top of the profile.

Reimplemented from geotess::GeoTessProfile.

## ◆ getMemory()

virtual LONG_INT geotess::GeoTessProfileEmpty::getMemory | ( |  | ) |
| inlinevirtual

Reimplemented from geotess::GeoTessProfile.

Definition at line 144 of file GeoTessProfileEmpty.h.

## ◆ getNData()

virtual int geotess::GeoTessProfileEmpty::getNData | ( |  | ) | const
| inlinevirtual

Get the number of Data objects that comprise this profile.

Reimplemented from geotess::GeoTessProfile.

Definition at line 236 of file GeoTessProfileEmpty.h.

## ◆ getNRadii()

virtual int geotess::GeoTessProfileEmpty::getNRadii | ( |  | ) | const
| inlinevirtual

Get the number of radii that comprise this profile.

Reimplemented from geotess::GeoTessProfile.

Definition at line 231 of file GeoTessProfileEmpty.h.

## ◆ getPointIndex()

virtual int geotess::GeoTessProfileEmpty::getPointIndex | ( | int | nodeIndex | ) | const
| inlinevirtual

Get the pointIndex that corresponds to the supplied nodeIndex.

There is a node index for each Data object in a profile and they are indexed from 0 to the number of Data objects managed by a Profile. There is a pointIndex for every Data object in the entire model, indexed from 0 to the number of Data objects in the model.

Reimplemented from geotess::GeoTessProfile.

Definition at line 383 of file GeoTessProfileEmpty.h.

## ◆ getRadii()

virtual float* geotess::GeoTessProfileEmpty::getRadii | ( |  | ) |
| inlinevirtual

Retrieve a deeep copy of the radii values in km.

Reimplemented from geotess::GeoTessProfile.

Definition at line 241 of file GeoTessProfileEmpty.h.

## ◆ getRadius()

virtual float geotess::GeoTessProfileEmpty::getRadius | ( | int | i | ) | const
| inlinevirtual

Get the i'th radius value in this profile in km. Radii are in order of increasing radius.

Reimplemented from geotess::GeoTessProfile.

Definition at line 225 of file GeoTessProfileEmpty.h.

## ◆ getRadiusBottom()

virtual float geotess::GeoTessProfileEmpty::getRadiusBottom | ( |  | ) | const
| inlinevirtual

Get the radius at the bottom of the profile, in km.

Reimplemented from geotess::GeoTessProfile.

Definition at line 310 of file GeoTessProfileEmpty.h.

## ◆ getRadiusTop()

virtual float geotess::GeoTessProfileEmpty::getRadiusTop | ( |  | ) | const
| inlinevirtual

Get the radius at the top of the profile, in km.

Reimplemented from geotess::GeoTessProfile.

Definition at line 295 of file GeoTessProfileEmpty.h.

## ◆ getType()

virtual const GeoTessProfileType& geotess::GeoTessProfileEmpty::getType | ( |  | ) | const
| inlinevirtual

Returns ProfileType (EMPTY).

Returns
  ProfileType (EMPTY).

Reimplemented from geotess::GeoTessProfile.

Definition at line 151 of file GeoTessProfileEmpty.h.

## ◆ getValue() [1/2]

virtual double geotess::GeoTessProfileEmpty::getValue | ( | const GeoTessInterpolatorType & | rInterpType,
|  | int | attributeIndex,
|  | double | radius,
|  | bool | allowRadiusOutOfRange
| ) |  | const
| virtual

Retrieve the value of the specified attribute interpolated at the specified radius. Unsuppported for ProfileEmpty.

Reimplemented from geotess::GeoTessProfile.

## ◆ getValue() [2/2]

virtual double geotess::GeoTessProfileEmpty::getValue | ( | int | attributeIndex,
|  | int | nodeIndex
| ) |  | const
| inlinevirtual

Retrieve the value of the specified attribute interpolated from this profile at the specified radius index

Parameters

  attributeIndex |
  nodeIndex |

Returns
  double

Reimplemented from geotess::GeoTessProfile.

Definition at line 179 of file GeoTessProfileEmpty.h.

## ◆ getValueBottom()

virtual double geotess::GeoTessProfileEmpty::getValueBottom | ( | int | attributeIndex | ) | const
| inlinevirtual

Retrieve the value of the specified attribute at the bottom of the layer.

Parameters

  attributeIndex |

Returns
  double

Reimplemented from geotess::GeoTessProfile.

Definition at line 216 of file GeoTessProfileEmpty.h.

## ◆ getValueTop()

virtual double geotess::GeoTessProfileEmpty::getValueTop | ( | int | attributeIndex | ) | const
| inlinevirtual

Retrieve the value of the specified attribute at the top of the layer.

Parameters

  attributeIndex |

Returns
  double

Reimplemented from geotess::GeoTessProfile.

Definition at line 204 of file GeoTessProfileEmpty.h.

## ◆ getWeights()

virtual void geotess::GeoTessProfileEmpty::getWeights | ( | map< int, double > & | weights,
|  | double | dkm,
|  | double | radius,
|  | double | hcoefficient
| ) |  | const
| inlinevirtual

Add dkm * hcoefficient to the weight of this point index into the input map. This works for Profile types Constant, Thin and Surface since they only have a single node in the profile. It does not work for ProfileNPoint and ProfileEmpty so they override this method.

Definition at line 393 of file GeoTessProfileEmpty.h.

## ◆ isNaN()

virtual bool geotess::GeoTessProfileEmpty::isNaN | ( | int | nodeIndex,
|  | int | attributeIndex
| ) |  |
| inlinevirtual

Return true if the specified Data value is NaN. For doubles and floats, this means not NaN. For bytes, shorts, ints and longs, always returns false since there is no value that is NaN.

Parameters

  nodeIndex |
  attributeIndex |

Returns
  true if the specified Data value is NaN.

Reimplemented from geotess::GeoTessProfile.

Definition at line 192 of file GeoTessProfileEmpty.h.

## ◆ operator==()

virtual bool geotess::GeoTessProfileEmpty::operator== | ( | const GeoTessProfile & | p | ) | const
| inlinevirtual

Return true if the input Profile object (p) equals this Profile object.

Reimplemented from geotess::GeoTessProfile.

Definition at line 157 of file GeoTessProfileEmpty.h.

## ◆ resetPointIndices()

virtual void geotess::GeoTessProfileEmpty::resetPointIndices | ( |  | ) |
| inlinevirtual

Reset all the pointIndex values to -1.

There is a node index for each Data object in a profile and they are indexed from 0 to the number of Data objects managed by a Profile. There is a pointIndex for every Data object in the entire model, indexed from 0 to the number of Data objects in the model.

Definition at line 373 of file GeoTessProfileEmpty.h.

## ◆ setData() [1/2]

virtual void geotess::GeoTessProfileEmpty::setData | ( | const vector< GeoTessData * > & | inData | ) |
| inlinevirtual

Resets the data object to the new input data

Reimplemented from geotess::GeoTessProfile.

Definition at line 263 of file GeoTessProfileEmpty.h.

## ◆ setData() [2/2]

virtual void geotess::GeoTessProfileEmpty::setData | ( | int | index,
|  | GeoTessData * | inData
| ) |  |
| inlinevirtual

Resets the data object at index to the new input data.

Reimplemented from geotess::GeoTessProfile.

Definition at line 289 of file GeoTessProfileEmpty.h.

## ◆ setInterpolationCoefficients()

virtual void geotess::GeoTessProfileEmpty::setInterpolationCoefficients | ( | const GeoTessInterpolatorType & | interpType,
|  | vector< int > & | nodeIndexes,
|  | vector< double > & | coefficients,
|  | double & | radius,
|  | bool & | allowOutOfRange
| ) |  |
| inlinevirtual

Definition at line 409 of file GeoTessProfileEmpty.h.

## ◆ setPointIndex()

virtual void geotess::GeoTessProfileEmpty::setPointIndex | ( | int | nodeIndex,
|  | int | pointIndex
| ) |  |
| inlinevirtual

Set the pointIndex that corresponds to the supplied nodeIndex.

There is a node index for each Data object in a profile and they are indexed from 0 to the number of Data objects managed by a Profile. There is a pointIndex for every Data object in the entire model, indexed from 0 to the number of Data objects in the model.

Definition at line 360 of file GeoTessProfileEmpty.h.

## ◆ setRadii()

virtual void geotess::GeoTessProfileEmpty::setRadii | ( | const vector< float > & | newRadii | ) |
| inlinevirtual

Replace the radii currently associated with this Profile with new values.

Reimplemented from geotess::GeoTessProfile.

Definition at line 270 of file GeoTessProfileEmpty.h.

## ◆ setRadius()

virtual void geotess::GeoTessProfileEmpty::setRadius | ( | int | index,
|  | float | radius
| ) |  |
| inlinevirtual

Replace the radius at the specified nodeIndex.

Reimplemented from geotess::GeoTessProfile.

Definition at line 273 of file GeoTessProfileEmpty.h.

## ◆ write() [1/2]

virtual void geotess::GeoTessProfileEmpty::write | ( | IFStreamAscii & | ofs | ) |
| inlinevirtual

Write the radii and data values to binary file.

Definition at line 333 of file GeoTessProfileEmpty.h.

## ◆ write() [2/2]

virtual void geotess::GeoTessProfileEmpty::write | ( | IFStreamBinary & | ofs | ) |
| inlinevirtual

Write the radii and data values to binary file.

Definition at line 325 of file GeoTessProfileEmpty.h.

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

- rstt/GeoTessCPP/include/GeoTessProfileEmpty.h