Minetest  5.4.0
areastore.cpp File Reference
#include "util/areastore.h"
#include "util/serialize.h"
#include "util/container.h"
#include <spatialindex/SpatialIndex.h>
#include <spatialindex/RTree.h>
#include <spatialindex/Point.h>
+ Include dependency graph for areastore.cpp:

Macros

#define AST_SMALLER_EQ_AS(p, q)   (((p).X <= (q).X) && ((p).Y <= (q).Y) && ((p).Z <= (q).Z))
 
#define AST_OVERLAPS_IN_DIMENSION(amine, amaxe, b, d)    (!(((amine).d > (b)->maxedge.d) || ((amaxe).d < (b)->minedge.d)))
 
#define AST_CONTAINS_PT(a, p)
 
#define AST_CONTAINS_AREA(amine, amaxe, b)
 
#define AST_AREAS_OVERLAP(amine, amaxe, b)
 

Functions

static SpatialIndex::Region get_spatial_region (const v3s16 minedge, const v3s16 maxedge)
 
static SpatialIndex::Point get_spatial_point (const v3s16 pos)
 

Macro Definition Documentation

◆ AST_AREAS_OVERLAP

#define AST_AREAS_OVERLAP (   amine,
  amaxe,
 
)
Value:
(AST_OVERLAPS_IN_DIMENSION((amine), (amaxe), (b), X) && \
AST_OVERLAPS_IN_DIMENSION((amine), (amaxe), (b), Y) && \
AST_OVERLAPS_IN_DIMENSION((amine), (amaxe), (b), Z))
#define AST_OVERLAPS_IN_DIMENSION(amine, amaxe, b, d)
Definition: areastore.cpp:32

◆ AST_CONTAINS_AREA

#define AST_CONTAINS_AREA (   amine,
  amaxe,
 
)
Value:
(AST_SMALLER_EQ_AS((amine), (b)->minedge) \
&& AST_SMALLER_EQ_AS((b)->maxedge, (amaxe)))
#define AST_SMALLER_EQ_AS(p, q)
Definition: areastore.cpp:30

◆ AST_CONTAINS_PT

#define AST_CONTAINS_PT (   a,
  p 
)
Value:
(AST_SMALLER_EQ_AS((a)->minedge, (p)) && \
AST_SMALLER_EQ_AS((p), (a)->maxedge))
std::string p(std::string path)
Definition: test_filepath.cpp:59

◆ AST_OVERLAPS_IN_DIMENSION

#define AST_OVERLAPS_IN_DIMENSION (   amine,
  amaxe,
  b,
 
)     (!(((amine).d > (b)->maxedge.d) || ((amaxe).d < (b)->minedge.d)))

◆ AST_SMALLER_EQ_AS

#define AST_SMALLER_EQ_AS (   p,
 
)    (((p).X <= (q).X) && ((p).Y <= (q).Y) && ((p).Z <= (q).Z))

Function Documentation

◆ get_spatial_point()

static SpatialIndex::Point get_spatial_point ( const v3s16  pos)
inlinestatic

References p().

Referenced by SpatialAreaStore::getAreasForPosImpl().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_spatial_region()

static SpatialIndex::Region get_spatial_region ( const v3s16  minedge,
const v3s16  maxedge 
)
inlinestatic

Referenced by SpatialAreaStore::getAreasInArea(), SpatialAreaStore::insertArea(), and SpatialAreaStore::removeArea().

+ Here is the caller graph for this function: