PostGIS 3.7.0dev-r@@SVN_REVISION@@
Loading...
Searching...
No Matches

◆ 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: