#include <LUT.h>
Inheritance diagram for LUT< N, X >:

Public Types | |
| typedef VEC< N, int > | Dim |
| An integer array type for dimensioning the table. | |
| typedef VEC< N, X > | Vec |
| A floating point array for specifying table coordinates. | |
| typedef VEC< N, std::vector< X > > | Breaks |
| An array of breakpoint sets for specifying the input data coordinates. | |
| enum | Modes { LINEAR, SPLINE } |
Public Methods | |
| LUT () | |
| Default constructor. | |
| LUT (LUT< N, X > const ©) | |
| Copy constructor. | |
| virtual | ~LUT () |
| Destructor. | |
| LUT< N, X > const & | operator= (LUT< N, X > const ©) |
| Copy operator. | |
| void | interpolate (Dim const &dim, Interpolation::Modes mode) |
| Interpolate the input data. | |
| void | interpolate (std::vector< int > const &dim, Interpolation::Modes mode) |
| Interpolate the input data. | |
| X | getValue (Vec const &v) const |
| Lookup the value at a given point in the table. | |
| X | getValue (std::vector< X > const &x) const |
| Lookup the value at a given point in the table. | |
| WRAP< N, X > | operator[] (X x) const |
| Lookup the value at a given point in the table. | |
| void | load (std::vector< X > const &values, Breaks const &breaks, int *index=0) |
| Load the initial data value and breakpoints. | |
| void | load (std::vector< X > const &values, std::vector< std::vector< X > > const &breaks) |
| virtual void | serialize (Archive &) |
| Serialize to or from a data archive. | |
| virtual std::string | asString () const |
| Return a string representation of LUT. | |
| virtual std::string | typeString () const |
| Return a string representation of the type. | |
| bool | isInterpolated () const |
| Return true if the interpolated table is ready for use. | |
| virtual void | parseXML (const char *cdata) |
| Parse cdata from within the XML tags for this object. | |
| virtual void | convertXML () |
| Convert XML data to internal format prior to serialization. | |
Protected Methods | |
| void | find (X x, int &i, X &f) const |
| Find the index and interpolation parameter for a given coordinate. | |
| void | postInterpolation (X x0, X x1, int n) |
| Compute a few parameters needed for fast lookups. | |
| void | checkInterpolated () const |
| void | checkNotInterpolated () const |
| void | throwBreakpointOrder () const |
| void | throwInterpolationMode () const |
Protected Attributes | |
| X | m_X0 |
| X | m_X1 |
| X | m_XS |
| int | m_Limit |
| bool | m_Interpolated |
Friends | |
| class | LUT< N+1, X > |
Converts (partially) irregularly spaced data to a regularly spaced lookup table using linear or spline interpolation. The table is then accessed by fast linear interpolation.
|
|||||
|
An array of breakpoint sets for specifying the input data coordinates.
|
|
|||||
|
An integer array type for dimensioning the table.
|
|
|||||
|
A floating point array for specifying table coordinates.
|
|
|
|
|
|||||||||
|
Default constructor.
|
|
||||||||||
|
Copy constructor.
|
|
|||||||||
|
Destructor.
|
|
|||||||||
|
Return a string representation of LUT.
Implements BaseType. |
|
|
|
|
|
|
|
|
Convert XML data to internal format prior to serialization. This method is currently only called by the XML parser for Object classes. If another BaseType class requires this method, a call must be added to the appropriate XML handler in the parser. |
|
||||||||||||||||||||
|
Find the index and interpolation parameter for a given coordinate.
|
|
||||||||||
|
Lookup the value at a given point in the table. The value is calculated by linear interpolation of the evenly- spaced table values, which in turn were generated from the source data by the interpolate() method.
|
|
||||||||||
|
Lookup the value at a given point in the table. The value is calculated by linear interpolation of the evenly- spaced table values, which in turn were generated from the source data by the interpolate() method.
|
|
||||||||||||||||
|
Interpolate the input data. The resulting table will have uniformly spaced data points, with the specified number of points in each dimension.
|
|
||||||||||||||||
|
Interpolate the input data. The resulting table will have uniformly spaced data points, with the specified number of points in each dimension.
|
|
|
Return true if the interpolated table is ready for use.
|
|
||||||||||||||||
|
|
|
||||||||||||||||||||
|
Load the initial data value and breakpoints. The order of table values is last index first. So for a 3x3 table, the order would be [0][0], [0][1], [0][2], [1][0], [1][1], etc.
|
|
||||||||||
|
Copy operator.
|
|
||||||||||
|
Lookup the value at a given point in the table. This method returns a WRAP instance which allows further coordinates to be specified by indexing. The result is equivalent to the getValue() methods, but the syntax is different: <tt>table[c0][c1][c2] == table.getValue(Vec(c0)(c1)(c2))
|
|
|
Parse cdata from within the XML tags for this object.
Reimplemented in SimDate, EnumLink, GeoPos, LLA, UTM, Matrix3, Quat, Real, and Vector3. |
|
||||||||||||||||||||
|
Compute a few parameters needed for fast lookups. Called after a LUT has been interpolated. |
|
||||||||||
|
Serialize to or from a data archive.
Reimplemented from BaseType. |
|
|
|
|
|
|
|
|||||||||
|
Return a string representation of the type.
Implements BaseType. |
|
|||||
|
|
|
|
|
|
|||||
|
|
|
|||||
|
|
|
|||||
|
|
|
|||||
|
|
|
SimData version pre-0.4.0. For more information on SimData, visit the SimData Homepage. Generated on Tue Oct 14 12:06:41 2003, using Doxygen 1.2.18. |