Isis Developer Reference
Isis::ControlPointV0003 Class Reference

A container for the information stored in a version 3 and 4 ControlPoint. More...

#include <ControlPointV0003.h>

Collaboration diagram for Isis::ControlPointV0003:
Collaboration graph

Public Member Functions

 ControlPointV0003 (PvlObject &pointObject)
 Create a ControlPointV0003 object from a version 3 or 4 control point Pvl object.
 
 ControlPointV0003 (QSharedPointer< ControlPointFileEntryV0002 > pointData)
 Create a ControlPointV0003 object from a protobuf version 2 control point message.
 
 ControlPointV0003 (ControlPointV0002 &oldPoint)
 Create a ControlPointV0003 object from a ControlPointV0002 object.
 
const ControlPointFileEntryV0002 & pointData ()
 Access the protobuf control point data.
 

Detailed Description

A container for the information stored in a version 3 and 4 ControlPoint.

A wrapper around the version 3 and 4 protobuf serialization of a ControlPoint. It allows for reading ControlPoints serialized as both PvlObjects and protobuf messages. It also allows for upgrading version 2 ControlPoints to version 3 and 4 ControlPoints.

The version 3 and 4 binary serialization of ControlPoint use the same protobuf message, so this class works with both versions. The difference between the version 3 and 4 Pvl serializations is Ground and Tie points were renamed to Fixed and Free respectively. This is sufficiently minor that it is handled in the pvl constructor.

In the Pvl format, control points are represented by objects contained in the ControlNetwork object. Control measures are represented by groups contained in the control point objects.

Valid Control Point Keywords

  • PointId: The point ID string
  • ChooserName: The name of the application or user that last modified the point
  • DateTime: The date and time of the last modification to the point
  • AprioriXYZSource: What type of source the apriori ground point was calculated from. Options:
    • None
    • User
    • AverageOfMeasures
    • Reference
    • Basemap
    • BundleSolution
  • AprioriXYZSourceFile: The name of the file that the apriori ground point was calculated from
  • AprioriRadiusSource: What type of source the apriori point radius was calculated from. Options:
    • None
    • User
    • AverageOfMeasures
    • Ellipsoid
    • DEM
    • BundleSolution
  • AprioriRadiusSourceFile: The name of the file that the apriori point radius was calculated from
  • JigsawRejected: If the point was rejected by a bundle adjustment
  • EditLock: If the point is locked out of editing
  • Ignore: If the point will be ignored
  • AprioriX: The body fixed X coordinate of the a priori ground point in meters
  • AprioriY: The body fixed Y coordinate of the a priori ground point in meters
  • AprioriZ: The body fixed Z coordinate of the a priori ground point in meters
  • AdjustedX: The body fixed X coordinate of the adjusted ground point in meters
  • AdjustedY: The body fixed Y coordinate of the adjusted ground point in meters
  • AdjustedZ: The body fixed Z coordinate of the adjusted ground point in meters
  • LatitudeConstrained: If the latitude of the ground point is constrained
  • LongitudeConstrained: If the longitude of the ground point is constrained
  • RadiusConstrained: If the radius of the ground point is constrained
  • PointType: What type of point it is. Options:
    • Fixed
    • Ground
    • Constrained
    • Free
    • Tie
  • AprioriCovarianceMatrix: A six element vector corresponding to the upper triangle; elements (0,0), (0,1), (0,2), (1,1), (1,2), and (2,2); of the 3x3, symmetric covariance matrix for the rectangular, a priori ground point.
  • AdjustedCovarianceMatrix: A six element vector corresponding to the upper triangle; elements (0,0), (0,1), (0,2), (1,1), (1,2), and (2,2); of the 3x3, symmetric covariance matrix for the rectangular, adjusted ground point.

Valid Control Measure Keywords

  • SerialNumber: The serial number of the cube the measure is from
  • ChooserName: The name of the application or user who last modified the measure
  • DateTime: The date and time of the last modification
  • Diameter: If the measure was selected from a crater, this is the diameter of the crater in meters
  • EditLock: If the measure is locked out of editing
  • Ignore: If the measure will be ignored
  • JigsawRejected: If the measure was rejected during a bundle adjustment
  • AprioriSample: The a priori sample
  • AprioriLine: The a priori line
  • SampleSigma: The standard deviation of the sample measurement
  • LineSigma: The standard deviation of the line measurement
  • Sample: The adjusted sample
  • Line: The adjusted line
  • SampleResidual: The difference between the a priori and adjusted sample
  • LineResidual: The difference between the a priori and adjusted line
  • Reference: If the measure is the reference measure for its point
  • MeasureType: What type of measure it is. Options:
    • candidate
    • manual
    • registeredpixel
    • registeredsubpixel
Author
2017-12-14 Jesse Mapel

Constructor & Destructor Documentation

◆ ControlPointV0003() [1/3]

Isis::ControlPointV0003::ControlPointV0003 ( PvlObject & pointObject)

Create a ControlPointV0003 object from a version 3 or 4 control point Pvl object.

Parameters
pointObjectThe control point and its measures in a Pvl object

References _FILEINFO_, Isis::PvlContainer::deleteKeyword(), Isis::PvlContainer::hasKeyword(), Isis::IException::Io, Isis::PvlContainer::keywords(), Isis::PvlContainer::name(), Isis::IException::Programmer, Isis::toDouble(), and Isis::IException::User.

◆ ControlPointV0003() [2/3]

Isis::ControlPointV0003::ControlPointV0003 ( QSharedPointer< ControlPointFileEntryV0002 > pointData)

Create a ControlPointV0003 object from a protobuf version 2 control point message.

Parameters
pointDataThe protobuf message from a control net file.

◆ ControlPointV0003() [3/3]

Isis::ControlPointV0003::ControlPointV0003 ( ControlPointV0002 & oldPoint)

Create a ControlPointV0003 object from a ControlPointV0002 object.

Parameters
oldPointThe PvlControlPointV0002 that will be upgraded to V0003.

References _FILEINFO_, Isis::toString(), and Isis::IException::User.

Member Function Documentation

◆ pointData()

const ControlPointFileEntryV0002 & Isis::ControlPointV0003::pointData ( )

Access the protobuf control point data.

If there is not internal point data then default point data is returned. Note that default point data may be missing required fields.

Returns
const ControlPointFileEntryV0002& A constant reference to the internal control point data. There is no guarantee that the point data is fully initialized.

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