Modyfikatory podprzestrzeni

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, fillMaxHeightfillMaxDepth 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, yz. 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, yz;
  • Korzystając z elementu axisAngle, który jest Vector3 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 ComposeSemanticsModifier.

testTag

Modyfikator testTag to skrót od SemanticsPropertyReceiver.testTag, który umożliwia platformom testowym znajdowanie elementu w testach.