1#ifndef SQL_GIS_INTERSECTION_FUNCTOR_H_INCLUDED
2#define SQL_GIS_INTERSECTION_FUNCTOR_H_INCLUDED
35#include <boost/geometry.hpp>
56 boost::geometry::strategy::within::geographic_winding<Geographic_point>
59 boost::geometry::strategy::intersection::geographic_segments<>
A Cartesian 2d geometry collection.
Definition: geometries_cs.h:374
A Cartesian 2d linestring.
Definition: geometries_cs.h:70
A Cartesian 2d multilinestring.
Definition: geometries_cs.h:601
A Cartesian 2d multipoint.
Definition: geometries_cs.h:500
A Cartesian 2d multipolygon.
Definition: geometries_cs.h:719
A Cartesian 2d point.
Definition: geometries_cs.h:46
A Cartesian 2d polygon.
Definition: geometries_cs.h:268
The base class of all functors that takes two geometry arguments.
Definition: functor.h:164
A geographic (ellipsoidal) 2d geometry collection.
Definition: geometries_cs.h:437
A geographic (ellipsoidal) 2d linestring.
Definition: geometries_cs.h:124
A geographic (ellipsoidal) 2d multilinestring.
Definition: geometries_cs.h:660
A geographic (ellipsoidal) 2d multipoint.
Definition: geometries_cs.h:551
A geographic (ellipsoidal) 2d multipolygon.
Definition: geometries_cs.h:773
A geographic (ellipsoidal) 2d point.
Definition: geometries_cs.h:57
A geographic (ellipsoidal) 2d polygon.
Definition: geometries_cs.h:321
Abstract superclass for all geometric objects.
Definition: geometries.h:99
Intersection functor that calls Boost.Geometry with the correct parameter types.
Definition: intersection_functor.h:49
double semi_major() const
Definition: intersection_functor.h:65
double m_semi_minor
Semi-minor axis of ellipsoid.
Definition: intersection_functor.h:54
boost::geometry::strategy::within::geographic_winding< Geographic_point > m_geographic_pl_pa_strategy
Strategy used for P/L and P/A.
Definition: intersection_functor.h:57
double semi_minor() const
Definition: intersection_functor.h:64
std::unique_ptr< Geometry > operator()(const Geometry *g1, const Geometry *g2) const override
Definition: intersection_functor.cc:265
Intersection(double semi_major, double semi_minor)
Definition: intersection_functor.cc:257
std::unique_ptr< Geometry > eval(const Geometry *g1, const Geometry *g2) const
Definition: intersection_functor.cc:273
boost::geometry::strategy::intersection::geographic_segments m_geographic_ll_la_aa_strategy
Strategy used for L/L, L/A and A/A.
Definition: intersection_functor.h:60
double m_semi_major
Semi-major axis of ellipsoid.
Definition: intersection_functor.h:52
This file contains the superclasses for GIS functors.
This file declares the geometry class hierarchy used by the server as the internal representation of ...
This file contains Boost.Geometry type traits declarations for Cartesian and geographic geometries.