KML

প্ল্যাটফর্ম বেছে নিন: Android iOS JavaScript

এই পৃষ্ঠা থেকে আপনি জানতে পারবেন যে কীভাবে GMUGeometryRenderer-এর সাথে GMUKMLParser ব্যবহার করে KML ফর্ম্যাটে ভৌগোলিক ডেটা রেন্ডার করা যায়। KML হল একটি জনপ্রিয় ফর্ম্যাট যা পয়েন্ট, লাইন ও পলিগনের মতো ভৌগোলিক ডেটা রেন্ডার করার জন্য ব্যবহার করা হয়।

নিচের স্ক্রিনশটে ম্যাপে রেন্ডার করা কিছু KML ডেটার উদাহরণ দেখানো হয়েছে:

KML ডেটা সহ ম্যাপ

পূর্বশর্ত ও নোট

GMUKMLParser হল iOS ইউটিলিটি লাইব্রেরির জন্য Maps SDK-এর অংশ। আপনি এখনও লাইব্রেরি সেট-আপ না করে থাকলে, এই পৃষ্ঠার বাকি অংশ পড়ার আগে সেট-আপ গাইড দেখুন।

সম্পূর্ণ কোড স্যাম্পেলের জন্য, GitHub-এ স্যাম্পেল অ্যাপ দেখুন।

KML ডেটা রেন্ডার করা হচ্ছে

ম্যাপে KML ডেটা রেন্ডার করতে, KML রিসোর্সের (এই উদাহরণে KML_Sample.kml) পাথ সহ GMUKMLParser তৈরি করুন। তারপর, GMUKMLParser ইনস্ট্যান্স পাস করে GMUGeometryRenderer তৈরি করুন। শেষে, GMUGeometryRenderer.render()-কে কল করুন। নিম্নলিখিত কোডের উদাহরণে ম্যাপে KML ডেটা রেন্ডার করা দেখানো হয়েছে:

Swift

import GoogleMapsUtils

class KML: NSObject {
  private var mapView: GMSMapView!

  func renderKml() {
    guard let path = Bundle.main.path(forResource: "KML_Sample", ofType: "kml") else {
      print("Invalid path")
      return
    }

    let url = URL(fileURLWithPath: path)

    let kmlParser = GMUKMLParser(url: url)
    kmlParser.parse()

    let renderer = GMUGeometryRenderer(
      map: mapView,
      geometries: kmlParser.placemarks,
      styles: kmlParser.styles
    )

    renderer.render()
  }
}
      

Objective-C

@import GoogleMapsUtils;

@implementation KML {
  GMSMapView *_mapView;
}

- (void)renderKml {
  NSString *path = [[NSBundle mainBundle] pathForResource:@"KML_Sample" ofType:@"kml"];
  NSURL *url = [NSURL fileURLWithPath:path];
  GMUKMLParser *parser = [[GMUKMLParser alloc] initWithURL:url];
  [parser parse];
  GMUGeometryRenderer *renderer = [[GMUGeometryRenderer alloc] initWithMap:_mapView
                                                                geometries:parser.placemarks
                                                                    styles:parser.styles];
  [renderer render];
}

@end