|
Isis 3 Programmer Reference
|
17 #include "ControlMeasure.h"
18 #include "SurfacePoint.h"
20 template<
typename A,
typename B >
class QHash;
26 class ControlPointFileEntryV0002;
29 class PBControlNet_PBControlPoint;
30 class PBControlNetLogData_Point;
386 static const int PointTypeCount = 3;
416 Coord1Constrained = 0,
417 Coord2Constrained = 1,
418 Coord3Constrained = 2
472 int Delete(QString serialNumber);
514 QString GetChooserName()
const;
515 QString GetDateTime()
const;
516 bool IsEditLocked()
const;
517 bool IsRejected()
const;
518 QString
GetId()
const;
519 bool IsIgnored()
const;
520 bool IsValid()
const;
522 bool IsInvalid()
const;
525 bool HasAprioriCoordinates();
547 RadiusSource::Source GetAprioriRadiusSource()
const;
549 QString GetAprioriRadiusSourceFile()
const;
550 SurfacePointSource::Source GetAprioriSurfacePointSource()
const;
552 QString GetAprioriSurfacePointSourceFile()
const;
554 int GetNumMeasures()
const;
561 int IndexOf(QString sn,
bool throws =
true)
const;
bool editLock
This stores the edit lock state.
bool HasDateTime() const
Returns true if the datetime is not empty.
void ClearJigsawRejected()
Set jigsaw rejected flag for all measures to false and set the jigsaw rejected flag for the point its...
QList< ControlMeasure * > getMeasures(bool excludeIgnored=false) const
This class is used to accumulate statistics on double arrays.
static QString PointTypeToString(PointType type)
Obtain a string representation of a given PointType.
Contains Pvl Groups and Pvl Objects.
void ZeroNumberOfRejectedMeasures()
Initialize the number of rejected measures to 0.
Status SetAprioriRadiusSourceFile(QString sourceFile)
This updates the filename of the DEM that the apriori radius came from.
bool IsCoord3Constrained()
Return bool indicating if 3rd coordinate is Constrained or not.
const ControlMeasure * GetMeasure(QString serialNumber) const
Get a control measure based on its cube's serial number.
This is free and unencumbered software released into the public domain.
Status SetIgnored(bool newIgnoreStatus)
Set whether to ignore or use control point.
double GetSampleResidualRms() const
Get rms of sample residuals.
bool jigsawRejected
This stores the jigsaw rejected state.
Status SetChooserName(QString name)
Set the point's chooser name.
QString id
This is the control point ID.
@ PointLocked
This is returned when the operation requires Edit Lock to be false but it is currently true.
Status SetEditLock(bool editLock)
Set the EditLock state.
double GetResidualRms() const
Get rms of residuals.
QString GetReferenceSN() const
bool HasAprioriRadiusSourceFile() const
Checks to see if the radius source file has been set.
Status SetAdjustedSurfacePoint(SurfacePoint newSurfacePoint)
Set or update the surface point relating to this control point.
ConstraintStatus
This is a convenience member for checking number of constrained coordinates in the SurfacePoint.
void SetNumberOfRejectedMeasures(int numRejected)
Set (update) the number of rejected measures for the control point.
Statistics GetStatistic(double(ControlMeasure::*statFunc)() const) const
This function will call a given method on every control measure that this point has.
@ Success
This is returned when the operation successfully took effect.
SurfacePoint aprioriSurfacePoint
The apriori surface point.
Status ComputeApriori()
Computes a priori lat/lon/radius point coordinates by determining the average lat/lon/radius of all m...
ControlPoint()
Construct a control point.
Status ComputeResiduals_Millimeters()
This method computes the residuals for a point.
PointType
These are the valid 'types' of point.
ControlNet * parentNetwork
List of Control Measures.
bool HasAprioriSurfacePointSourceFile() const
Checks to see if the surface point source file has been set.
QString dateTime
This is the last modified date and time.
int GetNumberOfRejectedMeasures() const
Get the number of rejected measures on the control point.
QString GetId() const
Return the Id of the control point.
SurfacePoint GetBestSurfacePoint() const
Returns the adjusted surface point if it exists, otherwise returns the a priori surface point.
Status SetAprioriSurfacePointSourceFile(QString sourceFile)
This updates the filename of where the apriori surface point came from.
int GetNumValidMeasures() const
QList< QString > getCubeSerialNumbers() const
QString GetRadiusSourceString() const
Obtain a string representation of the RadiusSource.
bool referenceExplicitlySet
This indicates if a program has explicitely set the reference in this point or the implicit reference...
static QString RadiusSourceToString(RadiusSource::Source source)
Obtain a string representation of a given RadiusSource.
@ Fixed
A Fixed point is a Control Point whose lat/lon is well established and should not be changed.
const ControlPoint & operator=(const ControlPoint &pPoint)
bool IsCoord2Constrained()
Return bool indicating if 2nd coordinate is Constrained or not.
std::bitset< 3 > constraintStatus
This stores the constraint status of the a priori SurfacePoint.
This is free and unencumbered software released into the public domain.
bool operator!=(const ControlPoint &pPoint) const
Compare two Control Points for inequality.
ModType
Control Measure Modification Types.
double GetLineResidualRms() const
Get rms of line residuals.
Status SetRefMeasure(ControlMeasure *cm)
Set the point's reference measure.
bool HasChooserName() const
Returns true if the choosername is not empty.
bool invalid
If we forced a build that we would normally have thrown an exception for then this is set to true.
void emitMeasureModified(ControlMeasure *measure, ControlMeasure::ModType modType, QVariant oldValue, QVariant newValue)
This method is a wrapper to emit the measureModified() signal in the parent network is called wheneve...
Status SetAprioriSurfacePoint(SurfacePoint aprioriSP)
This updates the apriori surface point.
Status SetType(PointType newType)
Updates the control point's type.
QString GetSurfacePointSourceString() const
Obtain a string representation of the SurfacePointSource.
PointType type
What this control point is tying together.
int GetNumLockedMeasures() const
Returns the number of locked control measures.
const ControlMeasure * operator[](QString serialNumber) const
Same as GetMeasure (provided for convenience)
static QString SurfacePointSourceToString(SurfacePointSource::Source source)
Obtain a string representation of a given SurfacePointSource.
Status SetId(QString id)
Sets the Id of the control point.
@ Constrained
A Constrained point is a Control Point whose lat/lon/radius is somewhat established and should not be...
static SurfacePointSource::Source StringToSurfacePointSource(QString str)
Obtain a SurfacePoint::Source from a string.
static RadiusSource::Source StringToRadiusSource(QString str)
Obtain a RadiusSource::Source from a string.
SurfacePoint adjustedSurfacePoint
This is the calculated, or aposterori, surface point.
void Load(PvlObject &p)
Loads the PvlObject into a ControlPoint.
Status SetDateTime(QString newDateTime)
Set the point's last modified time.
bool IsFree() const
Return bool indicating if point is Free or not.
QString aprioriRadiusSourceFile
The name of the file that derives the apriori surface point's radius.
bool HasRefMeasure() const
Checks to see if a reference measure is set.
bool ignore
True if we should preserve but ignore the entire control point and its measures.
int IndexOfRefMeasure() const
SurfacePointSource::Source aprioriSurfacePointSource
Where the apriori surface point originated from.
void SetExplicitReference(ControlMeasure *measure)
Explicitly defines a new reference measure by pointer.
QString chooserName
This is the user name of the person who last modified this control point.
int numberOfRejectedMeasures
This parameter is used and maintained by BundleAdjust for the jigsaw application.
int IndexOf(ControlMeasure *, bool throws=true) const
int NumberOfConstrainedCoordinates()
Return bool indicating if point is Constrained or not.
bool IsCoord1Constrained()
Return bool indicating if 1st coordinate is Constrained or not.
const ControlMeasure * GetRefMeasure() const
Get the reference control measure.
ModType
Control Point Modification Types.
bool operator==(const ControlPoint &pPoint) const
Compare two Control Points for equality.
Status ResetApriori()
Reset all the Apriori info to defaults.
@ Free
A Free point is a Control Point that identifies common measurements between two or more cubes.
int Delete(ControlMeasure *measure)
Remove a measurement from the control point, deleting reference measure is allowed.
QString aprioriSurfacePointSourceFile
FileName where the apriori surface point originated from.
PointType GetType() const
Status SetRejected(bool rejected)
Set the jigsawRejected state.
~ControlPoint()
This destroys the current instance and cleans up any and all allocated memory.
Status SetAprioriSurfacePointSource(SurfacePointSource::Source source)
This updates the source of the surface point.
void ValidateMeasure(QString serialNumber) const
Throws an exception if none of the point's measures have the given serial number.
Status
This is a return status for many of the mutating (setter) method calls.
@ Failure
This is returned when an operation cannot be performed due to a problem such as the point is ignored ...
bool HasSerialNumber(QString serialNumber) const
Return true if given serial number exists in point.
bool IsConstrained()
Return bool indicating if point is Constrained or not.
void AddMeasure(ControlMeasure *measure)
Do the actual work of adding a measure to this point, without changing any extra data.
bool IsReferenceExplicit() const
static PointType StringToPointType(QString pointTypeString)
Obtain a PointType given a string representation of it.
void PointModified()
What the heck is the point of this?
void Add(ControlMeasure *measure)
Add a measurement to the control point, taking ownership of the measure in the process.
RadiusSource::Source aprioriRadiusSource
Where the apriori surface point's radius originated from, most commonly used by jigsaw.
This class defines a body-fixed surface point.
This is free and unencumbered software released into the public domain.
bool IsFixed() const
Return bool indicating if point is Fixed or not.
QString GetPointTypeString() const
Obtain a string representation of the PointType.
Status SetAprioriRadiusSource(RadiusSource::Source source)
This updates the source of the radius of the apriori surface point.
Status ComputeResiduals()
This method computes the BundleAdjust residuals for a point.