यह एक शानदार विचार है। मैं एक समान ऐप पर काम कर रहा हूं, मुझे उम्मीद है कि अगर आप अवधारणा को लागू करते हैं तो आपको कोई फर्क नहीं पड़ता :)।
अपने प्रश्न का उत्तर मेरी अपनी योग्यता के लिए उत्तर देने के लिए, नहीं, मुझे नहीं लगता कि ऐसा करने के लिए एक पूर्वनिर्धारित तरीका है।
यह करने का सबसे अच्छा तरीका है (आईओएस 4 फोटो ऐप को देखने के बाद), mapView:regionDidChangeAnimated:
प्रतिनिधि विधि का उपयोग करना है। जब भी उपयोगकर्ता स्क्रॉल/ज़ूम करता है, तो इस विधि को बुलाया जाएगा।
उस विधि के अंदर, आप यह निर्धारित करने के लिए कुछ त्वरित ज्यामिति गणित कर सकते हैं कि क्या आपके अंक विलय पर विचार करने के लिए "पर्याप्त करीब" हैं। एक बार जब वे "विलय" हो जाएंगे, तो आप एक या दोनों एनोटेशन हटा देंगे, और एक ही जगह पर एक और एनोटेशन डालें जो दोनों के लिए संदर्भ है (आप एनोटेशनक्लस्टर क्लास को आसानी से बना सकते हैं जो एमकेएएनोटेशन के अनुरूप हो सकता है लेकिन एक टिप्पणियों के एनएसएआरएआरई, और अन्य एनोटेशन और/या एनोटेशनक्लस्टर इंस्टेंस इत्यादि को "ब्रेक आउट" या "अवशोषित" करने के तरीकों में भी शामिल हैं)।
जब मैं "त्वरित ज्यामिति गणित" कहता हूं, मेरा मतलब है नक्शा की अवधि के सापेक्ष दो बिंदुओं की दूरी, और पूरे मानचित्र की अवधि के प्रतिशत के रूप में अपनी सापेक्ष दूरी लेना।
जहां यह मुश्किल हो जाएगा यदि आपके पास सैकड़ों एनोटेशन हैं, क्योंकि मैं एक डबल लूप को लागू करने के लिए एक अच्छा तरीका नहीं सोच सकता हूं।
आप क्या मानते हैं?
www.BMSClusterMap.com – nurxyz