A SubspaceModifier, Subspace में कंपोज़ेबल
के लिए Compose मॉडिफ़ायर जैसा होता है. SubspaceModifier की मदद से, 3D स्पेस में कंपोज़ेबल को मैनेज किया जा सकता है. इससे 3D लेआउट नोड को पोज़िशन करने, घुमाने, और उनमें व्यवहार जोड़ने में मदद मिलती है.
लेआउट
डिफ़ॉल्ट रूप से, Subspace को किसी ऐप्लिकेशन को देखने के लिए सुझाए गए स्पेस से बाउंड किया जाता है. इन बाउंड का इस्तेमाल, आपके सबस्पेस कॉम्पोनेंट के लेआउट को मेज़र करने के लिए किया जाता है. यह 2D Compose लेआउट में बाउंड जैसा ही होता है.
बाउंड भरें
fillMaxSize, fillMaxWidth, fillMaxHeight, और
fillMaxDepth मॉडिफ़ायर की मदद से, कॉन्टेंट को उसके पैरंट के बाउंड में (आंशिक तौर पर) भरा जा सकता है.
फ़िल मॉडिफ़ायर का इस्तेमाल करके, आपके ऐप्लिकेशन के लेआउट में ऐसा कॉन्टेंट दिखाया जा सकता है जो XR डिवाइस की डिसप्ले की विशेषताओं से अलग हो.
साइज़ और ज़रूरी साइज़ सेट करना
`size`, `width`, `height`, और `depth
` मॉडिफ़ायर, कॉन्टेंट का पसंदीदा साइज़ तय करते हैं. कॉन्टेंट का सटीक साइज़ तय करने के लिए, requiredSize, requiredWidth,
requiredHeight, और requiredDepth का इस्तेमाल करें. इन यूनिट को तय किया जाना चाहिए
dp में. मीटर से dp में बदलने के लिए, Meter.toDp() का इस्तेमाल करें.
कंपोज़ेबल की पोज़िशन तय करना
offset
offset मॉडिफ़ायर, कंपोज़ेबल को 3D स्पेस में x, y,
और z ऐक्सिस के साथ ले जाता है. इन यूनिट को dp में तय किया जाना चाहिए. मीटर से
dp में बदलने के लिए, Meter.toDp() का इस्तेमाल करें.
rotate
rotate मॉडिफ़ायर, दिए गए कंपोज़ेबल को स्पेस में घुमाता है. रोटेशन की दिशा और डिग्री को अलग-अलग तरीकों से तय किया जा सकता है:
- पिच, यॉ, और रोल का इस्तेमाल करके. इनसे क्रमशः
x,y, औरzऐक्सिस के चारों ओर रोटेशन तय किया जाता है, axisAngleका इस्तेमाल करके. यहVector3है, जो रोटेशन के ऐक्सिस और उसके चारों ओर घुमाए जाने वाली डिग्री को दिखाता है,Quaternionका इस्तेमाल करके. यह रोटेशन को दिखाता है.
rotateToLookAtUser
The rotateToLookAtUser मॉडिफ़ायर, कॉन्टेंट को लगातार घुमाता है, ताकि वह हर समय उपयोगकर्ता की ओर रहे. इस मॉडिफ़ायर का इस्तेमाल "बिलबोर्ड" इफ़ेक्ट पाने के लिए भी किया जा सकता है. इसमें कॉन्टेंट, Y-ऐक्सिस पर उपयोगकर्ता की ओर घूमता है. हालांकि, यह सीधा और ग्रेविटी के साथ अलाइन रहता है. इसके लिए,
rotateToLookAtUser मॉडिफ़ायर को
gravityAligned मॉडिफ़ायर के साथ मिलाएं.
इस मॉडिफ़ायर के लिए, आपके ऐप्लिकेशन को मौजूदा सेशन के ऑब्जेक्ट को कॉन्फ़िगर करना होगा
DeviceTrackingMode.LAST_KNOWN.
कंपोज़ेबल के दिखने की सेटिंग बदलना
alpha
The alpha मॉडिफ़ायर, एलिमेंट और उसके चाइल्ड की ओपैसिटी सेट करता है,
इसमें 0f का मतलब है पूरी तरह से पारदर्शी और 1.0f का मतलब है पूरी तरह से अपारदर्शी.
scale
scale मॉडिफ़ायर, कंपोज़ेबल के कॉन्टेंट को
हॉरिज़ॉन्टल, वर्टिकल, और डेप्थ ऐक्सिस के साथ स्केल करता है.
टेस्टिंग और सुलभता
semantics
semantics मॉडिफ़ायर, लेआउट नोड में सिमैंटिक्स जोड़ता है. इसका इस्तेमाल
टेस्टिंग और सुलभता के लिए किया जाता है. Jetpack Compose में सिमैंटिक्स और
SemanticsModifier देखें.
testTag
testTag मॉडिफ़ायर,
SemanticsPropertyReceiver.testTag का शॉर्टहैंड है. इसकी मदद से, टेस्ट फ़्रेमवर्क, टेस्ट में
एलिमेंट ढूंढ पाते हैं.