1 /**********************************************************************
3 * GEOS - Geometry Engine Open Source
4 * http://geos.osgeo.org
6 * Copyright (C) 2001-2002 Vivid Solutions Inc.
8 * This is free software; you can redistribute and/or modify it under
9 * the terms of the GNU Lesser General Public Licence as published
10 * by the Free Software Foundation.
11 * See the COPYING file for more information.
13 **********************************************************************
15 * Revision 1.1 2006/01/31 19:07:35 strk
16 * - Renamed DefaultCoordinateSequence to CoordinateArraySequence.
17 * - Moved GetNumGeometries() and GetGeometryN() interfaces
18 * from GeometryCollection to Geometry class.
19 * - Added getAt(int pos, Coordinate &to) funtion to CoordinateSequence class.
20 * - Reworked automake scripts to produce a static lib for each subdir and
21 * then link all subsystem's libs togheter
22 * - Moved C-API in it's own top-level dir capi/
23 * - Moved source/bigtest and source/test to tests/bigtest and test/xmltester
24 * - Fixed PointLocator handling of LinearRings
25 * - Changed CoordinateArrayFilter to reduce memory copies
26 * - Changed UniqueCoordinateArrayFilter to reduce memory copies
27 * - Added CGAlgorithms::isPointInRing() version working with
28 * Coordinate::ConstVect type (faster!)
29 * - Ported JTS-1.7 version of ConvexHull with big attention to
30 * memory usage optimizations.
31 * - Improved XMLTester output and user interface
32 * - geos::geom::util namespace used for geom/util stuff
33 * - Improved memory use in geos::geom::util::PolygonExtractor
34 * - New ShortCircuitedGeometryVisitor class
35 * - New operation/predicate package
37 * Revision 1.1 2004/07/19 10:35:23 strk
38 * bigtest.h moved to local dir
40 * Revision 1.2 2004/07/08 19:34:49 strk
41 * Mirrored JTS interface of CoordinateSequence, factory and
42 * default implementations.
43 * Added DefaultCoordinateSequenceFactory::instance() function.
45 * Revision 1.1 2004/07/02 13:20:42 strk
46 * Header files moved under geos/ dir.
48 * Revision 1.4 2003/11/07 01:23:42 pramsey
49 * Add standard CVS headers licence notices and copyrights to all cpp and h
53 **********************************************************************/
56 #ifndef GEOS_BIGTEST_H
57 #define GEOS_BIGTEST_H
64 // Forward declaration
68 class CoordinateSequence
;
69 class GeometryFactory
;
73 class GeometryTestFactory
{
75 static geom::Polygon
* createBox(geom::GeometryFactory
*fact
,double minx
,double miny
,int nSide
,double segLen
);
76 static geom::CoordinateSequence
* createBox(double minx
,double miny
,int nSide
,double segLen
);
77 static geom::CoordinateSequence
* createCircle(double basex
,double basey
,double size
,int nPts
);
78 static geom::Polygon
* createCircle(geom::GeometryFactory
*fact
,double basex
,double basey
,double size
,int nPts
);
79 static geom::CoordinateSequence
* createSineStar(double basex
,double basey
,double size
,double armLen
,int nArms
,int nPts
);
80 static geom::Polygon
* createSineStar(geom::GeometryFactory
*fact
,double basex
,double basey
,double size
,double armLen
,int nArms
,int nPts
);