संपादित करें: कोड कोड में उदाहरण मानचित्र को लपेटें ताकि स्वरूपण सही हो।हेक्सागोनल ग्रिड पर निकट पड़ोसियों को ढूंढना
ठीक है, मैं एक हेक्सागोनल ग्रिड पर एक बेहद सरल ए * एल्गोरिदम लिखने की कोशिश कर रहा हूं। मैं समझता हूं, और ए * भाग कर सकता हूं। वास्तव में, मेरा ए * स्क्वायर ग्रिड के लिए काम करता है। जो मैं अपने मस्तिष्क को चारों ओर लपेट नहीं सकता वह हेक्सागोन के साथ पड़ोसियों को ढूंढ रहा है। यहाँ heagonal ग्रिड
0101 0301
0201 0401
0102 0302
0202 0402
आदि के लिए लेआउट, आदि
तो, मैं के साथ एक षट्कोण वर्ग कि, यह देखते हुए यह हेक्स निर्देशांक है, पड़ोसियों की एक सूची उत्पन्न कर सकते हैं लिख रहा है मदद क्या जरूरत है। इसे पड़ोसियों को उत्पन्न करने में सक्षम होना चाहिए जो ग्रिड (0000 या 2101 की तरह 20x20 ग्रिड में 'गिर जाएंगे) क्योंकि इस तरह मेरे ए * ट्रैक कई तरफ रखे गए हैं। तो कुछ है कि इस कोड स्निपेट के साथ काम करेगा:
ग्रह = हेक्स ('0214') प्रिंट (planet.neighbors()) [ 'हेक्स 0213', 'हेक्स 0215', 'हेक्स 0115', 'हेक्स 0315 ',' हेक्स 0116 ',' हेक्स 0316 ']
मैं इस एक ही सवाल यहां पाया करने के लिए एक जवाब प्रदान की है: http://stackoverflow.com/a/15524441/2135355 –