18#include <geos/geom/Location.h>
19#include <geos/geom/Dimension.h>
20#include <geos/geom/IntersectionMatrix.h>
21#include <geos/operation/relateng/IMPredicate.h>
22#include <geos/export.h>
46class GEOS_DLL IMPatternMatcher :
public IMPredicate {
51 std::string imPattern;
56 static bool isInteraction(
int imDim);
61 IMPatternMatcher(std::string p_imPattern)
62 : imPattern(p_imPattern)
63 , patternMatrix(p_imPattern)
66 std::string name()
const override;
68 using IMPredicate::init;
71 bool requireInteraction()
const override;
73 bool isDetermined()
const override;
75 bool valueIM()
override;
77 std::string toString()
const;
79 friend std::ostream& operator<<(std::ostream& os,
const IMPatternMatcher& imp);
Definition Dimension.h:27
An Envelope defines a rectangulare region of the 2D coordinate plane.
Definition Envelope.h:59
Implementation of Dimensionally Extended Nine-Intersection Model (DE-9IM) matrix.
Definition IntersectionMatrix.h:51
Location
Constants representing the location of a point relative to a geometry.
Definition Location.h:32
Basic namespace for all GEOS functionalities.
Definition geos.h:39