|
uint32 | get_data_size () const override |
|
bool | init_from_wkt (Gis_read_stream *trs, String *wkb) override |
|
uint | init_from_wkb (THD *thd, const char *wkb, uint len, wkbByteOrder bo, String *res) override |
|
bool | get_data_as_wkt (String *txt, wkb_parser *wkb) const override |
|
bool | get_mbr (MBR *mbr, wkb_parser *wkb) const override |
|
int | num_geometries (uint32 *num) const override |
|
int | geometry_n (uint32 num, String *result) const override |
|
uint32 | feature_dimension () const override |
|
const Class_info * | get_class_info () const override |
|
bool | reverse_coordinates () override |
| Reverses the coordinates of a geometry. More...
|
|
bool | validate_coordinate_range (double srs_angular_unit, bool *long_out_of_range, bool *lat_out_of_range, double *out_of_range_value) override |
| Check that the coordinates of a geometry is within the valid range. More...
|
|
| Gis_multi_point (bool is_bg_adapter=true) |
|
| Gis_multi_point (const void *ptr, size_t nbytes, const Flags_t &flags, gis::srid_t srid) |
|
| Gis_multi_point (const self &mpts)=default |
|
iterator | begin () |
|
const_iterator | begin () const |
| Create a const iterator. More...
|
|
iterator | end () |
| Create an open boundary iterator. More...
|
|
const_iterator | end () const |
| Create an open boundary iterator. More...
|
|
size_type | size () const |
| Get container size. More...
|
|
bool | empty () const |
|
const_reference | back () const |
|
reference | back () |
|
const_reference | operator[] (index_type i) const |
|
reference | operator[] (index_type i) |
|
| Gis_wkb_vector (const void *ptr, size_t nbytes, const Geometry::Flags_t &flags, gis::srid_t srid, bool is_bg_adapter=true) |
| Constructor. More...
|
|
| Gis_wkb_vector (const self &v) |
|
| Gis_wkb_vector () |
|
| ~Gis_wkb_vector () override |
|
void | clear_wkb_data () |
|
self & | operator= (const self &rhs) |
| Deep assignment from vector 'rhs' to this object. More...
|
|
void | shallow_push (const Geometry *g) override SUPPRESS_UBSAN |
| The copy constructors of Geometry classes always do deep copy, but when pushing a Geometry object into its owner's geo.m_geo_vect, we want to do shallow copy because we want all elements in geo.m_geo_vect vector point into locations in the geo.m_ptr buffer. More...
|
|
Geo_vector * | get_geo_vect (bool create_if_null=false) |
|
Geo_vector * | get_geo_vect () const |
|
void | set_geo_vect (Geo_vector *ptr) |
|
void | donate_data () override |
|
void | set_ptr (void *ptr, size_t len) |
|
void | clear () |
| Update support We suppose updating a geometry can happen in the following ways: More...
|
|
size_t | get_nbytes_free () const |
| Get number of free bytes in the buffer held by m_ptr. More...
|
|
size_t | current_size () const |
| Returns payload number of bytes of the topmost geometry holding this geometry, i.e. More...
|
|
void | push_back (const Gis_point &val) |
|
void | resize (size_t sz) |
|
void | reassemble () |
| Because of resize, a geometry's components may reside not in one chunk, some may in the m_ptr's chunk; others have their own memory and only exist in m_geo_vect vector, not in ptr's chunk. More...
|
|
bool | reverse_coordinates () override |
| Reverses the coordinates of a geometry. More...
|
|
bool | validate_coordinate_range (double, bool *, bool *, double *) override |
| Check that the coordinates of a geometry is within the valid range. More...
|
|
virtual | ~Geometry () |
|
bool | get_mbr (MBR *mbr) |
|
virtual bool | dimension (uint32 *dim, wkb_parser *wkb) const |
|
bool | dimension (uint32 *dim) const |
|
wkbType | get_type () const |
|
enum_coordinate_reference_system | get_coordsys () const |
|
virtual int | get_x (double *) const |
|
virtual int | get_y (double *) const |
|
virtual int | geom_length (double *) const |
|
virtual int | is_closed (int *) const |
|
virtual int | num_interior_ring (uint32 *) const |
|
virtual int | num_points (uint32 *) const |
|
virtual int | copy_points (String *) const |
|
virtual int | start_point (String *) const |
|
virtual int | end_point (String *) const |
|
virtual int | exterior_ring (String *) const |
|
virtual int | point_n (uint32 num, String *result) const |
|
virtual int | interior_ring_n (uint32 num, String *result) const |
|
bool | as_wkt (String *wkt, wkb_parser *wkb) const |
|
bool | as_wkt (String *wkt) const |
|
bool | as_wkb (String *wkb, bool shallow_copy) const |
| Write this geometry's WKB byte string into specified buffer, the SRID is not written into the buffer. More...
|
|
bool | as_geometry (String *wkb, bool shallow_copy) const |
| Write this geometry's GEOMETRY byte string into specified buffer, the SRID will be written before the WKB string to form a GEOMETRY byte string. More...
|
|
void | set_data_ptr (const void *data, size_t data_len) |
|
void | set_data_ptr (const wkb_container *c) |
|
void * | get_data_ptr () const |
|
bool | envelope (String *result) const |
|
bool | envelope (MBR *mbr) const |
|
bool | is_polygon_ring () const |
|
bool | is_polygon_outer_ring () const |
|
bool | is_polygon_inner_ring () const |
|
bool | has_geom_header_space () const |
|
void | has_geom_header_space (bool b) |
|
bool | is_components_no_overlapped () const |
|
void | set_components_no_overlapped (bool b) |
|
void | set_props (uint16 flag) |
|
uint16 | get_props () const |
|
void | set_srid (gis::srid_t id) |
|
gis::srid_t | get_srid () const |
|
const void * | normalize_ring_order () |
| In place normalize polygons' rings, making outer ring CCW and inner rings CW by reversing the ring's points in the WKB buffer inplace. More...
|
|
| Geometry () |
|
| Geometry (const void *ptr, size_t len, const Flags_t &flags, gis::srid_t srid) |
| Constructor used as BG adapter or by default constructors of children classes. More...
|
|
| Geometry (const Geometry &geo) |
|
Geometry & | operator= (const Geometry &rhs) |
| Assignment operator for Geometry class, assignment operators of children classes calls this to do general assignment. More...
|
|
void * | get_ptr () const |
|
char * | get_cptr () const |
|
uchar * | get_ucptr () const |
|
Geometry * | get_owner () const |
|
void | set_owner (Geometry *o) |
|
void | set_byte_order (Geometry::wkbByteOrder bo) |
|
void | set_dimension (char dim) |
|
void | set_geotype (Geometry::wkbType gt) |
|
void | set_nbytes (size_t n) const |
|
void | set_ownmem (bool b) |
| Set whether this object has its own memory. More...
|
|
bool | get_ownmem () const |
| Returns whether this object has its own memory. More...
|
|
Geometry::wkbByteOrder | get_byte_order () const |
|
char | get_dimension () const |
|
Geometry::wkbType | get_geotype () const |
|
uint32 | get_ogc_geotype () const |
| Build an OGC standard type value from m_flags.zm and m_flags.geotype. More...
|
|
size_t | get_nbytes () const |
|
void | set_ptr (const void *ptr) |
|
bool | is_bg_adapter () const |
| Whether the Geometry object is created to be used by Boost Geometry or only by MySQL. More...
|
|
void | set_bg_adapter (bool b) const |
| Set whether this object is a BG adapter. More...
|
|
Flags_t | get_flags () const |
|
void | set_flags (const Flags_t &flags) |
|