آموزش کدنویسی Experssion (جاوا اسکریپت) در Ø§ÙØªØ±Ø§Ùکت
امکانات:


نگارش: Member Website
)
(
Rating:


زمان انتشار:
09-28-16
,
10:04
بروزرسانی:
سلام
این آموزش متنی هست
بعد اینکه Ø³Ø·Ø Ø¢Ù…ÙˆØ²Ø´Ø´ مبتدی Ùˆ برای پارسال هست Ú©Ù‡ یه Ú©Ù…ÛŒ Ø§ÙØªØ±Ø§Ùکت کار میکردم Ùˆ Ú¯ÙØªÙ… آموزشش هاشو (ولو مبتدی) بزارم شاید به درد یکی بخوره. این آموزش ها خیلی وقت هه آپدیت نشد چون خیلی وقته Ø§ÙØªØ±Ø§Ùکت (Ùˆ نرم Ø§ÙØ²Ø§Ø± های میکس Ùˆ مونتاژ) کار نمیکنم :
اول از همه نکته ÛŒ بسیار مهمی رو بگم اونم لینک توابع Ùˆ مثال ها ÛŒ کدنویسی Ø§ÙØªØ±Ø§Ùکت رو از اینجا Ùˆ لینک ØªÙˆØ¶ÛŒØ Ù†ÙˆØ¹ دستورات برنامه نویسی رو در اینجا میتونین تو آدوب ببینین (زبان اش هم جاواست. باید با قند Ø´Ú©Ù† لینک ها (سایت آدوب) رو باز کنین)
هر از گاهی اگه توابع Ùˆ کد نویسی Ø§ÙØªØ±Ø§Ùکت (Ú©Ù‡ به زبان جاوا هست) رو یاد Ú¯Ø±ÙØªÙ… ØŒ اینجا میزارم
کسایی که کلا با ساختار کدنویسی و برنامه نویسی آشنا نیستن ، بهتره با یکی از زبان ها کار کنن
تا جایی Ú©Ù‡ من یه Ú©Ù… زبان ها رو میدونم ØŒ جاوا Ùˆ لوا خیلی شباهت دارن به هم. به کدنویسی در Ø§ÙØªØ±Ø§Ùکت ØŒ Expression میگن
همونطور Ú©Ù‡ میدونین Ùˆ در Ùیلم Ú¯ÙØªÙ‡ شد ØŒ برای شروع کدنویسی در Ø§ÙØªØ±Ø§Ùکت ØŒ کلید Alt رو پایین Ù†Ú¯Ù‡ میدارین Ùˆ بعد بر روی آیکون ساعت (همون علامت Ú©ÛŒ ÙØ±ÛŒÙ…) کنار یکی از پارامترها یا ویژگی ها (منظورم از پارامتر یا ویژگی ØŒ هر چیزی Ú©Ù‡ مقدار عددی داره Ùˆ علامت آیکون ساعت داره مثل rotation Ùˆ opacity Ùˆ هر چیز دیگه ای ...) کلیک میکنین
بازم همونطور Ú©Ù‡ میدونین در برنامه نویسی هر جا از علامت پرانتز Ø§Ø³ØªÙØ§Ø¯Ù‡ شد ØŒ اون چیز ØŒ تابع هست Ú©Ù‡ میتونین برای آشنایی با ساختار تابع ها با برنامه نویسی آشنا شین . Ùˆ اینکه هر تابع ØŒ پارامتر یا آرگومانی رو به عنوان ورودی داره
تابع linear :
یکی از توابع پرکاربرد تو Ø§ÙØªØ±Ø§Ùکت هه . کار این تابع اینه Ú©Ù‡ در یک رویداد (منظورم از رویداد، هر چیزی Ú©Ù‡ مقدار عددی داره Ùˆ علامت آیکون ساعت داره مثل time (Ú©Ù‡ زمان در ØØ§Ù„ سپری شدن هست) یا rotation (مثلا مقدار عددی میشه به این داد Ùˆ Ú¯ÙØª 45 درجه بچرخ) یا opacity Ùˆ هر چیز دیگه ای ...) ØŒ یک کاری رو انجام بده . در واقع اگه تعری٠کامل ترش رو بخاین اینه Ú©Ù‡ در بازه ای از یک رویداد یا پارامتر (چون همونطور Ú©Ù‡ Ú¯ÙØªÙ… ØŒ پارامتر یا رویداد باید از نوع عددی باشه مقدارش پس یه بازه میشه براش تعری٠کرد . مثلا ÙØ±Ø¶ کنید زمانی Ú©Ù‡ بازه ÛŒ مقدار پارامتر rotation از 90 درجه تا 180 درجه تغییر کرد ) ØŒ اون پارامتر یا رویدادی Ú©Ù‡ توش هستیم Ùˆ توش داریم کد مینویسیم (یعنی با Ù†Ú¯Ù‡ داشتن دکمه ÛŒ alt Ùˆ کلیک روی آیکون زمان یا Ú©ÛŒ ÙØ±ÛŒÙ… اش شروع کردیم به کد نوشتن) مقدارش از یه چیزی به چیز دیگه تغییر کنه (چون توی رویدادی میتونیم کد بنویسیم Ú©Ù‡ مقدار عددی باشه)
به مثال Ø´ÙØ§Ù‡ÛŒ اینه Ú©Ù‡ مثلا وقتی مقدار پارامتر rotation از 90 به 180 درجه تغییر کرد (یعنی هر وقت مقدار rotation از 90 شروع شد . نه اینکه قبل از 90) ØŒ در این بازه مقدار opacity اش از 100 تا 30 تغییر کنه
آرگومان های تابع :
این تابع دارای 5 تا آرگومان داره
1) اولین آرگومان، نام رویدادی هست Ú©Ù‡ میخایم هر وقت تغییر کرد ØŒ عمل خاصی Ø§ØªÙØ§Ù‚ Ø¨ÛŒÙØªÙ‡ (در مثال بالا ØŒ همون rotation هست). Ùقط دقت کنیم Ú©Ù‡ نام رویداد رو با ØØ±ÙˆÙ کوچیک بنویسیم چون اغلب زبان های برنامه نویسی از جمله جاوا به این ØØ±ÙˆÙ ØØ³Ø§Ø³ اند (ØØ§Ù„ا این مهم نیست Ú©Ù‡ تو Ø§ÙØªØ±Ø§Ùکت همون رویدادها اول ØØ±Ù شون با ØØ±Ù بزرگ نوشته میشه)
2) توی دومین آرگومان ØŒ ØØ¯Ø§Ù‚Ù„ مقدار آرگومان اول رو میدیم (یا همون مقدار اولیه ÛŒ آرگومان اول رو میدیم Ú©Ù‡ در مثال بالا همون 90 هست) . یعنی هر وقت مقدار rotation از 90 شروع شد
3) توی سومین آرگومان ØŒ ØØ¯Ø§Ú©Ø«Ø± مقدار آرگومان اول رو میدیم (یا همون مقدار آخریه ÛŒ آرگومان اول رو میدیم Ú©Ù‡ در مثال بالا همون 180 هست) . یعنی هر وقت مقدار rotation تا 180 ختم شد
4) توی چهارمین آرگومان ØŒ ØØ¯Ø§Ù‚Ù„ مقدار یا در واقع همون مقدار اولیه ÛŒ پارامتر یا رویدادی رو میدیم Ú©Ù‡ توش کد داریم مینویسیم (Ú©Ù‡ اون رویداد عملی میشه) . در مثال بالا ØŒ این کد رو باید توی رویداد opacity بنویسیم Ùˆ مقدارش همون 100 هست (یعنی مقدارش از 100 تغییر میکنه)
5) توی آرگومان آخر هم ØŒ ØØ¯Ø§Ú©Ø«Ø± مقدار یا در واقع همون مقدار آخریه ÛŒ پارامتر یا رویدادی رو میدیم Ú©Ù‡ توش کد داریم مینویسیم (Ú©Ù‡ اون رویداد عملی میشه) . در مثال بالا ØŒ این کد رو باید توی رویداد opacity بنویسیم Ùˆ مقدارش همون 30 هست (یعنی مقدارش تا 30 ختم میشه)
عملی Ú©Ù‡ در نهایت انجام میشه ØŒ رویدادی هست Ú©Ù‡ اون کد رو توش داریم مینویسیم Ùˆ مقدار این رویداد هم توی دو آرگومان آخر یعنی آرگومان های 4 ام Ùˆ 5 ام مشخص میشه . پس این دو آرگومان ØŒ به عنوان خروجی این تابع هستند Ùˆ چون مقدارشون در ØØ§Ù„ تغییر بین این دو مقدار هست پس مقدار ثابتی در زمان خاص ندارن
و همینطور میدونیم در هر زبونی بین آرگومان های توابع باید ویرگول گزاشت که از هم جدا شن و اول و آخر اون تابع رو پرانتز گزاشت به عنوان علامت تابع
پس با این ØØ§Ù„ اگه بخایم همون مثال rotation ای رو Ú©Ù‡ در بالا Ú¯ÙØªÙ‡ شد رو عملی بنویسیم :
اول چون میخایم مقدار opacity مون عوض شه ØŒ پس این کد رو توی پارامتر opacity مینویسیم. دوم اینکه میخایم پارامتر rotation هر وقت تغییر کرد ØŒ این عمل انجام شه ØŒ پس آرگومان اول رو rotation مینویسیم (با ØØ±ÙˆÙ کوچیک). چون میخایم هر وقت مقدار rotation از 90 به 180 تغییر کرد ØŒ مقدار opacity هم از 100 Ú©Ù… شه Ùˆ تا 30 تغییر کنه ØŒ به ترتیب توی پارامترهای دوم تا پنجم ØŒ عددهای 90 Ùˆ 180 Ùˆ 100 Ùˆ 30 رو مینویسیم :
Code:linear(rotation,90,180,100,30)
ØØ§Ù„ا کاÙیه Ú©Ù‡ مقدار rotation رو از 90 آروم آروم بیشتر کنین Ùˆ تا 180 برسونین ØŒ میبینین Ú©Ù‡ opacity اش هم داره Ú©Ù… میشه آروم آروم
تذکر : وقتی توی رویدادی (در اینجا opacity) کدی نوشتیم ØŒ دیگه نمیشه مقدار این رویداد رو تغییر داد چون تابع کد ما میشه پس در اینجا دیگه نمیشه میزان Ø´ÙØ§Ùیت رو خودمون هر وقت دلمون خلست برای این لایه دستکاری کنیم
این مشخصه Ú©Ù‡ اگه هر وقت رویدادی Ú©Ù‡ تو آرگومان اول ÙØ±Ø§Ø®ÙˆÙ†ÛŒ کردیم ØŒ برعکس شه مقدارش ØŒ مقدار عمل انجام شده هم بر عکس میشه Ùˆ به مقدار اولیه ÛŒ خودش برمیگرده یعنی در مثال بالا اگه rotation رو Ú©Ù‡ از 180 گذشته شد رو هر وقت کمتر از 180 کنیم دوباره ØŒ مقدار opacity هم بر عمس میشه Ùˆ اگه rotation به 90 برسه opacity هم به 100 میرسه آروم آروم
یه مثال دیگه اینکه هر وقت زمان از 5 امین ثانیه به 8 امین ثانیه رسید ، opacity از 0 به 100 برسه :
برای این کار چون پارامتر زمان دیدنی نیست ØŒ هر جا خاستیم از زمان Ø§Ø³ØªÙØ§Ø¯Ù‡ کنیم ØŒ از کلمه ÛŒ time Ø§Ø³ØªÙØ§Ø¯Ù‡ میکنیم
Code:linear(time,5,8,0,100)
ØØ§Ù„ا کاÙیه Ú©Ù‡ زمان رو از 5 ثانیه تا 8 امین ثانیه ببرین ØŒ میبینین Ú©Ù‡ opacity اش هم داره بیشتر میشه آروم آروم
در کل کار این تابع خیلی شبیه عملکرد if تو زبان برنامه نویسی هه (یعنی اگه شرط خاصی برقرار بود ، عمل خاصی رو انجام بده منتها این یه رنج خاص داره که دیدیم) . هر چند توی زبان جاوا هم ساختار if خودش هست (خواستم بگم عملکرد این تابع بیشتر به چی شبیه هه)