Isis 3 Programmer Reference
Isis::BundleMeasure Class Reference

A container class for a ControlMeasure. More...

#include <BundleMeasure.h>

Collaboration diagram for Isis::BundleMeasure:
Collaboration graph

Public Member Functions

 BundleMeasure (ControlMeasure *controlMeasure, BundleControlPoint *bundleControlPoint)
 Constructor.
 
 BundleMeasure (const BundleMeasure &src)
 Copy constructor.
 
 ~BundleMeasure ()
 Destructor.
 
BundleMeasureoperator= (const BundleMeasure &src)
 Assignment operator.
 
void setParentObservation (QSharedPointer< BundleObservation > observation)
 Sets the parent bundle observation.
 
void setParentImage (QSharedPointer< BundleImage > image)
 Sets the parent bundle image.
 
void setRejected (bool reject)
 Sets the BundleMeasure's status to rejected or not rejected.
 
void setImage ()
 Sets the BundleMeasure's status to rejected or not rejected.
 
void setNormalsPositionBlockIndex (int index)
 Sets block index into normal equations for position piecewise polynomial segment.
 
void setNormalsPointingBlockIndex (int index)
 Sets block index into normal equations for pointing piecewise polynomial segment.
 
void setFocalPlaneResidualsMillimeters ()
 Computes and sets measure focal plane residuals in millimeters.
 
void setSigma (double sigma)
 Sets sigma (i.e.
 
bool isRejected () const
 Determines whether or not this BundleMeasure is rejected.
 
Cameracamera () const
 Accesses the associated camera for this bundle measure.
 
BundleControlPointparentControlPoint ()
 Accesses the parent BundleControlPoint for this bundle measure.
 
QSharedPointer< BundleImageparentBundleImage ()
 Access the parent BundleImage for this bundle measure.
 
QSharedPointer< BundleObservationparentBundleObservation ()
 Accesses the parent BundleObservation for this bundle measure.
 
const QSharedPointer< BundleObservationSolveSettingsobservationSolveSettings ()
 Accesses the parent observation's solve settings.
 
double sample () const
 Accesses the current sample measurement for this control measure.
 
double sampleResidual () const
 Accesses the sample residual for this control measure.
 
double line () const
 Accesses the current line measurement for this control measure.
 
double lineResidual () const
 Accesses the line residual for this control measure.
 
double sigma () const
 Accesses the measure sigma.
 
double weight () const
 Accesses measure weight for bundle.
 
double weightSqrt () const
 Accesses sqrt of measure weight for bundle.
 
double residualMagnitude () const
 Accesses the residual magnitude for this control measure.
 
double xFocalPlaneResidual () const
 Accesses the focal plane x-coordinate residual in millimeters.
 
double yFocalPlaneResidual () const
 Accesses the focal plane y-coordinate residual in millimeters.
 
QString cubeSerialNumber () const
 Accesses the serial number of the cube containing this control measure.
 
double focalPlaneComputedX () const
 Accesses the computed focal plane x value for this control measure.
 
double focalPlaneComputedY () const
 Accesses the computed focal plane y value for this control measure.
 
double focalPlaneMeasuredX () const
 Accesses the measured focal plane x value for this control measure //TODO verify?
 
double focalPlaneMeasuredY () const
 Accesses the measured focal plane y value for this control measure //TODO verify?
 
int observationIndex () const
 Accesses the observation index for the parent observation.
 
int positionNormalsBlockIndex () const
 Accesses block index into normal equations matrix of position piecewise polynomial segment.
 
int pointingNormalsBlockIndex () const
 Accesses block index into normal equations matrix of pointing piecewise polynomial segment.
 

Private Attributes

ControlMeasurem_controlMeasure
 Contained control measure.
 
BundleControlPointm_parentControlPoint
 Parent bundle control point that contains this bundle control measure.
 
QSharedPointer< BundleImagem_parentBundleImage
 Parent image of this bundle control measure.
 
QSharedPointer< BundleObservationm_parentObservation
 Parent bundle observation.
 
int m_normalsPositionBlockIndex
 block index into normal equations
 
int m_normalsPointingBlockIndex
 block index into normal equations
 
double m_xFocalPlaneResidual
 x focal plane residual in mm
 
double m_yFocalPlaneResidual
 y focal plane residual in mm
 
double m_sigma
 measure uncertainty in mm
 
double m_weightSqrt
 sqrt of measure weight
 

Detailed Description

A container class for a ControlMeasure.

This class is used as a wrapper around a ControlMeasure to provide the necessary information for BundleAdjust. This class can be used to get the parent bundle observation solve settings for observation mode adjustment.

Note that a BundleMeasure should be created from a non-ignored ControlMeasure.

Author
2014-07-09 Ken Edmundson
History

2015-02-20 Jeannie Backer - Added assignment operator. Brought closer to Isis coding standards.

2016-07-14 Ian Humphrey - Updated documentation and coding standards in preparation to merge into trunk. Updated unit test for BundleMeasure. Fixes #4145, #4077.

2016-08-03 Jesse Mapel - Changed parent observation to a QSharedPointer. Added error throws to observationSolveSettings and observationIndex if calling when parent observation has not been set. Fixes #4150.

2016-08-15 Ian Humphrey - Added sampleResidual(), lineResidual(), residualMagnitude(), focalPlaneComputedX(), and focalPlaneComputedY(). Modified isRejected() and camera() accessors to be const. Updated unit test for these methods. References #4201.

2016-08-15 Jesse Mapel - Changed parent BundleImage to a QSharedPointer and added a mutator. Added wrapper methods for several ControlMeasure methods. Added typedef for BundleMeasureQsp. Fixes #4159.

2016-08-18 Jesse Mapel - Changed to no longer inherit from QObject. Fixes #4192.

2016-08-25 Adam Paquette - Updated documentation. Fixes #4299.

Definition at line 55 of file BundleMeasure.h.

Constructor & Destructor Documentation

◆ BundleMeasure() [1/2]

Isis::BundleMeasure::BundleMeasure ( ControlMeasure * controlMeasure,
BundleControlPoint * bundleControlPoint )

Constructor.

Constructs a BundleMeasure from a ControlMeasure with the passed BundleControlPoint as its parent control point

Parameters
controlMeasurePointer to the ControlMeasure to store
bundleControlPointPointer to the BundleControlPoint that contains this BundleMeasure

Definition at line 29 of file BundleMeasure.cpp.

References m_controlMeasure, m_normalsPointingBlockIndex, m_normalsPositionBlockIndex, and m_parentControlPoint.

◆ BundleMeasure() [2/2]

Isis::BundleMeasure::BundleMeasure ( const BundleMeasure & src)

Copy constructor.

Constructs a BundleMeasure from another BundleMeasure

Parameters
srcThe source BundleMeasure to copy

Definition at line 52 of file BundleMeasure.cpp.

References m_controlMeasure, m_normalsPointingBlockIndex, m_normalsPositionBlockIndex, m_parentBundleImage, m_parentControlPoint, and m_parentObservation.

◆ ~BundleMeasure()

Isis::BundleMeasure::~BundleMeasure ( )

Destructor.

Definition at line 41 of file BundleMeasure.cpp.

Member Function Documentation

◆ camera()

Camera * Isis::BundleMeasure::camera ( ) const

Accesses the associated camera for this bundle measure.

See also
ControlMeasure::camera()
Returns
Camera* Returns a pointer to the camera associated with this bundle measure

Definition at line 192 of file BundleMeasure.cpp.

References m_controlMeasure.

◆ cubeSerialNumber()

QString Isis::BundleMeasure::cubeSerialNumber ( ) const

Accesses the serial number of the cube containing this control measure.

See also
ControlMeasure::GetCubeSerialNumber()
Returns
QString Returns the serial number of the cube that contains this control measure

Definition at line 365 of file BundleMeasure.cpp.

References Isis::ControlMeasure::GetCubeSerialNumber(), and m_controlMeasure.

◆ focalPlaneComputedX()

double Isis::BundleMeasure::focalPlaneComputedX ( ) const

Accesses the computed focal plane x value for this control measure.

See also
ControlMeasure::GetFocalPlaneComputedX()
Returns
double Returns the computed focal plane x value

Definition at line 377 of file BundleMeasure.cpp.

References m_controlMeasure.

◆ focalPlaneComputedY()

double Isis::BundleMeasure::focalPlaneComputedY ( ) const

Accesses the computed focal plane y value for this control measure.

See also
ControlMeasure::GetFocalPlaneComputedY()
Returns
double Returns the computed focal plane y value

Definition at line 389 of file BundleMeasure.cpp.

References m_controlMeasure.

◆ focalPlaneMeasuredX()

double Isis::BundleMeasure::focalPlaneMeasuredX ( ) const

Accesses the measured focal plane x value for this control measure //TODO verify?

See also
ControlMeasure::GetFocalPlaneMeasuredX()
Returns
double Returns the measured focal plane x value

Definition at line 401 of file BundleMeasure.cpp.

References m_controlMeasure.

◆ focalPlaneMeasuredY()

double Isis::BundleMeasure::focalPlaneMeasuredY ( ) const

Accesses the measured focal plane y value for this control measure //TODO verify?

See also
ControlMeasure::GetFocalPlaneMeasuredY()
Returns
double Returns the measured focal plane y value

Definition at line 413 of file BundleMeasure.cpp.

References m_controlMeasure.

◆ isRejected()

bool Isis::BundleMeasure::isRejected ( ) const

Determines whether or not this BundleMeasure is rejected.

Returns
bool Returns a boolean indicating whether this BundleMeasure is rejected

Definition at line 180 of file BundleMeasure.cpp.

References m_controlMeasure.

◆ line()

double Isis::BundleMeasure::line ( ) const

Accesses the current line measurement for this control measure.

See also
ControlMeasure::GetLine()
Returns
double Returns the line measurement for this control measure

Definition at line 267 of file BundleMeasure.cpp.

References m_controlMeasure.

◆ lineResidual()

double Isis::BundleMeasure::lineResidual ( ) const

Accesses the line residual for this control measure.

See also
ControlMeasure::GetLineResidual()
Returns
double Returns the line residual

Definition at line 291 of file BundleMeasure.cpp.

References m_controlMeasure.

◆ observationIndex()

int Isis::BundleMeasure::observationIndex ( ) const

Accesses the observation index for the parent observation.

See also
BundleObservation::index()
Returns
int Returns the observation index of the parent observation
Exceptions
IException::Programmer"In BundleMeasure::observationIndex: parent observation has not been set."

Definition at line 462 of file BundleMeasure.cpp.

References m_parentObservation, and Isis::IException::Programmer.

◆ observationSolveSettings()

const QSharedPointer< BundleObservationSolveSettings > Isis::BundleMeasure::observationSolveSettings ( )

Accesses the parent observation's solve settings.

See also
BundleObservation::solveSettings()
Returns
const QSharedPointer<BundleObservationSolveSettings> Returns a const pointer to the BundleObservationSolveSettings for the parent BundleObservation
Exceptions
IException::Programmer"In BundleMeasure::observationSolveSettings: parent observation has not been set."

Definition at line 238 of file BundleMeasure.cpp.

References m_parentObservation, and Isis::IException::Programmer.

◆ operator=()

BundleMeasure & Isis::BundleMeasure::operator= ( const BundleMeasure & src)

Assignment operator.

Assigns the state of this BundleMeasure from another BundleMeasure

Parameters
srcThe source BundleMeasure to assign state from
Returns
BundleMeasure& Returns a reference to this BundleMeasure

Definition at line 71 of file BundleMeasure.cpp.

References m_controlMeasure, m_normalsPointingBlockIndex, m_normalsPositionBlockIndex, m_parentBundleImage, m_parentControlPoint, and m_parentObservation.

◆ parentBundleImage()

QSharedPointer< BundleImage > Isis::BundleMeasure::parentBundleImage ( )

Access the parent BundleImage for this bundle measure.

Returns
QSharedPointer<BundleImage> Returns a pointer to the parent BundleImage

Definition at line 212 of file BundleMeasure.cpp.

References m_parentBundleImage.

◆ parentBundleObservation()

QSharedPointer< BundleObservation > Isis::BundleMeasure::parentBundleObservation ( )

Accesses the parent BundleObservation for this bundle measure.

Returns
QSharedPointer<BundleObservation> Returns a pointer to the parent BundleObservation

Definition at line 222 of file BundleMeasure.cpp.

References m_parentObservation.

◆ parentControlPoint()

BundleControlPoint * Isis::BundleMeasure::parentControlPoint ( )

Accesses the parent BundleControlPoint for this bundle measure.

Returns
BundleControlPoint* Returns a pointer to the parent BundleControlPoint

Definition at line 202 of file BundleMeasure.cpp.

References m_parentControlPoint.

◆ pointingNormalsBlockIndex()

int Isis::BundleMeasure::pointingNormalsBlockIndex ( ) const

Accesses block index into normal equations matrix of pointing piecewise polynomial segment.

Returns
int block index into normal equations matrix of pointing piecewise polynomial segment

Definition at line 170 of file BundleMeasure.cpp.

References m_normalsPointingBlockIndex.

◆ positionNormalsBlockIndex()

int Isis::BundleMeasure::positionNormalsBlockIndex ( ) const

Accesses block index into normal equations matrix of position piecewise polynomial segment.

Returns
int block index into normal equations matrix of position piecewise polynomial. segment

Definition at line 159 of file BundleMeasure.cpp.

References m_normalsPositionBlockIndex.

◆ residualMagnitude()

double Isis::BundleMeasure::residualMagnitude ( ) const

Accesses the residual magnitude for this control measure.

See also
ControlMeasure::GetResidualMagnitude()
Returns
double Returns the residual magnitude

Definition at line 353 of file BundleMeasure.cpp.

References Isis::ControlMeasure::GetResidualMagnitude(), and m_controlMeasure.

◆ sample()

double Isis::BundleMeasure::sample ( ) const

Accesses the current sample measurement for this control measure.

See also
ControlMeasure::GetSample()
Returns
double Returns the sample measurement for this control measure

Definition at line 255 of file BundleMeasure.cpp.

References m_controlMeasure.

◆ sampleResidual()

double Isis::BundleMeasure::sampleResidual ( ) const

Accesses the sample residual for this control measure.

See also
ControlMeasure::GetSampleResidual()
Returns
double Returns the sample residual

Definition at line 279 of file BundleMeasure.cpp.

References m_controlMeasure.

◆ setFocalPlaneResidualsMillimeters()

void Isis::BundleMeasure::setFocalPlaneResidualsMillimeters ( )

Computes and sets measure focal plane residuals in millimeters.

Definition at line 422 of file BundleMeasure.cpp.

References m_controlMeasure, m_xFocalPlaneResidual, and m_yFocalPlaneResidual.

◆ setImage()

void Isis::BundleMeasure::setImage ( )

Sets the BundleMeasure's status to rejected or not rejected.

Parameters
rejectTrue will set the BundleMeasure to rejected.
See also
ControlMeasure::SetRejected(bool reject)

Definition at line 125 of file BundleMeasure.cpp.

References m_controlMeasure, and Isis::Camera::SetImage().

◆ setNormalsPointingBlockIndex()

void Isis::BundleMeasure::setNormalsPointingBlockIndex ( int index)

Sets block index into normal equations for pointing piecewise polynomial segment.

Parameters
indexnormal equations matrix block index.

Definition at line 148 of file BundleMeasure.cpp.

References m_normalsPointingBlockIndex.

◆ setNormalsPositionBlockIndex()

void Isis::BundleMeasure::setNormalsPositionBlockIndex ( int index)

Sets block index into normal equations for position piecewise polynomial segment.

Parameters
indexnormal equations matrix block index.

Definition at line 137 of file BundleMeasure.cpp.

References m_normalsPositionBlockIndex.

◆ setParentImage()

void Isis::BundleMeasure::setParentImage ( QSharedPointer< BundleImage > image)

Sets the parent bundle image.

Parameters
imagePointer to the parent BundleImage

Definition at line 101 of file BundleMeasure.cpp.

References m_parentBundleImage.

◆ setParentObservation()

void Isis::BundleMeasure::setParentObservation ( QSharedPointer< BundleObservation > observation)

Sets the parent bundle observation.

Parameters
observationPointer to the parent BundleObservation

Definition at line 91 of file BundleMeasure.cpp.

References m_parentObservation.

◆ setRejected()

void Isis::BundleMeasure::setRejected ( bool reject)

Sets the BundleMeasure's status to rejected or not rejected.

Parameters
rejectTrue will set the BundleMeasure to rejected.
See also
ControlMeasure::SetRejected(bool reject)

Definition at line 113 of file BundleMeasure.cpp.

References m_controlMeasure, and Isis::ControlMeasure::SetRejected().

◆ setSigma()

void Isis::BundleMeasure::setSigma ( double sigmaMultiplier)

Sets sigma (i.e.

standard deviation or uncertainty) of raw measure in mm and sqrt of weight for bundle

Parameters
doublesigma

TODO: what if camera has been subsampled, is pixel pitch computation still valid?

Definition at line 439 of file BundleMeasure.cpp.

References m_controlMeasure, m_sigma, m_weightSqrt, Isis::Camera::PixelPitch(), and Isis::IException::Programmer.

◆ sigma()

double Isis::BundleMeasure::sigma ( ) const

Accesses the measure sigma.

Returns
double measure sigma

Definition at line 321 of file BundleMeasure.cpp.

References m_sigma.

◆ weight()

double Isis::BundleMeasure::weight ( ) const

Accesses measure weight for bundle.

Returns
double measure weight

Definition at line 341 of file BundleMeasure.cpp.

References m_weightSqrt.

◆ weightSqrt()

double Isis::BundleMeasure::weightSqrt ( ) const

Accesses sqrt of measure weight for bundle.

Returns
double sqrt of measure weight

Definition at line 331 of file BundleMeasure.cpp.

References m_weightSqrt.

◆ xFocalPlaneResidual()

double Isis::BundleMeasure::xFocalPlaneResidual ( ) const

Accesses the focal plane x-coordinate residual in millimeters.

Returns
double Returns the focal plane x-coordinate residual in millimeters

Definition at line 301 of file BundleMeasure.cpp.

References m_xFocalPlaneResidual.

◆ yFocalPlaneResidual()

double Isis::BundleMeasure::yFocalPlaneResidual ( ) const

Accesses the focal plane y-coordinate residual in millimeters.

Returns
double Returns the focal plane y-coordinate residual in millimeters

Definition at line 311 of file BundleMeasure.cpp.

References m_yFocalPlaneResidual.

Member Data Documentation

◆ m_controlMeasure

◆ m_normalsPointingBlockIndex

int Isis::BundleMeasure::m_normalsPointingBlockIndex
private

block index into normal equations

Definition at line 111 of file BundleMeasure.h.

Referenced by BundleMeasure(), BundleMeasure(), operator=(), pointingNormalsBlockIndex(), and setNormalsPointingBlockIndex().

◆ m_normalsPositionBlockIndex

int Isis::BundleMeasure::m_normalsPositionBlockIndex
private

block index into normal equations

Definition at line 110 of file BundleMeasure.h.

Referenced by BundleMeasure(), BundleMeasure(), operator=(), positionNormalsBlockIndex(), and setNormalsPositionBlockIndex().

◆ m_parentBundleImage

QSharedPointer<BundleImage> Isis::BundleMeasure::m_parentBundleImage
private

Parent image of this bundle control measure.

Definition at line 107 of file BundleMeasure.h.

Referenced by BundleMeasure(), operator=(), parentBundleImage(), and setParentImage().

◆ m_parentControlPoint

BundleControlPoint* Isis::BundleMeasure::m_parentControlPoint
private

Parent bundle control point that contains this bundle control measure.

Definition at line 105 of file BundleMeasure.h.

Referenced by BundleMeasure(), BundleMeasure(), operator=(), and parentControlPoint().

◆ m_parentObservation

QSharedPointer<BundleObservation> Isis::BundleMeasure::m_parentObservation
private

◆ m_sigma

double Isis::BundleMeasure::m_sigma
private

measure uncertainty in mm

Definition at line 116 of file BundleMeasure.h.

Referenced by setSigma(), and sigma().

◆ m_weightSqrt

double Isis::BundleMeasure::m_weightSqrt
private

sqrt of measure weight

Definition at line 117 of file BundleMeasure.h.

Referenced by setSigma(), weight(), and weightSqrt().

◆ m_xFocalPlaneResidual

double Isis::BundleMeasure::m_xFocalPlaneResidual
private

x focal plane residual in mm

Definition at line 113 of file BundleMeasure.h.

Referenced by setFocalPlaneResidualsMillimeters(), and xFocalPlaneResidual().

◆ m_yFocalPlaneResidual

double Isis::BundleMeasure::m_yFocalPlaneResidual
private

y focal plane residual in mm

Definition at line 114 of file BundleMeasure.h.

Referenced by setFocalPlaneResidualsMillimeters(), and yFocalPlaneResidual().


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