1#ifndef SQL_GIS_INTERSECTION_FUNCTOR_H_INCLUDED
2#define SQL_GIS_INTERSECTION_FUNCTOR_H_INCLUDED
36#include <boost/geometry.hpp>
57 boost::geometry::strategy::within::geographic_winding<Geographic_point>
60 boost::geometry::strategy::intersection::geographic_segments<>
A Cartesian 2d geometry collection.
Definition: geometries_cs.h:375
A Cartesian 2d linestring.
Definition: geometries_cs.h:71
A Cartesian 2d multilinestring.
Definition: geometries_cs.h:602
A Cartesian 2d multipoint.
Definition: geometries_cs.h:501
A Cartesian 2d multipolygon.
Definition: geometries_cs.h:720
A Cartesian 2d point.
Definition: geometries_cs.h:47
A Cartesian 2d polygon.
Definition: geometries_cs.h:269
The base class of all functors that takes two geometry arguments.
Definition: functor.h:165
A geographic (ellipsoidal) 2d geometry collection.
Definition: geometries_cs.h:438
A geographic (ellipsoidal) 2d linestring.
Definition: geometries_cs.h:125
A geographic (ellipsoidal) 2d multilinestring.
Definition: geometries_cs.h:661
A geographic (ellipsoidal) 2d multipoint.
Definition: geometries_cs.h:552
A geographic (ellipsoidal) 2d multipolygon.
Definition: geometries_cs.h:774
A geographic (ellipsoidal) 2d point.
Definition: geometries_cs.h:58
A geographic (ellipsoidal) 2d polygon.
Definition: geometries_cs.h:322
Abstract superclass for all geometric objects.
Definition: geometries.h:100
Intersection functor that calls Boost.Geometry with the correct parameter types.
Definition: intersection_functor.h:50
double semi_major() const
Definition: intersection_functor.h:66
double m_semi_minor
Semi-minor axis of ellipsoid.
Definition: intersection_functor.h:55
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:58
double semi_minor() const
Definition: intersection_functor.h:65
std::unique_ptr< Geometry > operator()(const Geometry *g1, const Geometry *g2) const override
Definition: intersection_functor.cc:266
Intersection(double semi_major, double semi_minor)
Definition: intersection_functor.cc:258
std::unique_ptr< Geometry > eval(const Geometry *g1, const Geometry *g2) const
Definition: intersection_functor.cc:274
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:61
double m_semi_major
Semi-major axis of ellipsoid.
Definition: intersection_functor.h:53
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.