PostGIS  3.7.0dev-r@@SVN_REVISION@@

◆ gserialized_gist_consistent_leaf_2d()

static bool gserialized_gist_consistent_leaf_2d ( BOX2DF *  key,
BOX2DF *  query,
StrategyNumber  strategy 
)
inlinestatic

Definition at line 945 of file gserialized_gist_2d.c.

946 {
947  bool retval;
948 
949  POSTGIS_DEBUGF(4, "[GIST] leaf consistent, strategy [%d], count[%i]",
950  strategy, g2d_counter_leaf++);
951 
952  switch (strategy)
953  {
954 
955  /* Basic overlaps */
956  case RTOverlapStrategyNumber:
957  retval = (bool) box2df_overlaps(key, query);
958  break;
959  case RTSameStrategyNumber:
960  retval = (bool) box2df_equals(key, query);
961  break;
962  case RTContainsStrategyNumber:
963  case RTOldContainsStrategyNumber:
964  retval = (bool) box2df_contains(key, query);
965  break;
966  case RTContainedByStrategyNumber:
967  case RTOldContainedByStrategyNumber:
968  retval = (bool) box2df_within(key, query);
969  break;
970 
971  /* To one side */
972  case RTAboveStrategyNumber:
973  retval = (bool) box2df_above(key, query);
974  break;
975  case RTBelowStrategyNumber:
976  retval = (bool) box2df_below(key, query);
977  break;
978  case RTRightStrategyNumber:
979  retval = (bool) box2df_right(key, query);
980  break;
981  case RTLeftStrategyNumber:
982  retval = (bool) box2df_left(key, query);
983  break;
984 
985  /* Overlapping to one side */
986  case RTOverAboveStrategyNumber:
987  retval = (bool) box2df_overabove(key, query);
988  break;
989  case RTOverBelowStrategyNumber:
990  retval = (bool) box2df_overbelow(key, query);
991  break;
992  case RTOverRightStrategyNumber:
993  retval = (bool) box2df_overright(key, query);
994  break;
995  case RTOverLeftStrategyNumber:
996  retval = (bool) box2df_overleft(key, query);
997  break;
998 
999  default:
1000  retval = false;
1001  }
1002 
1003  return (retval);
1004 }
bool box2df_left(const BOX2DF *a, const BOX2DF *b)
bool box2df_equals(const BOX2DF *a, const BOX2DF *b)
bool box2df_contains(const BOX2DF *a, const BOX2DF *b)
bool box2df_right(const BOX2DF *a, const BOX2DF *b)
bool box2df_overlaps(const BOX2DF *a, const BOX2DF *b)
static bool box2df_within(const BOX2DF *a, const BOX2DF *b)
bool box2df_above(const BOX2DF *a, const BOX2DF *b)
bool box2df_overbelow(const BOX2DF *a, const BOX2DF *b)
bool box2df_overright(const BOX2DF *a, const BOX2DF *b)
bool box2df_overabove(const BOX2DF *a, const BOX2DF *b)
bool box2df_below(const BOX2DF *a, const BOX2DF *b)
bool box2df_overleft(const BOX2DF *a, const BOX2DF *b)

References box2df_above(), box2df_below(), box2df_contains(), box2df_equals(), box2df_left(), box2df_overabove(), box2df_overbelow(), box2df_overlaps(), box2df_overleft(), box2df_overright(), box2df_right(), and box2df_within().

Referenced by gserialized_gist_consistent_2d().

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