एलिमेंट के दिखने के तरीके को डाइनैमिक तरीके से बदलना

आपको घड़ी के फ़ेस के कुछ हिस्सों की स्टाइल में बदलाव करना पड़ सकता है. उदाहरण के लिए, उनकी पोज़िशन, साइज़, और दिखने की स्थिति में बदलाव करना पड़ सकता है. ऐसा अक्सर इनपुट डेटा सोर्स के हिसाब से किया जाता है. जैसे, दिन का समय या ऐक्सिलरोमीटर.

Watch Face Format में, Transform एलिमेंट का इस्तेमाल करके ऐसा किया जाता है. सभी एलिमेंट को बदला नहीं जा सकता. हालांकि, बदले जा सकने वाले मुख्य एलिमेंट में ये शामिल हैं: Group , Part* एलिमेंट, और ड्रॉइंग प्रिमिटिव, जैसे कि शेप और स्टाइल.

बदले जा सकने वाले हर एलिमेंट के एट्रिब्यूट, रेफ़रंस दस्तावेज़ में इस तरह मार्क किए जाते हैं.

ट्रांसफ़ॉर्म को value एट्रिब्यूट में, वॉच फ़ेस फ़ॉर्मैट एक्सप्रेशन लैंग्वेज में तय किया जाता है. इसमें डेटा सोर्स शामिल हो सकते हैं. target उस एट्रिब्यूट के बारे में बताता है जिसे पैरंट एलिमेंट में बदलना है.

उदाहरण के लिए, किसी चरण की प्रोग्रेस दिखाने के लिए, Arc के ऐंगल को बदलने के लिए:

<Arc centerX="225" centerY="225" height="420" width="420" startAngle="0" endAngle="0">
    <Transform target="endAngle" value="[STEP_PERCENT] * 3.6" />
    <Stroke color="#FF00FF" thickness="20" />
</Arc>

STEP_PERCENT में बदलाव होने पर, endAngle की फिर से गिनती की जाती है और Arc को फिर से बनाया जाता है.

जब कोई ट्रांसफ़ॉर्म एलिमेंट, टारगेट वैल्यू में बदलाव करता है, तो हो सकता है कि इस बदलाव को कुछ समय तक ऐनिमेट किया जाए. ऐसा इसलिए, ताकि वैल्यू में अचानक होने वाले बदलाव से बचा जा सके. Animation एलिमेंट का इस्तेमाल करके, यह काम किया जा सकता है:

<PartDraw x="100" y="150" width="250" height="120" >
    <Ellipse x="0" y="0" width="50" height="50">
        <Fill color="#ff0000" />
        <!-- Red ball with no animated transition -->
        <Transform target="x" value="[SECOND] % 2 == 0 ? 0 : 200"/>
    </Ellipse>
    <Ellipse x="0" y="100" width="50" height="50">
        <Fill color="#00ff00" />
        <!-- Green ball eases between each position -->
        <Transform target="x" value="[SECOND] % 2 == 0 ? 0 : 200">
            <Animation duration="1" interpolation="EASE_IN_OUT" />
        </Transform>
    </Ellipse>
</PartDraw>

ऐक्सिलरोमीटर का इस्तेमाल करके ट्रांसफ़ॉर्म करना

Transform एलिमेंट का इस्तेमाल, ACCELEROMETER_ANGLE_X जैसे गायरोस्कोपिक डेटा सोर्स के साथ किया जा सकता है. इससे किसी एलिमेंट की पोज़िशन या स्केल को बदला जा सकता है. हालांकि, वॉच फ़ेस फ़ॉर्मैट में इनके लिए एक अलग एलिमेंट दिया गया है: Gyro.

इससे आपको पूरी तस्वीर को आसान बनाने में मदद मिलती है. साथ ही, इससे मोशन-आधारित ट्रांसफ़ॉर्मेशन को समय के आधार पर होने वाले ट्रांसफ़ॉर्मेशन जैसे अन्य ट्रांसफ़ॉर्मेशन से अलग किया जा सकता है. ऐसा हो सकता है कि ये ट्रांसफ़ॉर्मेशन एक ही एलिमेंट पर लागू हों.