MySQL 9.1.0
Source Code Documentation
gis::SymDifference Class Reference

SymDifference functor that calls Boost.Geometry with the correct parameter types. More...

#include <symdifference_functor.h>

Inheritance diagram for gis::SymDifference:
[legend]

Public Member Functions

 SymDifference (double semi_major, double semi_minor)
 
double semi_minor () const
 
double semi_major () const
 
auto get_pl_pa_strategy () const
 
boost::geometry::strategy::intersection::geographic_segments get_ll_la_aa_strategy () const
 
std::unique_ptr< Geometryoperator() (const Geometry *g1, const Geometry *g2) const override
 
std::unique_ptr< Geometryeval (const Geometry *g1, const Geometry *g2) const
 
std::unique_ptr< Cartesian_multipointeval (const Cartesian_point *g1, const Cartesian_point *g2) const
 
std::unique_ptr< Cartesian_geometrycollectioneval (const Cartesian_point *g1, const Cartesian_linestring *g2) const
 
std::unique_ptr< Cartesian_geometrycollectioneval (const Cartesian_point *g1, const Cartesian_polygon *g2) const
 
std::unique_ptr< Cartesian_multipointeval (const Cartesian_point *g1, const Cartesian_multipoint *g2) const
 
std::unique_ptr< Cartesian_geometrycollectioneval (const Cartesian_point *g1, const Cartesian_multilinestring *g2) const
 
std::unique_ptr< Cartesian_geometrycollectioneval (const Cartesian_point *g1, const Cartesian_multipolygon *g2) const
 
std::unique_ptr< Geometryeval (const Cartesian_point *g1, const Cartesian_geometrycollection *g2) const
 
std::unique_ptr< Geometryeval (const Cartesian_linestring *g1, const Cartesian_point *g2) const
 
std::unique_ptr< Cartesian_multilinestringeval (const Cartesian_linestring *g1, const Cartesian_linestring *g2) const
 
std::unique_ptr< Cartesian_geometrycollectioneval (const Cartesian_linestring *g1, const Cartesian_polygon *g2) const
 
std::unique_ptr< Cartesian_geometrycollectioneval (const Cartesian_linestring *g1, const Cartesian_multipoint *g2) const
 
std::unique_ptr< Cartesian_multilinestringeval (const Cartesian_linestring *g1, const Cartesian_multilinestring *g2) const
 
std::unique_ptr< Cartesian_geometrycollectioneval (const Cartesian_linestring *g1, const Cartesian_multipolygon *g2) const
 
std::unique_ptr< Geometryeval (const Cartesian_linestring *g1, const Cartesian_geometrycollection *g2) const
 
std::unique_ptr< Geometryeval (const Cartesian_polygon *g1, const Cartesian_point *g2) const
 
std::unique_ptr< Geometryeval (const Cartesian_polygon *g1, const Cartesian_linestring *g2) const
 
std::unique_ptr< Cartesian_multipolygoneval (const Cartesian_polygon *g1, const Cartesian_polygon *g2) const
 
std::unique_ptr< Cartesian_geometrycollectioneval (const Cartesian_polygon *g1, const Cartesian_multipoint *g2) const
 
std::unique_ptr< Cartesian_geometrycollectioneval (const Cartesian_polygon *g1, const Cartesian_multilinestring *g2) const
 
std::unique_ptr< Cartesian_multipolygoneval (const Cartesian_polygon *g1, const Cartesian_multipolygon *g2) const
 
std::unique_ptr< Geometryeval (const Cartesian_polygon *g1, const Cartesian_geometrycollection *g2) const
 
std::unique_ptr< Geometryeval (const Cartesian_geometrycollection *g1, const Cartesian_geometrycollection *g2) const
 
std::unique_ptr< Geometryeval (const Cartesian_geometrycollection *g1, const Geometry *g2) const
 
std::unique_ptr< Geometryeval (const Cartesian_multipoint *g1, const Cartesian_point *g2) const
 
std::unique_ptr< Geometryeval (const Cartesian_multipoint *g1, const Cartesian_linestring *g2) const
 
std::unique_ptr< Geometryeval (const Cartesian_multipoint *g1, const Cartesian_polygon *g2) const
 
std::unique_ptr< Cartesian_multipointeval (const Cartesian_multipoint *g1, const Cartesian_multipoint *g2) const
 
std::unique_ptr< Cartesian_geometrycollectioneval (const Cartesian_multipoint *g1, const Cartesian_multilinestring *g2) const
 
std::unique_ptr< Cartesian_geometrycollectioneval (const Cartesian_multipoint *g1, const Cartesian_multipolygon *g2) const
 
std::unique_ptr< Geometryeval (const Cartesian_multipoint *g1, const Cartesian_geometrycollection *g2) const
 
std::unique_ptr< Geometryeval (const Cartesian_multilinestring *g1, const Cartesian_point *g2) const
 
std::unique_ptr< Geometryeval (const Cartesian_multilinestring *g1, const Cartesian_linestring *g2) const
 
std::unique_ptr< Geometryeval (const Cartesian_multilinestring *g1, const Cartesian_polygon *g2) const
 
std::unique_ptr< Geometryeval (const Cartesian_multilinestring *g1, const Cartesian_multipoint *g2) const
 
std::unique_ptr< Cartesian_multilinestringeval (const Cartesian_multilinestring *g1, const Cartesian_multilinestring *g2) const
 
std::unique_ptr< Cartesian_geometrycollectioneval (const Cartesian_multilinestring *g1, const Cartesian_multipolygon *g2) const
 
std::unique_ptr< Geometryeval (const Cartesian_multilinestring *g1, const Cartesian_geometrycollection *g2) const
 
std::unique_ptr< Geometryeval (const Cartesian_multipolygon *g1, const Cartesian_point *g2) const
 
std::unique_ptr< Geometryeval (const Cartesian_multipolygon *g1, const Cartesian_linestring *g2) const
 
std::unique_ptr< Geometryeval (const Cartesian_multipolygon *g1, const Cartesian_polygon *g2) const
 
std::unique_ptr< Geometryeval (const Cartesian_multipolygon *g1, const Cartesian_multipoint *g2) const
 
std::unique_ptr< Geometryeval (const Cartesian_multipolygon *g1, const Cartesian_multilinestring *g2) const
 
std::unique_ptr< Cartesian_multipolygoneval (const Cartesian_multipolygon *g1, const Cartesian_multipolygon *g2) const
 
std::unique_ptr< Geometryeval (const Cartesian_multipolygon *g1, const Cartesian_geometrycollection *g2) const
 
std::unique_ptr< Geographic_multipointeval (const Geographic_point *g1, const Geographic_point *g2) const
 
std::unique_ptr< Geographic_geometrycollectioneval (const Geographic_point *g1, const Geographic_linestring *g2) const
 
std::unique_ptr< Geographic_geometrycollectioneval (const Geographic_point *g1, const Geographic_polygon *g2) const
 
std::unique_ptr< Geographic_multipointeval (const Geographic_point *g1, const Geographic_multipoint *g2) const
 
std::unique_ptr< Geographic_geometrycollectioneval (const Geographic_point *g1, const Geographic_multilinestring *g2) const
 
std::unique_ptr< Geographic_geometrycollectioneval (const Geographic_point *g1, const Geographic_multipolygon *g2) const
 
std::unique_ptr< Geometryeval (const Geographic_point *g1, const Geographic_geometrycollection *g2) const
 
std::unique_ptr< Geometryeval (const Geographic_linestring *g1, const Geographic_point *g2) const
 
std::unique_ptr< Geographic_multilinestringeval (const Geographic_linestring *g1, const Geographic_linestring *g2) const
 
std::unique_ptr< Geographic_geometrycollectioneval (const Geographic_linestring *g1, const Geographic_polygon *g2) const
 
std::unique_ptr< Geographic_geometrycollectioneval (const Geographic_linestring *g1, const Geographic_multipoint *g2) const
 
std::unique_ptr< Geographic_multilinestringeval (const Geographic_linestring *g1, const Geographic_multilinestring *g2) const
 
std::unique_ptr< Geographic_geometrycollectioneval (const Geographic_linestring *g1, const Geographic_multipolygon *g2) const
 
std::unique_ptr< Geometryeval (const Geographic_linestring *g1, const Geographic_geometrycollection *g2) const
 
std::unique_ptr< Geometryeval (const Geographic_polygon *g1, const Geographic_point *g2) const
 
std::unique_ptr< Geometryeval (const Geographic_polygon *g1, const Geographic_linestring *g2) const
 
std::unique_ptr< Geographic_multipolygoneval (const Geographic_polygon *g1, const Geographic_polygon *g2) const
 
std::unique_ptr< Geographic_geometrycollectioneval (const Geographic_polygon *g1, const Geographic_multipoint *g2) const
 
std::unique_ptr< Geographic_geometrycollectioneval (const Geographic_polygon *g1, const Geographic_multilinestring *g2) const
 
std::unique_ptr< Geographic_multipolygoneval (const Geographic_polygon *g1, const Geographic_multipolygon *g2) const
 
std::unique_ptr< Geometryeval (const Geographic_polygon *g1, const Geographic_geometrycollection *g2) const
 
std::unique_ptr< Geometryeval (const Geographic_geometrycollection *g1, const Geographic_geometrycollection *g2) const
 
std::unique_ptr< Geometryeval (const Geographic_geometrycollection *g1, const Geometry *g2) const
 
std::unique_ptr< Geometryeval (const Geographic_multipoint *g1, const Geographic_point *g2) const
 
std::unique_ptr< Geometryeval (const Geographic_multipoint *g1, const Geographic_linestring *g2) const
 
std::unique_ptr< Geometryeval (const Geographic_multipoint *g1, const Geographic_polygon *g2) const
 
std::unique_ptr< Geographic_multipointeval (const Geographic_multipoint *g1, const Geographic_multipoint *g2) const
 
std::unique_ptr< Geographic_geometrycollectioneval (const Geographic_multipoint *g1, const Geographic_multilinestring *g2) const
 
std::unique_ptr< Geographic_geometrycollectioneval (const Geographic_multipoint *g1, const Geographic_multipolygon *g2) const
 
std::unique_ptr< Geometryeval (const Geographic_multipoint *g1, const Geographic_geometrycollection *g2) const
 
std::unique_ptr< Geometryeval (const Geographic_multilinestring *g1, const Geographic_point *g2) const
 
std::unique_ptr< Geometryeval (const Geographic_multilinestring *g1, const Geographic_linestring *g2) const
 
std::unique_ptr< Geometryeval (const Geographic_multilinestring *g1, const Geographic_polygon *g2) const
 
std::unique_ptr< Geometryeval (const Geographic_multilinestring *g1, const Geographic_multipoint *g2) const
 
std::unique_ptr< Geographic_multilinestringeval (const Geographic_multilinestring *g1, const Geographic_multilinestring *g2) const
 
std::unique_ptr< Geographic_geometrycollectioneval (const Geographic_multilinestring *g1, const Geographic_multipolygon *g2) const
 
std::unique_ptr< Geometryeval (const Geographic_multilinestring *g1, const Geographic_geometrycollection *g2) const
 
std::unique_ptr< Geometryeval (const Geographic_multipolygon *g1, const Geographic_point *g2) const
 
std::unique_ptr< Geometryeval (const Geographic_multipolygon *g1, const Geographic_linestring *g2) const
 
std::unique_ptr< Geometryeval (const Geographic_multipolygon *g1, const Geographic_polygon *g2) const
 
std::unique_ptr< Geometryeval (const Geographic_multipolygon *g1, const Geographic_multipoint *g2) const
 
std::unique_ptr< Geometryeval (const Geographic_multipolygon *g1, const Geographic_multilinestring *g2) const
 
std::unique_ptr< Geographic_multipolygoneval (const Geographic_multipolygon *g1, const Geographic_multipolygon *g2) const
 
std::unique_ptr< Geometryeval (const Geographic_multipolygon *g1, const Geographic_geometrycollection *g2) const
 
- Public Member Functions inherited from gis::Functor< std::unique_ptr< Geometry > >
virtual ~Functor ()=default
 

Private Attributes

double m_semi_major
 Semi-major axis of ellipsoid. More...
 
double m_semi_minor
 Semi-minor axis of ellipsoid. More...
 
boost::geometry::strategy::within::geographic_winding m_geographic_pl_pa_strategy
 Strategy used for P/L and P/A. More...
 
boost::geometry::strategy::intersection::geographic_segments m_geographic_ll_la_aa_strategy
 Strategy used for L/L, L/A and A/A. More...
 

Additional Inherited Members

- Static Protected Member Functions inherited from gis::Functor< std::unique_ptr< Geometry > >
static std::unique_ptr< Geometryapply (F &f, const Geometry *g1, const Geometry *g2)
 

Detailed Description

SymDifference functor that calls Boost.Geometry with the correct parameter types.

The functor throws exceptions and is therefore only intended used to implement symdifference or other geographic functions. It should not be used directly by other MySQL code.

Constructor & Destructor Documentation

◆ SymDifference()

gis::SymDifference::SymDifference ( double  semi_major,
double  semi_minor 
)

Member Function Documentation

◆ eval() [1/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Cartesian_geometrycollection g1,
const Cartesian_geometrycollection g2 
) const

◆ eval() [2/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Cartesian_geometrycollection g1,
const Geometry g2 
) const

◆ eval() [3/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Cartesian_linestring g1,
const Cartesian_geometrycollection g2 
) const

◆ eval() [4/89]

std::unique_ptr< Cartesian_multilinestring > gis::SymDifference::eval ( const Cartesian_linestring g1,
const Cartesian_linestring g2 
) const

◆ eval() [5/89]

std::unique_ptr< Cartesian_multilinestring > gis::SymDifference::eval ( const Cartesian_linestring g1,
const Cartesian_multilinestring g2 
) const

◆ eval() [6/89]

std::unique_ptr< Cartesian_geometrycollection > gis::SymDifference::eval ( const Cartesian_linestring g1,
const Cartesian_multipoint g2 
) const

◆ eval() [7/89]

std::unique_ptr< Cartesian_geometrycollection > gis::SymDifference::eval ( const Cartesian_linestring g1,
const Cartesian_multipolygon g2 
) const

◆ eval() [8/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Cartesian_linestring g1,
const Cartesian_point g2 
) const

◆ eval() [9/89]

std::unique_ptr< Cartesian_geometrycollection > gis::SymDifference::eval ( const Cartesian_linestring g1,
const Cartesian_polygon g2 
) const

◆ eval() [10/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Cartesian_multilinestring g1,
const Cartesian_geometrycollection g2 
) const

◆ eval() [11/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Cartesian_multilinestring g1,
const Cartesian_linestring g2 
) const

◆ eval() [12/89]

std::unique_ptr< Cartesian_multilinestring > gis::SymDifference::eval ( const Cartesian_multilinestring g1,
const Cartesian_multilinestring g2 
) const

◆ eval() [13/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Cartesian_multilinestring g1,
const Cartesian_multipoint g2 
) const

◆ eval() [14/89]

std::unique_ptr< Cartesian_geometrycollection > gis::SymDifference::eval ( const Cartesian_multilinestring g1,
const Cartesian_multipolygon g2 
) const

◆ eval() [15/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Cartesian_multilinestring g1,
const Cartesian_point g2 
) const

◆ eval() [16/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Cartesian_multilinestring g1,
const Cartesian_polygon g2 
) const

◆ eval() [17/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Cartesian_multipoint g1,
const Cartesian_geometrycollection g2 
) const

◆ eval() [18/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Cartesian_multipoint g1,
const Cartesian_linestring g2 
) const

◆ eval() [19/89]

std::unique_ptr< Cartesian_geometrycollection > gis::SymDifference::eval ( const Cartesian_multipoint g1,
const Cartesian_multilinestring g2 
) const

◆ eval() [20/89]

std::unique_ptr< Cartesian_multipoint > gis::SymDifference::eval ( const Cartesian_multipoint g1,
const Cartesian_multipoint g2 
) const

◆ eval() [21/89]

std::unique_ptr< Cartesian_geometrycollection > gis::SymDifference::eval ( const Cartesian_multipoint g1,
const Cartesian_multipolygon g2 
) const

◆ eval() [22/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Cartesian_multipoint g1,
const Cartesian_point g2 
) const

◆ eval() [23/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Cartesian_multipoint g1,
const Cartesian_polygon g2 
) const

◆ eval() [24/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Cartesian_multipolygon g1,
const Cartesian_geometrycollection g2 
) const

◆ eval() [25/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Cartesian_multipolygon g1,
const Cartesian_linestring g2 
) const

◆ eval() [26/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Cartesian_multipolygon g1,
const Cartesian_multilinestring g2 
) const

◆ eval() [27/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Cartesian_multipolygon g1,
const Cartesian_multipoint g2 
) const

◆ eval() [28/89]

std::unique_ptr< Cartesian_multipolygon > gis::SymDifference::eval ( const Cartesian_multipolygon g1,
const Cartesian_multipolygon g2 
) const

◆ eval() [29/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Cartesian_multipolygon g1,
const Cartesian_point g2 
) const

◆ eval() [30/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Cartesian_multipolygon g1,
const Cartesian_polygon g2 
) const

◆ eval() [31/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Cartesian_point g1,
const Cartesian_geometrycollection g2 
) const

◆ eval() [32/89]

std::unique_ptr< Cartesian_geometrycollection > gis::SymDifference::eval ( const Cartesian_point g1,
const Cartesian_linestring g2 
) const

◆ eval() [33/89]

std::unique_ptr< Cartesian_geometrycollection > gis::SymDifference::eval ( const Cartesian_point g1,
const Cartesian_multilinestring g2 
) const

◆ eval() [34/89]

std::unique_ptr< Cartesian_multipoint > gis::SymDifference::eval ( const Cartesian_point g1,
const Cartesian_multipoint g2 
) const

◆ eval() [35/89]

std::unique_ptr< Cartesian_geometrycollection > gis::SymDifference::eval ( const Cartesian_point g1,
const Cartesian_multipolygon g2 
) const

◆ eval() [36/89]

std::unique_ptr< Cartesian_multipoint > gis::SymDifference::eval ( const Cartesian_point g1,
const Cartesian_point g2 
) const

◆ eval() [37/89]

std::unique_ptr< Cartesian_geometrycollection > gis::SymDifference::eval ( const Cartesian_point g1,
const Cartesian_polygon g2 
) const

◆ eval() [38/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Cartesian_polygon g1,
const Cartesian_geometrycollection g2 
) const

◆ eval() [39/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Cartesian_polygon g1,
const Cartesian_linestring g2 
) const

◆ eval() [40/89]

std::unique_ptr< Cartesian_geometrycollection > gis::SymDifference::eval ( const Cartesian_polygon g1,
const Cartesian_multilinestring g2 
) const

◆ eval() [41/89]

std::unique_ptr< Cartesian_geometrycollection > gis::SymDifference::eval ( const Cartesian_polygon g1,
const Cartesian_multipoint g2 
) const

◆ eval() [42/89]

std::unique_ptr< Cartesian_multipolygon > gis::SymDifference::eval ( const Cartesian_polygon g1,
const Cartesian_multipolygon g2 
) const

◆ eval() [43/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Cartesian_polygon g1,
const Cartesian_point g2 
) const

◆ eval() [44/89]

std::unique_ptr< Cartesian_multipolygon > gis::SymDifference::eval ( const Cartesian_polygon g1,
const Cartesian_polygon g2 
) const

◆ eval() [45/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Geographic_geometrycollection g1,
const Geographic_geometrycollection g2 
) const

◆ eval() [46/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Geographic_geometrycollection g1,
const Geometry g2 
) const

◆ eval() [47/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Geographic_linestring g1,
const Geographic_geometrycollection g2 
) const

◆ eval() [48/89]

std::unique_ptr< Geographic_multilinestring > gis::SymDifference::eval ( const Geographic_linestring g1,
const Geographic_linestring g2 
) const

◆ eval() [49/89]

std::unique_ptr< Geographic_multilinestring > gis::SymDifference::eval ( const Geographic_linestring g1,
const Geographic_multilinestring g2 
) const

◆ eval() [50/89]

std::unique_ptr< Geographic_geometrycollection > gis::SymDifference::eval ( const Geographic_linestring g1,
const Geographic_multipoint g2 
) const

◆ eval() [51/89]

std::unique_ptr< Geographic_geometrycollection > gis::SymDifference::eval ( const Geographic_linestring g1,
const Geographic_multipolygon g2 
) const

◆ eval() [52/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Geographic_linestring g1,
const Geographic_point g2 
) const

◆ eval() [53/89]

std::unique_ptr< Geographic_geometrycollection > gis::SymDifference::eval ( const Geographic_linestring g1,
const Geographic_polygon g2 
) const

◆ eval() [54/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Geographic_multilinestring g1,
const Geographic_geometrycollection g2 
) const

◆ eval() [55/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Geographic_multilinestring g1,
const Geographic_linestring g2 
) const

◆ eval() [56/89]

std::unique_ptr< Geographic_multilinestring > gis::SymDifference::eval ( const Geographic_multilinestring g1,
const Geographic_multilinestring g2 
) const

◆ eval() [57/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Geographic_multilinestring g1,
const Geographic_multipoint g2 
) const

◆ eval() [58/89]

std::unique_ptr< Geographic_geometrycollection > gis::SymDifference::eval ( const Geographic_multilinestring g1,
const Geographic_multipolygon g2 
) const

◆ eval() [59/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Geographic_multilinestring g1,
const Geographic_point g2 
) const

◆ eval() [60/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Geographic_multilinestring g1,
const Geographic_polygon g2 
) const

◆ eval() [61/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Geographic_multipoint g1,
const Geographic_geometrycollection g2 
) const

◆ eval() [62/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Geographic_multipoint g1,
const Geographic_linestring g2 
) const

◆ eval() [63/89]

std::unique_ptr< Geographic_geometrycollection > gis::SymDifference::eval ( const Geographic_multipoint g1,
const Geographic_multilinestring g2 
) const

◆ eval() [64/89]

std::unique_ptr< Geographic_multipoint > gis::SymDifference::eval ( const Geographic_multipoint g1,
const Geographic_multipoint g2 
) const

◆ eval() [65/89]

std::unique_ptr< Geographic_geometrycollection > gis::SymDifference::eval ( const Geographic_multipoint g1,
const Geographic_multipolygon g2 
) const

◆ eval() [66/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Geographic_multipoint g1,
const Geographic_point g2 
) const

◆ eval() [67/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Geographic_multipoint g1,
const Geographic_polygon g2 
) const

◆ eval() [68/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Geographic_multipolygon g1,
const Geographic_geometrycollection g2 
) const

◆ eval() [69/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Geographic_multipolygon g1,
const Geographic_linestring g2 
) const

◆ eval() [70/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Geographic_multipolygon g1,
const Geographic_multilinestring g2 
) const

◆ eval() [71/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Geographic_multipolygon g1,
const Geographic_multipoint g2 
) const

◆ eval() [72/89]

std::unique_ptr< Geographic_multipolygon > gis::SymDifference::eval ( const Geographic_multipolygon g1,
const Geographic_multipolygon g2 
) const

◆ eval() [73/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Geographic_multipolygon g1,
const Geographic_point g2 
) const

◆ eval() [74/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Geographic_multipolygon g1,
const Geographic_polygon g2 
) const

◆ eval() [75/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Geographic_point g1,
const Geographic_geometrycollection g2 
) const

◆ eval() [76/89]

std::unique_ptr< Geographic_geometrycollection > gis::SymDifference::eval ( const Geographic_point g1,
const Geographic_linestring g2 
) const

◆ eval() [77/89]

std::unique_ptr< Geographic_geometrycollection > gis::SymDifference::eval ( const Geographic_point g1,
const Geographic_multilinestring g2 
) const

◆ eval() [78/89]

std::unique_ptr< Geographic_multipoint > gis::SymDifference::eval ( const Geographic_point g1,
const Geographic_multipoint g2 
) const

◆ eval() [79/89]

std::unique_ptr< Geographic_geometrycollection > gis::SymDifference::eval ( const Geographic_point g1,
const Geographic_multipolygon g2 
) const

◆ eval() [80/89]

std::unique_ptr< Geographic_multipoint > gis::SymDifference::eval ( const Geographic_point g1,
const Geographic_point g2 
) const

◆ eval() [81/89]

std::unique_ptr< Geographic_geometrycollection > gis::SymDifference::eval ( const Geographic_point g1,
const Geographic_polygon g2 
) const

◆ eval() [82/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Geographic_polygon g1,
const Geographic_geometrycollection g2 
) const

◆ eval() [83/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Geographic_polygon g1,
const Geographic_linestring g2 
) const

◆ eval() [84/89]

std::unique_ptr< Geographic_geometrycollection > gis::SymDifference::eval ( const Geographic_polygon g1,
const Geographic_multilinestring g2 
) const

◆ eval() [85/89]

std::unique_ptr< Geographic_geometrycollection > gis::SymDifference::eval ( const Geographic_polygon g1,
const Geographic_multipoint g2 
) const

◆ eval() [86/89]

std::unique_ptr< Geographic_multipolygon > gis::SymDifference::eval ( const Geographic_polygon g1,
const Geographic_multipolygon g2 
) const

◆ eval() [87/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Geographic_polygon g1,
const Geographic_point g2 
) const

◆ eval() [88/89]

std::unique_ptr< Geographic_multipolygon > gis::SymDifference::eval ( const Geographic_polygon g1,
const Geographic_polygon g2 
) const

◆ eval() [89/89]

std::unique_ptr< Geometry > gis::SymDifference::eval ( const Geometry g1,
const Geometry g2 
) const

◆ get_ll_la_aa_strategy()

boost::geometry::strategy::intersection::geographic_segments gis::SymDifference::get_ll_la_aa_strategy ( ) const
inline

◆ get_pl_pa_strategy()

auto gis::SymDifference::get_pl_pa_strategy ( ) const
inline

◆ operator()()

std::unique_ptr< Geometry > gis::SymDifference::operator() ( const Geometry g1,
const Geometry g2 
) const
overridevirtual

◆ semi_major()

double gis::SymDifference::semi_major ( ) const
inline

◆ semi_minor()

double gis::SymDifference::semi_minor ( ) const
inline

Member Data Documentation

◆ m_geographic_ll_la_aa_strategy

boost::geometry::strategy::intersection::geographic_segments gis::SymDifference::m_geographic_ll_la_aa_strategy
private

Strategy used for L/L, L/A and A/A.

◆ m_geographic_pl_pa_strategy

boost::geometry::strategy::within::geographic_winding gis::SymDifference::m_geographic_pl_pa_strategy
private

Strategy used for P/L and P/A.

◆ m_semi_major

double gis::SymDifference::m_semi_major
private

Semi-major axis of ellipsoid.

◆ m_semi_minor

double gis::SymDifference::m_semi_minor
private

Semi-minor axis of ellipsoid.


The documentation for this class was generated from the following files: