SubspaceModifier
jest podobny do modyfikatora kompozytowego w przypadku komponentów w Subspace
. SubspaceModifier
umożliwia manipulowanie składanymi w przestrzeni 3D, co ułatwia pozycjonowanie, obracanie i dodawanie zachowań do węzłów układu 3D.
Układ
Domyślnie Subspace
jest ograniczony zalecanym obszarem wyświetlania aplikacji. Te granice są używane podczas pomiaru układu komponentów w subprzestrzeni, podobnie jak granice w układzie 2D Compose.
wypełnianie granic;
Modyfikatory fillMaxSize
, fillMaxWidth
, fillMaxHeight
i fillMaxDepth
sprawiają, że zawartość (częściowo) wypełnia granice swojego elementu nadrzędnego.
Użycie modyfikatorów wypełnienia pomaga w układaniu treści w aplikacji niezależnie od cech wyświetlacza urządzenia XR.
Ustaw rozmiar i wymagany rozmiar.
Modyfikatory size
, width
, height
i depth
określają preferowany rozmiar treści. Aby określić dokładny rozmiar treści, użyj atrybutów requiredSize
, requiredWidth
, requiredHeight
i requiredDepth
. Te jednostki muszą być określone w dp
. Aby przeliczyć metry na dp, użyj Meter.toDp()
.
Umieszczanie komponentów
offset
Modyfikator offset
przesuwa kompozyt w przestrzeni trójwymiarowej wzdłuż osi x
, y
i z
. Jednostki te muszą być podane w dp
. Aby przeliczyć metry na stopnie Fahrenheita, użyj Meter.toDp()
.
rotate
Modyfikator rotate
obraca dany element składany w przestrzeni. Kierunek i wielkość obrotu możesz określić na różne sposoby:
- za pomocą pitch, yaw i roll, które określają obrót wokół osi
x
,y
iz
; - Korzystając z elementu
axisAngle
, który jestVector3
reprezentującym oś obrotu i liczbę stopni, o jaką ma ona się obracać. - Użycie
Quaternion
, który reprezentuje rotację.
Zmienianie wyglądu komponentów
alpha
Modyfikator alpha
ustawia nieprzezroczystość elementu i jego elementów podrzędnych, przy czym 0f
oznacza całkowicie przezroczysty, a 1.0f
– całkowicie nieprzezroczysty.
scale
Modyfikator scale
skaluje zawartość kompozycji wzdłuż osi poziomej, pionowej i głębi.
Dodawanie zachowań do komponentów
resizable
Gdy włączysz modyfikator resizable
, pojawią się elementy sterujące interfejsu, które można przeciągać, aby zmieniać rozmiar elementu. Jest to podobne do korzystania z ResizableComponent
w przypadku Entity
.
movable
Gdy włączysz modyfikator movable
, do komponentu zostaną dodane elementy sterujące interfejsem, które pozwolą użytkownikowi przenosić element w przestrzeni 3D. Jest to podobne do użycia funkcji MovableComponent
w przypadku elementu Entity
.
Testowanie i ułatwienia dostępu
semantics
Modyfikator semantics
dodaje semantykę do węzła układu, aby można było go używać do testowania i ułatwiania dostępu. Zapoznaj się z artykułami Semantyka w Jetpack Compose i SemanticsModifier
.
testTag
Modyfikator testTag
to skrót od SemanticsPropertyReceiver.testTag
, który umożliwia platformom testowym znajdowanie elementu w testach.