رسم خطوط دلخواه با کلیک های موس بر روی شکل ، با دستور line و دستور ginput :
دستور line در متلب، برای رسم یک یا چند خط به کار می رود. اگر این دستور را با دستور ginput به کار ببریم، آنگاه این قابلیت به وجود می آید که شخص کاربر، با کلیک های موس خود بر روی شکل، نقاط دلخواه اتصال چند خط به یکدیگر را مشخص کند. به مثال زیر توجه کنید :
مثال :
line(x,y)
نتیجه :
یک پنجره نمایش شکل باز می شود. نقاط دلخواه اتصال خط ها را با کلیک موس مشخص کنید. چون درون پرانتز دستور ginput ، عدد 5 نوشته شده است، بنابراین 5 بار باید کلیک کنید تا آنگاه خط ها نمایش داده شوند. مثلا شکل دلخواه زیر، با 5 کلیک ساخته شده است :
مشاهده می کنید که خط های متصل به هم، از اتصال 5 نقطه ای که کاربر با موس کلیک کرده است، ساخته شده اند.
پاک کردن شکل در پنجره شکل فعلی با دستور clf در متلب :
دستور clf در متلب، برای پاک کردن شکل در پنجره شکل فعلی، به کار می رود. شاید بپرسید که اصلا این دستور چه کاربردی می توان داشته باشد، زیرا اگر هیچ کدی نوشته نشود، همان شکل جدید به جای شکل قبل در همان پنجره نمایش داده خواهد شد و حتی برای نمایش یک شکل جدید، می توانیم پنجره شکل قبلی را با دستور close ببندیم و سپس شکل جدید در یک پنجره جدید نمایش داده می شود. بنابراین در نگاه اول، استفاده از دستور clf بدون کاربرد به نظر می آید، اما اینطور نیست و در مواردی خاص، این قابلیت ها جواب نمی دهند و به دستور clf نیاز داریم. برای کسانی که عجله ندارند، توضیحاتی را در ادامه خواهم آورد تا با کاربرد دستور clf آشنا شوند (ساخت یک انیمیشن ساده در متلب را هم یاد خواهید گرفت)، اما برای کسانی که فقط سریع می خواهند نحوه استفاده از این دستور را یاد بگیرند، باید بگویم که استفاده از آن خیلی ساده است و تنها باید دستور clf (تنها کلمه clf) را در یک خط جدید از کدها بنویسید تا شکل موجود در پنجره فعلی پاک شود، یعنی به صورت زیر :
فرض کنید بخواهیم حرکت یک ماشین، یک ربات یا هر چیز دیگر را در متلب شبیه سازی کرده و نتایج شبیه سازی را به صورت شکل های پی در پی نمایش بدهیم. به عنوان مثال، فرض می کنیم می خواهیم یک گاری دستی را به صورت یک مستطیل، دو دایره و دو خط رسم کنیم. دستورات مورد استفاده برای رسم یک حالت ماشین، به صورت زیر می باشند :
close all
clchold on
rectangle(‘Position’,[1,1,1,1],’Curvature’,[1,1],’linewidth’,3)
rectangle(‘Position’,[3,1,1,1],’Curvature’,[1,1],’linewidth’,3)
rectangle(‘Position’,[1,2,3,1],’linewidth’,3)X=[1 0.5];
Y=[3 4.5];
line(X,Y,’linewidth’,3)X=[0.25 0.75];
Y=[4.5 4.5];
line(X,Y,’linewidth’,5)
axis([0 10 0 6])
نتیجه :
دانلود این مقاله:
دانلود رایگان فایلهای متلب