تراكب صور علي الأرض

تعمل الفئة النهائية العامة GroundOverlay على توسيع كائن Object

التراكب الأرضي هو صورة ثابتة على خريطة. ويحتوي سطح الأرض على السمات التالية:

الموضع
هناك طريقتان لتحديد موضع التراكب الأرضي:
  • عند استخدام موقع جغرافي: يجب توفير صورة للتراكب الأرضي، وعلامة LatLng التي سيتم تثبيت المرساة عليها، وعرض التراكب (بالمتر). تكون موضع الارتساء تلقائيًا على بُعد 50% من أعلى الصورة و50% من يسارها. ويمكن تغيير هذا الإعداد. يمكنك اختياريًا توفير ارتفاع التراكب (بالمتر). إذا لم تقدّم ارتفاع التراكب، سيتم حسابه تلقائيًا للحفاظ على تناسب أبعاد الصورة.
  • استخدام حدود: يجب تقديم سمة LatLngBounds التي ستحتوي على الصورة.
يجب تحديد موضع التراكب الأرضي قبل إضافته إلى الخريطة، وإلا سيتم طرح IllegalArgumentException عند إضافة التراكب الأرضي إلى الخريطة. بالإضافة إلى ذلك، يجب فقط تحديد الموضع باستخدام إحدى هذه الطرق في كائن GroundOverlayOptions، وإلا سيتم عرض IllegalStateException عند التحديد باستخدام طريقة ثانية.
صورة
الصورة (مثل BitmapDescriptor) التي سيتم استخدامها لهذا التراكب. وسيتم تغيير حجم الصورة لتلائم الموضع المتوفر. عليك تحديد صورة قبل إضافة التراكب الأرضي إلى الخريطة، وإذا لم يكن الأمر كذلك، سيتم طرح IllegalArgumentException عند إضافته إلى الخريطة.
الاتجاه
المقدار الذي يجب تدويره الصورة في اتجاه عقارب الساعة وسيكون مركز الدوران هو علامة ارتساء الصورة. ويكون هذا الحقل اختياريًا ويكون الاتجاه التلقائي هو 0، أي فيكون الصورة تمت محاذاتها بحيث يكون الاتجاه لأعلى باتجاه الشمال.
zIndex
ترتيب رسم هذا التراكب الأرضي بالنسبة إلى تراكبات أخرى (بما في ذلك Polyline وTileOverlay، ولكن ليس Marker). يتم رسم تركيبة تحتوي على zIndex أكبر على طبقات تحتوي على فهارس zIndex أصغر. ويكون ترتيب التراكبات ذات قيمة zIndex نفسها عشوائيًا. هذا اختياري، وقيمة zIndex التلقائية هي 0.
الشفافية
شفافية التراكب الأرضي في النطاق [0..1] حيث تشير 0 إلى أنّ التراكب معتم و1 يعني أنّ التراكب شفاف بالكامل. أما إذا كانت الصورة النقطية المحددة شفافة جزئيًا، فسيتم تغيير حجم شفافية كل بكسل وفقًا لذلك (على سبيل المثال، إذا كانت قيمة ألفا في الصورة النقطية 200 بكسل، وحددت شفافية تراكب الأرض كـ 0.25، فسيتم عرض وحدة البكسل على الشاشة بقيمة ألفا 150). تحديد هذه السمة اختيارية والشفافية التلقائية هي 0 (معتم).
مستوى العرض
تشير إلى ما إذا كان التراكب الأرضي مرئيًا أو غير مرئي، أي ما إذا كان مرسومًا على الخريطة أم لا. لا يتم رسم تراكب أرضي غير مرئي، ولكن يحتفظ بكل خصائصه الأخرى. هذا الإجراء اختياري وإذن الوصول التلقائي هو true، أي أنّه مرئي.
إمكانية النقر
إذا أردت معالجة الأحداث التي يتم تنشيطها عندما ينقر المستخدم على سطح الأرض، اضبط هذه السمة على true. ويمكنك تغيير هذه القيمة في أي وقت. والقيمة التلقائية هي false. في حال ضبط هذه السمة على true، سيتلقّى تطبيقك إشعارات على GoogleMap.OnGroundOverlayClickListener المسجَّل من خلال setOnGroundOverlayClickListener(GoogleMap.OnGroundOverlayClickListener).
علامة
Object مرتبط بالتراكب الأرضي. على سبيل المثال، يمكن أن تتضمن السمة Object بيانات حول ما يمثّله التراكب الأرضي. وهذه الطريقة أسهل من تخزين Map<GroundOverlay, Object> منفصل. في مثال آخر، يمكنك ربط رقم تعريف String مطابق للرقم التعريفي من مجموعة بيانات. إنّ حزمة تطوير البرامج (SDK) في "خرائط Google" لنظام التشغيل Android لا تقرأ هذه السمة ولا تكتبها.

يجب استدعاء الطُرق في هذا الصف في سلسلة محادثات واجهة مستخدم Android. وإذا لم يكن الأمر كذلك، سيتم طرح IllegalStateException في وقت التشغيل.

مثال

GoogleMap map = ...; // get a map.
 BitmapDescriptor imageDescriptor = ...; // get an image.
 LatLngBounds bounds = ...; // get a bounds
 // Adds a ground overlay with 50% transparency.
 GroundOverlay groundOverlay = map.addGroundOverlay(new GroundOverlayOptions()
     .image(imageDescriptor)
     .positionFromBounds(bounds)
     .transparency(0.5));
 

ملخّص الطريقة العلنية

boolean
يساوي(كائن آخر)
لاختبار ما إذا كانت قيمة GroundOverlay تساوي قيمة أخرى.
float
getBearing()
للحصول على اتجاه تركيب الأرض بالدرجات في اتجاه عقارب الساعة من الشمال.
LatLngBounds
getBounds()
الحصول على حدود التراكب الأرضي.
float
getHeight()
للحصول على ارتفاع سطح الأرض.
سلسلة
getId()
للحصول على معرّف هذا التراكب الأرضي.
LatLng
getPosition()
للحصول على موقع نقطة الارتساء.
الكائن
getTag()
الحصول على علامة للدائرة.
float
getTransparency()
للحصول على شفافية هذا التراكب الأرضي.
float
getWidth()
للحصول على عرض تركيب الأرض.
float
getZIndex()
للحصول على zIndex لهذا التراكب الأرضي.
int
boolean
isClickable()
للحصول على إمكانية النقر على التراكب الأرضي.
boolean
isVisible()
للحصول على مستوى رؤية هذا التراكب الأرضي.
void
remove()
لإزالة هذا التراكب الأرضي من الخريطة.
void
setBearing(اتجاه عائم)
يتم ضبط اتجاه تراكب الأرض (الاتجاه الذي يؤدي إليه المحور الرأسي لنقاط تركيب الأرض) بالدرجات في اتجاه عقارب الساعة من الشمال.
void
setClickable(منطقية قابلة للنقر)
تُحدِّد إمكانية النقر على التراكب الأرضي.
void
setDimensions(عرض عائم وارتفاع عائم)
لتعيين أبعاد تركيب الأرض.
void
setDimensions(عرض عائم)
لتعيين عرض تراكب الأرض.
void
setImage(BitmapDescriptor imageDescriptor)
لتعيين الصورة لتراكب الأرض.
void
setPosition(LatLng خط الطول)
لتعيين موضع تركيب الأرض من خلال تغيير موقع نقطة الارتساء.
void
setPositionFromBounds(حدود LatLngBounds)
لضبط موضع التراكب الأرضي من خلال ضبطه على LatLngBounds المحدّد.
void
setTag(علامة الكائن)
يضبط علامة التراكب الأرضي.
void
setTransparency(الشفافية العائمة)
لضبط شفافية هذا التراكب الأرضي.
void
setVisible(مرئية منطقية)
لتعيين مستوى رؤية هذا التراكب الأرضي.
void
setZIndex(قيمة عائمة لمؤشر zIndex)
لتعيين zIndex لهذا التراكب الأرضي.

ملخّص الطريقة المكتسبة

الطرق العامة

منطقية عامة يساوي (كائن آخر)

لاختبار ما إذا كانت قيمة GroundOverlay تساوي قيمة أخرى.

المَعلمات
غير ذلك Object.
المرتجعات
  • true إذا كان كلا الكائنين نفس الكائن، أي أن == other.

public float getBearing ()

للحصول على اتجاه تركيب الأرض بالدرجات في اتجاه عقارب الساعة من الشمال.

المرتجعات
  • اتجاه التراكب الأرضي.

عامة LatLngBounds getBounds ()

الحصول على حدود التراكب الأرضي. يتجاهل هذا دوران تراكب الأرض.

المرتجعات
  • LatLngBounds يحتوي على تراكب الأرض، مع تجاهل التدوير.

public float getHeight ()

للحصول على ارتفاع سطح الأرض.

المرتجعات
  • ارتفاع تركيب الأرض بالمتر.

public سلسلة getId ()

للحصول على معرّف هذا التراكب الأرضي. وسيكون المعرّف فريدًا بين جميع GroundOverlays على الخريطة.

المرتجعات
  • معرف التراكب الأرضي هذا.

عامة LatLng getPosition ()

للحصول على موقع نقطة الارتساء.

المرتجعات
  • الموضع على الخريطة (a LatLng).

public Object getTag ()

الحصول على علامة للدائرة.

المرتجعات
  • العلامة في حال ضبط العلامة باستخدام setTag، وnull في حال عدم ضبط أي علامة.

عامة عائمة getTransparency ()

للحصول على شفافية هذا التراكب الأرضي.

المرتجعات
  • شفافية هذا التراكب الأرضي.

public float getWidth ()

للحصول على عرض تركيب الأرض.

المرتجعات
  • عرض تركيب الأرض بالمتر.

عدد عائم getZIndex ()

للحصول على zIndex لهذا التراكب الأرضي.

المرتجعات
  • zIndex لتراكب الأرض.

public int hashCode ()

عامة منطقية isClickable ()

للحصول على إمكانية النقر على التراكب الأرضي. إذا كان سطح الأرض القابل للنقر، فسيتلقّى تطبيقك إشعارات إلى GoogleMap.OnGroundOverlayClickListener عندما ينقر المستخدم على سطح الأرض. تم تسجيل أداة معالجة الحدث من خلال setOnGroundOverlayClickListener(GoogleMap.OnGroundOverlayClickListener).

المرتجعات
  • true إذا كان سطح الأرض قابلاً للنقر، وإلا، فسيتم عرض false.

عامة منطقية isVisible ()

للحصول على مستوى رؤية هذا التراكب الأرضي. يُرجى العِلم أنّ هذا لا يحدد ما إذا كان التراكب الأرضي معروضًا على الشاشة، ولكنه لا يحدد ما إذا كان سيتم رسمه إذا كان مضمَّنًا في إطار عرض الكاميرا.

المرتجعات
  • رؤية هذا التراكب الأرضي.

إلغاء عام إزالة ()

لإزالة هذا التراكب الأرضي من الخريطة. بعد إزالة أي تراكب أرضي، يصبح سلوك جميع طرقه غير محدد.

باطلة عامة setBearing (إزاحة عائمة)

يتم ضبط اتجاه تراكب الأرض (الاتجاه الذي يؤدي إليه المحور الرأسي لنقاط تركيب الأرض) بالدرجات في اتجاه عقارب الساعة من الشمال. يتم إجراء الدوران حول نقطة الارتساء.

المَعلمات
يحمل تتجه درجات في اتجاه عقارب الساعة من الشمال

إلغاء علني setClickable (قيمة منطقية قابلة للنقر)

تُحدِّد إمكانية النقر على التراكب الأرضي. إذا كان سطح الأرض القابل للنقر، فسيتلقّى تطبيقك إشعارات إلى GoogleMap.OnGroundOverlayClickListener عندما ينقر المستخدم على سطح الأرض. تم تسجيل أداة معالجة الحدث من خلال setOnGroundOverlayClickListener(GoogleMap.OnGroundOverlayClickListener).

المَعلمات
قابل للنقر عليه إعداد جديد لإمكانية النقر للتراكب الأرضي.

فارغ عام setDimensions (العرض العائم، الارتفاع العائم)

لتعيين أبعاد تركيب الأرض. سيتم تمديد الصورة لتلائم الأبعاد.

المَعلمات
width العرض بالمتر
الطول الارتفاع بالمتر

فارغ عام setDimensions (عرض عائم)

لتعيين عرض تراكب الأرض. وسيتم تعديل ارتفاع سطح الأرض المركّب وفقًا لذلك للحفاظ على نسبة العرض إلى الارتفاع.

المَعلمات
width العرض بالمتر

إلغاء عام setImage (BitmapDescriptor imageDescriptor)

لتعيين الصورة لتراكب الأرض. ستشغل الصورة الجديدة حدود الصورة القديمة نفسها.

المَعلمات
imageDescriptor BitmapDescriptor لاستخدامها في هذا التراكب الأرضي.

إلغاء عام setPosition (LatLng latLng)

لتعيين موضع تركيب الأرض من خلال تغيير موقع نقطة الارتساء. يحتفظ بجميع الخصائص الأخرى للصورة.

المَعلمات
latLng LatLng الذي يمثّل الموقع الجديد لوضع نقطة الارتساء.

إلغاء عام setPositionFromBounds (LatLngBounds)

لضبط موضع التراكب الأرضي من خلال ضبطه على LatLngBounds المحدّد. وستتجاهل هذه الطريقة دوران (الاتجاه) لتراكب الأرض عند تحديد موضعه، إلا سيستمر استخدام المحمل عند رسمه.

المَعلمات
حدود LatLngBounds حيث يتم وضع التراكب الأرضي

إلغاء عام setTag (علامة الكائن)

يضبط علامة التراكب الأرضي.

يمكنك استخدام هذه السمة لربط Object عشوائي بهذا التراكب الأرضي. على سبيل المثال، يمكن أن يحتوي Object على بيانات حول ما يمثله التراكب الأرضي. وهذه الطريقة أسهل من تخزين Map<GroundOverlay, Object> منفصلة. وكمثال آخر، يمكنك ربط رقم تعريف String مطابق للرقم التعريفي من مجموعة بيانات. حزمة تطوير البرامج (SDK) لخرائط Google لنظام التشغيل Android لا تقرأ هذه السمة ولا تكتبها. تقع على عاتقك مسؤولية الاتصال برقم setTag(null) لمحو العلامة عند الاستغناء عنها، وذلك لمنع تسرُّب الذاكرة في تطبيقك.

المَعلمات
العلامة وإذا كانت قيمة فارغة، فسيتم محو العلامة.

الإلغاء العلني setTransparency (الشفافية العائمة)

لضبط شفافية هذا التراكب الأرضي. اطّلِع على المستندات في أعلى هذا الصف للحصول على مزيد من المعلومات.

المَعلمات
الشفافية قيمة عائمة في النطاق [0..1] حيث تعني 0 أنّ التراكب الأرضي غير شفاف، وتشير السمة 1 إلى أنّ التراكب الأرضي شفاف.

فراغ علني setVisible (boolean visible)

لتعيين مستوى رؤية هذا التراكب الأرضي. لا يتم رسم تراكب أرضي عندما لا يكون مرئيًا، ولكنه يحتفظ بجميع خصائصه الأخرى.

المَعلمات
مرئي إذا true، فسيكون تراكب الأرض مرئيًا؛ وإذا كان false، فلا يكون

إلغاء علني setZIndex (float zIndex)

لتعيين zIndex لهذا التراكب الأرضي. اطّلِع على المستندات في أعلى هذا الصف للحصول على مزيد من المعلومات.

المَعلمات
zIndex zIndex لهذا التراكب الأرضي