تذكر موقعًا ما في أي مكان في العالم بثلاث كلمات فقط.
جربه: http://these3words.herokuapp.com/
بعض المواقع المثيرة للاهتمام:
هذا التطبيق مستوحى من http://what3words.com/
>>> import thesethreewords as these
# the home of particle physics
>>> CERN = (46.232355, 6.055419)
>>> three = these.three_words(CERN)
>>> print three
'turks-yunnan-salant'
>>> these.decode(three)
(46.232335567474365, 6.055419445037842)
انظر أين يقع هذا على خريطة This3Words.
تحتاج إلى تثبيت مكتبات Geohash والزجاجة:
$ pip install geohash
$ pip install bottle
هناك الكثير من المربعات 3x3 م على سطح الأرض. يتطلب ترميزها في ثلاث كلمات فقط قائمة كلمات طويلة، ونتيجة لذلك تظهر عليها بعض الكلمات الغامضة إلى حد ما. إذا كنت تستطيع التعايش مع الاضطرار إلى تذكر ست كلمات، فستكون قائمة الكلمات أقصر بكثير. قائمة الكلمات المكونة من ستة كلمات تأتي من مكتبة Humanhash المذهلة. تم اختيار الكلمات لتحقيق أقصى قدر من الوضوح في التواصل البشري، ويجب أن تكون مألوفة أكثر من الكلمات الموجودة في قائمة الكلمات الثلاثة:
>>> six = these.six_words(CERN)
>>> print six
'spaghetti-carolina-kentucky-oscar-iowa-table'
>>> these.decode(six)
(46.232335567474365, 6.055419445037842)
يتم تحويل كل زوج من خطوط الطول والعرض إلى Geohash المكون من تسعة أحرف. وهذا يوفر دقة تبلغ حوالي 3 أمتار في جميع خطوط العرض. يتم بعد ذلك تحويل Geohash إلى عدد صحيح يتم ترميزه كسلسلة من الكلمات.
قائمة الكلمات المستخدمة لتشفير geohash
إلى ثلاث كلمات فقط تستخدم قاموس أجهزة الكمبيوتر المحلية لديك. يتم إجراء بعض المحاولات لإزالة الكلمات الغامضة حقًا، ولكن قد يكون ذلك أفضل. يتعين عليك استخدام نفس قائمة الكلمات عند تشفير وفك تشفير تجزئة these-3-words
.
تشترك تجزئة these-3-words
في خاصية geohash
التي تشترك فيها المواقع القريبة مع تجزئة مماثلة these-3-words
>>> other_CERN_site = (46.256811, 6.056792)
>>> six = these.six_words(other_CERN_site)
>>> print six
'spaghetti-carolina-kentucky-utah-seventeen-neptune'
>>> these.decode(six)
(46.256797313690186, 6.056792736053467)
موقع CERN الآخر موجود هنا على الخريطة.
يوفر ملف server.py
خدمة ويب صغيرة تسمح بعرض الموقع المحدد بثلاث كلمات على خريطة خرائط Google.
يتطلب الخادم تثبيت Bottle.py. يمكن تشغيله محليًا عن طريق كتابة ./server.py
أو python server.py
على التوالي.
مقدمة لكم من @betatim و @kdungs productions