يحتفظ سيناريو المشاهد بالرسم البياني للمشهد، وهو عبارة عن عرض هرمي لمحتوى مشهد. يمكن أن يحتوي المشهد على عُقد فرعية أو أكثر ويمكن أن تحتوي كل عُقدة على عُقد فرعية أو أكثر.
ويوفّر المشهد أيضًا نتيجة اختبار، وهي طريقة لمعرفة العقدة التي تم لمسها من خلال MotionEvent أو Ray.
الصفوف المتداخلة
محسّنة | Scene.OnPeekTouchListener | تعريف الواجهة لاستدعاء استدعاء عندما يتم إرسال حدث اللمس إلى مشهد. | |
محسّنة | Scene.OnTouchListener | تعريف الواجهة لاستدعاء استدعاء عندما يتم إرسال حدث اللمس إلى مشهد. | |
محسّنة | Scene.OnUpdateListener | تعريف الواجهة لاستدعاء استدعاء واحد مرة كل إطار مباشرة قبل تحديث المشهد. |
الحقول
مُعلّمات Environmental HdrParameters الثابتة العامة | DEFAULT_HDR_PARAMETERS |
الأشغال العامة
الأساليب العامة
باطلة |
addOnPeekTouchListener(Scene.OnPeekTouchListener onPeekTouchListener)
تتم إضافة مستمع سيتم الاتصال به قبل استدعاء
Scene.OnTouchListener . |
باطلة |
addOnUpdateListener(Scene.OnUpdateListener في UpdateUpdateListener)
لإضافة مستمع يتم طلبه مرة واحدة لكل إطار قبل تحديث المشهد مباشرةً.
|
باستخدام الكاميرا |
getCamera()
اختر الكاميرا المُستخدَمة لعرض المشهد.
|
العقدة |
getSunlight()
الحصول على عقدة ضوء الشمس التلقائية.
|
SceneView |
getView()
عرض SceneView المُستخدَم لإنشاء المشهد.
|
نتيجة النتيجة |
hitTest(MotionEventMotionEvent)
يختبر ما إذا كان حدث الحركة يلمس أي عُقد في المشهد، استنادًا إلى اختبار نتيجة الراي
الذي يكون أصله هو موضع الشاشة لحدث الحركة، ويتم عرض نتيجة نتيجة اختبار تحتوي على العقدة الأقرب إلى الشاشة.
|
نتيجة النتيجة | |
ArrayList<HitTestResult> |
hitTestAll(Ray ray)
الاختبارات لمعرفة ما إذا كان هناك شعاع يضرب أي عُقد في المشهد ويعرض قائمة
HitTestالنتائج التي تتضمّن جميع العُقد التي تم النقر عليها، مرتّبة حسب المسافة.
|
ArrayList<HitTestResult> |
hitTestAll(MotionEvent actionEvent)
عمليات الاختبار لمعرفة ما إذا كان حدث الحركة يلمس أي عُقد ضمن المشهد ويعرض قائمة
HitTestResults تحتوي على جميع العُقد التي تم تحديدها، مع ترتيبها حسب المسافة.
|
باطلة |
onAddChild(عنصر عقدة)
|
باطلة |
onRemoveChild(عنصر فرعي للعقدة)
|
العقدة |
overlapTest(عقدةالعقدة)
يتم إجراء اختبارات لمعرفة ما إذا كان شكل التضارب المتعلق بعقدة معيّنة يتداخل مع شكل التصادم لأي عُقد أخرى في المشهد باستخدام
getCollisionShape() . |
ArrayList<Node> |
overlapTestAll(Node عقدة)
الاختبار لمعرفة ما إذا كانت العُقدة تتداخل مع أي عُقد أخرى ضمن المشهد باستخدام
getCollisionShape() . |
باطلة |
removeOnPeekTouchListener(Scene.OnPeekTouchListener على PPekekTouchListener)
تتم إزالة المستمع الذي سيتم الاتصال به قبل استدعاء
Scene.OnTouchListener . |
باطلة |
removeOnUpdateListener(Scene.OnUpdateListener في UpdateUpdateListener)
تتم إزالة المستمع الذي سيتم استدعاؤه مرة واحدة لكل إطار قبل تحديث المشهد مباشرةً.
|
باطلة |
setLightRating(color colorتصحيح التصحيح وكثافة عائم وحدات البكسل)
لضبط تقدير الإضاءة لتعديل إضاءة الإضاءة وكثافتها.
|
باطلة |
setOnTouchListener(Scene.OnTouchListener على onTouchListener)
سجِّل معاودة اتصال ليتم استدعاؤها عند لمس المكان.
|
الطرق المكتسَبة
الحقول
Public Static Final EnvironmentalHdrParameters DEFAULT_HDR_PARAMETERS
الأشغال العامة
مشاهَدة مشهد (عرض بالمشاهَدة)
أنشِئ مشهدًا باستخدام السياق المحدَّد.
المَعلمات
عرض |
---|
الأساليب العامة
Public Empty addOnPeekTouchListener (Scene.OnPeekTouchListener onPeekTouchListener)
تتم إضافة مستمع سيتم الاتصال به قبل استدعاء Scene.OnTouchListener
. ويتم استدعاء ذلك حتى إذا تم استهلاك الإيماءة، ما يتيح رصد جميع أحداث الحركة التي يتم إرسالها إلى المشهد. ويُسمّى ذلك حتى إذا لم تكن اللمس تتجاوز عُقدة، وفي هذه الحالة، ستكون قيمة getNode()
فارغة. وسيتم استدعاء المستمعين بالترتيب الذي تمت إضافتهم به.
المَعلمات
onPeekTouchListener | المستمع السريع الذي تتم إضافته لإضافته |
---|
Public Empty addOnUpdateListener (Scene.OnUpdateListener onUpdateListener)
لإضافة مستمع يتم طلبه مرة واحدة لكل إطار قبل تحديث المشهد مباشرةً. وسيتم استدعاء المستمعين بالترتيب الذي تمت إضافتهم به.
المَعلمات
onUpdateListener | تحديث المستمع الذي تريد إضافته |
---|
علنية الكاميرا getCamera ()
اختر الكاميرا المُستخدَمة لعرض المشهد. الكاميرا هي نوع من العُقد.
المرتجعات
- الكاميرا المستخدمة لعرض أجواء الإضاءة
علنية عُقدة getSunlight ()
الحصول على عقدة ضوء الشمس التلقائية.
المرتجعات
- عقدة ضوء الشمس المستخدمة لإضاءة المشهد
Public HitTestResult hitTest (MotionEvent actionEvent)
يختبر ما إذا كان حدث الحركة يلمس أي عُقد في المشهد، استنادًا إلى اختبار نتيجة الراي الذي يكون أصله هو موضع الشاشة لحدث الحركة، ويتم عرض نتيجة نتيجة اختبار تحتوي على العقدة الأقرب إلى الشاشة.
المَعلمات
actionEvent | حدث الحركة المطلوب استخدامه في الاختبار |
---|
المرتجعات
- تتضمّن النتيجة العُقدة الأولى التي نتجت عن حدث الحركة (قد تكون فارغة)، ومعلومات عن مكان وقوع حدث الحركة في العُقدة في الفضاء العالمي.
Public HitTestResult hitTest (Ray ray)
يتم اختبارها لمعرفة ما إذا كانت هناك أشعة تشير إلى أي عُقد في المشهد وتُخرج نتيجة نتيجة اختبار تحتوي على أقرب عقدة إلى أصل الشعاع الذي يتقاطع مع الشعاع.
المَعلمات
ray | الشعاع الذي تريد استخدامه للاختبار |
---|
المرتجعات
- تتضمّن النتيجة العُقدة الأولى التي ضربها الشعاع (قد تكون فارغة)، ومعلومات حول مكان وصول العُقدة إلى العقدة في الفضاء العالمي
راجع أيضًا
Public ArrayList<HitTestResult> hitTestAll (Ray ray)
الاختبارات لمعرفة ما إذا كان هناك شعاع يضرب أي عُقد في المشهد ويعرض قائمة HitTestالنتائج التي تتضمّن جميع العُقد التي تم النقر عليها، مرتّبة حسب المسافة.
المَعلمات
ray | الشعاع الذي يتم استخدامه في الاختبار. |
---|
المرتجعات
- وتتم التعبئة بنتيجة نتيجة اختبار لكل عُقدة تم ترتيبها حسب المسافة. ويكون الحقل فارغًا في حال عدم تسجيل أي عُقد.
راجع أيضًا
Public ArrayList<HitTestResult> hitTestAll (MotionEvent actionEvent)
عمليات الاختبار لمعرفة ما إذا كان حدث الحركة يلمس أي عُقد ضمن المشهد ويعرض قائمة HitTestResults تحتوي على جميع العُقد التي تم تحديدها، مع ترتيبها حسب المسافة.
المَعلمات
actionEvent | حدث الحركة المطلوب استخدامه في الاختبار. |
---|
المرتجعات
- وتتم التعبئة بنتيجة نتيجة اختبار لكل عُقدة تم ترتيبها حسب المسافة. ويكون الحقل فارغًا في حال عدم تسجيل أي عُقد.
علنية عُقدة overlapTest (عقدة)
يتم إجراء اختبارات لمعرفة ما إذا كان شكل التضارب المتعلق بعقدة معيّنة يتداخل مع شكل التصادم لأي عُقد أخرى في المشهد باستخدام getCollisionShape()
. لا يلزم أن تكون العقدة المستخدَمة للاختبار نشطة.
المَعلمات
عقدة | العقدة المطلوب استخدامها في الاختبار. |
---|
المرتجعات
- عقدة تتداخل مع عقدة الاختبار. إذا لم تكن هناك عقدة تتداخل مع عقدة الاختبار، ستكون هذه القيمة فارغة. إذا كانت هناك عُقد متعددة تتداخل مع عُقدة الاختبار، يمكن أن تكون أي عقدة من هذه العُقد.
راجع أيضًا
Public ArrayList<Node> overlapTestAll (عقدة)
الاختبار لمعرفة ما إذا كانت العُقدة تتداخل مع أي عُقد أخرى ضمن المشهد باستخدام getCollisionShape()
. لا يلزم أن تكون العقدة المستخدَمة للاختبار نشطة.
المَعلمات
عقدة | العقدة المطلوب استخدامها في الاختبار. |
---|
المرتجعات
- قائمة بجميع العُقد التي تتداخل مع عقدة الاختبار. إذا لم تتداخل أي عقدة، ستكون العقدة فارغة.
راجع أيضًا
Public Empty removeOnPeekTouchListener (Scene.OnPeekTouchListener onPeekTouchListener)
تتم إزالة المستمع الذي سيتم الاتصال به قبل استدعاء Scene.OnTouchListener
.
ويتم استدعاء ذلك حتى إذا تم استهلاك الإيماءة، ما يتيح رصد جميع أحداث الحركة التي يتم إرسالها إلى المكان. ويُسمّى ذلك حتى إذا لم تكن اللمس تتجاوز عُقدة، وفي هذه الحالة، ستكون قيمة getNode()
فارغة.
المَعلمات
onPeekTouchListener | المستمع السريع الذي تمت إزالته لإزالته |
---|
Public Empty removeOnUpdateListener (Scene.OnUpdateListener onUpdateListener)
تتم إزالة المستمع الذي سيتم استدعاؤه مرة واحدة لكل إطار قبل تحديث المشهد مباشرةً.
المَعلمات
onUpdateListener | تحديث المستمع الذي تريد إزالته |
---|
لضبط تقدير الإضاءة لتعديل إضاءة الإضاءة وكثافتها. وستستخدم المصابيح المعروضة مجموعة من هذه القيم ولون الإضاءة وكثافتها. تعني قيمة {/4}تصحيح الألوان الأبيض وكثافة وحدة البكسل 1 أنه لم يتم إجراء أي تغييرات على إعدادات الإضاءة.
وتستخدِم مشاهد AR Sceneform داخليًا لتعديل الإضاءة بناءً على القيم من ARCore. يُطلق على مشهد الواقع المعزّز اسم هذه الإمكانية تلقائيًا، وقد يُلغي ذلك إعدادات أخرى. في معظم الحالات، لا تحتاج إلى طلب ذلك صراحةً.
المَعلمات
تصحيح الألوان | يعدّل لون الإضاءة في المشهد. |
---|---|
كثافة البكسل | يعدّل حدّة الإضاءة. |
Public Empty setOnTouchListener (Scene.OnTouchListener onTouchListener)
سجِّل معاودة اتصال ليتم استدعاؤها عند لمس المكان. سيتم استدعاء معاودة الاتصال بعد
إرسال حدث اللمس إلى العُقد في المشهد إذا لم تستهلك أي عُقدة الحدث. ويُعرَف ذلك
حتى إذا لم تكن اللمس فوق عُقدة، وفي هذه الحالة، ستكون قيمة السمة getNode()
فارغة.
المَعلمات
onTouchListener | المستمع الذي تعمل باللمس لإرفاقه |
---|