تحتوي الخرائط المعروضة من خلال "خرائط ثلاثية الأبعاد لصور واقعية" في Maps JavaScript API على عناصر واجهة مستخدم تتيح للمستخدمين التفاعل مع الخريطة. تُعرف هذه العناصر باسم عناصر التحكّم ويمكنك اختيار تضمينها في واجهة المستخدم أو عدم تضمينها. في حال إيقاف عناصر التحكّم في واجهة المستخدم، سيظل بإمكان المستخدم التنقّل في الخريطة باستخدام اختصارات لوحة المفاتيح.
تتيح "خرائط ثلاثية الأبعاد لصور واقعية" في Maps JavaScript API أيضًا توجيه المستخدمين في الخريطة باستخدام مسارات الكاميرا المضبوطة مسبقًا. ويمكن تخصيص هذه المسارات ودمجها لإنشاء تجارب ثلاثية الأبعاد غنية.
عناصر التحكّم في الاستكشاف
تعرض الصورة التالية مجموعة عناصر التحكّم التلقائية التي تعرضها "خرائط ثلاثية الأبعاد لصور واقعية" في Maps JavaScript API:
في ما يلي قائمة بالمجموعة الكاملة من عناصر التحكّم في "خرائط ثلاثية الأبعاد لصور واقعية" في Maps JavaScript:
يعرض عنصر التحكّم في التكبير/التصغير الزرَّين "+" و "-" لتغيير مستوى التكبير/التصغير في الخريطة.
يتيح لك التحكّم في الإمالة تغيير إمالة الكاميرا.
يتيح لك عنصر التحكّم في التدوير تغيير اتجاه الكاميرا.
يعرض عنصر التحكّم في التنقّل أزرار "→" و"←" و"↑" و "↓" لتغيير مركز الخريطة.
يوضّح نموذج الرمز التالي كيفية تفعيل عناصر التحكّم في الاستكشاف أو إيقافها:
توفّر "خرائط ثلاثية الأبعاد لصور واقعية" في Maps JavaScript مسارَين مُعدّين مسبقًا للكاميرا. يمكن تخصيص مسارات الكاميرا من خلال تغيير مدة الرسوم المتحركة (وبالتالي زيادة السرعة أو تقليلها)، أو من خلال الجمع بينها لإنشاء تجارب سينمائية أكثر.
تاريخ التعديل الأخير: 2025-07-22 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","easyToUnderstand","thumb-up"],["ساعَدني المحتوى في حلّ مشكلتي.","solvedMyProblem","thumb-up"],["غير ذلك","otherUp","thumb-up"]],[["لا يحتوي على المعلومات التي أحتاج إليها.","missingTheInformationINeed","thumb-down"],["الخطوات معقدة للغاية / كثيرة جدًا.","tooComplicatedTooManySteps","thumb-down"],["المحتوى قديم.","outOfDate","thumb-down"],["ثمة مشكلة في الترجمة.","translationIssue","thumb-down"],["مشكلة في العيّنات / التعليمات البرمجية","samplesCodeIssue","thumb-down"],["غير ذلك","otherDown","thumb-down"]],["تاريخ التعديل الأخير: 2025-07-22 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],null,["Select platform: [Android](/maps/documentation/maps-3d/android-sdk/configure-camera-controls \"View this page for the Android platform docs.\") [iOS](/maps/documentation/maps-3d/ios-sdk/configure-camera-controls \"View this page for the iOS platform docs.\") [JavaScript](/maps/documentation/javascript/3d/map-controls \"View this page for the JavaScript platform docs.\")\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n| This product or feature is in Preview (pre-GA). Pre-GA products and features might have limited support, and changes to pre-GA products and features might not be compatible with other pre-GA versions. Pre-GA Offerings are covered by the [Google\n| Maps Platform Service Specific Terms](https://cloud.google.com/maps-platform/terms/maps-service-terms). For more information, see the [launch stage\n| descriptions](/maps/launch-stages).\n\n\u003cbr /\u003e\n\nControls Overview\n\nThe maps displayed through the Photorealistic 3D Maps in Maps JavaScript API contain UI elements to support\nuser interaction with the map. These elements are known as *controls* and you\ncan elect to include them in the UI, or not to. If you suppress the UI controls,\nthe user can still navigate around the map using keyboard shortcuts.\n\nThe Photorealistic 3D Maps in Maps JavaScript API also supports guiding your users around the map using\npreset camera paths. These paths can be customized and combined to create rich\n3D experiences.\n| **Tip:** To enforce restrictions on the latitude, longitude, and camera behavior, see [Control the map and camera](/maps/documentation/javascript/3d/interaction).\n\nExploration controls\n\nThe following image shows the default set of controls displayed by the\nPhotorealistic 3D Maps in Maps JavaScript API:\n\nBelow is a list of the full set of controls in the Photorealistic 3D Maps in Maps JavaScript:\n\n- The **Zoom control** displays \"+\" and \"-\" buttons for changing the zoom level of the map.\n- The **Tilt control** lets you change the camera's tilt.\n- The **Rotate control** lets you change the camera's heading.\n- The **Move control** displays \"←\", \"→\", \"↑\", and \"↓\" buttons for changing the center of the map.\n\nThe following code sample demonstrates toggling exploration controls: \n\nJavaScript \n\n const map = new Map3DElement({\n center: { lat: 37.819852, lng: -122.478549, altitude: 2000 },\n tilt: 75,\n heading: 330,\n mode: MapMode.SATELLITE,\n defaultUIDisabled: true,\n });\n\nHTML \n\n \u003cgmp-map-3d\n mode=\"hybrid\"\n range=\"639.274301042242\"\n tilt=\"64.92100184857551\"\n center=\"34.0768990953219,-118.47450491266041,292.9794737933403\"\n heading=\"-61.02026752077781\"\n default-ui-disabled\n \u003e\u003c/gmp-map-3d\u003e\n\nPreset camera paths\n\nPhotorealistic 3D Maps in Maps JavaScript provides two preset camera paths. The camera paths can be\ncustomized by changing the duration of the animation (thereby increasing or\ndecreasing speed), or by combining them to create more cinematic experiences.\n\nPhotorealistic 3D Maps in Maps JavaScript supports the following camera paths:\n\n- `flyCameraTo` animation flies from the map center to a specified destination.\n- `flyCameraAround` animation rotates around a point on the map the specified number of rounds.\n\nThe two available paths may be combined to fly to a point of interest, rotate\naround it, and then stop when specified.\n\nFly to\n\nThe following code sample demonstrates animating the camera to fly to a\nlocation: \n\n const map = document.querySelector('gmp-map-3d');\n\n async function init() {\n await google.maps.importLibrary('maps3d');\n\n map.flyCameraTo({\n endCamera: {\n center: { lat: 37.6191, lng: -122.3816 },\n tilt: 67.5,\n range: 1000\n },\n durationMillis: 5000\n });\n }\n\nFly around\n\nThe following code sample demonstrates animating the camera to fly around a\nlocation: \n\n const map = document.querySelector('gmp-map-3d');\n\n async function init() {\n await google.maps.importLibrary('maps3d');\n\n map.flyCameraAround({\n camera,\n durationMillis: 60000,\n rounds: 1\n });\n }\n\nCombine animations\n\nThe following code sample demonstrates combining animations to fly the camera to\na location, and then rotate around the location when the first animation ends: \n\n const map = document.querySelector('gmp-map-3d');\n\n async function init() {\n await google.maps.importLibrary('maps3d');\n\n map.flyCameraTo({\n endCamera: flyToCamera,\n durationMillis: 5000,\n });\n\n map.addEventListener('gmp-animation-end', () =\u003e {\n map.flyCameraAround({\n camera: flyToCamera,\n durationMillis: 60000,\n rounds: 1\n });\n }, {once: true});\n }\n\nNext steps\n\n- Learn how to [restrict the map and camera](/maps/documentation/javascript/3d/interaction).\n- Learn how to [listen for and handle user interaction](/maps/documentation/javascript/3d/map-events)."]]