অভিব্যক্তি তৈরি করুন

WFF সক্ষম করতে একটি অভিব্যক্তি ভাষা ব্যবহার করে:

  • Transform বা Gyro ব্যবহার করে চেহারা পরিবর্তন করা
  • Condition বিবৃতি মাধ্যমে শর্তাধীন আচরণ
  • Template উপাদানে স্ট্রিং বিন্যাস

অভিব্যক্তি ভাষা হল একটি স্ক্রিপ্টিং ভাষা যা আপনার সাধারণ অপারেটর এবং ব্যবহার করা যেতে পারে এমন বিভিন্ন ফাংশন ধারণ করে।

এক্সপ্রেশনগুলি ডেটা উত্স ব্যবহার করতে পারে — বর্গাকার বন্ধনী ব্যবহার করে প্রতিনিধিত্ব করা — আপনাকে বর্তমান তারিখ এবং সময়, স্বাস্থ্য এবং ফিটনেস মেট্রিক্স বা এমনকি আবহাওয়ার মতো বাহ্যিক ইনপুটগুলিতে প্রতিক্রিয়া জানাতে দেয়৷

এক্সপ্রেশন ব্যবহার করার সময়, Transform বা Template এবং Condition ব্যবহারের মধ্যে প্রাথমিক পার্থক্য হল যে Transform এবং Template একটি মান (উদাহরণস্বরূপ, এনক্লোজিং এলিমেন্টের নতুন অবস্থান) ফলাফলের জন্য এক্সপ্রেশনের প্রয়োজন হয় যেখানে Condition প্রয়োজন একটি বুলিয়ানে পরিণত হওয়ার জন্য অভিব্যক্তি।

উদাহরণস্বরূপ, একটি Condition ব্যবহার করতে পারে:

[DAY_OF_WEEK] == 6 || [DAY_OF_WEEK] == 7

এটি একটি বুলিয়ানে মূল্যায়ন করে এবং DAY_OF_WEEK ডেটা উত্স ব্যবহার করে এটি একটি সপ্তাহান্তে কিনা তা নির্ধারণ করে৷

ফাংশনগুলিও সমর্থিত—উদাহরণস্বরূপ, Wear OS ডিভাইসের অ্যাক্সিলোমিটারের x-value উপর ভিত্তি করে—যেকোন দিকে 5 ডিগ্রি পর্যন্ত মান ঘোরানোর জন্য একটি অভিব্যক্তি:

(5/90)*clamp([ACCELEROMETER_ANGLE_X],0,90) +
(-5/90)*clamp([ACCELEROMETER_ANGLE_X],-90,0)

clamp() ফাংশন দুটি সীমার মধ্যে একটি মানকে সীমাবদ্ধ করে।

অভিব্যক্তি পুনঃমূল্যায়ন

যে ফ্রিকোয়েন্সি সহ অভিব্যক্তিগুলি পুনরায় মূল্যায়ন করা হয় তা নির্ভর করে সেগুলিতে ব্যবহৃত ডেটা উত্সগুলির উপর। উদাহরণস্বরূপ, [ DAY_OF_WEEK] == 6 || [DAY_OF_WEEK] == 7 অভিব্যক্তি শুধুমাত্র নতুন দিন শুরু হলেই পুনরায় মূল্যায়ন করে। যাইহোক, একটি অভিব্যক্তি যা [SECOND] ডেটা উত্স ব্যবহার করে প্রতি সেকেন্ডে পুনরায় মূল্যায়ন করে।

অভিব্যক্তির ফলাফলের পরিবর্তনের উপর ভিত্তি করে পুনঃমূল্যায়নের ফলে দৃশ্যের পুনঃগণনা এবং পুনরায় রেন্ডারিং হতে পারে। তাই সর্বদা ডেটা উত্সগুলি ব্যবহার করা গুরুত্বপূর্ণ যা যথাসম্ভব কদাচিৎ পুনঃমূল্যায়ন করে। উদাহরণস্বরূপ, এটি বিকেল কিনা তা নির্ধারণ করতে:

// Bad - re-evaluates every second
[SECONDS_IN_DAY] > 43200

// Good - limits re-evaluation frequency (1 = PM, 0 = AM)
[AMPM_STATE] == 1

এক্সপ্রেশনে কনফিগারেশন মান

ফাংশন এবং ডেটা উত্স ছাড়াও, কনফিগারেশন মান ব্যবহার করা যেতে পারে। উদাহরণস্বরূপ, যদি UserConfigurations-showBackgroundInAfternoon নামে একটি BooleanConfiguration কনফিগারেশন সংজ্ঞায়িত করা হয়, এটি একটি অভিব্যক্তিতে ব্যবহার করা যেতে পারে:

[CONFIGURATION.showBackgroundInAfternoon] == "TRUE" && [AMPM_STATE] == 1