یک نقشه سه بعدی به برنامه خود اضافه کنید، یک نقشه سه بعدی به برنامه خود اضافه کنید

پلتفرم را انتخاب کنید: Android iOS JavaScript

Basic maps of Seattle, San Francisco, and
Paris

در این صفحه مثالی از نحوه افزودن یک نقشه سه بعدی اولیه به برنامه iOS با استفاده از Maps 3D SDK برای iOS ارائه شده است. در دستورالعمل‌های این صفحه فرض می‌شود که شما قبلاً مراحل صفحه Setup را انجام داده‌اید و موارد زیر را دارید:

  • پروژه Google Cloud با Maps 3D SDK برای iOS فعال است
  • یک کلید API Maps 3D SDK برای iOS
  • Xcode نسخه 16.0 یا بالاتر با بسته SDK Maps 3D برای iOS اضافه شده است.

برای اطلاعات بیشتر در مورد این پیش نیازها، به تنظیمات مراجعه کنید.

کدهای پیشرفته تری را دنبال کنید .

نمونه کدهای بیشتری را در GitHub مشاهده کنید .

بخش 1: یک برنامه SwiftUI اساسی ایجاد کنید

  1. یک برنامه جدید در Xcode ایجاد کنید.
  2. نام محصول خود را روی Hello3DWorld با شناسه سازمان روی com.example تنظیم کنید. نام بسته باید com.example.Hello3DWorld باشد.
  3. رابط SwiftUI را انتخاب کنید.
  4. کتابخانه Maps 3D را به برنامه خود اضافه کنید. دستورالعمل ها را در بخش تنظیمات ببینید .

قسمت 2: اضافه کردن نقشه

Minimal 3D map of a
globe

  1. فایلی به نام ContentView.swift را باز کنید. این نقطه ورودی و مسیریابی اصلی برنامه شما است.

  2. SwiftUI و بسته GoogleMaps3D را وارد کنید.

  3. همه کدهای داخل اعلان بدنه را با Map(mode: .hybrid) جایگزین کنید.

    حداقل پیکربندی اولیه ای که برای مقداردهی اولیه Map نیاز دارید، MapMode است:

    • هیبرید، یا
    • .ماهواره

    فایل ContentView.swift شما باید به شکل زیر باشد:

    import SwiftUI
    import GoogleMaps3D
    
    struct ContentView: View {
      var body: some View {
        Map(mode: .hybrid)
      }
    }
    
    #Preview {
      ContentView()
    }
    

قسمت 3: کلید API خود را تنظیم کنید.

  1. کلید API باید قبل از مقداردهی اولیه نقشه تنظیم شود. این کار را با تنظیم Map.apiKey در کنترل کننده رویداد init() View که حاوی Map است انجام دهید.

    import SwiftUI
    import GoogleMaps3D
    
    struct ContentView: View {
      init () {
        Map.apiKey = "YOUR_API_KEY"
      }
    
      var body: some View {
        Map(mode: .hybrid)
      }
    }
    

قسمت 4: از دوربین برای کنترل نمای نقشه استفاده کنید

نماهای نقشه سه بعدی توسط کلاس Camera کنترل می شود. در این مرحله یاد خواهید گرفت که چگونه مکان، ارتفاع، عنوان، شیب، رول و محدوده را برای سفارشی کردن نمای نقشه مشخص کنید.

  1. فراخوانی تابع Map() را تغییر دهید تا یک ویژگی initialCamera را شامل شود. initialCamera برای نمایش نمایی از مرکز شهر منهتن راه اندازی کنید.

    import SwiftUI
    import GoogleMaps3D
    
    struct ContentView: View {
      init () {
        Map.apiKey = "YOUR_API_KEY"
      }
      var body: some View {
        Map(initialCamera: .init(
          latitude: 40.748339,
          longitude: -73.985912,
          altitude: 211.1,
          heading: 52,
          tilt: 68,
          range: 1039
        ), mode: .hybrid)
      }
    }
    

کد بالا مقادیر این پارامترها را تنظیم می کند:

  • heading : یاتاقان بر حسب درجه از شمال به سمت دوربین.
  • tilt : زاویه شیب بر حسب درجه، که 0 مستقیماً بالای سر و 90 به صورت افقی است.
  • roll : زاویه چرخش در اطراف صفحه عمودی دوربین، بر حسب درجه.
  • range : فاصله دوربین بر حسب متر از موقعیت جغرافیایی، طول جغرافیایی
  • altitude : ارتفاع دوربین از سطح دریا.

اگر هیچ یک از این پارامترهای اضافی را ارائه نکنید، یک مقدار پیش فرض استفاده خواهد شد.

برای اینکه نمای دوربین داده‌های سه بعدی بیشتری را نشان دهد، پارامترهای اولیه را طوری تنظیم کنید که نمای نزدیک‌تر و کج‌تری را نشان دهد.

قسمت 6: برنامه خود را پیش نمایش و اجرا کنید

Basic 3D map of New York City

  1. یک پیش نمایش Xcode اضافه کنید

    پیش نمایش ها یک ویژگی قدرتمند XCode است که به شما امکان می دهد بدون نیاز به استفاده از شبیه ساز یا دستگاه خارجی، برنامه خود را ببینید و با آن تعامل داشته باشید.

    برای افزودن پیش‌نمایش، یک بلوک کد #Preview {} خارج از ساختار خود اضافه کنید.

    #Preview {
      CameraDemo()
    }
    
  2. برنامه را اجرا کنید

برنامه را بسازید و اجرا کنید.

تبریک می گویم!

شما با موفقیت یک نقشه سه بعدی را به یک برنامه اضافه کردید!

در مرحله بعد، می‌توانید ویژگی‌های پیشرفته‌تر Maps 3D SDK برای iOS، مانند انیمیشن‌های مسیر دوربین ، نشانگرهای سه‌بعدی یا چند ضلعی‌ها را کاوش کنید.