صحنه

صحنه کلاس عمومی

Sceneform Scene نمودار صحنه را حفظ می کند، سازماندهی سلسله مراتبی محتوای یک صحنه. یک صحنه می تواند صفر یا چند گره فرزند داشته باشد و هر گره می تواند صفر یا چند گره فرزند داشته باشد.

Scene همچنین تست ضربه را ارائه می دهد، راهی برای تشخیص اینکه کدام گره توسط MotionEvent یا Ray لمس شده است.

کلاس های تو در تو

رابط صحنه.OnPeekTouchListener تعریف واسط برای فراخوانی تماس زمانی که یک رویداد لمسی به یک صحنه ارسال می شود.
رابط صحنه. OnTouchListener تعریف واسط برای فراخوانی تماس زمانی که یک رویداد لمسی به یک صحنه ارسال می شود.
رابط Scene.OnUpdateListener تعریف رابط برای یک فراخوانی که باید یک بار در هر فریم بلافاصله قبل از به‌روزرسانی صحنه فراخوانی شود.

زمینه های

عمومی استاتیک نهایی EnvironmentalHdrParameters DEFAULT_HDR_PARAMETERS

سازندگان عمومی

صحنه ( نمای صحنه)
یک صحنه با زمینه داده شده ایجاد کنید.

روش های عمومی

خالی
addOnPeekTouchListener ( Scene.OnPeekTouchListener onPeekTouchListener)
شنونده ای اضافه می کند که قبل از فراخوانی Scene.OnTouchListener فراخوانی می شود.
خالی
addOnUpdateListener ( Scene.OnUpdateListener onUpdateListener )
شنونده ای اضافه می کند که بلافاصله قبل از به روز رسانی صحنه، یک بار در هر فریم فراخوانی می شود.
دوربین
دریافت دوربین ()
دوربینی را که برای رندر صحنه استفاده می شود را دریافت کنید.
گره
دریافت نور خورشید ()
گره نور خورشید پیش فرض را دریافت کنید.
SceneView
getView ()
SceneView مورد استفاده برای ایجاد صحنه را برمی گرداند.
HitTestResult را بزنید
hitTest ( MotionEvent motionEvent)
آزمایش می‌کند تا ببیند آیا یک رویداد حرکتی گره‌هایی را در صحنه لمس می‌کند، بر اساس آزمایش ضربه پرتو که منشأ آن موقعیت صفحه رویداد حرکت است، و یک HitTestResult حاوی نزدیک‌ترین گره به صفحه نمایش را ارائه می‌دهد.
HitTestResult را بزنید
hitTest ( اشعه اشعه)
آزمایش می کند تا ببیند آیا یک پرتو به هر گره ای در صحنه برخورد می کند یا خیر و یک HitTestResult حاوی گره نزدیک به مبدأ پرتو که با پرتو قطع می شود را خروجی می دهد.
ArrayList < HitTestResult >
hitTestAll ( Ray ray)
آزمایش می کند تا ببیند آیا یک پرتو به گره های داخل صحنه برخورد می کند یا خیر و لیستی از HitTestResults را شامل تمام گره هایی که اصابت کرده اند، مرتب شده بر اساس فاصله، برمی گرداند.
ArrayList < HitTestResult >
hitTestAll ( MotionEvent motionEvent)
آزمایش می‌کند تا ببیند آیا یک رویداد حرکتی گره‌های داخل صحنه را لمس می‌کند یا خیر و فهرستی از HitTestResults را شامل تمام گره‌هایی که ضربه زده‌اند، مرتب‌سازی شده بر اساس فاصله، برمی‌گرداند.
خالی
onAddChild (فرزند گره )
خالی
onRemoveChild (فرزند گره )
گره
همپوشانی تست ( گره گره)
با استفاده از getCollisionShape() آزمایش می کند تا ببیند آیا شکل برخورد گره داده شده با شکل برخورد هر گره دیگری در صحنه همپوشانی دارد یا خیر.
ArrayList < Node >
overlapTestAll ( گره گره)
با استفاده از getCollisionShape() آزمایش می کند تا ببیند آیا یک گره با هر گره دیگری در صحنه همپوشانی دارد یا خیر.
خالی
removeOnPeekTouchListener ( Scene.OnPeekTouchListener onPeekTouchListener)
شنونده ای را حذف می کند که قبل از فراخوانی Scene.OnTouchListener فراخوانی می شود.
خالی
removeOnUpdateListener ( Scene.OnUpdateListener onUpdateListener )
شنونده ای را که بلافاصله قبل از به روز رسانی صحنه یک بار در هر فریم فراخوانی می شود، حذف می کند.
خالی
setLightEstimate (تصحیح رنگ ، شدت پیکسل شناور)
تخمین نور را برای تعدیل نور صحنه و شدت تنظیم می کند.
خالی
setOnTouchListener ( Scene.OnTouchListener onTouchListener)
یک تماس برگشتی ثبت کنید تا هنگام لمس صحنه فراخوانی شود.

روش های ارثی

زمینه های

عمومی استاتیک نهایی EnvironmentalHdrParameters DEFAULT_HDR_PARAMETERS

سازندگان عمومی

صحنه عمومی ( نمای صحنه)

یک صحنه با زمینه داده شده ایجاد کنید.

مولفه های
چشم انداز

روش های عمومی

public void addOnPeekTouchListener ( Scene.OnPeekTouchListener onPeekTouchListener)

شنونده ای اضافه می کند که قبل از فراخوانی Scene.OnTouchListener فراخوانی می شود. حتی اگر ژست مصرف شده باشد، این مورد فراخوانی می شود و مشاهده تمام رویدادهای حرکتی ارسال شده به صحنه را ممکن می کند. حتی اگر لمس روی یک گره نباشد، این فراخوانی می شود، در این صورت getNode() تهی می شود. شنوندگان به ترتیبی که اضافه شده اند فراخوانی می شوند.

مولفه های
onPeekTouchListener شنونده لمس زیرچشمی برای اضافه کردن

public void addOnUpdateListener ( Scene.OnUpdateListener onUpdateListener )

شنونده ای اضافه می کند که بلافاصله قبل از به روز رسانی صحنه، یک بار در هر فریم فراخوانی می شود. شنوندگان به ترتیبی که اضافه شده اند فراخوانی می شوند.

مولفه های
onUpdateListener شنونده به روز رسانی برای اضافه کردن

دوربین عمومی getCamera ()

دوربینی را که برای رندر صحنه استفاده می شود را دریافت کنید. دوربین یک نوع گره است.

برمی گرداند
  • دوربین برای رندر صحنه استفاده می شود

عمومی Node getSunlight ()

گره نور خورشید پیش فرض را دریافت کنید.

برمی گرداند
  • گره نور خورشید برای روشن کردن صحنه استفاده می شود

دریافت نمای عمومی SceneView ()

SceneView مورد استفاده برای ایجاد صحنه را برمی گرداند.

عمومی HitTestResult hitTest ( MotionEvent motionEvent)

آزمایش می‌کند تا ببیند آیا یک رویداد حرکتی گره‌هایی را در صحنه لمس می‌کند، بر اساس آزمایش ضربه پرتو که منشأ آن موقعیت صفحه رویداد حرکت است، و یک HitTestResult حاوی نزدیک‌ترین گره به صفحه نمایش را ارائه می‌دهد.

مولفه های
motionEvent رویداد حرکتی که برای آزمایش استفاده می شود
برمی گرداند
  • نتیجه شامل اولین گره ای است که توسط رویداد حرکتی ضربه خورده است (ممکن است تهی باشد)، و اطلاعاتی در مورد جایی که رویداد حرکت به گره در فضای جهانی برخورد کرده است.

عمومی HitTestResult hitTest ( اشعه اشعه)

آزمایش می کند تا ببیند آیا یک پرتو به هر گره ای در صحنه برخورد می کند یا خیر و یک HitTestResult حاوی گره نزدیک به مبدأ پرتو که با پرتو قطع می شود را خروجی می دهد.

مولفه های
اشعه اشعه ای که برای آزمایش استفاده می شود
برمی گرداند
  • نتیجه شامل اولین گره ای است که توسط پرتو برخورد کرده است (ممکن است تهی باشد) و اطلاعاتی در مورد محل برخورد پرتو به گره در فضای جهان
همچنین ببینید

عمومی ArrayList < HitTestResult > hitTestAll ( Ray ray)

آزمایش می کند تا ببیند آیا یک پرتو به گره های داخل صحنه برخورد می کند یا خیر و لیستی از HitTestResults را شامل تمام گره هایی که اصابت کرده اند، مرتب شده بر اساس فاصله، برمی گرداند.

مولفه های
اشعه اشعه ای که برای آزمایش استفاده می شود.
برمی گرداند
  • پر شده با HitTestResult برای هر گره ای که بر اساس فاصله مرتب شده است. اگر هیچ گره‌ای ضربه نخورده خالی است.
همچنین ببینید

ArrayList عمومی < HitTestResult > hitTestAll ( MotionEvent motionEvent)

آزمایش می‌کند تا ببیند آیا یک رویداد حرکتی گره‌های داخل صحنه را لمس می‌کند یا خیر و فهرستی از HitTestResults را شامل تمام گره‌هایی که ضربه زده‌اند، مرتب‌سازی شده بر اساس فاصله، برمی‌گرداند.

مولفه های
motionEvent رویداد حرکتی که برای آزمایش استفاده می شود.
برمی گرداند
  • پر شده با HitTestResult برای هر گره ای که بر اساس فاصله مرتب شده است. اگر هیچ گره‌ای ضربه نخورده خالی است.

خالی عمومی در AddChild (فرزند گره )

مولفه های
کودک

خلأ عمومی در RemoveChild (فرزند گره )

مولفه های
کودک

تست همپوشانی گره عمومی ( گره گره)

با استفاده از getCollisionShape() آزمایش می کند تا ببیند آیا شکل برخورد گره داده شده با شکل برخورد هر گره دیگری در صحنه همپوشانی دارد یا خیر. گره مورد استفاده برای آزمایش نیازی به فعال بودن ندارد.

مولفه های
گره گره ای که برای آزمایش استفاده می شود.
برمی گرداند
  • گرهی که روی گره آزمایشی همپوشانی دارد. اگر هیچ گرهی روی گره آزمایشی همپوشانی نداشته باشد، این عدد صفر است. اگر چندین گره روی گره آزمایشی همپوشانی دارند، این می تواند هر یک از آنها باشد.
همچنین ببینید

ArrayList عمومی < Node > overlapTestAll ( گره گره )

با استفاده از getCollisionShape() آزمایش می کند تا ببیند آیا یک گره با هر گره دیگری در صحنه همپوشانی دارد یا خیر. گره مورد استفاده برای آزمایش نیازی به فعال بودن ندارد.

مولفه های
گره گره ای که برای آزمایش استفاده می شود.
برمی گرداند
  • لیستی از تمام گره هایی که روی گره آزمایشی همپوشانی دارند. اگر هیچ گرهی روی گره آزمایشی همپوشانی نداشته باشد، لیست خالی است.
همچنین ببینید

Public void removeOnPeekTouchListener ( Scene.OnPeekTouchListener onPeekTouchListener)

شنونده ای را حذف می کند که قبل از فراخوانی Scene.OnTouchListener فراخوانی می شود. حتی اگر ژست مصرف شده باشد، این مورد فراخوانی می شود و مشاهده تمام رویدادهای حرکتی ارسال شده به صحنه را ممکن می کند. حتی اگر لمس روی یک گره نباشد، این فراخوانی می شود، در این صورت getNode() تهی می شود.

مولفه های
onPeekTouchListener شنونده لمس زیرچشمی برای حذف

Public void removeOnUpdateListener ( Scene.OnUpdateListener onUpdateListener )

شنونده ای را که بلافاصله قبل از به روز رسانی صحنه یک بار در هر فریم فراخوانی می شود، حذف می کند.

مولفه های
onUpdateListener شنونده به روز رسانی برای حذف

public void setLightEstimate (تصحیح رنگ ، شدت پیکسل شناور)

تخمین نور را برای تعدیل نور صحنه و شدت تنظیم می کند. نورهای رندر شده از ترکیبی از این مقادیر و رنگ و شدت نورها استفاده خواهند کرد. مقدار تصحیح رنگ سفید و شدت پیکسل 1 به این معنی است که هیچ تغییری در تنظیمات نور ایجاد نمی شود.

این توسط صحنه های AR Sceneform به صورت داخلی برای تنظیم نور بر اساس مقادیر ARCore استفاده می شود. یک صحنه AR به طور خودکار این را فراخوانی می کند و احتمالاً تنظیمات دیگر را لغو می کند. در بیشتر موارد، نیازی نیست که به صراحت با این موضوع تماس بگیرید.

مولفه های
تصحیح رنگ رنگ نور صحنه را تعدیل می کند.
شدت پیکسل شدت نور صحنه را تعدیل می کند.

public void setOnTouchListener ( Scene.OnTouchListener onTouchListener)

یک تماس برگشتی ثبت کنید تا هنگام لمس صحنه فراخوانی شود. در صورتی که هیچ گره ای رویداد را مصرف نکرده باشد، پس از ارسال رویداد لمسی به گره های صحنه، تماس برگشتی فراخوانی می شود. حتی اگر لمس روی یک گره نباشد، این فراخوانی می شود، در این صورت getNode() تهی می شود.

مولفه های
در TouchListener شنونده لمسی برای پیوست کردن