From ca80f7a7971b1f6b04233c29faa53f3854c8c153 Mon Sep 17 00:00:00 2001 From: Kuroshini Date: Thu, 5 Dec 2019 13:14:27 +0300 Subject: [PATCH] possible fix center calculation --- apps/search_indexes/filters.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/apps/search_indexes/filters.py b/apps/search_indexes/filters.py index 644b47fd..cc2bb55a 100644 --- a/apps/search_indexes/filters.py +++ b/apps/search_indexes/filters.py @@ -13,24 +13,24 @@ class CustomGeoSpatialFilteringFilterBackend(GeoSpatialFilteringFilterBackend): @staticmethod def calculate_center(first, second): - if second[1] < 0 < first[1]: - reverse_first, reverse_second = 180 - abs(first[1]), 180 - abs(second[1]) + if second[0] < 0 < first[0]: + reverse_first, reverse_second = 180 - abs(first[0]), 180 - abs(second[0]) diff = (reverse_first + reverse_second) / 2 if reverse_first < reverse_second: - result_part = -180 + (180 + second[1] - diff) + result_part = -180 + (180 + second[0] - diff) else: - result_part = 180 - (180 - first[1] - diff) + result_part = 180 - (180 - first[0] - diff) - elif second[1] < 0 > first[1] or second[1] > 0 < first[1]: + elif second[0] < 0 > first[0] or second[0] > 0 < first[0]: reverse_first, reverse_second = 180 - abs(first[1]), 180 - abs(second[1]) result_part = ((reverse_first + reverse_second) / 2) * (-1 + (second[1] < 0) * 2) else: - result_part = (first[1] + second[1]) / 2 + result_part = (first[0] + second[0]) / 2 - return (first[0] + second[0]) / 2, result_part + return result_part, (first[1] + second[1]) / 2 def filter_queryset(self, request, queryset, view): ret = super().filter_queryset(request, queryset, view)