AGSol (Art Gallery Solver)
1.0.2
This package contains a software capable of optimally solving the Art Gallery Problem (AGP), one interesting NP-hard problem from the Computational Geometry field. The algorithm implemented in this solution, which can be today considered the state-of-the-art technique on the AGP, can be found in details in the following paper: Davi C. Tozoni, Pedro J. de Rezende, Cid C. de Souza. A Practical Iterative Algorithm for the Art Gallery Problem using Integer Linear Programming
|
Public Member Functions | |
IGrid () | |
void | setPolygon (PolygonWithHolesExt polygon) |
void | setVisibilityPolygons (std::vector< PolygonExt > visPol) |
virtual void | makeGrid ()=0 |
int | getGridMem () |
void | addGridPoint (Point p) |
std::vector< Point > | getGridPoints () |
std::vector< PolygonExt > | getStruct1 () |
std::vector< PolygonExt > | getStruct2 () |
Protected Attributes | |
PolygonWithHolesExt | _polygon |
std::vector< PolygonExt > | _visPol |
std::vector< Point > | _grid |
bool | _visOk |
bool | _debug |
int | _gridMem |
double | _gridTime |
std::vector< PolygonExt > | _struct1 |
std::vector< PolygonExt > | _struct2 |
|
inline |
Constructor and Destructor.
void IGrid::addGridPoint | ( | Point | p | ) |
Adds a point 'p' to the current grid.
|
inline |
Returns memory used by the grid structure.
|
inline |
Returns grid points.
|
inline |
Returns first struct.
|
inline |
Returns second struct.
|
pure virtual |
Constructs the grid.
Implemented in AVPLightGrid.
void IGrid::setPolygon | ( | PolygonWithHolesExt | polygon | ) |
Sets polygon to be treated.
void IGrid::setVisibilityPolygons | ( | std::vector< PolygonExt > | visPol | ) |
Copies the visibility polygons to a structure inside IGrid class.