GeoTessCPP
2.6.1
Software to facilitate storage and retrieval of 3D information about the Earth.
|
A collection of static utilities that extract organized information from a GeoTessModel. More...
#include <GeoTessModelUtils.h>
Public Member Functions | |
GeoTessModelUtils () | |
virtual | ~GeoTessModelUtils () |
Static Public Member Functions | |
static int | updatePointsPerLayer (GeoTessPosition &pos, int firstLayer, int lastLayer, double maxSpacing, vector< int > &pointsPerLayer) |
static string | getBoreholeString (GeoTessModel &pos, double lat, double lon) |
static string | getBoreholeString (GeoTessPosition &pos, double maxSpacing, int firstLayer, int lastLayer, bool convertToDepth, bool reciprocal, vector< int > &attributes) |
static void | getBorehole (GeoTessPosition &pos, double maxSpacing, int firstLayer, int lastLayer, bool convertToDepth, bool reciprocal, vector< int > &attributes, vector< vector< double > > &borehole) |
static void | getBorehole (GeoTessPosition &pos, vector< int > &pointsPerLayer, bool convertToDepth, bool reciprocal, const vector< int > &attributes, vector< vector< double > > &borehole) |
static void | getMapValuesDepth (GeoTessModel &model, vector< double > &latitudes, vector< double > &longitudes, int layerId, double depth, const GeoTessInterpolatorType &horizontalType, const GeoTessInterpolatorType &radialType, bool reciprocal, vector< int > &attributes, vector< vector< vector< double > > > &values) |
static void | getSlice (GeoTessModel &model, const double *const x0, const double *const x1, int nx, double maxRadialSpacing, int firstLayer, int lastLayer, const GeoTessInterpolatorType &horizontalType, const GeoTessInterpolatorType &radialType, const string &spatialCoordinates, bool reciprocal, const vector< int > &attributes, vector< vector< vector< double > > > &transect) |
static void | getMapValuesLayer (GeoTessModel &model, vector< double > &latitudes, vector< double > &longitudes, int layerId, double fractionalRadius, const GeoTessInterpolatorType &horizontalType, const GeoTessInterpolatorType &radialType, bool reciprocal, vector< int > &attributes, vector< vector< vector< double > > > &values) |
static void | getMapLayerBoundary (GeoTessModel &model, vector< double > &latitudes, vector< double > &longitudes, int layerId, bool top, bool convertToDepth, const GeoTessInterpolatorType &horizontalType, const GeoTessInterpolatorType &radialType, vector< vector< double > > &values) |
A collection of static utilities that extract organized information from a GeoTessModel.
A collection of static utilities that extract organized information from a GeoTessModel. There are utilities to retrieve:
Definition at line 83 of file GeoTessModelUtils.h.
|
inline |
Definition at line 90 of file GeoTessModelUtils.h.
|
inlinevirtual |
Definition at line 91 of file GeoTessModelUtils.h.
|
static |
Retrieve interpolated attribute values along a radial 'borehole' at the specified position.
|
static |
Retrieve interpolated attribute values along a radial 'borehole' at the specified position.
|
static |
Retrieve interpolated attribute values along a radial 'borehole' at the specified latitude and longitude, in degrees.
|
static |
Retrieve interpolated attribute values along a radial 'borehole' at the specified position.
pos | the position where the borehole is to be generated |
maxSpacing | the maximum radial spacing in km. Actual spacing will generally somewhat less than this value so that an integer number of equally spaced nodes will span each layer. |
firstLayer | |
lastLayer | |
convertToDepth | if true, depths are reported otherwise radii are reported. |
reciprocal | if true, 1/value are reported, otherwise values are reported as-is. |
attributes | the indexes of the attributes to include. |
|
static |
Retrieve a map of the depth or radius of the top or bottom of a specified layer.
model | the GeoTessModel to be interrogated. |
latitudes | array of latitude values in degrees. |
longitudes | array of longitude values in degrees. |
layerId | layer index |
top | if true return top of layer otherwise bottom. |
convertToDepth | if true, return depth, otherwise radius. |
horizontalType | either InterpolatorType.LINEAR or InterpolatorType.NATURAL_NEIGHBOR |
radialType | either InterpolatorType.LINEAR or InterpolatorType.CUBIC_SPLINE |
values | 2D vector of values: [nlat][nlon] |
GeoTessException |
|
static |
Retrieve a map of attribute values at a constant specified depth on a regular latitude-longitude grid. For every point on the map, if the specified depth is greater than the depth of the bottom of the specified layer, then attribute values are interpolated at the bottom of the specified layer. Similarly, if the specified depth is less than the depth of the top of the specified layer, then attribute values at the top of the specified layer are interpolated.
model | the GeoTessModel to be interrogated. |
latitudes | array of latitude values in degrees. |
longitudes | array of longitude values in degrees. |
layerId | layer index |
depth | the depth at which samples should be interpolated, in km. |
horizontalType | either InterpolatorType.LINEAR or InterpolatorType.NATURAL_NEIGHBOR |
radialType | either InterpolatorType.LINEAR or InterpolatorType.CUBIC_SPLINE |
reciprocal | if false, return value; if true, return 1./value. |
attributes | index(es) of the attributes to interpolate. If omitted, all attributes are reported. |
values | 3D vector of doubles: [nlat][nlon][nAttributes] |
GeoTessException |
|
static |
Retrieve a map of attribute values at some fractional thickness with a layer. FractionalRadius <= 0. will result in samples at the bottom of the layer while fractionalRadius >= 1. will result in samples at the top of the layer.
model | the GeoTessModel to be interrogated. |
latitudes | array of latitude values in degrees. |
longitudes | array of longitude values in degrees. |
layerId | layer index |
fractionalRadius | the fractional radius within the layer at which samples should be interpolated. |
horizontalType | either InterpolatorType.LINEAR or InterpolatorType.NATURAL_NEIGHBOR |
radialType | either InterpolatorType.LINEAR or InterpolatorType.CUBIC_SPLINE |
reciprocal | if false, return value; if true, return 1./value. |
attributes | index(es) of the attributes to interpolate. |
values | a 3D array of doubles: [nlat][nlon][nAttributes] |
GeoTessException |
|
static |
|
static |
Evaluates maximum number of nodes per layer. On input, pointsPerLayer is an array of length nLayers where each element contains a current estimate of the number of nodes that must be deployed on the corresponding layer so that the node spacing will be no greater than maxSpacing (in km). The values in pointsPerLayer will be evaluated at the specified position and increased if necessary. Only layers between firstLayer and lastLayer, inclusive, will be evaluated.