टाइल ओवरले

पब्लिक फ़ाइनल क्लास TileOverlay ऑब्जेक्ट
का विस्तार करता है

टाइल ओवरले, इमेज का ऐसा सेट होता है जो बुनियादी मैप टाइल के सबसे ऊपर दिखता है. ये टाइलें पारदर्शी हो सकती हैं, जिससे आपको मौजूदा मैप में सुविधाएं जोड़ने का विकल्प मिलता है. टाइल ओवरले में ये प्रॉपर्टी होती हैं:

टाइल की सेवा देने वाली कंपनी
TileProvider से आपको टाइल ओवरले में इस्तेमाल होने वाली इमेज मिलती हैं. मैप में जोड़ने से पहले, आपको टाइल की सुविधा देने वाली कंपनी की जानकारी देनी होगी. टाइल जोड़ने के बाद, इसे बदला नहीं जा सकता. हालांकि, खास कोऑर्डिनेट के लिए अलग-अलग इमेज दिखाने के लिए, टाइल प्रोवाइडर के काम करने के तरीके में बदलाव किया जा सकता है. अगर टाइल प्रोवाइडर से मिली टाइल बदल जाती हैं, तो आपको clearTileCache() को कॉल करना होगा. इससे यह पक्का किया जा सकेगा कि पहले वाली टाइल अब रेंडर न हों.
Z-इंडेक्स
वह क्रम जिसमें यह टाइल ओवरले दूसरे ओवरले के हिसाब से बनाया गया है (इसमें GroundOverlay, Circle, Polyline, और Polygon शामिल हैं, लेकिन Marker नहीं). बड़े z-इंडेक्स वाला एक ओवरले, छोटे z इंडेक्स वाले ओवरले पर बनाया जाता है. एक ही z-इंडेक्स के साथ ओवरले का क्रम मनचाहे तरीके से नहीं होता है. डिफ़ॉल्ट zIndex 0 है.
पारदर्शिता
रेंज में टाइल ओवरले की पारदर्शिता [0..1] है, जहां 0 का मतलब है कि ओवरले ओपेक है और 1 का मतलब है कि ओवरले पूरी तरह से पारदर्शी है. अगर बताया गया बिट मैप पहले से ही आंशिक रूप से पारदर्शी है, तो हर पिक्सल की पारदर्शिता उसके हिसाब से स्केल की जाएगी. उदाहरण के लिए, अगर बिट मैप में किसी पिक्सल की ऐल्फ़ा वैल्यू 200 है और टाइल ओवरले की पारदर्शिता को 0.25 बताया गया है, तो स्क्रीन पर पिक्सल को 150 के ऐल्फ़ा वैल्यू के साथ रेंडर किया जाएगा. इस प्रॉपर्टी की जानकारी देना ज़रूरी नहीं है और डिफ़ॉल्ट ट्रांसपेरेंसी 0 (ओपेक) है.
किसको दिखे
इससे पता चलता है कि टाइल ओवरले दिख रहा है या नहीं. इसका मतलब है कि यह मैप पर दिख रहा है या नहीं. नहीं दिखने वाला टाइल ओवरले नहीं बनाया जाता, लेकिन इसकी अन्य सभी प्रॉपर्टी बनी रहती हैं. डिफ़ॉल्ट true है, जिसका मतलब है कि यह दिख रहा है.

इस क्लास के सिर्फ़ मुख्य थ्रेड पर, कॉल के तरीके इस्तेमाल किए जा सकते हैं. ऐसा न करने पर, आपको IllegalStateException मिलेगा.

टाइल कोऑर्डिनेट

ध्यान दें कि दुनिया को मरकेटर प्रोजेक्शन (Wikipedia देखें) का इस्तेमाल करके दिखाया जाता है. इसके लिए, मैप की बाईं (पश्चिम) ओर की दिशा में -180 डिग्री देशांतर और 180 डिग्री देशांतर के हिसाब से मैप की दाईं (पूर्व) दिशा तय की जाती है. मैप को स्क्वेयर बनाने के लिए, मैप के ऊपरी (उत्तर) हिस्से का अक्षांश, 85.0511 डिग्री और मैप का निचला (दक्षिण) हिस्सा अक्षांश के -85.0511 डिग्री से मेल खाता है. इस अक्षांश सीमा के बाहर के क्षेत्रों को रेंडर नहीं किया गया है.

हर ज़ूम लेवल पर, मैप को टाइल में बांटा जाता है और सिर्फ़ स्क्रीन को ओवरलैप करने वाली टाइल डाउनलोड और रेंडर की जाती हैं. हर टाइल स्क्वेयर होती है और मैप को टाइल में इस तरह बांटा जाता है:

  • ज़ूम लेवल 0 पर, एक टाइल पूरी दुनिया को दिखाती है. उस टाइल के निर्देशांक (x, y) = (0, 0) होते हैं.
  • ज़ूम लेवल 1 पर, दुनिया को चार टाइल में बांटा गया है, जो 2 x 2 ग्रिड में हैं.
  • ...
  • ज़ूम लेवल N पर, दुनिया को 4N टाइल में बांटा गया है, जिन्हें 2N x 2N ग्रिड में व्यवस्थित किया गया है.
ध्यान दें कि कैमरा कम से कम GoogleMap.getMinZoomLevel ज़ूम लेवल और ज़ूम लेवल GoogleMap.getMaxZoomLevel हो सकता है. हालांकि, यह अलग-अलग वजहों पर निर्भर करता है.

टाइल के निर्देशांकों को मैप के ऊपरी बाएं (उत्तर-पश्चिम) कोने से मापा जाता है. ज़ूम लेवल N पर, टाइल निर्देशांक की x वैल्यू 0 से 2N - 1 तक होती है और पश्चिम से पूर्व की ओर बढ़ती है. साथ ही, y वैल्यू की रेंज 0 से 2N - 1 होती है और उत्तर से दक्षिण तक बढ़ जाती है.

उदाहरण

GoogleMap map; // ... get a map.
 TileProvider tileProvider; // ... create a tile provider.
 TileOverlay tileOverlay = map.addTileOverlay(
     new TileOverlayOptions().tileProvider(tileProvider));
 

सार्वजनिक तरीके से जुड़ी खास जानकारी

void
clearTileCache()
टाइल की कैश मेमोरी को मिटाएं, ताकि सभी टाइल के लिए TileProvider से फिर से अनुरोध किया जाए.
boolean
इसके बराबर है(अन्य ऑब्जेक्ट)
यह टेस्ट करता है कि यह TileOverlay, दूसरे के बराबर है या नहीं.
boolean
getFadeIn()
इससे यह पता चलता है कि ओवरले टाइल फ़ेड होनी चाहिए या नहीं.
String
getId()
इस टाइल ओवरले का आईडी पाएं.
float
getTransparency()
इस टाइल ओवरले से पारदर्शिता बढ़ती है.
float
getZIndex()
इस टाइल ओवरले का zIndex मिलता है.
int
boolean
isVisible()
इस टाइल ओवरले के दिखने की सेटिंग का पता चलता है.
void
हटाएं()
मैप से यह टाइल ओवरले हटा देता है.
void
setFadeIn(बूलियन fadeIn)
सेट करता है कि ओवरले टाइल फ़ेड इन हों या नहीं.
void
setTransparency(फ़्लोट ट्रांसपेरंसी (पारदर्शिता)
इस टाइल ओवरले की पारदर्शिता सेट करता है.
void
setVisible(बूलियन विज़ुअल)
यह सेट करता है कि यह टाइल ओवरले दिखे या नहीं.
void
setZIndex(फ़्लोट zIndex)
इस टाइल ओवरले का zIndex सेट करता है.

इनहेरिट किए गए तरीके की खास जानकारी

सार्वजनिक तरीके

Public void clearTileCache ()

टाइल की कैश मेमोरी को मिटाएं, ताकि सभी टाइल के लिए TileProvider से फिर से अनुरोध किया जाए. इस तरीके को लागू करने के बाद, इस टाइल ओवरले की मौजूदा टाइल भी मैप से मिटा दी जाएंगी. यह एपीआई, टाइल की छोटी इन-मेमोरी कैश मेमोरी को बनाए रखता है. अगर आपको टाइल को लंबे समय तक कैश मेमोरी में सेव रखना है, तो आपको डिस्क पर मौजूद कैश मेमोरी की सुविधा लागू करनी चाहिए.

सार्वजनिक बूलियन इसके बराबर है (अन्य ऑब्जेक्ट)

यह टेस्ट करता है कि यह TileOverlay, दूसरे के बराबर है या नहीं.

पैरामीटर
अन्य एक Object.
रिटर्न
  • अगर दोनों ऑब्जेक्ट एक ही ऑब्जेक्ट हैं, यानी कि यह == अन्य है, तो 'सही'.

सार्वजनिक बूलियन getFadeIn ()

इससे यह पता चलता है कि ओवरले टाइल फ़ेड होनी चाहिए या नहीं.

रिटर्न
  • अगर टाइल फ़ेड इन हैं, तो true. अगर टाइल नहीं देखनी हैं, तो false.

सार्वजनिक स्ट्रिंग getId ()

इस टाइल ओवरले का आईडी पाएं.

सार्वजनिक फ़्लोट getTransparency ()

इस टाइल ओवरले से पारदर्शिता बढ़ती है.

रिटर्न
  • इस टाइल ओवरले की पारदर्शिता.

सार्वजनिक फ़्लोट getZIndex ()

इस टाइल ओवरले का zIndex मिलता है.

रिटर्न
  • टाइल ओवरले का zIndex.

Public int hashCode ()

सार्वजनिक बूलियन isVisible ()

इस टाइल ओवरले के दिखने की सेटिंग का पता चलता है. ध्यान दें कि इससे यह पता नहीं चलता है कि टाइल ओवरले असल में स्क्रीन के व्यूपोर्ट के अंदर है या नहीं. हालांकि, अगर यह स्क्रीन के व्यूपोर्ट में शामिल है, तो क्या इसे बनाया जाएगा.

रिटर्न
  • इस टाइल ओवरले की विज़िबिलिटी.

Public void हटाएं ()

मैप से यह टाइल ओवरले हटा देता है.

Public void setFadeIn (boolean fadeIn)

सेट करता है कि ओवरले टाइल फ़ेड इन हों या नहीं.

पैरामीटर
fadeIn टाइल को फ़ेड इन करने के लिए true; उन्हें तुरंत रेंडर करने के लिए false.

Public void setTransparency (फ़्लोट ट्रांसपेरंसी (पारदर्शिता))

इस टाइल ओवरले की पारदर्शिता सेट करता है. ज़्यादा जानकारी के लिए, इस क्लास में सबसे ऊपर मौजूद दस्तावेज़ देखें.

पैरामीटर
पारदर्शिता [0..1] रेंज में एक फ़्लोट, जहां 0 का मतलब है कि टाइल ओवरले ओपेक है और 1 का मतलब है कि टाइल ओवरले पारदर्शी है.

Public void setVisible (boolean visible)

यह सेट करता है कि यह टाइल ओवरले दिखे या नहीं. न दिखने पर, टाइल ओवरले नहीं बनाया जाता. हालांकि, यह अपनी बाकी सभी प्रॉपर्टी को बनाए रखता है. टाइल ओवरले डिफ़ॉल्ट रूप से दिखते हैं.

पैरामीटर
दिख रहा है इस ओवरले को दिखाई देने के लिए true; इसे अदृश्य करने के लिए false.

Public void setZIndex (फ़्लोट zIndex)

इस टाइल ओवरले का zIndex सेट करता है. ज़्यादा जानकारी के लिए, इस क्लास में सबसे ऊपर मौजूद दस्तावेज़ देखें.

पैरामीटर
zIndex इस टाइल ओवरले का zIndex.