دوربین

دوربین کلاس عمومی

نمایانگر یک دوربین مجازی است که منظری را که از طریق آن صحنه مشاهده می شود را تعیین می کند.

اگر دوربین بخشی از ArSceneView باشد، دوربین به‌طور خودکار ژست دوربین را از ARCore ردیابی می‌کند. علاوه بر این، متدهای زیر هنگام فراخوانی، UnsupportedOperationException را پرتاب می‌کنند:

  • setParent(NodeParent) - والد دوربین را نمی توان تغییر داد، همیشه صحنه است.
  • setLocalPosition(Vector3) - موقعیت دوربین را نمی توان تغییر داد، با ژست دوربین ARCore کنترل می شود.
  • setLocalRotation(Quaternion) - چرخش دوربین را نمی توان تغییر داد، با ژست دوربین ARCore کنترل می شود.
  • setWorldPosition(Vector3) - موقعیت دوربین را نمی توان تغییر داد، با ژست دوربین ARCore کنترل می شود.
  • setWorldRotation(Quaternion) - چرخش دوربین را نمی توان تغییر داد، با ژست دوربین ARCore کنترل می شود.
تمام عملکردهای دیگر در Node پشتیبانی می شود. می توانید به موقعیت و چرخش دوربین دسترسی داشته باشید، شکل برخورد را به دوربین اختصاص دهید یا کودکان را به دوربین اضافه کنید. غیرفعال کردن دوربین، رندر را خاموش می کند.

روش های عمومی

شناور
شناور
شناور
getVerticalFovDegrees ()
میدان دید عمودی دوربین را دریافت می کند.
اشعه
screenPointToRay (فلوت x، شناور y)
یک پرتو در فضای جهان را محاسبه می کند که از صفحه نزدیک دوربین می رود و از نقطه ای در فضای صفحه می گذرد.
خالی
setLocalPosition (موقعیت Vector3 )
موقعیت دوربین را تنظیم کنید.
خالی
setLocalRotation (چرخش کواترنیون )
چرخش دوربین را تنظیم کنید.
خالی
setParent (والدین NodeParent )
عملیات پشتیبانی نشده
خالی
setVerticalFovDegrees (float verticalFov)
میدان دید عمودی دوربین غیر ar را بر حسب درجه تنظیم می کند.
خالی
setWorldPosition ( وکتور 3 موقعیت)
موقعیت دوربین را تنظیم کنید.
خالی
setWorldRotation (چرخش کواترنیون )
چرخش دوربین را تنظیم کنید.
بردار3
worldToScreenPoint ( وکتور 3 نقطه)
یک نقطه از فضای جهان را به فضای صفحه تبدیل کنید.

روش های ارثی

روش های عمومی

شناور عمومی getFarClipPlane ()

شناور عمومی getNearClipPlane ()

عمومی float getVerticalFovDegrees ()

میدان دید عمودی دوربین را دریافت می کند.

اگر این یک دوربین AR است، بر اساس اطلاعات دوربین ARCore محاسبه می‌شود و می‌تواند بین دستگاه‌ها متفاوت باشد. تا زمانی که اولین فریم پس از جلسه ARCore از سر گرفته نشود، نمی توان آن را محاسبه کرد، در این صورت یک IllegalStateException پرتاب می شود.

در غیر این صورت، مقدار تعیین شده توسط setVerticalFovDegrees(float) با پیش‌فرض 90 درجه را برمی‌گرداند.

پرتاب می کند
IllegalStateException اگر قبل از اولین فریم پس از از سرگیری ARCore فراخوانی شود

پرتو عمومی صفحه نمایشPointToRay (فلوت x، شناور y)

یک پرتو در فضای جهان را محاسبه می کند که از صفحه نزدیک دوربین می رود و از نقطه ای در فضای صفحه می گذرد. فضای صفحه در مختصات صفحه دستگاه Android است: TopLeft = (0، 0) BottomRight = (عرض صفحه، ارتفاع صفحه) فضای مختصات دستگاه تحت تأثیر جهت گیری دستگاه قرار نمی گیرد.

مولفه های
ایکس موقعیت X در مختصات صفحه نمایش دستگاه.
y موقعیت Y در مختصات صفحه نمایش دستگاه.

public void setLocalPosition ( موقعیت Vector3)

موقعیت دوربین را تنظیم کنید. دوربین همیشه isTopLevel() است، بنابراین مانند setWorldPosition(Vector3) عمل می کند.

اگر دوربین بخشی از یک ArSceneView ، این یک عملیات پشتیبانی نشده است. موقعیت دوربین را نمی توان تغییر داد، با ژست دوربین ARCore کنترل می شود.

مولفه های
موقعیت موقعیت برای درخواست.

public void setLocalRotation (چرخش کواترنیون )

چرخش دوربین را تنظیم کنید. دوربین همیشه isTopLevel() است، بنابراین مانند setWorldRotation(Quaternion) عمل می کند.

اگر دوربین بخشی از یک ArSceneView ، این یک عملیات پشتیبانی نشده است. چرخش دوربین را نمی توان تغییر داد، با ژست دوربین ARCore کنترل می شود.

مولفه های
چرخش چرخش اعمال شود.

public void setParent ( NodeParent والد)

عملیات پشتیبانی نشده والد دوربین را نمی توان تغییر داد، همیشه صحنه است.

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

مجموعه فضای خالی عمومی VerticalFovDegrees (float verticalFov)

میدان دید عمودی دوربین غیر ar را بر حسب درجه تنظیم می کند. اگر این یک دوربین AR است، پس fov از ARCore می آید و نمی توان آن را تنظیم کرد، بنابراین یک استثنا ایجاد می شود. پیش فرض 90 درجه است.

مولفه های
verticalFov
پرتاب می کند
UnsupportedOperationException اگر این یک دوربین AR است

public void setWorldPosition ( موقعیت Vector3)

موقعیت دوربین را تنظیم کنید. دوربین همیشه isTopLevel() است، بنابراین مانند setLocalPosition(Vector3) عمل می کند.

اگر دوربین بخشی از یک ArSceneView ، این یک عملیات پشتیبانی نشده است. موقعیت دوربین را نمی توان تغییر داد، با ژست دوربین ARCore کنترل می شود.

مولفه های
موقعیت موقعیت برای درخواست.

public void setWorldRotation (چرخش کواترنیون )

چرخش دوربین را تنظیم کنید. دوربین همیشه isTopLevel() است، بنابراین مانند setLocalRotation(Quaternion) عمل می کند.

اگر دوربین بخشی از ArSceneView است، این یک عملیات پشتیبانی نشده است. چرخش دوربین را نمی توان تغییر داد، با ژست دوربین ARCore کنترل می شود.

مولفه های
چرخش چرخش اعمال شود.

public Vector3 worldToScreenPoint ( نقطه Vector3)

یک نقطه از فضای جهان را به فضای صفحه تبدیل کنید.

مقدار X زمانی که نقطه از نمای سمت چپ است، بین 0 و عرض SceneView زمانی که نقطه در داخل درگاه دید قرار دارد، منفی است، و زمانی که نقطه در سمت راست درگاه دید قرار دارد، از عرض بیشتر است.

مقدار Y زمانی منفی است که نقطه در زیر نما باشد، بین 0 و ارتفاع SceneView زمانی که نقطه در داخل درگاه دید قرار دارد، و از ارتفاع زمانی که نقطه بالای درگاه دید باشد، بزرگتر است.

مقدار Z همیشه 0 است زیرا مقدار بازگشتی یک مختصات دو بعدی است.

مولفه های
نقطه نقطه در فضای جهان برای تبدیل
برمی گرداند
  • یک بردار جدید که نشان دهنده نقطه در فضای صفحه است.