كيف يمكنني الاستعلام عن الكيانات التي هي "قريب" مع الخاصية GeoPt في محرك جوجل التطبيق؟
-
06-07-2019 - |
سؤال
وكيف يجب أن إنشاء استعلام GQL وترجع أقرب الكيانات (من موقعي الحالي) على أساس الملكية GeoPt بهم؟ يجب أن مجرد خلق وظيفة "المسافة" التي تحسب لمجموعة من الكيانات مع مسافة قريبة بشكل معقول؟
وبفضل قبل الموعد المحدد!
المحلول
ومحرك التطبيقات لا يتعامل مع خصائص GeoPt خصيصا - أنه لا يوجد لديه بنيت في الفهرسة المكانية. وهناك عدد من المكتبات طرف ثالث أن إضافة دعم للفهرسة المكانية، ولكن. أفضل واحد (في رأيي) يجري geomodel .
نصائح أخرى
هل يمكن تخزين المواقع في محرك التطبيقات في Quadtree هيكل.
وفيما يلي وصف أحد كيف يتم ذلك: <لأ href = "http://labs.metacarta.com/blog/27.entry/geographic-queries-on-google-app-engine/" يختلط = " نوفولو noreferrer "> استعلامات الجغرافية على محرك جوجل التطبيق
وأعتقد أنني ذاهب إلى نوع من الإنجاز حفار، ولكن هنا هو:
وكنت أبحث عن حل لهذه المشكلة، وجاءت عبر مستندات الرسمية هذه جوجل: https://cloud.google.com/appengine/docs/java/search / query_strings # Java_Queries_on_geopoint_fields
وأعتقد حقا أن جوجل يجب أن حققنا بعض مزيد من الضجيج حول هذا الموضوع. أجد أنه غريب أن لديهم درسا في بيثون لفعل نفس الشيء ولكن لا يقول شيئا عن كيفية القيام بذلك لجاوا.
وgeohash تحديد نقاط قريبة جدا في تجزئات مختلفة حتى آخر أو ينبغي تفضيل الطبقة التالية. يمكنك جعل دائرة نصف قطرها، من الدرجة الثانية داخل / خارج اختبار شكل أو حتى أي شكل رياضي واختبار ما إذا كانت النقطة هي ضمن لدينا خارج الشكل.