सबस्पेस मॉडिफ़ायर

SubspaceModifier, Subspace में मौजूद कंपोज़ेबल के लिए, Compose मॉडिफ़ायर की तरह होता है. SubspaceModifier की मदद से, 3D स्पेस में कंपोज़ेबल में बदलाव किया जा सकता है. इससे आपको 3D लेआउट नोड को पोज़िशन करने, घुमाने, और उनमें व्यवहार जोड़ने में मदद मिलती है.

लेआउट

डिफ़ॉल्ट रूप से, Subspace को ऐप्लिकेशन देखने के लिए सुझाए गए स्पेस के हिसाब से तय किया जाता है. इन सीमाओं का इस्तेमाल, आपके सबस्पेस कॉम्पोनेंट के लेआउट को मेज़र करते समय किया जाता है. यह 2D कंपोज़ लेआउट में सीमाओं की तरह होता है.

सीमाएं भरें

मॉडिफ़ायर fillMaxSize, fillMaxWidth, fillMaxHeight, और fillMaxDepth की मदद से, कॉन्टेंट को उसके पैरंट के दायरे में (कुछ हद तक) भरा जा सकता है. फ़िल मॉडिफ़ायर का इस्तेमाल करने से, आपका ऐप्लिकेशन ऐसे कॉन्टेंट को लेआउट कर पाता है जो XR डिवाइस की डिसप्ले की विशेषताओं से अलग होता है.

साइज़ और ज़रूरी साइज़ सेट करना

मॉडिफ़ायर size, width, height, और depth, कॉन्टेंट के पसंदीदा साइज़ के बारे में बताते हैं. कॉन्टेंट का सटीक साइज़ बताने के लिए, requiredSize, requiredWidth, requiredHeight, और requiredDepth का इस्तेमाल करें. इन इकाइयों को dp में तय किया जाना चाहिए; मीटर को डीपी में बदलने के लिए, Meter.toDp() का इस्तेमाल करें.

पोजीशन कंपोज़ेबल

offset

offset मॉडिफ़ायर, कॉम्पोज़ेबल को 3D स्पेस में x, y, और z ऐक्सिस के साथ ले जाता है. इन यूनिट को dp में तय किया जाना चाहिए; मीटर को dp में बदलने के लिए, Meter.toDp() का इस्तेमाल करें.

rotate

rotate मॉडिफ़ायर, स्पेस में दिए गए कंपोज़ेबल को घुमाता है. रोटेशन की दिशा और मात्रा को अलग-अलग तरीकों से तय किया जा सकता है:

  • पिच, यॉ, और रोल का इस्तेमाल करके, जो क्रम से x, y, और z ऐक्सिस के चारों ओर रोटेशन के बारे में बताते हैं,
  • axisAngle का इस्तेमाल करके, जो कि रोटेशन के ऐक्सिस को दिखाने वाला Vector3 है. साथ ही, यह भी बताया जाता है कि इसे कितने डिग्री पर घुमाया जाना चाहिए,
  • रोटेशन को दिखाने वाले Quaternion का इस्तेमाल करके.

कंपोज़ेबल के लुक में बदलाव करना

alpha

alpha मॉडिफ़ायर, एलिमेंट और उसके बच्चों की ओपैसिटी सेट करता है. इसमें 0f का मतलब पूरी तरह से पारदर्शी और 1.0f का मतलब पूरी तरह से अपारदर्शी होता है.

scale

scale मॉडिफ़ायर, कंपोज़ेबल के कॉन्टेंट को हॉरिज़ॉन्टल, वर्टिकल, और डेप्थ ऐक्सिस के हिसाब से स्केल करता है.

टेस्टिंग और सुलभता

semantics

semantics मॉडिफ़ायर, लेआउट नोड में सिमैंटिक्स जोड़ता है. इसका इस्तेमाल टेस्टिंग और ऐक्सेसिबिलिटी के लिए किया जाता है. Jetpack Compose में सिमैंटिक्स और SemanticsModifier देखें.

testTag

testTag मॉडिफ़ायर, SemanticsPropertyReceiver.testTag का शॉर्टहैंड है. इससे टेस्ट फ़्रेमवर्क, टेस्ट में एलिमेंट ढूंढ पाते हैं.