سلام دوستان، میخواستم بدونم برای دوران محورهای مختصات در فضای سه بعدی، تحت زاویه ای دلخواه، از چه ماتریسی باید استفاده کنیم؟؟
بطوریکه متلب محورهای دوران داده شده ی جدید رو بعنوان محورهای اصلی قبول کنه و برنامه ای که بعدا مینویسم رو در این مختصات جدید نشون بده، نه مختصات قبلی.
ممنونم میشم اگه کمکم کنید
سلام.
برای تبدیل مختصات (Coordinate transformation)، باید یک ماتریس برای تبدیل مختصات بر اساس زاویه چرخش را محاسبه کنید و سپس در مختصات قدیمی ضرب نمایید تا مختصات جدید به دست آید.
نگاهی به لینک زیر بیندازید :
http://www.ieee-uffc.org/ultrasonics/sof...ure2_7.htm
در آن، برای تبدیل دو بعدی، ماتریس زیر بیان شده است :
کد:
[cos(theta) -sin(theta) ; sin(theta) cos(theta)]
که در آن، theta برابر زاویه چرخش می باشد.
برای سه بعدی، لینک زیر را ببینید :
http://en.wikipedia.org/wiki/Rotation_matrix
همچنین بد نیست که نگاهی به دستور rotate بیندازید.
علاوه بر این، دستورات sph2cart و cart2pol و cart2sph و pol2cart ، دستوراتی برای تبدیل بین دستگاه های مختصات مختلف در متلب می باشند که اگر آنها را در help متلب مشاهده کنید، رابطه تبدیل نیز توضیح داده شده است.