Isis Developer Reference
|
Seed points using a grid. More...
#include <LimitPolygonSeeder.h>
Public Member Functions | |
LimitPolygonSeeder (Pvl &pvl) | |
Construct a LimitPolygonSeeder algorithm. | |
virtual | ~LimitPolygonSeeder () |
Destructor. | |
std::vector< geos::geom::Point * > | Seed (const geos::geom::MultiPolygon *mp) |
Seed a polygon with points. | |
virtual PvlGroup | PluginParameters (QString grpName) |
Plugin parameters. | |
double | MinimumThickness () |
Return the minimum allowed thickness of the polygon. | |
double | MinimumArea () |
Return the minimum allowed area of the polygon. | |
QString | Algorithm () const |
The name of the algorithm, read from the Name Keyword in the PolygonSeeder Pvl passed into the constructor. | |
Pvl | InvalidInput () |
This method returns a copy of the Pvl passed in by the constructor (from a def file probably) minus what was used. | |
Protected Member Functions | |
virtual void | Parse (Pvl &pvl) |
Parse the LimitPolygonSeeder spicific parameters from the PVL. | |
QString | StandardTests (const geos::geom::MultiPolygon *multiPoly, const geos::geom::Envelope *polyBoundBox) |
Check the polygon to see if it meets standard criteria. | |
Protected Attributes | |
Pvl * | invalidInput |
The Pvl passed in by the constructor minus what was used. | |
Seed points using a grid.
This class seeds the polygons with Control Points by creating a grid centered on the polygon. For each grid square, if it contains any overlap, a box is then created within the grid square, surrounding the valid data. The point checked is the center of this box, and if this point is within the overlap polygon then this point is returned, otherwise the grid square does not have a point.
Isis::LimitPolygonSeeder::LimitPolygonSeeder | ( | Pvl & | pvl | ) |
Construct a LimitPolygonSeeder algorithm.
pvl | A Pvl object that contains a valid polygon point seeding definition |
References Parse().
|
inlinevirtual |
Destructor.
|
inherited |
The name of the algorithm, read from the Name Keyword in the PolygonSeeder Pvl passed into the constructor.
Referenced by Isis::GridPolygonSeeder::PluginParameters(), PluginParameters(), and Isis::StripPolygonSeeder::PluginParameters().
|
inherited |
This method returns a copy of the Pvl passed in by the constructor (from a def file probably) minus what was used.
References Isis::PolygonSeeder::invalidInput.
|
inherited |
Return the minimum allowed area of the polygon.
This value is set from the "MinimumArea" keyword in the PVL. The seeding algorithm will not seed polygons that have an area less than this.
Referenced by Isis::GridPolygonSeeder::PluginParameters(), PluginParameters(), Isis::StripPolygonSeeder::PluginParameters(), and Isis::PolygonSeeder::StandardTests().
|
inherited |
Return the minimum allowed thickness of the polygon.
This value is set from the "MinimumThickness" keyword in the PVL. The seeding algorithm will not seed polygons that have a thickness ratio less than this
Referenced by Isis::GridPolygonSeeder::PluginParameters(), PluginParameters(), Isis::StripPolygonSeeder::PluginParameters(), and Isis::PolygonSeeder::StandardTests().
|
protectedvirtual |
Parse the LimitPolygonSeeder spicific parameters from the PVL.
pvl | The PVL object containing the control parameters for this polygon seeder. |
Reimplemented from Isis::PolygonSeeder.
References _FILEINFO_, Isis::PvlObject::findGroup(), Isis::PolygonSeeder::invalidInput, Isis::PolygonSeeder::Parse(), Isis::PvlObject::Traverse, and Isis::IException::User.
Referenced by LimitPolygonSeeder().
|
virtual |
Plugin parameters.
This method will add the PvlKeyword values for algorithm name, minimum thickness, and minimum area of this object to a PvlGroup with the name that is passed in.
grpName | A string containing the PvlGroup name. |
Reimplemented from Isis::PolygonSeeder.
References Isis::PolygonSeeder::Algorithm(), Isis::PolygonSeeder::MinimumArea(), Isis::PolygonSeeder::MinimumThickness(), and Isis::toString().
|
virtual |
Seed a polygon with points.
Seed the supplied polygon with points in a staggered pattern. The spacing is determined by the PVL group "PolygonSeederAlgorithm"
lonLatPoly | geos::MultiPolygon The polygon to be seeded with points. |
Implements Isis::PolygonSeeder.
References Isis::globalFactory, and Isis::PolygonSeeder::StandardTests().
|
protectedinherited |
Check the polygon to see if it meets standard criteria.
xymp | The multipoly containing the coordinates in x/y units instead of lon/lat |
xyBoundBox | The bounding box of the multipoly |
References Isis::PolygonSeeder::MinimumArea(), Isis::PolygonSeeder::MinimumThickness(), and Isis::toString().
Referenced by Seed(), and Isis::StripPolygonSeeder::Seed().
|
protectedinherited |
The Pvl passed in by the constructor minus what was used.
Referenced by Isis::PolygonSeeder::InvalidInput(), Isis::GridPolygonSeeder::Parse(), Parse(), Isis::PolygonSeeder::Parse(), Isis::StripPolygonSeeder::Parse(), Isis::PolygonSeeder::PolygonSeeder(), and Isis::PolygonSeeder::~PolygonSeeder().