أكثر

الترميز الجغرافي في وضع عدم الاتصال والترميز الجغرافي العكسي لنظام Android


أقوم بتطوير تطبيق android لا يمكنه استخدام الإنترنت ويحتاج إلى التعامل مع الخرائط وتحديد المواقع.

يُعتبر تنزيل بيانات OpenStreetMaps حلاً جيدًا للوصول إلى معلومات الخريطة في وضع عدم الاتصال. ومع ذلك ، أحتاج إلى بعض الخوارزميات الأساسية التي تعمل محليًا على الهاتف المحمول ، مثل الترميز الجغرافي والترميز الجغرافي العكسي.

هل يعرف أي شخص مكتبة للأندرويد يمكنها استهلاك بيانات خرائط الشوارع المفتوحة دون اتصال بالإنترنت والتشفير الجغرافي والترميز الجغرافي العكسي على الهاتف المحمول؟


يدعم ArcGIS Runtime SDK for Android الترميز الجغرافي دون اتصال والتكويد الجغرافي العكسي والتوجيه. واجهة برمجة التطبيقات هي نفسها للاستخدام عبر الإنترنت وغير متصل ، ما عليك سوى تهيئة المهمة ، على سبيل المثالالطريق، للطريق المحلي أو الطريق عبر الإنترنت. يتم استخدام فئة مجردة Locator لإنشاء مكودات جغرافية غير متصلة / متصلة بالإنترنت.

فيما يلي نموذج لشفرة مصدر SDK للتحقيق فيها


AFAIK لا يوجد (حاليًا) مثل هذا lib https://wiki.openstreetmap.org/wiki/Frameworks


Android: الترميز الجغرافي العكسي - getFromLocation

أحاول الحصول على عنوان بناءً على الطول / العرض. يبدو أن شيئًا كهذا يجب أن يعمل؟

المشكلة هي أنني ما زلت أحصل على: طريقة المكود الجغرافي (اللغة) غير معرَّفة للنوع Savemaplocation

أي مساعدة ستكون مفيدة. شكرا لك.

شكرًا ، لقد جربت السياق ، حدد اللغة أولاً ، وقد فشل ذلك وكنت أنظر إلى بعض المنشئين الآخرين (لقد رأيت واحدًا قد ذكر اللغة فقط). يغض النظر،

لم ينجح الأمر ، لأنني ما زلت أتلقى: طريقة المكود الجغرافي (السياق ، اللغة المحلية) غير معرّف للنوع Savemaplocation

لدي: استيراد android.location.Geocoder


المكود الجغرافي هو حل تكويد جغرافي كامل لروبي. باستخدام Rails ، فإنه يضيف الترميز الجغرافي (حسب الشارع أو عنوان IP) ، والترميز الجغرافي العكسي (العثور على عنوان الشارع بناءً على إحداثيات معينة) ، واستعلامات المسافة. الأمر بسيط مثل استدعاء الرمز الجغرافي على العناصر الخاصة بك ، ثم استخدام نطاق مثل Venue.near (& quotBillings، MT & quot). يرجى ملاحظة أن هذا الملف التمهيدي مخصص لـ HEAD الحالي وقد يوثق ميزات غير موجودة في أحدث إصدار من الأحجار الكريمة. لهذا السبب ، قد ترغب بدلاً من ذلك في عرض الملف التمهيدي للإصدار الخاص بك.

مستوحى من قائمة الأشياء الرائعة. تسلط هذه المواصفات الضوء على الميزات (SQL ، وواجهات برمجة التطبيقات للتخزين المؤقت للتطبيقات غير المتصلة بالإنترنت ، فضلاً عن الأحداث المتصلة / غير المتصلة ، والحالة ، و localStorage API) من HTML5 وتوفر دروسًا موجزة حول كيفية استخدام هذه الميزات لإنشاء تطبيقات ويب تعمل دون اتصال.


الترميز الجغرافي غير المتصل والترميز الجغرافي العكسي لنظام Android - أنظمة المعلومات الجغرافية

أوسموندا هي مكتبة Android تقرأ بيانات خرائط الشوارع المفتوحة (تنسيقات osm.pbf و osm.bz2 و osm.gz ، وهما بشكل أساسي xml) ، ومكتوبة إلى SQLite ، ويمكن استخدامها للترميز الجغرافي دون اتصال بالإنترنت ، وما إلى ذلك.

أوسموندا هو الاسم العلمي لجنس من النباتات ، إنه نوع من السرخس ، تم اختياره لأنه يبدأ بـ OSM.

  • حاول استخدام قاعدة بيانات NOSQL ، لأن بيانات OSM تستخدم الكثير من أزواج القيمة الرئيسية ، لذلك قد تكون قاعدة بيانات NOSQL خيارًا أفضل.
  • تغيير طريقة الحصول على التقسيمات الإدارية في العنوان ().

أضف مستودع JitPack إلى ملف build.gradle لمشروعك:

إنشاء قارئ التناضح.

قم بتعيين بيانات علاقات وطرق الاستيراد ، إذا لم تكن بحاجة إليها ، فيرجى عدم كتابة الكود التالي. انظر التخزين

قم بتعيين تكرار التنفيذ ، وإلا فسيتم استخدام الإعداد الافتراضي (5000). انظر الالتزام

قم بتعيين ملف بيانات OSM أو Uri (android.net.Uri) ، واسم ملف قاعدة البيانات والسياق ، وابدأ القراءة.

استخدم reader.read للحصول على عدد سجلات OSM التي تمت قراءتها ، واستخدم Reader.insert للحصول على عدد سجلات OSM المدرجة في قاعدة البيانات. (لسبب الاختلاف بينهما يرجى الرجوع الى الالتزام بالترتيب)

استخدم Reader.progress للحصول على التقدم المقدر الحالي كنسبة مئوية.

احصل على قائمة بقواعد البيانات الموجودة

استخدم Osmunda (needContext ()). GetDatabaseList () للحصول على قائمة قواعد البيانات المستوردة.

استخدم Osmunda (تتطلبContext ()). GetDatabaseByName (databaseName) للحصول على قاعدة بيانات معينة مبنية على الاسم.

استخدم وظيفة البحث لفئة المكود الجغرافي للبحث. يمكنك تحديد LIMIT و OFFSET في قاعدة البيانات عند البحث ، ويمكنك أيضًا تحديد نطاق خطوط الطول والعرض.

على سبيل المثال ، البحث عن "Central China Normal University" ضمن نطاق Wuhan ، نتيجة LIMIT 10 ، بدون تعيين OFFSET:

إذا لم تقم بتعيين النطاق ، فسيتم البحث في جميع السجلات الموجودة في قاعدة البيانات:

إذا كنت تبحث على الخريطة ، يمكنك تمرير BoundingBox الخاص بـ MapView الحالي مباشرةً:

استخدم وظيفة البحث لفئة ReverseGeocoder للبحث. يمكنك تحديد LIMIT و OFFSET في قاعدة البيانات عند البحث.

يمكنك تمرير موقع Android أو Osmdroid GeoPoint و IGeoPoint مباشرةً كمعلمات:

يمكنك استخدام result.toAddress () للحصول على عنوان ، ثم الحصول على العنوان الكامل من فئة العنوان المرتجعة ، كما يمكنك الحصول على البلد والمنطقة والمدينة والطريق ورقم المنزل وغيرها من المعلومات.

أجهزة الاختبار: Google Pixel 3 ، Android Q (10.0)

ملفات الاختبار: hubei.osm.pbf ، rhode-island.osm.bz2

يتم قياس البيانات التالية في البيئة أعلاه.

حجم ملف pbf لمقاطعة هوبي هو 11.64 ميجابايت (17237672 بايت) ، والتي تحتوي على 2417117 عنصرًا ، تم تحويلها إلى 5،505،162 سجل قاعدة بيانات.

ملف قاعدة البيانات الذي تم فك ضغطه هو 273.91 ميبي بايت (287،219،712 بايت) ، أي ما يقرب من 16.78 مرة من pbf.

حجم ملف osm.bz2 في رود آيلاند هو 21.9 ميغا بايت (23009.830 بايت) ، والتي تحتوي على 1،897،371 عنصرًا ، تم تحويلها إلى 4،525،039 سجل قاعدة بيانات.

يبلغ حجم ملف قاعدة البيانات التي تم فك ضغطها 198.67 ميجابايت (208،318،464 بايت) ، أي ما يقرب من 9.05 مرة من osm.bz2.

ملف البيانات في مناطق كبيرة ليس بالضرورة أكبر من تلك الموجودة في مناطق صغيرة ، فهو مصاب أيضًا بالسكان المحليين ، وكثافة المستوطنات البشرية ، والتنمية الاقتصادية. كما أنه مرتبط بتوافر خدمات Open Street Map. على سبيل المثال ، جوانجدونج هي مقاطعة مأهولة بالسكان ومتطورة ولديها 73 مليونًا من البيانات ، في حين أن شينجيانغ والتبت ذات الكثافة السكانية المنخفضة لديها فقط 17 مليونًا و 18 مليونًا من البيانات (جميعها بتنسيق pbf). يرجى ترتيب طلبك وفقًا للحجم الفعلي للبيانات. إذا لم تكن هناك بيانات متاحة ، فيمكنك الانتقال إلى overpass-api https://overpass-api.de/api/map؟bbox=min_longitude،min_latitude،max_longitude،max_latitude.

يمكنك أيضًا اختيار ما إذا كنت تريد استيراد بيانات العلاقة وبيانات الطريقة وفقًا لاحتياجات التطبيق الخاص بك. للحصول على التعليمات البرمجية المحددة ، انظر استيراد

منذ عملية القراءة تحدث في التناضح بدلا من أوسموندا، فئة OsmosisReader في أوسموندا يسمى فقط بعد أن يقرأ التناضح عنصرًا. لا يمكن تضمين الدالة process () في نفس المعاملة.

من أجل تجنب استهلاك الوقت المرتفع الناجم عن بدء المعاملات وإنهائها بشكل متكرر عند إدخال البيانات واحدًا تلو الآخر ، تم تعيين متغير الالتزام في فئة OsmosisReader. عندما تصل السجلات المراد إدراجها إلى الرقم المحدد بواسطة تكرار الالتزام ، سيتم فتح معاملة لعمليات إدراج الدُفعات.

قبل الإدراج ، تظل جميع السجلات المعلقة التي تمت قراءتها حاليًا في الذاكرة. إذا كان تكرار الالتزام مرتفعًا جدًا ، فسيتم شغل الكثير من الذاكرة وإذا كان تكرار الالتزام منخفضًا جدًا ، فسيتم تنفيذ بداية المعاملة ونهايتها بشكل متكرر ، وسيتم استهلاك وقت طويل جدًا.

القيمة الافتراضية لـ الالتزام هي 5000 ، يمكنك تعديلها في الكود الخاص بك وفقًا لبيئة التطبيق الخاص بك.

من حيث عمليات القراءة والإدراج ، فإن سرعة قراءة ملف pbf أسرع بكثير من تنسيق XML. يستغرق الأمر حوالي 0.3-1 ثانية لقراءة 250000 قطعة من البيانات ، وتستغرق 5-15 ثانية لقراءة نفس الحجم من بيانات XML. يستغرق إدخال 250000 قطعة من البيانات من 4 إلى 7 ثوانٍ ، بغض النظر عن تنسيق الملف.

من حيث إجمالي استهلاك الوقت ، عند تعيين الالتزام التردد على 1000

500000 ، وقت تصدير ملف pbf لمقاطعة Hubei حوالي دقيقتين ، ووقت تصدير ملف osm.bz2 في رود آيلاند حوالي 4 دقائق ، التزام صغير جدًا أو كبير جدًا سيتسبب التكرار في أن تستغرق العملية وقتًا طويلاً ، وحتى تقريبًا من المستحيل إكماله.

تستغرق عملية الاستعلام عن الترميز الجغرافي العكسي 3-5 ثوانٍ ، وتستغرق عملية الحصول على العنوان الكامل وفقًا لنتيجة الاستعلام 0.3-3 ثانية. إذا قمت بالاستعلام عن سجلات معلومات جغرافية متعددة في وقت واحد ، فالرجاء عدم الحصول على جميع العناوين الكاملة مرة واحدة ، ولكن قم بذلك عندما يصل المستخدم إلى سجل معين.

استخدام وحدة المعالجة المركزية لعمليات قراءة البيانات وكتابة قاعدة البيانات هو حوالي 10٪ -30٪.

يبلغ استهلاك الذاكرة لعمليات قراءة البيانات وكتابة قاعدة البيانات حوالي 200M-1G.

Planet OSM هو المصدر الأصلي لجميع البيانات ، التي تديرها Open Street Map ، لكن سرعة التنزيل محدودة.

يمكن تنزيله من مواقع بيانات المرآة الأخرى: قائمة المواقع

يرجى استخدام الملفات بتنسيق pbf قدر الإمكان ، نظرًا لمزاياها الكبيرة في شغل المساحة واستهلاك وقت الاستيراد.

بفضل spyhunter99 / osmreader ، أشرت إلى المشروع ، وأعدت كتابة خوارزمياته الأساسية في kotlin ، وأصلحت مشكلة التناضح لا تعمل ، وأضفت ميزة الترميز الجغرافي العكسي.


الصور والأتمتة والتطبيقات

مرحبًا بك في الدورة الأخيرة من التخصص (ما لم تكن مستمرًا في مشروع التخرج ، بالطبع!). باستخدام المعرفة التي تعلمتها حول ArcGIS ، أكمل المهام الفنية مثل حسابات البيانات النقطية وتحليل الملاءمة. في هذا الفصل ، ستشعر بالراحة مع التحليل المكاني والتطبيقات داخل نظم المعلومات الجغرافية خلال أربع وحدات مدتها أسبوع: الأسبوع 1: ستتعلم كل شيء عن صور الاستشعار عن بعد وصور الأقمار الصناعية ، وستتعرف على الطيف الكهرومغناطيسي. في نهاية هذا الأسبوع ، ستتمكن & # x27 من العثور على صور القمر الصناعي وتنزيلها عبر الإنترنت واستخدامها لنوعين شائعين من التحليل: NDVI والتصنيف المدرّب. الأسبوع 2: ستتعلم & # x27ll كيفية استخدام ModelBuilder لإنشاء عمليات سير عمل معالجة كبيرة تستخدم معلمات وشروط مسبقة ومتغيرات ومجموعة جديدة من الأدوات. & # x27ll أيضًا نستكشف بعض الموضوعات التي ليس لدينا الوقت الكافي لمناقشتها بالتفصيل ، ولكنها قد تثير شهيتك للتعلم في المستقبل في طرق أخرى: الترميز الجغرافي ، والبيانات الممكنة للوقت ، والإحصاءات المكانية ، و ArcGIS Pro. الأسبوع 3: في الأسبوع الثالث ، نقوم & # x27ll بصنع واستخدام نماذج ارتفاع رقمية باستخدام بعض الأدوات الجديدة والمحددة مثل أداة ملء القطع وظلال التلال ومجال الرؤية والمزيد. & # x27ll أيضًا نمر ببعض الخوارزميات الشائعة بما في ذلك خوارزميات مهمة جدًا: تحليل الملاءمة. الأسبوع 4: & # x27ll نبدأ الأسبوع الأخير بالحديث عن بعض أدوات التحليل المكاني التي لدينا & # x27t حتى الآن في التخصص: مجموعة المنطقة لإنشاء مناطقنا الخاصة ، والإحصاءات البؤرية لتنعيم ظل التلال ، وإعادة التصنيف لتغيير القيم ، و كثافة النقطة لإنشاء سطح كثيف. أخيرًا ، نختتم & # x27ll بالحديث عن بعض الأشياء الأخرى التي قد ترغب في استكشافها أكثر عندما تبدأ في العمل على التعرف على موضوعات نظم المعلومات الجغرافية بنفسك. خذ التحليل الجغرافي المكاني والبيئي كدورة مستقلة أو كجزء من تخصص نظم المعلومات الجغرافية (GIS). يجب أن تكون لديك خبرة مكافئة لإكمال الدورات الأولى والثانية والثالثة في هذا التخصص ، & quot؛ أساسيات نظم المعلومات الجغرافية & quot & quot؛ تنسيقات بيانات GIS والتصميم والجودة & quot؛ & quot؛ التحليل المكاني والبيئي & quot على التوالي ، قبل الالتحاق بهذه الدورة. من خلال إكمال الفصل الرابع ، ستكتسب المهارات اللازمة للنجاح في تتويجا التخصص.

Получаемые навыки

نظام المعلومات الجغرافية (GIS) ، تحليل الصور ، التحليل المكاني ، صور الأقمار الصناعية ، تطبيقات نظم المعلومات الجغرافية

Рецензии

دورة جيدة جدًا ، لكن بعض الموضوعات التي تم تقييمها في هذه الدورة لم يتم شرحها جيدًا ، وخاصة معالجة صور الاستشعار عن بعد (تنزيلها وإدارتها على نظام المعلومات الجغرافية)

دورة رائعة! منظم جيدًا وغني بالمعلومات وغني بالموارد والمواد المفيدة ، مع منتدى مناقشة ممتاز لمناقشة مواضيع الدورة.

في هذه الوحدة ، سنتعرف على ModelBuilder ، وهي أداة سحب وإفلات لأتمتة ، وإعادة استخدام سير العمل في ArcGIS. نقوم & # x27ll باستكشاف كيفية إنشاء النماذج ، وبناء النماذج الخاصة بنا ، والاضطلاع ببناء سير عمل معالجة كبير معًا في ModelBuilder الذي يستخدم المعلمات والشروط المسبقة والمتغيرات ومجموعة من الأدوات التي استخدمناها & # x27t من قبل للعمل. في النصف الثاني من الوحدة ، & # x27ll نلقي نظرة سريعة على بعض الموضوعات التي يجب أن تعرفها ، لكننا فزنا & # x27t لدينا الوقت لاستكشافها بعمق. & # x27ll يتم تقديمك إلى الترميز الجغرافي والبيانات الممكنة الوقت والإحصاءات المكانية و ArcGIS Pro. هذه بعض المضايقات للإمكانيات المحتملة التي قد ترغب في استكشاف المزيد منها في المستقبل بمفردك.


بالنسبة للترميز الجغرافي ، نحتاج إلى إرسال سلسلة تحتوي على عنوان أو موقع (مثل مدينة) في وظيفة الترميز الجغرافي. ومع ذلك ، لا يتم تنسيق جميع السلاسل بطريقة يمكن أن تجعلها Google & rsquos geo-API منطقية. يمكننا إرسال رسالة نصية إذا كان الإدخال صالحًا باستخدام الدالة .geocode (). valid_address.

نظرًا لأن الناتج كان صحيحًا ، فنحن نعلم الآن أن هذا عنوان صالح وبالتالي يمكننا طباعة إحداثيات خطوط الطول والعرض.

ولكن الأمر الأكثر إثارة للاهتمام ، بمجرد معالجة العنوان بواسطة Google geo API ، يمكننا تحليله وفصل أرقام الشوارع وأسماء الشوارع وما إلى ذلك بسهولة.

وهناك لديك. تجعل Python هذه العملية بأكملها سهلة ولا يستغرق إدخالها في التحليل سوى بضع دقائق. حظا سعيدا!

هل وجدت خطأ أو خلل؟

كل شيء على هذا الموقع متاح على GitHub. توجه إلى وقدم التغيير.


كيف يعمل الترميز الجغرافي

تتكون واجهة برمجة التطبيقات Mapbox Geocoding API من جزأين متميزين: مصدر معلومات نستخدمها لتحديد المواقع و أدوات نستخدمها للبحث عن تلك المواقع وإرجاعها.

مصدر معلومات

تحتوي واجهة برمجة تطبيقات Mapbox Geocoding API على مصادر البيانات من الحكومات ومشاريع البيانات المفتوحة والشركات الخاصة. في بعض الحالات ، قد تختلف النتائج من Geocoding API عن Mapbox Streets أو بيانات OpenStreetMap.

تحتوي بيانات مصدر API للترميز الجغرافي لـ Mapbox على الأنواع التالية من المعلومات الجغرافية ، مرتبة من الأكثر دقة إلى الأكبر:

  • النقاط المهمة (POI): مكان محدد بما في ذلك الشركات التجارية والمباني العامة والمعالم الأثرية والمتنزهات ، من بين ميزات أخرى.
  • عنوان: عنوان بريدي محدد ، بما في ذلك رقم العنوان إن وجد.
  • حي: اسم عامي لمنطقة أصغر داخل مكان ما. لا تملك الأحياء بالضرورة حدودًا محددة ومحددة قانونًا. موجود فقط في بعض البلدان.
  • المنطقة: وحدة إدارية أصغر من مكان. موجود فقط في بعض البلدان.
  • الرمز البريدي: منطقة جغرافية لمكون العنوان المستخدم لفرز البريد.
  • مكان: المدن والبلدات والقرى. لاحظ أن بعض المدن الكبيرة (مثل طوكيو واسطنبول) قد يتم تصنيفها على أنها مناطق وليس أماكن.
  • يصرف: وحدة إدارية أكبر من مكان ولكنها أصغر من المنطقة. موجود فقط في بعض البلدان.
  • منطقة: الولايات والمحافظات والمحافظات. هذا هو عادة أكبر وحدة إدارية دون وطنية لبلد. لاحظ أن بعض المدن الكبيرة (مثل طوكيو واسطنبول) قد يتم تصنيفها على أنها مناطق وليس أماكن.
  • دولة: البلدان المعترف بها بشكل عام أو ، في بعض الحالات مثل هونغ كونغ ، منطقة ذات حالة إدارية شبه وطنية تم منحها رمز بلد معين بموجب ISO 3166-1.

يتم استخدام هذا التسلسل الهرمي لأنواع الميزات أيضًا لتحديد ما سيتم إرجاعه كميزات رئيسية شاملة في كائن استجابة API للترميز الجغرافي وخاصية سياق # x27s. على سبيل المثال ، إذا كان العنصر الذي تم إرجاعه مكانًا (مثل ديترويت) ، فإن الميزات الرئيسية الشاملة في خاصية السياق ستكون المنطقة (ولاية ميشيغان) والبلد (الولايات المتحدة).

أدوات

يستخدم Mapbox Geocoding API Carmen ، وهو مشروع مفتوح المصدر للترميز الجغرافي القائم على تجانب Mapnik. لمعرفة المزيد عن كارمن ، انظر كيف تعمل كارمن ؟.

تخصيص استفساراتك

تقبل Mapbox Geocoding API العديد من المعلمات الاختيارية. يمكنك استخدام هذه المعلمات الاختيارية لتخصيص استعلاماتك بحيث يتم عرض النتائج الأكثر صلة. يمكن تحديد هذه المعلمات باستخدام معامِلات استعلام عنوان URL ، أو يمكن تحديدها كخيارات مع إحدى المكتبات أو المكونات الإضافية من جانب العميل. تتيح لك هذه المعلمات عرض النتائج أثناء الكتابة ، وتصفية النتائج حسب نوع المعلم الجغرافي ، وتقييد النتائج أو تحيزها إلى منطقة محددة. على سبيل المثال ، لقصر نتائج البحث على العناوين الموجودة في منطقة مترو واشنطن العاصمة ، يمكنك تعيين معلمة النوع على العنوان ومعلمة bbox على -77.08،38.90، -76.99،38.95. مع تعيين هذه المعلمات ، سيؤدي استعلامك عن Constitution Ave فقط إلى عرض عناوين الشوارع في منطقة مترو العاصمة ، ولن يتضمن الميزات التي & # x27re غير مهتم بها (مثل Constitution Ave ، El Paso ، تكساس 79908 ، الولايات المتحدة).

اقرأ وثائق API للترميز الجغرافي لمزيد من المعلومات حول الميزات المتاحة.

دعم اللغة

تقبل Mapbox Geocoding API معلمة استعلام اللغة ، والتي تتيح لك تحديد اللغة التي تريد البحث بها. يمكن تحديد لغة أو أكثر باستخدام رموز ISO 639-1. يختلف مدى توفر الترجمة باختلاف اللغة والمنطقة ، ويمكنك توقع نتائج أكثر اتساقًا للمناطق التي يتم فيها استخدام اللغة المحددة على نطاق واسع. يحتوي دعم اللغة على ثلاثة مستويات مختلفة:

  • تغطية عالمية. هذه اللغات موجودة دائمًا تقريبًا في البلد والمنطقة وميزات الأماكن البارزة.
  • تغطية محلية. قد تفتقر هذه اللغات إلى التغطية العالمية ، ولكنها دائمًا ما تكون موجودة في البلد والمنطقة وميزات الأماكن البارزة حيث يتم استخدامها على نطاق واسع.
  • تغطية محدودة. هذه اللغات موجودة أحيانًا ، لكن التغطية تميل إلى أن تكون غير متسقة أو مقيدة جغرافيًا.

للحصول على القائمة الحالية للغات التي يتم تناولها في كل مستوى ، راجع وثائق API للترميز الجغرافي.

ترتيب نتائج البحث حسب الأولوية

يتم ترتيب أولوية النتائج من استعلامات التكويد الجغرافي بشكل مختلف اعتمادًا على ما إذا كان الطلب إلى الأمام الكود الجغرافي أو أ عكس الترميز الجغرافي.

نتيجة تحديد الأولويات في الترميز الجغرافي المتقدم

عند إرسال استعلام ترميز جغرافي أمامي (نص يمكن قراءته بواسطة الإنسان مثل "سان فرانسيسكو") إلى Mapbox Geocoding API ، يستخدم المشفر الجغرافي Carmen ، وهو محرك بحث نصي ، للبحث في الفهارس المكانية عن الميزات التي تطابق استعلام المستخدم. (للحصول على وصف أكثر تفصيلاً لكيفية عمل محرك البحث عن نص Carmen ، اقرأ وثائق Carmen.) يطبق المشفر الجغرافي عوامل التصفية على الواجهة الخلفية لفرز النتائج التي تطابق النص الذي تم البحث عنه أو تطابقه جزئيًا. هذه المرشحات الصلة النصية و نقاط البروز.

أهمية النص

عندما يقوم المشفر الجغرافي بفرز النتائج وتحديد أولوياتها ، فإن أول عامل تصفية يتم تطبيقه هو مدى الصلة بالموضوع. الملاءمة هي القيمة التي تشير إلى مدى تطابق ميزة في مجموعة البيانات مع الاستعلام. تظهر هذه الخاصية في استجابة واجهة برمجة تطبيقات التكويد الجغرافي ، وهي نتيجة رقمية من 0 (النتيجة لا تتطابق مع النص الذي تم الاستعلام عنه على الإطلاق) إلى 1 (النتيجة تطابق النص الذي تم الاستعلام عنه تمامًا). يمكنك استخدام خاصية الصلة لإزالة النتائج التي لا تتطابق تمامًا مع الاستعلام.

في نموذج الاستعلام هذا عن العنوان "515 15th St NW، Washington، DC 20004" ، تكون النتيجة المتوقعة أولاً في الاستجابة ذات الصلة 0.875. النتائج الأخرى في مدن أخرى ، نظرًا لأنها لا تتطابق مع نص البحث بشكل وثيق ، يكون لها درجة ملاءمة تبلغ 0.2.

نقاط البروز

في حالة وجود ميزات متعددة لها نفس درجة الملاءمة ، يتم تطبيق عامل تصفية ثانٍ يسمى الدرجة. يعتمد هذا على شعبية الميزة أو بروزها. على سبيل المثال ، سيطابق البحث عن "Paris" بالتساوي "Paris، France" و "Paris، Texas" - سيكون لهما نفس درجة الملاءمة. يساعد مرشح النقاط على كسر هذا التعادل على الواجهة الخلفية ، ويظهر "باريس ، فرنسا" أولاً لأنها ميزة أكثر شيوعًا:

نتيجة تحديد الأولويات في الترميز الجغرافي العكسي

بالنسبة للرموز الجغرافية العكسية ، يتم فرز النتائج في مجموعة معينة من الإحداثيات بترتيب التسلسل الهرمي المكاني. على سبيل المثال ، ستظهر ميزة أكثر دقة مثل العنوان أو نقطة الاتصال أو الرمز البريدي أولاً في الاستجابة قبل أنواع الميزات مثل المنطقة أو الدولة. التسلسل الهرمي المكاني الكامل ، المرتب من الأكثر دقة إلى الأكبر ، هو: نقطة اهتمام (POI), عنوان, حي, مكان, الرمز البريدي, مكان, منطقة, منطقة، و بلد. (لمزيد من التفاصيل حول أنواع المعلومات الجغرافية هذه ، راجع قسم بيانات المصدر.)

يعرض مثال استعلام التكويد الجغرافي العكسي هذا الميزات الأقرب إلى نقطة الاستعلام (في حالة ميزات النقطة مثل العنوان ونقطة الوصول) والميزات التي تحتوي على نقطة الاستعلام (في حالة ميزات المضلع مثل المكان أو المنطقة) ، بترتيب التسلسل الهرمي من الأكثر دقة (العنوان أو POI) لأكبر عنصر (البلد):


أضف الإكمال التلقائي

ال الإكمال التلقائي يوفر مكون واجهة المستخدم للمستخدمين القدرة على البحث عن العناوين أو الأماكن وتلقي المعلومات بما في ذلك خطوط الطول والعرض ورقم الهاتف والفئات والكثير من المعلومات الأخرى. أثناء كتابة المستخدم ، ضع التنبؤات المعروضة على المستخدم مرة واحدة مع أي أماكن تم البحث عنها.

هناك طريقتان لاستخدام خدمة الإكمال التلقائي:

إطلاق كنشاط للنتيجة

إذا كان نشاط البحث المنفصل منطقيًا في تطبيقك ، فيمكنك استخدام فئة PlaceAutocomplete لبناء هدفك ثم تشغيل نشاط البحث المضمن باستخدام startActivityForResult. باستخدام منشئ النوايا هذا ، يمكنك تمرير رمز الوصول المطلوب مع كائن placeOptions.

عندما ينتهي المستخدم من تحديد مكان داخل نشاط الإكمال التلقائي ، سيتم استدعاء finish (). لتلقي CarmenFeature الذي يصف المكان الذي حدده المستخدم ، قم بتجاوز طريقة onActivityResult ، وتحقق من صحة الطلب ورموز النتائج ، واستخدم طريقة PlaceAutocomplete الثابتة getPlace التي تمر في الهدف.

عرض جزء

إذا كنت بحاجة إلى مزيد من التحكم في واجهة المستخدم وترغب في وضع مكون الإكمال التلقائي داخل حاوية نشاط ، فيمكنك استخدام PlaceAutocompleteFragment المتوفرة لتضمين واجهة مستخدم البحث. تعمل هذه الفئة على توسيع تطبيق Support Library Fragment ، مما يعني أنه يجب استخدام SupportFragmentManager. في مقتطف الشفرة المقدم أدناه ، يتحقق للتأكد من عدم استخدام أكثر من مثيل تجزئة تلقائي واحد دائمًا. إذا لم يكن هناك & # x27t مثيل لشريحة الإكمال التلقائي ، فإنه ينشئ مثيلًا جديدًا ويضيفه إلى الحاوية. إذا كان هناك ، فإنه يعرض جزء الإكمال التلقائي للمستخدم باستخدام TAG.

للاستماع إلى وقت تحديد المستخدم لمكان أو إلغاء جزء الإكمال التلقائي ، يمكنك تعيين PlaceSelectionListener على الجزء وسيتم استدعاء رد الاتصال عند وقوع الحدث.


مزايا واجهة برمجة التطبيقات المجانية للتشفير الجغرافي العكسي من جانب العميل في BigDataCloud

  • حر للابد!
  • جديد - مدعومة بأدق تقنيات تحديد الموقع الجغرافي IP من الجيل التالي (في انتظار براءة الاختراع)
  • بنية تحتية زائدة عن الحاجة على مستوى المؤسسة. تعمل من ثمانية مراكز بيانات متنوعة جغرافيًا في جميع أنحاء العالم
  • توفر أفضل من 99.999٪
  • وقت استجابة سريع غير مسبوق (أقل من مللي ثانية)
  • أداء يمكن التنبؤ به حيث لا يتم استخدام التخزين المؤقت
  • يسلم النتائج الإدارية / غير الإدارية القائمة على الحدود
  • يوفر معلومات مفصلة عن المنطقة المحلية للمستخدم بـ 148 لغة عالمية مشتركة
  • الدقة الجغرافية الكاملة على مستوى الرمز البريدي للولايات المتحدة وبريطانيا العظمى وأستراليا (جزئية بالنسبة للبلدان الأخرى)
  • تغطية عالمية كاملة بما في ذلك البحار والمحيطات
  • احتياطي فريد للموقع الجغرافي لـ IP لتوفير بيانات الموقع المقدرة حتى في حالة عدم توفر إحداثيات جغرافية للعميل
  • ودية مع قوانين الخصوصية العامة لحماية البيانات (GDPR) و GDPR
  • دعم عملاء سريع الاستجابة ، حتى بالنسبة لواجهات برمجة التطبيقات المجانية تمامًا
  • يتم تحديث بيانات المشفر الجغرافي أسبوعيًا ، تحديد الموقع الجغرافي IP يوميًا.
  • لا عقد ولا رسوم خفية ولا حاجة لحساب. يُسمح بكل من الاستخدامات التجارية وغير التجارية بدون قيود على الأسعار - يسعدنا قبول أي عدد من استفسارات واجهة برمجة التطبيقات وبأي وتيرة طالما تم استيفاء شروط سياسة الاستخدام العادل (انظر أدناه).

خدمات إثراء البيانات المتوفرة مع Inkit

تقوم أداة Inkit لأتمتة الاتصالات في وضع عدم الاتصال والبريد الإلكتروني بشحن البريد المباشر مع خدمات إثراء البيانات المضمنة وإمكانيات إضافية متاحة من خلال عمليات الدمج. تتضمن الأداة USPS والتحقق من صحة العنوان الدولي الذي يتحقق تلقائيًا من معلومات الاتصال المسجلة وتنسيقها وإضافة التفاصيل المفقودة عندما يكون ذلك ممكنًا. وبالتالي ، تصل اتصالاتك البريدية دائمًا إلى الهدف وتنخفض معدلات الإرجاع بشكل كبير.

بصرف النظر عن خدمات التحقق من صحة البيانات المضمنة وإثرائها ، تقدم Inkit العديد من عمليات الدمج. على سبيل المثال ، يمكنك توصيله بـ TowerData ومزود خدمة البريد الإلكتروني مثل Iterable للحصول على عنوان مادي من عنوان بريد إلكتروني فقط.

إلى جانب ذلك ، يعمل Inkit مع أي أداة ترميز جغرافي عكسي أخرى تدعم عمليات التكامل من خلال خطاف الويب. باستخدام Inkit كنظام أساسي لتكامل API ، يمكنك توصيل قنوات بيانات متعددة ومعالجة الإدخال تلقائيًا لتنسيقها وتنظيفها وإثرائها.

هل أنت مهتم باستخدام Inkit لخدمات إثراء البيانات وأتمتة البريد؟ اتصل بنا للحصول على عرض توضيحي.


شاهد الفيديو: الارجاع الجغرافي georeferencing ArcMap (شهر اكتوبر 2021).