এই পৃষ্ঠায় দেখানো হয়েছে কীভাবে একটি মার্কারের জন্য সংঘর্ষ আচরণ (collision behavior) নির্ধারণ করতে হয়। সংঘর্ষ আচরণ নিয়ন্ত্রণ করে যে, একটি মার্কার অন্য একটি মার্কারের সাথে সংঘর্ষে (ওভারল্যাপ) পড়লে কীভাবে প্রদর্শিত হবে।
সংঘর্ষের আচরণ নির্ধারণ করতে, collisionBehavior নিম্নলিখিতগুলির মধ্যে একটিতে সেট করুন:
-
REQUIRED: সংঘর্ষ নির্বিশেষে সর্বদা মার্কারটি প্রদর্শন করতে হবে। -
REQUIRED_AND_HIDES_OPTIONAL: সংঘর্ষ নির্বিশেষে মার্কারটি সর্বদা প্রদর্শন করুন, এবং যে কোনোOPTIONAL_AND_HIDES_LOWER_PRIORITYমার্কার বা লেবেল যা মার্কারটির সাথে ওভারল্যাপ করবে তা লুকিয়ে ফেলুন। -
OPTIONAL_AND_HIDES_LOWER_PRIORITY: মার্কারটি কেবল তখনই প্রদর্শন করুন যখন এটি অন্য মার্কারের সাথে ওভারল্যাপ না করে। যদি এই ধরণের দুটি মার্কার ওভারল্যাপ করে, তবে যেটিরzIndexবেশি সেটি দেখানো হবে। যদি তাদেরzIndexএকই হয়, তবে যেটির উল্লম্ব স্ক্রিন অবস্থান কম সেটি দেখানো হবে।
নিম্নলিখিত উদাহরণটি একটি মার্কারের জন্য সংঘর্ষ আচরণ নির্ধারণ করা দেখাচ্ছে:
const marker = new Marker3DElement({ position: { lat, lng }, // Try setting a different collision behavior here. collisionBehavior: 'REQUIRED', });
একটি লেবেলের সংঘর্ষ আচরণ নিয়ন্ত্রণ করুন
আপনি একটি মার্কারের পিন এবং লেবেল টেক্সটের সংঘর্ষ আচরণ আলাদাভাবে নিয়ন্ত্রণ করতে পারেন। কিছু ক্ষেত্রে, প্রাসঙ্গিকতা বজায় রাখার জন্য স্ক্রিনে মার্কার পিনগুলো দৃশ্যমান রেখে লেবেলগুলো লুকিয়ে রাখা সুবিধাজনক হতে পারে। এটি করার জন্য, <gmp-marker-3d> এর সিবলিং হিসেবে একটি <gmp-label-3d> এলিমেন্ট যোগ করুন এবং ` for অ্যাট্রিবিউট ব্যবহার করে সেগুলোকে লিঙ্ক করুন।
নিম্নলিখিত কোড নমুনাটি একটি মার্কার থেকে আলাদাভাবে একটি লেবেলের জন্য সংঘর্ষের আচরণ নির্ধারণ করা প্রদর্শন করে:
const markerWithIndependentLabel = new Marker3DElement({ position: { lat: 37.423, lng: -122.015 }, }); markerWithIndependentLabel.id = 'marker-1'; const label = new Label3DElement({ collisionBehavior: CollisionBehavior.OPTIONAL_AND_HIDES_LOWER_PRIORITY, for: 'marker-1', }); label.append('Independent label example'); map.append(markerWithIndependentLabel); map.append(label);