/** * @file testPolygonClass.cpp * @brief test function of polygon class * @author Sven Sickert * @date 07/10/2015 */ #include "vislearning/cbaselib/Polygon.h" using namespace OBJREC; int main ( int argc, char **argv ) { Polygon * poly1 = new Polygon (); Polygon * poly2 = new Polygon(*poly1); delete poly2; NICE::CoordT coord( 10, 10); poly1->push( coord ); poly1->push( 20, 20 ); poly1->push( 10, 20 ); poly1->setID( 42 ); const PointsList* ptsList = poly1->points(); poly1->pop(); poly1->push ( 20, 10 ); for ( PointsList::const_iterator it = ptsList->begin(); it != ptsList->end(); ++it ) std::cout << it->x << " " << it->y << std::endl; NICE::CoordT test1( 18, 15 ); std::cout << "Point (" << test1.x << "," << test1.y << ") in polygon?" << std::endl; if ( poly1->insidePolygon( test1) ) std::cout << "true" << std::endl; else std::cout << "false" << std::endl; NICE::CoordT test2( 5, 5 ); std::cout << "Point (" << test2.x << "," << test2.y << ") in polygon?" << std::endl; if ( poly1->insidePolygon( test2) ) std::cout << "true" << std::endl; else std::cout << "false" << std::endl; NICE::CoordT test3( 10, 10 ); std::cout << "Point (" << test3.x << "," << test3.y << ") in polygon?" << std::endl; if ( poly1->insidePolygon( test3) ) std::cout << "true" << std::endl; else std::cout << "false" << std::endl; delete poly1; }