20 #ifndef GEOS_OPERATION_GEOMETRYGRAPHOPERATION_H
21 #define GEOS_OPERATION_GEOMETRYGRAPHOPERATION_H
23 #include <geos/export.h>
24 #include <geos/algorithm/LineIntersector.h>
30 #pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class
36 class BoundaryNodeRule;
52 class GEOS_DLL GeometryGraphOperation {
56 GeometryGraphOperation(
const geom::Geometry* g0,
57 const geom::Geometry* g1);
59 GeometryGraphOperation(
const geom::Geometry* g0,
60 const geom::Geometry* g1,
61 const algorithm::BoundaryNodeRule& boundaryNodeRule);
63 GeometryGraphOperation(
const geom::Geometry* g0);
65 virtual ~GeometryGraphOperation();
67 const geom::Geometry* getArgGeometry(
unsigned int i)
const;
71 algorithm::LineIntersector li;
73 const geom::PrecisionModel* resultPrecisionModel;
78 std::vector<geomgraph::GeometryGraph*> arg;
80 void setComputationPrecision(
const geom::PrecisionModel* pm);