1#ifndef ImageOverlapSet_h
2#define ImageOverlapSet_h
17#include "geos/geom/MultiPolygon.h"
18#include "geos/geom/LinearRing.h"
19#include "geos/util/GEOSException.h"
28 class SerialNumberList;
93 std::vector<geos::geom::MultiPolygon *> polygons);
104 return p_lonLatOverlaps.size();
116 return p_lonLatOverlaps[index];
119 std::vector<ImageOverlap *>
operator[](QString serialNumber);
138 void DespikeLonLatOverlaps();
140 QList<ImageOverlap *> p_lonLatOverlaps;
143 geos::geom::MultiPolygon *lonLatPolygon);
145 bool SetPolygon(geos::geom::Geometry *poly,
int position,
ImageOverlap *sncopy = NULL,
bool insert =
false);
147 void HandleError(geos::util::GEOSException *exc,
SerialNumberList *snlist, QString msg =
"",
int overlap1 = -1,
int overlap2 = -1);
148 void HandleError(
SerialNumberList *snlist, QString msg,
int overlap1 = -1,
int overlap2 = -1);
150 bool p_continueAfterError;
151 bool p_threadedCalculate;
153 int p_calculatedSoFar;
165 QMutex p_calculatePolygonMutex;
166 QMutex p_lonLatOverlapsMutex;
Isis exception class.
Definition IException.h:91
Individual overlap container.
Definition ImageOverlap.h:40
This class is used to find the overlaps between all the images in a list of serial numbers.
Definition ImageOverlapSet.h:86
void ReadImageOverlaps(const QString &filename)
Create polygons of overlap from the file specified.
Definition ImageOverlapSet.cpp:329
void FindAllOverlaps(SerialNumberList *snlist=NULL)
Find the overlaps between all the existing ImageOverlap Objects.
Definition ImageOverlapSet.cpp:540
std::vector< PvlGroup > p_errorLog
This is a list of detailed* errors including all known information.
Definition ImageOverlapSet.h:130
virtual ~ImageOverlapSet()
Delete this object.
Definition ImageOverlapSet.cpp:60
const std::vector< PvlGroup > & Errors()
Return the a list of errors encountered.
Definition ImageOverlapSet.h:122
void AddSerialNumbers(ImageOverlap *to, ImageOverlap *from)
Add the serial numbers from the second overlap to the first.
Definition ImageOverlapSet.cpp:825
ImageOverlapSet(bool continueOnError=false, bool useThread=true)
Create FindImageOverlaps object.
Definition ImageOverlapSet.cpp:44
void FindImageOverlaps(SerialNumberList &boundaries)
Create polygons of overlap from the images specified in the serial number list.
Definition ImageOverlapSet.cpp:79
int Size()
Returns the total number of latitude and longitude overlaps.
Definition ImageOverlapSet.h:103
void WriteImageOverlaps(const QString &filename)
Write polygons of overlap to the file specified.
Definition ImageOverlapSet.cpp:447
const ImageOverlap * operator[](int index)
Returns the images which overlap at a given loverlap.
Definition ImageOverlapSet.h:115
Serial Number list generator.
Definition SerialNumberList.h:64
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16