  | 
  
    Isis 3 Programmer Reference
    
   | 
 
 
 
 
    1 #ifndef BundleControlPoint_h 
    2 #define BundleControlPoint_h 
   14 #include <QSharedPointer> 
   16 #include "BundleMeasure.h" 
   17 #include "BundleSettings.h" 
   18 #include "ControlPoint.h" 
   19 #include "SparseBlockMatrix.h" 
   20 #include "SurfacePoint.h" 
  138       boost::numeric::ublas::bounded_vector< double, 3 > &
corrections();
 
  139       boost::numeric::ublas::bounded_vector< double, 3 > &
aprioriSigmas();
 
  140       boost::numeric::ublas::bounded_vector< double, 3 > &
adjustedSigmas();
 
  141       boost::numeric::ublas::bounded_vector< double, 3 > &
weights();
 
  142       boost::numeric::ublas::bounded_vector<double, 3> &
nicVector();
 
  149                                                         bool solveRadius=
false) 
const;
 
  151       QString 
formatValue(
double value, 
int fieldWidth, 
int precision) 
const;
 
  153                                        int precision, 
bool solveRadius=
false) 
const;
 
  155                                             int precision, 
bool solveRadius=
false) 
const;
 
  157                                         bool errorPropagation) 
const;
 
  159                                                 bool errorPropagation) 
const;
 
  176       boost::numeric::ublas::bounded_vector< double, 3 > 
m_weights;
 
  191 #endif // BundleControlPoint_h 
 
 
void setAdjustedSurfacePoint(SurfacePoint surfacePoint)
Sets the adjusted surface point for this BundleControlPoint.
 
~BundleControlPoint()
Destructor for BundleControlPoint.
 
void applyParameterCorrections(LinearAlgebra::Vector imageSolution, SparseBlockMatrix &sparseNormals, const BundleTargetBodyQsp target)
Apply the parameter corrections to the bundle control point.
 
QString formatAdjustedSigmaString(SurfacePoint::CoordIndex, int fieldWidth, int precision, bool errorPropagation) const
Formats the adjusted sigma value indicated by the given type code.
 
int numberOfRejectedMeasures() const
Accesses the number of rejected measures for this BundleControlPoint.
 
void updateAdjustedSurfacePointRectangularly()
pointer to the control point object this represents
 
SurfacePoint adjustedSurfacePoint() const
Accesses the adjusted SurfacePoint associated with this BundleControlPoint.
 
ControlPoint::PointType type() const
Accesses BundleControlPoint's type.
 
QSharedPointer< BundleControlPoint > BundleControlPointQsp
Definition for BundleControlPointQSP, a shared pointer to a BundleControlPoint.
 
SurfacePoint::CoordinateType m_coordTypeReports
BundleControlPoint coordinate type.
 
boost::numeric::ublas::bounded_vector< double, 3 > & weights()
Accesses the 3 dimensional ordered vector of weight values associated with coordinate1,...
 
SparseBlockRowMatrix m_cholmodQMatrix
The CholMod matrix associated with this point.
 
void setRejected(bool reject)
Sets this BundleControlPoint to rejected or not rejected.
 
void setWeights(const BundleSettingsQsp settings)
Sets the weights using the given BundleSettings QSharedPointer and a conversion value for meters to r...
 
boost::numeric::ublas::bounded_vector< double, 3 > m_weights
weights for point parameters
 
bool isRejected() const
Method used to determine whether this control point is rejected.
 
PointType
These are the valid 'types' of point.
 
This class holds information about a control point that BundleAdjust needs to run correctly.
 
boost::numeric::ublas::bounded_vector< double, 3 > & corrections()
Accesses the 3 dimensional ordered vector of correction values associated with coord1,...
 
QString id() const
Accesses the Point ID associated with this BundleControlPoint.
 
QString formatBundleLatitudinalOutputDetailString(bool errorPropagation, bool solveRadius=false) const
Formats a detailed output string table for this Latitudinal BundleControlPoint.
 
double residualRms() const
Gets the root-mean-square (rms) of the BundleControlPoint's residuals.
 
boost::numeric::ublas::bounded_vector< double, 3 > & aprioriSigmas()
Accesses the 3 dimensional ordered vector of apriori sigmas (apriori coordinate1, apriori coordinate2...
 
QString formatBundleRectangularOutputDetailString(bool errorPropagation) const
Formats a detailed output string table for this Rectangular BundleControlPoint.
 
void setSigmaWeightFromGlobals(double gSigma, int index)
Sets the member sigmas and weights from a global sigma.
 
BundleControlPoint(BundleSettingsQsp bundleSettings, ControlPoint *point)
Constructs a BundleControlPoint object from a ControlPoint.
 
SurfacePoint::CoordinateType coordTypeReports() const
Accesses BundleControlPoint's coordinate type for reports.
 
boost::numeric::ublas::bounded_vector< double, 3 > & nicVector()
Accesses the 3 dimensional ordered NIC vector.
 
boost::numeric::ublas::vector< double > Vector
Definition for an Isis::LinearAlgebra::Vector of doubles.
 
CoordinateType
Defines the coordinate typ, units, and coordinate index for some of the output methods.
 
QString formatCoordAprioriSigmaString(SurfacePoint::CoordIndex index, int fieldWidth, int precision, bool solveRadius=false) const
Formats the apriori coordinate 1 (latitude or X) sigma value.
 
void computeResiduals()
Computes the residuals for this BundleControlPoint.
 
boost::numeric::ublas::bounded_vector< double, 3 > m_adjustedSigmas
adjusted sigmas for point parameters
 
boost::numeric::ublas::bounded_vector< double, 3 > m_aprioriSigmas
apriori sigmas for point parameters
 
QString formatValue(double value, int fieldWidth, int precision) const
Formats the given double precision value using the specified field width and precision.
 
void zeroNumberOfRejectedMeasures()
Resets the number of rejected measures for this BundleControlPoint to zero.
 
QString formatBundleOutputSummaryString(bool errorPropagation) const
Formats an output summary string for this BundleControlPoint.
 
ControlPoint * rawControlPoint() const
Accessor for the raw ControlPoint object used for this BundleControlPoint.
 
BundleMeasureQsp addMeasure(ControlMeasure *controlMeasure)
Creates a BundleMeasure from the given ControlMeasure and appends it to this BundleControlPoint's mea...
 
void setNumberOfRejectedMeasures(int numRejected)
Sets the number of rejected measures for this BundleControlPoint.
 
int numberOfMeasures() const
Accesses number of measures associated with this BundleControlPoint.
 
void updateAdjustedSurfacePointLatitudinally(const BundleTargetBodyQsp target)
Apply the parameter corrections to the bundle control point latitudinally.
 
boost::numeric::ublas::bounded_vector< double, 3 > & adjustedSigmas()
Accesses the 3 dimensional ordered vector of adjusted sigmas (adjusted coordinate1,...
 
QString formatCoordAdjustedSigmaString(SurfacePoint::CoordIndex, int fieldWidth, int precision, bool errorPropagation) const
Formats the adjusted coordinate sigma value.
 
QString formatAprioriSigmaString(SurfacePoint::CoordIndex index, int fieldWidth, int precision, bool solveRadius=false) const
Formats the apriori sigma value indicated by the given type code.
 
void productAlphaAV(double alpha, SparseBlockMatrix &sparseNormals, LinearAlgebra::Vector &v1)
Perform the matrix multiplication v2 = alpha ( Q x v1 ).
 
boost::numeric::ublas::bounded_vector< double, 3 > m_corrections
corrections to point parameters
 
QString formatBundleOutputDetailString(bool errorPropagation, bool solveRadius=false) const
Formats a detailed output string table for this BundleControlPoint.
 
SparseBlockRowMatrix & cholmodQMatrix()
Accesses the CholMod matrix associated with this BundleControlPoint.
 
This is free and unencumbered software released into the public domain.
 
SurfacePoint::CoordinateType coordTypeBundle() const
Accesses BundleControlPoint's control point coordinate type for the bundle adjustment.
 
boost::numeric::ublas::bounded_vector< double, 3 > m_nicVector
array of NICs (see Brown, 1976)
 
This class holds all static methods to perform linear algebra operations on vectors and matrices.
 
This class defines a body-fixed surface point.
 
This is free and unencumbered software released into the public domain.
 
void copy(const BundleControlPoint &src)
Copies given BundleControlPoint to this BundleControlPoint.