بسم الله الرحمن الرحیم
ماتریس ها همیشه توی دوران دبیرستان و کنکور توی ریاضیات و هندسه تحلیلی همراه ما بودن و شاید ما یه جورایی حقشون رو ادا نکردیم چون ماتریس ها خیلی کاربرد دارن
سخت ترین چیزها توی ماتریس، ضرب کردن و همچنین پیدا کردن دترمینان ماتریس های بزرگتر از ۲ در ۲ بود.
اگه یادتون باشه یه ماتریس توی دبیرستان داشتیم تحت عنوان ماتریس چرخش (rotate) که با r نشون میدادیم و یه مزیب خوب این ماتریس این بود که اگر به توان عددی میرسید اون عدد میتونست پشت زاویه ی توی عناصر ماتریس بشینه
حالا نکات کنکوری رو نادیده می گیریم و میریم سراغ اصل مطلب
توی این آموزش کار ما با ماتریس های ۴ در ۴ هست:
۱) ماتریس شناسه: ماتریسی قطری که روی قطر آن عدد ۱ هست (ماتریس اسکالر ۴ در ۴)
۲) ماتریس جابه جایی (translate): ماتریس شناسه ای که در سطر چهارم آن به ترتیب مولفه های x و y و z قرار دارد
۳) ماتریس بزرگ نمایی (scale): ماتریس قطری است که ۳ عدد اول روی قطر آن به ترتیب مولفه های x و y و z را تشکیل میدهد
۴) دوران حول محور x: ماتریس شناسه را رسم کنید و ماتریس دورانی که در دوران دبیرستان خواندیم را در وسط این ماتریس رسم کنید تا ماتریسی برای دوران حول محور ایکس بدست آید.
۵) دوران حول محور y: ماتریس شناسه را رسم کنید و از درایه ۱و۱ به فاصله یکی در میان درایه های ماتریس دوران را جایگذاری کنید
۶) دوران حول محور z: ماتریس شناسه را بنویسید و دقیقا ماتریس ۲ در ۲ دوران را از روی درایه ۱ و ۱ شروع به نوشتن کنید .
در نهایت تصویر زیر جمع بندی مطالب بالاست:
در سویفت برای استفاده از ماتریس های بالا میتوانید از دستور زیر استفاده کنید که یک ماتریس ۴ در ۴ را از شما میگیرد:
Layer.transform = CATransform3D(
m11: 1, m12: 0, m13: 0, m14: 0,
m21: 0, m22: 1, m23: 0, m24: 0,
m31: 0, m32: 0, m33: 1, m34: 0,
m41: 0, m42: 0, m43: 0, m44: 1)
در کد بالا ماتریس شناسه جایگذاری شده است و هیچ تغییری در رسم نمیدهد.
موفق باشید
یاعلی