Reprezentuje kamerę wirtualną, która określa perspektywę, w której ogląda się daną scenę.
Jeśli ArSceneView
należy do kamery, automatycznie śledzi jej pozycję z ARCore. Oprócz tego poniższe metody spowodują wywołanie UnsupportedOperationException
:
setParent(NodeParent)
– nie można zmienić rodzica w kamerze. Zawsze jest to oświetlenie.setLocalPosition(Vector3)
– nie można zmienić pozycji kamery, ponieważ jest ona sterowana przez pozycję ARCore.setLocalRotation(Quaternion)
– nie można zmienić rotacji kamery. Kontroluje ją położenie kamery ARCore.setWorldPosition(Vector3)
– nie można zmienić pozycji kamery, ponieważ jest ona sterowana przez pozycję ARCore.setWorldRotation(Quaternion)
– nie można zmienić rotacji kamery. Kontroluje ją położenie kamery ARCore.
Metody publiczne
liczba zmiennoprzecinkowa | |
liczba zmiennoprzecinkowa | |
liczba zmiennoprzecinkowa |
getVerticalFovDegrees()
Pobiera pionowe pole widzenia kamery.
|
Być może |
screenPointToRay (liczba zmiennoprzecinkowa x, liczba zmiennoprzecinkowa Y)
Oblicza promień w przestrzeni świata przecinający obszar bliski płaszczyzny kamery i przechodzący przez taki obszar.
|
nieważne | |
nieważne | |
nieważne | |
nieważne |
setVerticalFovDegrees (liczba zmiennoprzecinkowa pionowy)
Ustawia poziomy pola widzenia w przypadku aparatu innego niż kątowy w stopniach.
|
nieważne | |
nieważne | |
Wektor3 |
Metody dziedziczone
Metody publiczne
liczba pływająca getFarClipPlane ()
powłoka publiczna getNearClipPlane ()
powszechna liczba zmiennoprzecinkowa getVerticalFovDegrees ()
Pobiera pionowe pole widzenia kamery.
Jeśli jest to kamera AR, jest obliczana na podstawie informacji z kamery z ARCore i może się różnić w zależności od urządzenia. Nie można go obliczyć, dopóki pierwsza sesja ARCore nie zostanie wznowiona – w takim przypadku zostanie wywołany wyjątek DisallowStateException.
W przeciwnym razie zostanie zwrócona wartość ustawiona na setVerticalFovDegrees(float)
, a domyślna wartość to 90 stopni.
Narzuty
DisallowStateException (niedozwolony stan) | jeśli jest wywoływane przed rozpoczęciem pierwszej klatki po wznowieniu ARCore; |
---|
publiczny Ray screenPointToRay (liczba zmiennoprzecinkowa x, pływająca y)
Oblicza promień w przestrzeni świata przecinający obszar bliski płaszczyzny kamery i przechodzący przez taki obszar. Układ ekranu znajduje się we współrzędnych ekranu urządzenia z Androidem: lewy górny = (0, 0) prawy dolny = (szerokość ekranu, wysokość ekranu). Układ współrzędnych urządzenia nie ma wpływu na orientację urządzenia.
Parametry
x | Pozycja X na współrzędnych ekranu urządzenia. |
---|---|
r. | Pozycja na osi Y na współrzędnych ekranu urządzenia. |
void void setLocalPosition (Vector3))
Określ położenie kamery. Aparat zawsze isTopLevel()
, więc działa tak samo jak setWorldPosition(Vector3)
.
Jeśli kamera jest częścią systemu ArSceneView
, ta operacja nie jest obsługiwana.
Nie można zmienić pozycji kamery, ponieważ jest ona sterowana przez pozycję ARCore.
Parametry
position | Pozycja, która ma zostać zastosowana. |
---|
nieważny setLocalRotation (rotacja kwartałów)
Ustaw obrót kamery. Aparat zawsze isTopLevel()
, więc działa tak samo jak setWorldRotation(Quaternion)
.
Jeśli kamera jest częścią systemu ArSceneView
, ta operacja nie jest obsługiwana.
Nie można zmienić rotacji kamery. Kontroluje ją położenie kamery ARCore.
Parametry
obrót | Rotacja, którą chcesz zastosować. |
---|
void void setParent (ParentParent)
Nieobsługiwana operacja. Nie można zmienić rodzica w kamerze – zawsze jest to scena.
Parametry
element nadrzędny | Nowy element nadrzędny, z którego będzie korzystał węzeł. Jeśli węzeł będzie pusty, ten węzeł zostanie odłączony od jego elementu nadrzędnego. |
---|
void void setVerticalFovDegrees (floatverticalFov)
Ustawia poziomy pola widzenia w przypadku aparatu innego niż kątowy w stopniach. Jeśli to jest kamera AR, Fov pochodzi z ARCore i nie można go ustawić, więc zostanie zgłoszony wyjątek. Wartość domyślna to 90 stopni.
Parametry
pionowaFov |
---|
Narzuty
Nieobsługiwany wyjątek operacyjny | jeśli to jest kamera AR |
---|
void void setWorldPosition (Vector3))
Określ położenie kamery. Aparat zawsze isTopLevel()
, więc działa tak samo jak setLocalPosition(Vector3)
.
Jeśli kamera jest częścią systemu ArSceneView
, ta operacja nie jest obsługiwana.
Nie można zmienić pozycji kamery, ponieważ jest ona sterowana przez pozycję ARCore.
Parametry
position | Pozycja, która ma zostać zastosowana. |
---|
nieważny setWorldRotation (obrót Kryterium)
Ustaw obrót kamery. Aparat zawsze isTopLevel()
, więc działa tak samo jak setLocalRotation(Quaternion)
.
Jeśli kamera jest częścią systemu ArSceneView
, ta operacja nie jest obsługiwana.
Nie można zmienić rotacji kamery. Kontroluje ją położenie kamery ARCore.
Parametry
obrót | Rotacja, którą chcesz zastosować. |
---|
Vector3 worldToScreenPoint (Vector3))
Przekształć punkt z przestrzeni świata w ekran.
Wartość X jest ujemna, gdy punkt pozostaje w widocznym obszarze, między 0 a szerokością SceneView
, gdy punkt znajduje się w widocznym obszarze, i większy niż jego szerokość po prawej stronie widocznego obszaru.
Wartość Y jest ujemna, gdy punkt znajduje się pod widocznym obszarem, od 0 do wysokości SceneView
, gdy punkt znajduje się w widocznym obszarze, i więcej niż wysokość, gdy punkt znajduje się powyżej widocznego obszaru.
Wartość Z jest zawsze równa 0, bo wartość zwrotna jest współrzędną 2D.
Parametry
punkt | punkt konwersji na świecie |
---|
Zwraca
- nowy wektor, który reprezentuje punkt w przestrzeni ekranu.