MySQL 8.4.2
Source Code Documentation
mbr_utils.cc File Reference

This file implements the mbr_disjoint function. More...

#include "sql/gis/mbr_utils.h"
#include <cmath>
#include <exception>
#include <boost/geometry.hpp>
#include "sql/dd/types/spatial_reference_system.h"
#include "sql/gis/box.h"
#include "sql/gis/box_traits.h"
#include "sql/gis/geometries.h"
#include "sql/gis/geometries_cs.h"
#include "sql/gis/geometries_traits.h"
#include "sql/gis/geometry_extraction.h"
#include "sql/item.h"
#include "template_utils.h"

Namespaces

namespace  gis
 

Functions

bool gis::mbrs_are_equal (Box const &mbr1, Box const &mbr2)
 Checks if two MBRs are equal. More...
 
bool gis::mbr_is_empty (Box const &mbr)
 Checks if an MBR is empty. More...
 
bool gis::mbr_is_point (Box const &mbr)
 Checks if an MBR represents a point. More...
 
bool gis::mbr_is_line (Box const &mbr)
 Checks if an MBR represents a line. More...
 
static void gis::merge_mbrs (const std::vector< Cartesian_box > &boxes, Cartesian_box *mbr)
 Merges a vector of Cartesian MBRs into one common MBR. More...
 
static void gis::merge_mbrs (const std::vector< Geographic_box > &boxes, Geographic_box *mbr)
 Merges a vector of geographic MBRs into one common MBR. More...
 
static void gis::cartesian_envelope (const Geometry *g, Cartesian_box *mbr)
 Computes the envelope of a Cartesian geometry. More...
 
static void gis::geographic_envelope (const Geometry *g, double semi_major, double semi_minor, Geographic_box *mbr)
 Computes the envelope of a geographic geometry. More...
 
void gis::box_envelope (const Geometry *g, const dd::Spatial_reference_system *srs, Box *mbr)
 Computes the envelope of a geometry. More...
 
bool gis::knn_query_to_mbr (THD *thd, Item *knn_query_item, double(&coordinates)[5])
 Parse the input geometry, computes and returns the MBR. More...
 

Detailed Description

This file implements the mbr_disjoint function.