GeoTessCPP  2.6.1
Software to facilitate storage and retrieval of 3D information about the Earth.
All Classes Namespaces Files Functions Variables Typedefs Friends Macros
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:
geotess::GeoTessProfile

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 GeoTessProfileTypegetType () 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 GeoTessDatagetData (int i)
 
virtual const GeoTessDatagetData (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 GeoTessDatagetDataTop () const
 
virtual GeoTessDatagetDataTop ()
 
virtual float getRadiusBottom () const
 
virtual const GeoTessDatagetDataBottom () const
 
virtual GeoTessDatagetDataBottom ()
 
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 GeoTessProfilecopy ()
 
- 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 GeoTessProfilenewProfile (const vector< float > &radii, vector< GeoTessData * > &data)
 
static GeoTessProfilenewProfile (const vector< float > &radii, vector< vector< double > > &data)
 
static GeoTessProfilenewProfile (const vector< float > &radii, vector< vector< float > > &data)
 
static GeoTessProfilenewProfile (const vector< float > &radii, vector< vector< LONG_INT > > &data)
 
static GeoTessProfilenewProfile (const vector< float > &radii, vector< vector< int > > &data)
 
static GeoTessProfilenewProfile (const vector< float > &radii, vector< vector< short > > &data)
 
static GeoTessProfilenewProfile (const vector< float > &radii, vector< vector< byte > > &data)
 
static GeoTessProfilenewProfile (float *radii, const int &nRadii, GeoTessData **data, const int &nData)
 
static GeoTessProfilenewProfile (float *radii, const int &nRadii, double **values, const int &nNodes, const int &nAttributes)
 
static GeoTessProfilenewProfile (float *radii, const int &nRadii, float **values, const int &nNodes, const int &nAttributes)
 
static GeoTessProfilenewProfile (float *radii, const int &nRadii, LONG_INT **values, const int &nNodes, const int &nAttributes)
 
static GeoTessProfilenewProfile (float *radii, const int &nRadii, int **values, const int &nNodes, const int &nAttributes)
 
static GeoTessProfilenewProfile (float *radii, const int &nRadii, short **values, const int &nNodes, const int &nAttributes)
 
static GeoTessProfilenewProfile (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 74 of file GeoTessProfileEmpty.h.

Constructor & Destructor Documentation

◆ GeoTessProfileEmpty() [1/4]

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

Default constructor.

Definition at line 98 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 105 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 113 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 121 of file GeoTessProfileEmpty.h.

◆ ~GeoTessProfileEmpty()

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

Default destructor.

Definition at line 129 of file GeoTessProfileEmpty.h.

Member Function Documentation

◆ class_name()

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

Returns the class name.

Definition at line 134 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 139 of file GeoTessProfileEmpty.h.

◆ copy()

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

Returns a deep copy of this profile.

Definition at line 420 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
radiusin 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 347 of file GeoTessProfileEmpty.h.

◆ getCoefficients()

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

Definition at line 401 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 318 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 303 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 142 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 234 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 229 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 381 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 239 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 223 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 308 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 293 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 149 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 177 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 214 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 202 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 391 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 190 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 155 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 371 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 261 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 287 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 407 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 358 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 268 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 271 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 331 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 323 of file GeoTessProfileEmpty.h.


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