গ্রাউন্ড ওভারলে

প্ল্যাটফর্ম নির্বাচন করুন: অ্যান্ড্রয়েড আইওএস জাভাস্ক্রিপ্ট

গ্রাউন্ড ওভারলে হল মানচিত্রের ওভারলে যা অক্ষাংশ/দ্রাঘিমাংশ স্থানাঙ্কের সাথে আবদ্ধ, তাই আপনি যখন মানচিত্রটি টেনে আনবেন বা জুম করবেন তখন এগুলি সরে যাবে।

ভূমিকা

গ্রাউন্ড ওভারলে হলো এমন একটি ছবি যা মানচিত্রের সাথে সংযুক্ত থাকে। মার্কারের বিপরীতে, গ্রাউন্ড ওভারলেগুলি স্ক্রিনের পরিবর্তে পৃথিবীর পৃষ্ঠের বিপরীতে অবস্থিত, তাই মানচিত্রটি ঘোরানো, কাত করা বা জুম করা ছবির ওরিয়েন্টেশন পরিবর্তন করবে।

একটি গ্রাউন্ড ওভারলে যোগ করার জন্য, একটি GMSGroundOverlay অবজেক্ট তৈরি করুন যা একটি আইকন এবং একটি সীমানা উভয়কেই সংজ্ঞায়িত করে। দুটি নির্দিষ্ট করতে ব্যর্থ হলে গ্রাউন্ড ওভারলে মানচিত্রে প্রদর্শিত হবে না। আপনি ঐচ্ছিকভাবে অতিরিক্ত সেটিংস নির্দিষ্ট করতে পারেন যা মানচিত্রে চিত্রের অবস্থানকে প্রভাবিত করবে। প্রয়োজনীয় বিকল্পগুলি সংজ্ঞায়িত করার পরে, ওভারলে যোগ করার জন্য এই অবজেক্টের map প্রপার্টি সেট করুন।

একটি ওভারলে যোগ করা হচ্ছে

  1. একটি নতুন GMSGroundOverlay অবজেক্ট তৈরি করুন
  2. icon প্রোপার্টিটি UIImage এর একটি ইনস্ট্যান্সে সেট করুন।
  3. bounds প্রোপার্টিটিকে GMSCoordinateBounds এর একটি ইনস্ট্যান্সে সেট করুন। bounds চিত্রের দক্ষিণ-পশ্চিম এবং উত্তর-পূর্ব কোণগুলিকে প্রতিনিধিত্ব করে।
  4. ইচ্ছামত bearing এবং zoomLevel এর মতো ঐচ্ছিক বৈশিষ্ট্য সেট করুন।
  5. map বৈশিষ্ট্য সেট করুন - ছবিটি মানচিত্রে প্রদর্শিত হবে।

নিচের উদাহরণটি দেখায় কিভাবে একটি বিদ্যমান GMSMapView অবজেক্টে একটি গ্রাউন্ড ওভারলে যোগ করতে হয়।

সুইফট

let southWest = CLLocationCoordinate2D(latitude: 40.712216, longitude: -74.22655)
let northEast = CLLocationCoordinate2D(latitude: 40.773941, longitude: -74.12544)
let overlayBounds = GMSCoordinateBounds(coordinate: southWest, coordinate: northEast)

// Image from http://www.lib.utexas.edu/maps/historical/newark_nj_1922.jpg
let icon = UIImage(named: "newark_nj_1922")

let overlay = GMSGroundOverlay(bounds: overlayBounds, icon: icon)
overlay.bearing = 0
overlay.map = mapView
      

অবজেক্টিভ-সি

CLLocationCoordinate2D southWest = CLLocationCoordinate2DMake(40.712216,-74.22655);
CLLocationCoordinate2D northEast = CLLocationCoordinate2DMake(40.773941,-74.12544);
GMSCoordinateBounds *overlayBounds = [[GMSCoordinateBounds alloc] initWithCoordinate:southWest
                                                                        coordinate:northEast];

// Image from http://www.lib.utexas.edu/maps/historical/newark_nj_1922.jpg
UIImage *icon = [UIImage imageNamed:@"newark_nj_1922"];
GMSGroundOverlay *overlay = [GMSGroundOverlay groundOverlayWithBounds:overlayBounds icon:icon];
overlay.bearing = 0;
overlay.map = mapView;
      

একটি ওভারলে অপসারণ করা হচ্ছে

আপনি আপনার GMSGroundOverlay এর map প্রপার্টি nil এ সেট করে মানচিত্র থেকে একটি গ্রাউন্ড ওভারলে অপসারণ করতে পারেন। বিকল্পভাবে, আপনি GMSMapView clear পদ্ধতিটি কল করে মানচিত্রে বর্তমানে থাকা গ্রাউন্ড ওভারলে সহ সমস্ত ওভারলে অপসারণ করতে পারেন।

সুইফট

mapView.clear()
      

অবজেক্টিভ-সি

[mapView clear];
      

যদি আপনি মানচিত্রে গ্রাউন্ড ওভারলে যোগ করার পরে তাতে পরিবর্তন করতে চান, তাহলে নিশ্চিত করুন যে আপনি GMSGroundOverlay অবজেক্টটি ধরে রেখেছেন। আপনি পরে এই অবজেক্টে পরিবর্তন করে গ্রাউন্ড ওভারলে পরিবর্তন করতে পারেন।

সুইফট

let overlay = GMSGroundOverlay(bounds: overlayBounds, icon: icon)
overlay.bearing = 0
overlay.map = mapView

// ...

overlay.isTappable = true
      

অবজেক্টিভ-সি

GMSGroundOverlay *overlay = [GMSGroundOverlay groundOverlayWithBounds:overlayBounds icon:icon];
overlay.bearing = 0;
overlay.map = mapView;

// ...
overlay.tappable = YES;
      

ইভেন্টগুলি

আপনি ম্যাপে ঘটে যাওয়া ইভেন্টগুলি শুনতে পারেন, যেমন যখন কোনও ব্যবহারকারী ওভারলে ট্যাপ করে। ইভেন্টগুলি শুনতে, আপনাকে GMSMapViewDelegate প্রোটোকলটি বাস্তবায়ন করতে হবে। GMSMapViewDelegateইভেন্টগুলির নির্দেশিকা এবং পদ্ধতিগুলির তালিকা দেখুন।