برنامه تیر اندازی در متلب
بحث ویژگی های تابع figure را با یك مثال بررسی می کنیم
برنامه زیر را اجرا کنید تا در مرحله بعد به مرور برنامه بپردازیم.
clc
close all
udata=struct(‘color’,[.2 .3 .4],’unit’,’normal’,’pos’,[.5 .5 .075 .12],’menubar’,’none’,’name’,’fig’,…
‘NumberTitle’,’off’,’resize’,’off’,’WindowStyle’,’modal’);
hfigure=figure(udata,’UserData’,udata);
rectangle(‘Position’,[.5,.5,.5,.5],’Curvature’,[1,1],’FaceColor’,’r’)
rectangle(‘Position’,[.55,.55,.4,.4],’Curvature’,[1,1],’FaceColor’,’b’)
rectangle(‘Position’,[.6,.6,.3,.3],’Curvature’,[1,1],’FaceColor’,’w’)
rectangle(‘Position’,[.65,.65,.2,.2],’Curvature’,[1,1],’FaceColor’,[.5 .2 .1])
rectangle(‘Position’,[.7,.7,.1,.1],’Curvature’,[1,1],’FaceColor’,[.4 .9 .2])
axis(‘off’)
p=0;
for i=1:3
[x,y] = ginput(1);
x0=.75;
y0=.75;
erx=abs(x-x0);
ery=abs(y-y0);
er=sqrt(erx^2+ery^2);
if er <= .05
px=10;
elseif er <= .1
px=9;
elseif er <= .15
px=8;
elseif er <= .2
px=5;
elseif er <= 25
px=3;
else
px=0;
end
p=px+p;
end
ud=get(hfigure,’UserData’);
set(gcf,’Visible’,’off’)
ps=num2str(p);
msg0=’ur piont is ‘;
msg=[msg0 ps];
msgbox(msg,’createMode’,’modal’)
(روی همه پنجره ها قرار می گیرد.) و normal است.
WindowStyle حتما تا حالا پنجره هایی را دیدهاید كه بر روی همه پنجره ها قرار می گیر و تا وقتی كه بسته نشده اند ، اجازه ی كار دیگری را نمی دهند. این ویژگی درای دو مقدار modal
Resize مشخص كننده امكان یا عدم امكان تغیر اندازه پنجره است. در حالت پیش فرض برابر با on است.
NumberTitle برای نمایش دادن یا ندادن شماره ی پنجره بكار می رود ودر حالت پیش فرض برابر با on است.
Name برای تعین اسم پنجره به كار می رود . در صورت استفاده نكردن از آن ، مطلب نامی برای پنجره در نظر نمی گیرد.
Menubar كنترا كننده ی منو بالای صفحه می باشد. ویژگی Menubar دارای دو مقدار none و figure می باشد. به طور پیش فرض مفدار این ویژگی برابر با figure است .
Color مشخص كننده ی رنگ پنجره می باشد كه توسط یك بردار RGB تعین می شود. مقادیر این بردار باید بین[0 1] باشد. درایه اول رنگ قرمز دو.می سبز و سومی آبی است.
دستور struct یك آرایه از همین نوع تعریف می كند. یك structureیك آرایه شامل فیلدها و مفدایر آنهاست.در اینجا با استفاده از structure ویژگی های تابع figure را تعین می كنیم.
دستور clc فرمان پاك كردن command window است. با اجرای خط دوم، تمام پنجره های باز شده(اگر وجود داشته باشند) بسته می شوند.