SubspaceModifier jest podobny do modyfikatora Compose w przypadku komponentów kompozycyjnych w Subspace. SubspaceModifier umożliwia manipulowanie komponentami w przestrzeni 3D, co pomaga w ustawianiu pozycji, obracaniu i dodawaniu zachowań do węzłów układu 3D.
Układ
Domyślnie Subspace jest ograniczony zalecaną przestrzenią do wyświetlania aplikacji. Te granice są używane podczas pomiaru układu komponentów podprzestrzeni, podobnie jak granice w układach 2D Compose.
Wypełnij granice
Modyfikatory fillMaxSize, fillMaxWidth, fillMaxHeight i fillMaxDepth powodują, że treść (częściowo) wypełnia granice elementu nadrzędnego.
Używanie modyfikatorów wypełnienia pomaga w układaniu treści w aplikacji niezależnie od charakterystyki wyświetlacza urządzenia XR.
Ustawianie rozmiaru i wymaganego rozmiaru
Modyfikatory size, width, height i depth
określają preferowany rozmiar treści. Aby zadeklarować dokładny rozmiar treści, użyj atrybutów requiredSize, requiredWidth, requiredHeight i requiredDepth. Jednostki te muszą być podane w dp. Aby przeliczyć metry na dp, użyj Meter.toDp().
Komponenty kompozycyjne pozycji
offset
Modyfikator offset przesuwa komponent w przestrzeni 3D wzdłuż osi x, y i z. Jednostki te muszą być podane w dp. Aby przeliczyć metry na dp, użyj Meter.toDp().
rotate
Modyfikator rotate obraca dany komponent w przestrzeni. Kierunek i wielkość obrotu możesz określić na różne sposoby:
- Za pomocą kąta pochylenia, odchylenia i przechylenia, które określają obrót wokół osi
x,yiz, - za pomocą
axisAngle, czyliVector3reprezentującego oś obrotu, oraz liczby stopni, o którą należy obrócić obiekt wokół tej osi. - Użyj
Quaternion, który reprezentuje rotację.
Zmiana wyglądu komponentów kompozycyjnych
alpha
Modyfikator alpha ustawia przezroczystość elementu i jego elementów podrzędnych, gdzie 0f oznacza całkowitą przezroczystość, a 1.0f – całkowitą nieprzezroczystość.
scale
Modyfikator scale skaluje zawartość funkcji kompozycyjnej wzdłuż osi poziomej, pionowej i głębokości.
Testowanie i ułatwienia dostępu
semantics
Modyfikator semantics dodaje do węzła układu semantykę, która jest używana w testach i ułatwieniach dostępu. Zobacz Semantyka w Jetpack Compose i SemanticsModifier.
testTag
Modyfikator testTag jest skrótem od SemanticsPropertyReceiver.testTag, który umożliwia platformom testowym znajdowanie elementu w testach.