![]() |
Isis 3 Developer Reference
|
Model a 3-D surface. More...
#include <SurfaceModel.h>

Public Member Functions | |
| SurfaceModel () | |
| Constructor. More... | |
| ~SurfaceModel () | |
| Destructor. More... | |
| void | AddTriplet (const double x, const double y, const double z) |
| Add a single (x,y,z) triplet to the list of knowns. After all knowns are added invoke the Solve method. More... | |
| void | AddTriplets (const double *x, const double *y, const double *z, const int n) |
| Add an array of (x,y,z) triplet to the list of knowns After all knowns are added invoke the Solve method. More... | |
| void | AddTriplets (const std::vector< double > &x, const std::vector< double > &y, const std::vector< double > &z) |
| Add an array of (x,y,z) triplet to the list of knowns After all knowns are added invoke the Solve method. More... | |
| void | Solve () |
| Fit a surface to the input triplets. More... | |
| double | Evaluate (const double x, const double y) |
| Evaluate at x,y to compute z. This is available after the Solve method is invoked. More... | |
| int | MinMax (double &x, double &y) |
| After invoking Solve, a coordinate (x,y) at a local minimum (or maximum) of the surface model can be computed using this method. More... | |
Model a 3-D surface.
Given a set of (x,y,z) triplets, this class will model the surface that best fits the points. The equation to be modelled is:
\[ z = a + b*x + c*y + d*x^2 + e*x*y + f*y^2 \]
| Isis::SurfaceModel::SurfaceModel | ( | ) |
Constructor.
| Isis::SurfaceModel::~SurfaceModel | ( | ) |
Destructor.
| void Isis::SurfaceModel::AddTriplet | ( | const double | x, |
| const double | y, | ||
| const double | z | ||
| ) |
Add a single (x,y,z) triplet to the list of knowns. After all knowns are added invoke the Solve method.
References Isis::LeastSquares::AddKnown().
Referenced by AddTriplets().
| void Isis::SurfaceModel::AddTriplets | ( | const double * | x, |
| const double * | y, | ||
| const double * | z, | ||
| const int | n | ||
| ) |
Add an array of (x,y,z) triplet to the list of knowns After all knowns are added invoke the Solve method.
References AddTriplet().
| void Isis::SurfaceModel::AddTriplets | ( | const std::vector< double > & | x, |
| const std::vector< double > & | y, | ||
| const std::vector< double > & | z | ||
| ) |
Add an array of (x,y,z) triplet to the list of knowns After all knowns are added invoke the Solve method.
References AddTriplet().
| double Isis::SurfaceModel::Evaluate | ( | const double | x, |
| const double | y | ||
| ) |
Evaluate at x,y to compute z. This is available after the Solve method is invoked.
References Isis::LeastSquares::Evaluate().
| int Isis::SurfaceModel::MinMax | ( | double & | x, |
| double & | y | ||
| ) |
After invoking Solve, a coordinate (x,y) at a local minimum (or maximum) of the surface model can be computed using this method.
References Isis::BasisFunction::Coefficient().
| void Isis::SurfaceModel::Solve | ( | ) |
Fit a surface to the input triplets.
References Isis::LeastSquares::Solve().