একটি কোণ ক্ষেত্র একটি সংখ্যাকে তার মান হিসাবে এবং একটি স্ট্রিং এর পাঠ্য হিসাবে সংরক্ষণ করে। এর মান হল 0 এবং 360 এর মধ্যে একটি সংখ্যা (এই পরিসরটি পরিবর্তন করা যেতে পারে), যখন এর পাঠ্যটি তার সম্পাদকের মধ্যে প্রবেশ করা যেকোনো স্ট্রিং হতে পারে।
কোণ ক্ষেত্র
সম্পাদক সহ কোণ ক্ষেত্র
সঙ্কুচিত কোণ ক্ষেত্র
সৃষ্টি
JSON
{
"type": "example_angle",
"message0": "angle: %1",
"args0": [
{
"type": "field_angle",
"name": "FIELDNAME",
"angle": 90
}
]
}
জাভাস্ক্রিপ্ট
Blockly.Blocks['example_angle'] = {
init: function() {
this.appendDummyInput()
.appendField('angle:')
.appendField(new Blockly.FieldAngle(90), 'FIELDNAME');
}
};
কোণ কনস্ট্রাক্টর একটি ঐচ্ছিক মান এবং একটি ঐচ্ছিক যাচাইকারী নেয়। শূন্য ডিফল্ট মান হিসাবে ব্যবহৃত হয় যদি কোন মান দেওয়া না হয় বা প্রদত্ত মানটি একটি সংখ্যায় কাস্ট না করে।
সিরিয়ালাইজেশন
JSON
একটি কোণ ক্ষেত্রের জন্য JSON দেখতে এরকম দেখাচ্ছে:
{
"fields": {
"FIELDNAME": 0
}
}
যেখানে FIELDNAME
হল একটি স্ট্রিং যা একটি কোণ ক্ষেত্রের উল্লেখ করে এবং মান হল ক্ষেত্রে প্রয়োগ করা মান। মানটি কনস্ট্রাক্টর মান হিসাবে একই নিয়ম অনুসরণ করে।
এক্সএমএল
একটি কোণ ক্ষেত্রের জন্য XML দেখতে এরকম দেখাচ্ছে:
<field name="FIELDNAME">0</field>
যেখানে name
অ্যাট্রিবিউটে একটি স্ট্রিং রয়েছে যা একটি কোণ ক্ষেত্রের উল্লেখ করে এবং ভিতরের পাঠ্যটি ক্ষেত্রে প্রয়োগ করার মান। অভ্যন্তরীণ টেক্সট মান কনস্ট্রাক্টর মান হিসাবে একই নিয়ম অনুসরণ করে।
কাস্টমাইজেশন
স্ন্যাপিং
Blockly.FieldAngle.ROUND
প্রপার্টি একটি মাউস ব্যবহার করার সময় অ্যাঙ্গেল পিকার "স্ন্যাপ" এর মান কী পরিবর্তন করে।
এখানে 70 এর ROUND
মান সহ একটি উদাহরণ রয়েছে:
ROUND
প্রপার্টি ডিফল্ট 15। আপনি স্ন্যাপিং অক্ষম করতে চাইলে এটি 0 এ সেট করুন।
এটি একটি বিশ্বব্যাপী সম্পত্তি, তাই এটি সেট করার সময় সমস্ত কোণ ক্ষেত্র পরিবর্তন করবে।
দিকনির্দেশনা
Blockly.FieldAngle.CLOCKWISE
বৈশিষ্ট্য কোন দিক পরিবর্তন করে কোণের মান বৃদ্ধি করে। এই মানটিকে true
সেট করলে নির্বাচককে ঘড়ির কাঁটার দিকে সরানো হলে কোণ বৃদ্ধি পায়, এটিকে false
সেট করা হলে ঘড়ির কাঁটার বিপরীতে সরানো হলে কোণ বৃদ্ধি পায়।
CLOCKWISE সত্যে সেট করা হয়েছে৷
CLOCKWISE মিথ্যাতে সেট করা হয়েছে
CLOCKWISE
প্রপার্টি ডিফল্ট করে false
, মানে ঘড়ির কাঁটার বিপরীতে গতি কোণকে বাড়িয়ে তুলবে।
এটি একটি বিশ্বব্যাপী সম্পত্তি, তাই এটি সেট করার সময় সমস্ত কোণ ক্ষেত্র পরিবর্তন করবে।
শূন্য অবস্থান
Blockly.FieldAngle.OFFSET
প্রপার্টি সেট করে যেখানে 0 ডিগ্রি অবস্থিত। ডিফল্টরূপে শূন্য ডিগ্রী ধনাত্মক x-অক্ষের সাথে সারিবদ্ধ হয় (ডান দিকে) এবং তারপর এই বৈশিষ্ট্যটি সেই অবস্থানটিকে বেশ কয়েকটি ডিগ্রি দ্বারা "অফসেট" করে।
OFFSET
প্রপার্টি ডিফল্ট 0, মানে শূন্য ডিগ্রী ধনাত্মক x-অক্ষের সাথে সারিবদ্ধ।
এটি একটি বিশ্বব্যাপী সম্পত্তি তাই এটি সেট করার সময় সমস্ত কোণ ক্ষেত্র পরিবর্তন করবে।
পরিসর
Blockly.FieldAngle.WRAP
বৈশিষ্ট্য মানগুলির পরিসর সেট করে। মানের পরিসীমা সমান (-360 + WRAP, WRAP)
। এর মানে হল যে 360-এর একটি WRAP
মান একটি পরিসীমা দেবে (0, 359.9)
এবং 180-এর একটি WRAP
মান একটি পরিসীমা দেবে (-179.9, 180)
।
WRAP
প্রপার্টি ডিফল্ট 360, অর্থাৎ ক্ষেত্রের পরিসীমা হল (0, 359.9)
।
এটি একটি বিশ্বব্যাপী সম্পত্তি তাই এটি সেট করার সময় সমস্ত কোণ ক্ষেত্র পরিবর্তন করবে।
কোণ বাছাই আকার
Blockly.FieldAngle.HALF
সম্পত্তি কোণ পিকারের আকার পরিবর্তন করে। এই মানটি বাইরের বৃত্তের ব্যাসার্ধকে পিক্সেলে সংজ্ঞায়িত করে।
অর্ধেক সম্পত্তি HALF
50.
এটি একটি বিশ্বব্যাপী সম্পত্তি তাই এটি সেট করার সময় সমস্ত কোণ ক্ষেত্র পরিবর্তন করবে।
সাধারণ মোড
কিছু মজার সমন্বয় তৈরি করতে দিক এবং শূন্য অবস্থান একসাথে ব্যবহার করা যেতে পারে। এখানে দুটি সাধারণ আছে:
প্রটেক্টর
0 ডিগ্রী ঠিক, 90 ডিগ্রী উপরে।
Blockly.FieldAngle.CLOCKWISE = false;
Blockly.FieldAngle.OFFSET = 0;
কম্পাস
0 ডিগ্রী উপরে, 90 ডিগ্রী ঠিক।
Blockly.FieldAngle.CLOCKWISE = true;
Blockly.FieldAngle.OFFSET = 90;
একটি কোণ যাচাইকারী তৈরি করা হচ্ছে
একটি কোণ ক্ষেত্রের মান হল একটি সংখ্যা, তাই যেকোনো যাচাইকারীকে অবশ্যই একটি সংখ্যা গ্রহণ করতে হবে এবং একটি সংখ্যা, null
বা undefined
প্রদান করতে হবে।
এখানে একটি যাচাইকারীর একটি উদাহরণ রয়েছে যা মানটিকে 30 এর একাধিক হতে বাধ্য করে:
function(newValue) {
return Math.round(newValue / 30) * 30;
}
লক্ষ্য করুন কিভাবে কোণ ক্ষেত্রের [ROUND](#snapping)
বৈশিষ্ট্য এখনও 15-এ সেট করা আছে, তাই ক্ষেত্রের গ্রাফিকাল উপাদানগুলি 30-এর পরিবর্তে 15-এর গুণিতক প্রদর্শন করে।