GeoTessCPP  2.0.0
Software to facilitate storage and retrieval of 3D information about the Earth.
 All Classes Namespaces Files Functions Variables Typedefs Friends Defines
Public Member Functions | Static Public Member Functions
geotess::GeoTessGrid Class Reference

#include <GeoTessGrid.h>

List of all members.

Public Member Functions

 GeoTessGrid ()
 GeoTessGrid (const GeoTessOptimizationType *opttype)
 GeoTessGrid (GeoTessGrid &other)
void clearVertexIndices ()
void clearVertexTriangles ()
int findClosestVertex (double *unit_vector, int tessId)
const double * getCircumCenter (int triangle, double *const pA) const
int getFirstTriangle (int tessellation, int level) const
const string & getGridGenerationDate () const
const string & getGridID () const
const string & getGridInputFile () const
const string & getGridOutputFile () const
const string & getGridSoftwareVersion () const
int getLastLevel (int tessellation) const
int getLastTriangle (int tessellation, int level) const
int getLevel (int tessellation, int i) const
int const *const * getLevels () const
int getNeighbor (int triangleIndex, int neighborIndex) const
int getNeighbor (const int &tessellation, const int &level, const int &triangle, const int &side)
int getNeighborIndex (const int &tid, const int &nid)
const int * getNeighbors (int triangleIndex) const
const int * getNeighbors (const int &tessellation, const int &level, const int &triangle)
int const *const * getNeighbors () const
int getNLevels (int tessellation) const
int getNLevels () const
int getNTessellations () const
int getNTriangles (int tessellation, int level) const
int getNTriangles () const
int getNVertices () const
const GeoTessOptimizationTypegetOptimizationType () const
int const *const * getTessellations () const
int getTriangle (int tessellation, int level, int i) const
int getTriangle (int triangleIndex, double *vector)
int const *const * getTriangles () const
const double * getTriangleVertex (int triangleIndex, int cornerIndex) const
int getTriangleVertexIndex (int triangleIndex, int cornerIndex) const
const int * getTriangleVertexIndexes (int triangleIndex) const
void getTriangleVertices (int triangle, double **triVrt)
const double * getVertex (int vertex) const
double * getVertex (int tessId, int level, int triangle, int corner)
int getVertexIndex (int tessId, int level, int triangle, int corner) const
const set< int > & getVertexIndices (const int &tessId, const int &level)
const set< int > & getVertexIndicesTopLevel (const int &tessId)
void getVertexNeighbors (const int &tessId, const int &level, const int &vertex, set< int > &nbrs)
void getVertexNeighbors (const int &tessId, const int &level, const int &vertex, const int &order, set< int > &nbrs)
void getVertexNeighborsOrdered (const int &tessId, const int &level, const int &vertex, vector< int > &v)
const vector< int > & getVertexTriangles (const int &tessId, const int &level, const int &vertex) const
const vector< int > & getVertexTriangles (int tessId, int vertex) const
double const *const * getVertices () const
void getVertices (const int &tessellation, const int &level, set< const double * > &vectors)
void getVerticesTopLevel (const int &tessellation, set< const double * > &vectors)
GeoTessGridloadGrid (const string &inputFile)
bool operator!= (const GeoTessGrid &g) const
GeoTessGridoperator= (const GeoTessGrid &other)
bool operator== (const GeoTessGrid &g) const
void setGridGenerationDate (const string &gridDate)
void setGridInputFile (const string &gridFile)
void setGridSoftwareVersion (const string &swVersion)
void testGrid ()
string toString ()

Static Public Member Functions

static string getGridID (const string &fileName)
static bool isGeoTessGrid (const string &inputFile)

Detailed Description

Manages the geometry and topology of one or more multi-level triangular tessellations of a unit sphere. It knows:

GeoTessGrid is thread-safe in that its internal state is not modified after its data has been loaded into memory. The design intention is that single instances of a GeoTessGrid object and GeoTessData object can be shared among all the threads in a multi-threaded application and each thread will have it's own instance of a GeoTessPosition object that references the common GeoTessGrid + GeoTessData combination.

References Ballard, S., J. R. Hipp and C. J. Young, 2009, Efficient and Accurate Calculation of Ray Theory Seismic Travel Time Through Variable Resolution 3D Earth Models, Seismological Research Letters, v.80, n. 6 p. 989-999.

Author:
Sandy Ballard

Constructor & Destructor Documentation

Default constructor. Optimization defaults to OptimizationType::SPEED. All grid information initialized to NULL. Applications need to call

Standard constructor. Sets optimization.

Parameters:
opttypeeither OptimizationType::SPEED or OptimizationType::MEMORY

Copy constructor. Makes a deep copy

Parameters:
otherthe other GeoTessGrid whose values are to be duplicated here.

Member Function Documentation

Clear all the sets generated by getVertexIndices(level) and getVertexIndicesTopLevel(tessId)

For parallel application where thread safety of the GeoTessGrid object is important, this method will need to be synchronized.

GeoTessGrid maintains a list of the triangles that each vertex is a member of. there is a separate list for every tessellation level in the grid. Lazy evaluation is used to build this list.

This method clears the list for all tessellation levels.

int geotess::GeoTessGrid::findClosestVertex ( double *  unit_vector,
int  tessId 
) [inline]

Retrieve the index of the vertex that is closest to the supplied unit vector. Only vertices connected at the specified tessellation index are searched.

Parameters:
unit_vectora unit vector
tessIdtessellation to search for the specified unit vector.
Returns:
index of closest vertex.
const double* geotess::GeoTessGrid::getCircumCenter ( int  triangle,
double *const  pA 
) const [inline]

Retrieve the circumCenter of the specified triangle. The circumCenter of a triangle is the center of the circle that has all three corners of the triangle on its circumference.

For parallel application where thread safety of the GeoTessGrid object is important, this method will need to be synchronized.

Parameters:
triangleTriangle for which the circumcenter will be returned.
pAThe array list of circumcenter pointers created by this method that are not stored in the Grid circumCenters array. This list is empty when SPEED optimization is used.
Returns:
unit vector that defines circumCenter.
int geotess::GeoTessGrid::getFirstTriangle ( int  tessellation,
int  level 
) const [inline]

Retrieve the index of the first triangle on the specified level of the specified tessellation of the model.

Parameters:
tessellation
levelindex of a level relative to the first level of the specified tessellation
Returns:
a triangle index
const string& geotess::GeoTessGrid::getGridGenerationDate ( ) const [inline]

Retrieve the date when the contents of this grid was generated. This is not necessarily the same as the date when the file was copied or translated.

Returns:
the date when the contents of this grid was generated.
static string geotess::GeoTessGrid::getGridID ( const string &  fileName) [static]

Open the specified file using the appropriate format, and read only enough of the file to retrieve the gridID.

Parameters:
fileNamename of file
Returns:
the grid id of the grid stored in the specified file.
const string& geotess::GeoTessGrid::getGridID ( ) const [inline]

A String ID that uniquely identifies this GeoTessGrid. It must be true that two GeoTessGrid objects that have different geometry or topology also have different uniqueID values. An MD5 hash of the primary data structures (tessellations, levels, triangles and vertices) would be an excellent choice for the uniqueId, but the uniqueId can be any String that uniquely identifies the grid.

Returns:
String gridID
const string& geotess::GeoTessGrid::getGridInputFile ( ) const [inline]

Retrieve the name of the file from which the grid was loaded. This will be the name of a GeoTessModel file if the grid was stored in the same file as the model.

Returns:
the name of the file from which the grid was loaded.
const string& geotess::GeoTessGrid::getGridOutputFile ( ) const [inline]

Retrieve the name of the file to which this grid was most recently written, or the string "null" if it has not been written.

Returns:
the name of the file to which this grid was most recently written, or the string "null" if it has not been written.
const string& geotess::GeoTessGrid::getGridSoftwareVersion ( ) const [inline]

Get the name and version number of the software that generated the contents of this grid.

Returns:
the name and version number of the software that generated the contents of this grid.
int geotess::GeoTessGrid::getLastLevel ( int  tessellation) const [inline]

Retrieve the index of the last level on the specified tessellation

Parameters:
tessellation
Returns:
The index of the last level on the specified tessellation.
int geotess::GeoTessGrid::getLastTriangle ( int  tessellation,
int  level 
) const [inline]

Retrieve the index of the last triangle on the specified level of the specified tessellation of the model.

Parameters:
tessellation
levelindex of a level relative to the first level of the specified tessellation
Returns:
a triangle index
int geotess::GeoTessGrid::getLevel ( int  tessellation,
int  i 
) const [inline]

Retrieve the index of one of the levels on the specified tessellation

Parameters:
tessellation
ithe index of the desired level (zero would return the index of the first level on tessellation.
Returns:
the index of the i'th level on the specified tessellation.
int const* const* geotess::GeoTessGrid::getLevels ( ) const [inline]

Retrieve a reference to all of the tessellation levels. Levels consists of an nLevels x 2 array of ints. The int[2] array associated with each level is the first ([0]) and last ([1]) + 1 index of the triangles on the level.

Users should not modify the contents of the array.

Returns:
nLevels x 2 array of unit triangle start and end indices for each tessellation.
int geotess::GeoTessGrid::getNeighbor ( int  triangleIndex,
int  neighborIndex 
) const [inline]

Retrieve the index of one of the triangles that is a neighbor of the specified triangle. A triangle has at least 3 neighbors and usually has 4. For triangle T, neighbors 0, 1, and 2 reside on the same tessellation level as T and refer to the triangles that share an edge with T. If T has a fourth neighbor it is a descendent of T and resides on the next higher tessellation level relative to T. In other words, neighbor(3) is one of the triangles into which T was subdivided when the tessellation was constructed. If T does not have a descendant, then getNeighbor(3) will return -1. getNeighbor(i) will always return a valid triangle index for i=[0,1,2] but may or may not return a valid triangle index for i=3.

Parameters:
triangleIndexindex of the triangle whose neighbor is desired.
neighborIndex(0..3)
Returns:
int index of the triangle that is a neighbor of triangle.
int geotess::GeoTessGrid::getNeighbor ( const int &  tessellation,
const int &  level,
const int &  triangle,
const int &  side 
) [inline]

Retrieve the index of the triangle that is the i'th neighbor of the specified triangle. A triangle has at least 3 neighbors and usually has

  1. For triangle T, neighbors 0, 1, and 2 reside on the same tessellation level as T and refer to the triangles that share an edge with T. If T has a fourth neighbor it is a descendent of T and resides on the next higher tessellation level relative to T. In other words, neighbor(3) is one of the triangles into which T was subdivided when the tessellation was constructed. If T does not have a descendant, then getNeighbor(3) will return -1. getNeighbor(i) will always return a valid triangle index for i=[0,1,2] but may or may not return a valid triangle index for i=3.
Parameters:
tessellationtessellation index
levelindex of a level relative to the first level of the specified tessellation
trianglethe i'th triangle in the specified tessellation/level
sidethe index of the triangle side (0..2)
Returns:
the index of the triangle that is the i'th neighbor of the specified triangle.
int geotess::GeoTessGrid::getNeighborIndex ( const int &  tid,
const int &  nid 
) [inline]

If triangle with index tid has a neighbor with index nid, then return the index of neighbor in triangle's neighbor array.

In other words, if triangle nid is a neighbor of triangle tid, i.e., neighbors[tid][i] == nid, then this method returns i.

Parameters:
tidthe index of a triangle
nidthe index of another triangle
Returns:
the index of neighbor in triangle's array of neighbors.
const int* geotess::GeoTessGrid::getNeighbors ( int  triangleIndex) const [inline]

Retrieve the indexes of the triangles that are neighbors of the specified triangle. A triangle has at least 3 neighbors and usually has 4. For triangle T, neighbors 0, 1, and 2 reside on the same tessellation level as T and refer to the triangles that share an edge with T. If T has a fourth neighbor it is a descendent of T and resides on the next higher tessellation level relative to T. In other words, neighbor(3) is one of the triangles into which T was subdivided when the tessellation was constructed. If T does not have a descendant, then getNeighbor(3) will return -1. getNeighbor(i) will always return a valid triangle index for i=[0,1,2] but may or may not return a valid triangle index for i=3.

Parameters:
triangleIndexindex of the triangle whose neighbors are desired.
Returns:
int[] indexes of the triangles that are neighbors of triangle.
const int* geotess::GeoTessGrid::getNeighbors ( const int &  tessellation,
const int &  level,
const int &  triangle 
) [inline]

Retrieve the indexes of the triangles that are neighbors of the specified triangle. A triangle has at least 3 neighbors and usually has 4. For triangle T, neighbors 0, 1, and 2 reside on the same tessellation level as T and refer to the triangles that share an edge with T. If T has a fourth neighbor it is a descendent of T and resides on the next higher tessellation level relative to T. In other words, neighbor(3) is one of the triangles into which T was subdivided when the tessellation was constructed. If T does not have a descendant, then getNeighbor(3) will return -1. getNeighbor(i) will always return a valid triangle index for i=[0,1,2] but may or may not return a valid triangle index for i=3.

Parameters:
tessellationtessellation index
levelindex of a level relative to the first level of the specified tessellation
trianglethe i'th triangle in the specified tessellation/level
Returns:
the indexes of the triangles that are neighbors of the specified triangle.
int const* const* geotess::GeoTessGrid::getNeighbors ( ) const [inline]
Returns:
a reference to the neighbors array.
int geotess::GeoTessGrid::getNLevels ( int  tessellation) const [inline]

Retrieve number of tessellation levels that define the specified multi-level tessellation of the model.

Parameters:
tessellation
Returns:
number of levels
int geotess::GeoTessGrid::getNLevels ( ) const [inline]

Returns the number of tessellation levels defined for this grid.

Returns:
The number of tessellation levels defined for this grid.

Returns the number of tessellations in the tessellations array.

Returns:
the number of multi-level tesseallations.
int geotess::GeoTessGrid::getNTriangles ( int  tessellation,
int  level 
) const [inline]

Retrieve the number of triangles that define the specified level of the specified multi-level tessellation of the model.

Parameters:
tessellation
levelindex of a level relative to the first level of the specified tessellation
Returns:
number of triangles on specified tessellation and level.
int geotess::GeoTessGrid::getNTriangles ( ) const [inline]

Retrieve the total number of triangles including those on all levels of all tessellations.

Returns:
the total number of triangles including those on all levels of all tessellations.
int geotess::GeoTessGrid::getNVertices ( ) const [inline]

Returns the number of vertices in the vectices array.

Returns:
number of vertices

Returns the optimization type setting.

Returns:
either OptimizationType::SPEED or OptimizationType::MEMORY
int const* const* geotess::GeoTessGrid::getTessellations ( ) const [inline]

Retrieve a reference to all of the tessellations of this grid. Tessellations is a n x 2 int array where n is the number of tessellations in the topology of the model. Each element specifies [0] the index of the first level and [1] last level + 1 that make up the tessellation.

A tessellation is a multi-level tessellation of a unit sphere, which is to say that it is a hierarchical set of single-level tessellations (see 'levels' above).

Users should not modify the contents of the array.

Returns:
nLevels x 2 array of unit triangle start and end indices for each tessellation.
int geotess::GeoTessGrid::getTriangle ( int  tessellation,
int  level,
int  i 
) const [inline]

Retrieve the index of the i'th triangle on the specified level of the specified tessellation of the model.

Parameters:
tessellation
levelindex of a level relative to the first level of the specified tessellation
i
Returns:
a triangle index
int geotess::GeoTessGrid::getTriangle ( int  triangleIndex,
double *  vector 
)

Perform walking triangle search to find the index of the triangle that contains position defined by vector and which has no descendant.

Parameters:
triangleIndexthe triangle from which to start the search
vectorthe unit vector of the point that is to be searched for.
Returns:
the index of the triangle that contains vector
int const* const* geotess::GeoTessGrid::getTriangles ( ) const [inline]

Retrieve a reference to the nTriangles x 3 array of int that specifies the indexes of the 3 vertices that define each triangle of the tessellation.

Users should not modify the contents of the array.

Returns:
a reference to the triangles.
const double* geotess::GeoTessGrid::getTriangleVertex ( int  triangleIndex,
int  cornerIndex 
) const [inline]

Retrieve the unit vector of the vertex located at one of the corners of the specified triangle.

Parameters:
triangleIndextriangleIndex
cornerIndex0..2
Returns:
the unit vector of the vertex at the specified corner of the specified triangle
int geotess::GeoTessGrid::getTriangleVertexIndex ( int  triangleIndex,
int  cornerIndex 
) const [inline]

Retrieve the index of the i'th vertex (0..2) that represents one of the corners of the specified triangle.

Parameters:
triangleIndextriangleIndex
cornerIndex0..2
Returns:
the index of the vertex at the specified corner of the specified triangle
const int* geotess::GeoTessGrid::getTriangleVertexIndexes ( int  triangleIndex) const [inline]

Retrieve an int[3] array containing the indexes of the vertices that form the corners of the triangle with index triangleIndex.

Users should not modify the contents of the array.

Parameters:
triangleIndextriangleIndex
Returns:
an int[3] array containing the indexes of the vertices that form the corners of the specified triangle.
void geotess::GeoTessGrid::getTriangleVertices ( int  triangle,
double **  triVrt 
) [inline]

Get the 3 vertices that form the corners of the specified triangle, in clockwise order.

Parameters:
triangleindex of the desired triangle
triVrtthe 3 vertices (unit vectors).
Returns:
3 x 3 array of doubles with the unit vectors that define the 3 corners of the specified triangle.
const double* geotess::GeoTessGrid::getVertex ( int  vertex) const [inline]

Retrieve the unit vector that corresponds to the specified vertex.

Parameters:
vertexthe index of the vertex
Returns:
unit vector of vertex
double* geotess::GeoTessGrid::getVertex ( int  tessId,
int  level,
int  triangle,
int  corner 
) [inline]

Get the unit vector of the vertex that occupies the specified position in the hierarchy.

Parameters:
tessIdtessellation index
levelindex of a level relative to the first level of the specified tessellation
trianglethe i'th triangle in the specified tessellation/level
cornerthe i'th corner of the specified tessellation/level/triangle
Returns:
unit vector of a vertex
int geotess::GeoTessGrid::getVertexIndex ( int  tessId,
int  level,
int  triangle,
int  corner 
) const [inline]

Get the index of the vertex that occupies the specified position in the hierarchy.

Parameters:
tessIdtessellation index
levelindex of a level relative to the first level of the specified tessellation
trianglethe i'th triangle in the specified tessellation/level
cornerthe i'th corner of the specified tessellation/level/triangle
Returns:
index of a vertex
const set<int>& geotess::GeoTessGrid::getVertexIndices ( const int &  tessId,
const int &  level 
) [inline]

Retrieve a set containing the indices of all the vertices that are connected together by triangles on the specified level. The index of the level is relative to the first level of the specified tessellation.

Lazy evaluation is used to generate and store these sets.

Parameters:
tessIdindex of the tessellation.
levelindex of the level relative to the first level of the specified tessellation.
Returns:
a set containing the indices of all the vertices that are connected together by triangles on the specified level.
const set<int>& geotess::GeoTessGrid::getVertexIndicesTopLevel ( const int &  tessId) [inline]

Retrieve a set containing the indices of all the vertices that are connected together by triangles on the top level of the specified tessellation.

Lazy evaluation is used to generate and store these sets.

Parameters:
tessIdindex of the tessellation.
Returns:
a set containing the indices of all the vertices that are connected together by triangles on the top level of the specified tessellation.
void geotess::GeoTessGrid::getVertexNeighbors ( const int &  tessId,
const int &  level,
const int &  vertex,
set< int > &  nbrs 
) [inline]

Retrieve a list of the indexes of all the vertexes that are connected to the specified vertex by a single edge, considering only triangles in the specified tessellation and level.

Equivalent to calling this function with extra parameter "order" = 1.

Parameters:
tessIdtessellation index
levelindex of a level relative to the first level of the specified tessellation
vertexindex of a vertex
nbrsindexes of vertices
void geotess::GeoTessGrid::getVertexNeighbors ( const int &  tessId,
const int &  level,
const int &  vertex,
const int &  order,
set< int > &  nbrs 
)

Retrieve a list of the indexes of all the vertexes that are within a neighborhood of the specified vertex. The neighborhood is defined by the argument "order". If order is 1, then all the vertices that are connected by a single edge to vertex are included. If order is 2, then take the order 1 neighborhood and add all the vertices that are connected to any vertex in the order-1 neighborhood by a single edge. Keep doing that to as high order as desired. Only triangles in the specified tessellation and level are considered.

Supplied set nbrs is cleared at the beginning of this method and it will not contain starting vertex upon return.

Parameters:
tessIdtessellation index
levelindex of a level relative to the first level of the specified tessellation
vertex
order
nbrslist of vertex indices
void geotess::GeoTessGrid::getVertexNeighborsOrdered ( const int &  tessId,
const int &  level,
const int &  vertex,
vector< int > &  v 
)

Retrieve a list of the indexes of all the vertexes that are connected to the specified vertex by a single edge, considering only triangles in the specified tessellation and level. The vertices will be arranged in clockwise order when viewed from outside the unit sphere.

Parameters:
tessIdthe tessellation index
levelindex of a level relative to the first level of the specified tessellation
vertexindex of central vertex
vvector of vertex indexes
const vector<int>& geotess::GeoTessGrid::getVertexTriangles ( const int &  tessId,
const int &  level,
const int &  vertex 
) const

Retrieve a list of the triangles a particular vertex is a member of, considering only triangles in the specified tessellation/level.

Lazy evaluation is used here. The list of indexes is initially empty and is computed and stored on demand. Once computed the indexes remain in memory for the next time they might be called.

Parameters:
tessIdthe tessellation index
levelindex of a level relative to the first level of the specified tessellation
vertexthe index of the vertex
Returns:
vector of vertex indexes
const vector<int>& geotess::GeoTessGrid::getVertexTriangles ( int  tessId,
int  vertex 
) const [inline]

Retrieve a list of the triangles a particular vertex is a member of, considering only triangles in the top level of the specified tessellation.

Lazy evaluation is used here. The list of indexes is initially empty and is computed and stored on demand. Once computed the indexes remain in memory for the next time they might be called.

Parameters:
tessIdtessellation index
vertex
Returns:
list of triangle indeces
double const* const* geotess::GeoTessGrid::getVertices ( ) const [inline]

Retrieve a reference to all of the vertices. Vertices consists of an nVertices x 3 array of doubles. The double[3] array associated with each vertex is the 3 component unit vector that defines the position of the vertex.

Users should not modify the contents of the array.

Returns:
nVertices x 3 array of unit vectors.
void geotess::GeoTessGrid::getVertices ( const int &  tessellation,
const int &  level,
set< const double * > &  vectors 
)

Return a set containing the unit vectors of all the vertices that are connected together by triangles on the specified tessellation and level.

Parameters:
tessellation
levelthe level relative to the first level of the specified tessellation
vectors(output) a set containing the unit vectors of all the vertices that are connected together by triangles on the specified tessellation and level.
void geotess::GeoTessGrid::getVerticesTopLevel ( const int &  tessellation,
set< const double * > &  vectors 
) [inline]

Retrieve a set containing the unit vectors of all the vertices that are connected together by triangles on the top level of the specified tessellation.

Parameters:
tessellation
vectors(output) a set containing the unit vectors of all the vertices that are connected together by triangles on the top level of the specified tessellation.
static bool geotess::GeoTessGrid::isGeoTessGrid ( const string &  inputFile) [static]

Test a file to see if it is a GeoTessGrid file.

Parameters:
inputFile
Returns:
true if inputFile is a GeoTessGrid file.
GeoTessGrid* geotess::GeoTessGrid::loadGrid ( const string &  inputFile)

Load GeoTessGrid object from a File.

Parameters:
inputFilename of file from which to load grid.
Returns:
pointer to a Grid object
bool geotess::GeoTessGrid::operator!= ( const GeoTessGrid g) const [inline]

Return true if the input Grid object (g) gridID is not equal to this Grid objects gridID.

Parameters:
gthe other grid object to which this grid is to be compared.
Returns:
true if this grid and other grid have different gridIDs.
GeoTessGrid& geotess::GeoTessGrid::operator= ( const GeoTessGrid other)

Equal operator. Makes a deep copy.

Parameters:
otherthe other GeoTessGrid whose values are to be duplicated here.
Returns:
reference to a deep copy of this grid
bool geotess::GeoTessGrid::operator== ( const GeoTessGrid g) const [inline]

Return true if the input Grid object (g) gridID equals this Grid objects gridID.

Parameters:
gthe other grid object to which this grid is to be compared.
Returns:
true if this grid and other grid have same gridIDs.
void geotess::GeoTessGrid::setGridGenerationDate ( const string &  gridDate) [inline]

Set the date when this grid was generated. This is not necessarily the same as the date when the file was copied or translated.

Parameters:
gridDate
void geotess::GeoTessGrid::setGridInputFile ( const string &  gridFile) [inline]

Set the grid input file name.

Parameters:
gridFilename of grid file.
void geotess::GeoTessGrid::setGridSoftwareVersion ( const string &  swVersion) [inline]

Set the name and version number of the software that generated the contents of this grid.

Parameters:
swVersionthe name and version number of the software that generated the contents of this grid.

Tests the integrity of the grid. Visits every triangle T, and (1) checks to ensure that every neighbor of T includes T in its list of neighbors, and (2) checks that every neighbor of T shares exactly two nodes with T.

Exceptions:
GeoTessExceptionif anything is amiss.
Returns:
summary information about this GeoTessGrid object.

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