PostGIS 3.0.6dev-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 863 of file gserialized_gist_2d.c.

864{
865 bool retval;
866
867 POSTGIS_DEBUGF(4, "[GIST] leaf consistent, strategy [%d], count[%i]",
868 strategy, g2d_counter_leaf++);
869
870 switch (strategy)
871 {
872
873 /* Basic overlaps */
874 case RTOverlapStrategyNumber:
875 retval = (bool) box2df_overlaps(key, query);
876 break;
877 case RTSameStrategyNumber:
878 retval = (bool) box2df_equals(key, query);
879 break;
880 case RTContainsStrategyNumber:
881 case RTOldContainsStrategyNumber:
882 retval = (bool) box2df_contains(key, query);
883 break;
884 case RTContainedByStrategyNumber:
885 case RTOldContainedByStrategyNumber:
886 retval = (bool) box2df_within(key, query);
887 break;
888
889 /* To one side */
890 case RTAboveStrategyNumber:
891 retval = (bool) box2df_above(key, query);
892 break;
893 case RTBelowStrategyNumber:
894 retval = (bool) box2df_below(key, query);
895 break;
896 case RTRightStrategyNumber:
897 retval = (bool) box2df_right(key, query);
898 break;
899 case RTLeftStrategyNumber:
900 retval = (bool) box2df_left(key, query);
901 break;
902
903 /* Overlapping to one side */
904 case RTOverAboveStrategyNumber:
905 retval = (bool) box2df_overabove(key, query);
906 break;
907 case RTOverBelowStrategyNumber:
908 retval = (bool) box2df_overbelow(key, query);
909 break;
910 case RTOverRightStrategyNumber:
911 retval = (bool) box2df_overright(key, query);
912 break;
913 case RTOverLeftStrategyNumber:
914 retval = (bool) box2df_overleft(key, query);
915 break;
916
917 default:
918 retval = false;
919 }
920
921 return (retval);
922}
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: