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 را بزنید | |
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 ) شنونده ای را که بلافاصله قبل از به روز رسانی صحنه یک بار در هر فریم فراخوانی می شود، حذف می کند. |
خالی | |
خالی | 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 ()
گره نور خورشید پیش فرض را دریافت کنید.
برمی گرداند
- گره نور خورشید برای روشن کردن صحنه استفاده می شود
عمومی HitTestResult hitTest ( MotionEvent motionEvent)
آزمایش میکند تا ببیند آیا یک رویداد حرکتی گرههایی را در صحنه لمس میکند، بر اساس آزمایش ضربه پرتو که منشأ آن موقعیت صفحه رویداد حرکت است، و یک HitTestResult حاوی نزدیکترین گره به صفحه نمایش را ارائه میدهد.
مولفه های
motionEvent | رویداد حرکتی که برای آزمایش استفاده می شود |
---|
برمی گرداند
- نتیجه شامل اولین گره ای است که توسط رویداد حرکتی ضربه خورده است (ممکن است تهی باشد)، و اطلاعاتی در مورد جایی که رویداد حرکت به گره در فضای جهانی برخورد کرده است.
عمومی HitTestResult hitTest ( اشعه اشعه)
آزمایش می کند تا ببیند آیا یک پرتو به هر گره ای در صحنه برخورد می کند یا خیر و یک HitTestResult حاوی گره نزدیک به مبدأ پرتو که با پرتو قطع می شود را خروجی می دهد.
مولفه های
اشعه | اشعه ای که برای آزمایش استفاده می شود |
---|
برمی گرداند
- نتیجه شامل اولین گره ای است که توسط پرتو برخورد کرده است (ممکن است تهی باشد) و اطلاعاتی در مورد محل برخورد پرتو به گره در فضای جهان
همچنین ببینید
عمومی ArrayList < HitTestResult > hitTestAll ( Ray ray)
آزمایش می کند تا ببیند آیا یک پرتو به گره های داخل صحنه برخورد می کند یا خیر و لیستی از HitTestResults را شامل تمام گره هایی که اصابت کرده اند، مرتب شده بر اساس فاصله، برمی گرداند.
مولفه های
اشعه | اشعه ای که برای آزمایش استفاده می شود. |
---|
برمی گرداند
- پر شده با HitTestResult برای هر گره ای که بر اساس فاصله مرتب شده است. اگر هیچ گرهای ضربه نخورده خالی است.
همچنین ببینید
ArrayList عمومی < HitTestResult > hitTestAll ( MotionEvent motionEvent)
آزمایش میکند تا ببیند آیا یک رویداد حرکتی گرههای داخل صحنه را لمس میکند یا خیر و فهرستی از HitTestResults را شامل تمام گرههایی که ضربه زدهاند، مرتبسازی شده بر اساس فاصله، برمیگرداند.
مولفه های
motionEvent | رویداد حرکتی که برای آزمایش استفاده می شود. |
---|
برمی گرداند
- پر شده با HitTestResult برای هر گره ای که بر اساس فاصله مرتب شده است. اگر هیچ گرهای ضربه نخورده خالی است.
تست همپوشانی گره عمومی ( گره گره)
با استفاده از 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 | شنونده لمسی برای پیوست کردن |
---|