Графиканың ерекшеліктері

Скачать


Мазмұны
Кіріспе..................................................................................................................3
Тарихы.................................................................................................................4
Графиканың ерекшеліктері................................................................................4
Басқармалы графика...........................................................................................6
М-файл................................................................................................................25
Структурасы.......................................................................................................25
Қорытынды........................................................................................................28
Пайдаланылған әдебиеттер тізімі....................................................................29
Қосымша А.........................................................................................................30
Кіріспе
MATLAB жүйесінің 70-дың
MATLAB жүйесінің пайда болу
MATLAB жүйесінің 70-дың
MATLAB жүйесіндегі графиканың ерекшеліктері.
MATLAB 4.0 версиясынан бастай отырып,
графикалық интерфейс терезесі
жаңа панел құралы Camera
графиканың форматтау жүйесі енгізілген;
Графиканың жеке терезесі құрылуын қамтамасыз
Графиканың бірнеше терезесі енуін қамтамасыз
Терезесін экран бойынша қозғалуын
Графикалық терезесінің ішінде графиканың
әртүрлі координата жүйесінің және
сапалық графиканың болуы;
өте ауқымда түстердің қолдануы;
өте жеңіл графикалық елес–атрибут
үш өлшемді гарафиканың өте жеңіл
Түстердің өте кең ауқымда қоолданылуы;
Анимациялық эфекттердің қолданылуы;
Графика түсінігімен тығыз байланысты
Есептің төмен деңгейде шешімін программист
Басқармалы графика
MATLAB түзу, бет және басқа
Графикалық объектілер
Графикалық объектілер - бұл MATLAB-тағы
Басқармалы графика объектілерінің онбір түрі
Root объектілері иерархияның басы болып
Figure объектілері- бұл экрандағы командалық
Uicontrol объектілері – бұл интерфейстің
Axes объектілері Figure терезесінде аймақты
Uimenu объектілері Figure терезесінің жоғарғы
Image объектілері – бұл тікбұрышты
Line объектілері көптеген екі өлшемді
Surface объектілері – бұл
Text объектілері – бұл символдар
Light объектілері Axes-пен шектелген барлық
Объектілерді басқару
Әрбір жеке объектінің, ол құрылғанда
Root объектісінің идентификаторы ылғи ноль.
h=plot(A)
ның әрбір бағаны үшін төрт
h=
3.0022
1.0038
4.0020
5.0016
Берілген сандық мәндер маңызды болып
MATLAB жиі қолданатын объектілерге
gcf
gca
gco
Cіз бұл функцияларды figure және
Объектіні жоюға оның идентификаторын
Delete(gca)
Графикалық терезені құру және оны
Декскрипторлық графиканы қолдануды бастамастан бұрын
figure – таза графикалық терезені
gcf – figure графикалық терезесінің
elf – графикалық терезені тазарту;
shg – алдын бүктелген графикалық
close – графикалық терезені жабу;
refresh – графикалық терезені жаңарту.
Координаттық өстерді құру және оларды
Келесі бір қарапайым командалар тобы
axes (өстер) – координаттар өстерін
box (жәшік) – суреттің айналасында
cla – axes тұрғызуларын алып
gca – axes графикалық объектісінің
hold – координаттар өстерін сақтау;
ishold – hold статусын тексеру
Атап өтерлік жайт, бұл командаларды
Графикалық объектілердің жарықты өткізу қабілетін
Ерекше нәтижелерді беретін және сырттан
Жарықты өткізу қасиеті әдетте көп
Жарықты өткізуді басқару үшін alpha
Жарықты өткізудің қасиеттерін көрсететін мысалды
>>[x y z v]=flow;
>>p=patch(isosurface(x,y,z,v-3);
>>isonormals(x,y,z,v,p);
>>set(p,’facecolors’,’red’,’edgecolor’,’none’);
>>despect([1 1 1]);
>>view(3); axis tight; grid on;
>>camlight; lighting gouraud;
Мұнда flow (ағын) үш өлшемді
Егер alpha(0.5) командасын орындасақ, онда
Объектілерді құру функциялары
Функцияны бір объектінің атымен шақыру
MATLAB-тың өзі құратын түпкі объектіні(root)
Line([1 3 6], [8 -2
Графикалық объектілерге орындалатын операциялар
Графикалық объектілерге бірнеше операциялар тізбектері
set – графикалық объектінің қасиеттерін
get – графикалық объектінің қасиеттерін
reset – графикалық объектінің қасиеттерін
delete – құрылған графикалық объектіні
gco – ағымдағы графикалық объектінің
gcbo – ағымдағы уақытта функциясы
gcbf – ағымдағы уақытта функциясы
drawnow – графикалық командалардың тоқтатылған
findobj – берілген қасиеттерге ие
copyobj – объектіні және онымен
Айтылғандарға қоса, объектілердің операцияларымен байланысқан
closereq – сұраныс бойынша терезені
ishandle – дескрипторды ақиқаттылыққа тексеру;
newplot – nextPlot арқылы өзгертілген
Растрлы графика
MATLAB жүйесінің ерекшеліктерін белгілеп беретін
image(A) және imagesc(A) командалары А
Бұл жағдайда беттің әрбір нүктесінің
Imagesc(A) командасы жоғарыдағы шартты қажет
>>imagesc(peaks)
Графикалық операциялар ядросының деңгейінде түстік
RGB=hsv2rgb(HSV) – HSV көрінісі матрицасын
HSV=rgb2hsv(RGB) – RGB көрінісі матрицасын
Объектілердің қасиеті
Барлық объектілер олардың экранға қалай
Days=[‘Su’, ‘Mo’, ‘Tu’, ‘We’, ‘Th’,
Temp=[ 21.1 22.2
F=figure;
A=axes(‘YLim’, [16 26],
H=line(1:7, temp)
days – бұл қысқартылған күн
Объектілердің қасиеттері – get командасы
Дескрипторлық графиканың әрбір объектісі оның
>>h=line([0 2 5],[1 4 -1],'Color','blue')
h=
3.0010
Енді объект h дескрипторына ие
Объектінің қасиеттерін өзгерту – set
set командасының көмегімен дескрипторлық графика
>>set(h,’Color’,’red’)
Бұл команда орындалған жағдайда түс
Set және get
Объектінің қасиеттері ол құрылып
Set функциясы объектінің қасиеттерін объектінің
Set( h ,
Берілген объектінің қол жеткзе
Set(h)
Color
EraseMode: [ {normal} |
LineStyle: [
LineWidth
Marker: [
MarkerSize
. .
XData
YData
ZData
. . .
.
Берілген объектінің ағымдағы барлық қасиеттерінің
Get(h)
Color = [0 0.8
EraseMode = normal
LineStyle = -
LineWidth = [3]
Marker = none
MarkerSize = [6]
. . .
XData = [ (1
YData = [ (1
ZData = []
. . .
Жеке бір қасиетке сұраныс болса,
Get(h , ‘Color’)
ans =
0
Axes объектілерінде бүкіл график үшін
T=get(a , ‘title’);
Set(t , ‘string’
Title функциясы нақ осы
Қолданбалы интерфейсті құруға арналған негізгі
Тәжірибелі қолданушылар MATLAB-ті жиі өз
MATLAB-тің жаңа версиясында дескрипторлы графика
Төменде осыған арналған барлық командалар
ulcontrol – басқару элементін құру;
ulmenu – қолданбалы менюді құру;
ginput – тышқанның көмегімен графикалық
Қолданбалы интерфейстің командалары мен функцияларының
dragrect – тышқан көмегімен белгілеуші
rbbox – тікбұрышты тышқанмен созу;
selectmoveresize – тышқанның көмегімен объектілерді
waitforbuttonpress – терезеде пернетақта пернесінің
waltfor – көрсетілген графикалық объектінің
uiwait – uiresume функциясын шақырылуын
inresume – бұғатталудан кейін орындалуды
uisuspend – фигураның интерактивті күйінің
uirestore – фигураның интерактивті күйінің
Қолданбалы интерфейсті жобалаудың амал-әдістері
guide – GUI құру;
align – интерфейс объектілерінің орналасуын
cbedit – объектілерді қайта шақыруды
menuedit – менюді өзгерту;
propedit – объектілердің қасиеттерін өзгерту.
Сұқпаттық терезелерді құрудың амал-әдістері:
dialog – сұқпаттық терезені құру;
axlimdlg – сұқпаттық терезенің өлшемдерін
errordlg – қате туралы хабары
helpdlg – анықтамалық терезені құру;
inputdlg – енгізу сұқпатының терезесін
listdlg – параметрлер вариантын тізімнен
menu – сұқпаттық енгізудің менюін
msgbox – ақпарат терезесін құру;
questdlg – сұраныс терезесін құру;
warndlg – ескерту терезесін құру;
uigetfile – файлдарды ашудың стандартты
uiputfile – файлдарды жазудың стандартты
uisetcolor – түс таңдау терезесін
uisetfont – қаріпті таңдау терезесін
pagedlg – бет параметрлерінің сұқпаттық
printdlg – баспаға шығару сұқпаттық
waitbar – прогресс индикаторына ие
Менюді құру:
makemenu – меню құрылымдарын құру;
menubar – MenuBar объектісі үшін
umtoggle – uimenu объектісі үшін
winmenu – Window менюі үшін
Құралдар тақтасының батырмаларын құру және
btngroup – құралдар тақтасының батырмасын
btnstate – батырма статусына сұрау
btnpress - батырманы басқару;
btndown – батырманы басу;
btnup – кнопканы жіберу.
figure/axes объектілері қасиеттерін берудің утилиталары:
clruprop – объектінің қасиетін жою;
getuprop – объектінің қасиетіне сұрау
setuprop – объектінің қасиетін орнату.
Қосымша утилиталар:
all child – барлық туындаған
findall – барлық объектілерді табу;
hidegui – GUI объектілерін жасыру/ашу;
edtext – text объектілерін интерактивті
getstatus – figure объектісі қатарының
setstatus – fugure объектісі қатарының
pupupstr – түспелі меню қатарының
remapflg – figure объектісінің орналасуын
setptr – сілтеушіні figure объектісіне
getptr – figure объектісіне сілтеушіні
overobj – тышқан курсоры астындағы
Сонымен, MATLAB қолданбалы интерфейстің типтік
Графикалық Қолданушы Интерфейсі(GUI)
Төменде қолданушы интерфейсін құру үшін
b=uicontrol(‘Style’ , ‘pushbutton’ , …
‘Units’ , ‘normalized’ , …
‘Position’ , [.5 .5 .2
‘String’ , ‘clickhere’ );
көрініс(figure) терезесінің ортасында pushbutton-ды құрады
s=’set(b , “Position”, [.8*rand.9*rand.2.1])’;
командасы бар жол құрады, ол
eval(s)
батырманы кездейсоқ орындарға жылжытады. Ақырында
set(b, ‘Callback’ , s)
s-ті батырманың басылуын өңдеуші ретінде
Анимация
MATLAB жылжымалы, анимациялық графиканы жасауға
Нүктелер санын анықтайық
n= 20;
Температураны немесе жылдамдықты
s= .02;
Осы параметрлердің ең жақсы мәндері
x=rand(n,1)-0.5;
y=rand(n,1)-0.5;
Нүктелерді қабырғалары -1-ден 1-ге дейін
h=plot(x , y , ‘
axis([-1 1 -1 1])
axis square
grid off
set(h , ‘EraseMode’ , ‘xor’
while 1
x=x+s*rand(n,1);
y=y+s*rand(n,1);
set(h , ‘XData’ , x
end
Бір нүктенің квадраттан тыс шығып
Анимациялаудың негізгі тәсілдері (амалдары, әдістері)
Анимациялаудың күрделі құрылымға ие болған
MATLAB-та анимацияны жүзеге асыруға арналған
capture – видеокөріністі ұстап қалу;
getframe – анимация үшін кадрды
moviein – анимацияның орындалуы;
rotate – фигураны айналдыру;
frame2im – кадрды графикалық образға
im2frame – графикалық образды кадрға
Өкінішке орай анимацияны күрделі тапсырмалары
Movie
Егерде сіз броундық қозғалыста нүктелер
Біріншіден, кадрлар саны былай болсын:
nframes = 50;
Екіншіден, EraseMode-ті қолданбай бұрынғыдағыдай графикті
x= rand (n, 1)-0.5;
y= rand (n, 1)-0.5;
h=plot(x, y, ‘ . ‘)
set (h, ‘MarkerSize‘ ,
axis([-1 1 -1 1])
axis square
grid off
Енді фильмімізді сақтау үшін жадыдан
M = moviein(nframes);
Бұл nframes бағандары бар матрицаны
Алынған фильмді генерациялайық және getframe-ді
For k = 1:nframes
x = x+s*rand(n,1);
y = y+s*rand(n,1);
set(h, ‘XData’ , x ,
M(:, k) = getframe;
end
Енді фильмді 30 рет ойнатайық
movie(30)
OpenGL амал-тәсілдері жұмысын басқару
MATLAB 6 жүйесі жаңалықтарының бірі
OpenGL-дің амал-тәсілдері MATLAB-та автоматты түрде
Бұл команда рендерингті жүзеге асырудың
autoselect – OpenGL-дің автоматты түрде
neverselect – OpenGL-дің автоматты түрде
advise – OpenGL режимін қолданудың
opengl командасы жалғыз жағдайында selectionjnode
>>opengl
ans=
AutoSelect
Ал opengl info командасы экранға
>>opengl info
Version
Vendor
Renderer
MaxTextureSize = 2048
Extensions
Сондай-ақ рендеринг және OpenGL амал-тәсілдерімен
>>set(gcf,’Renderer’,’OpenGL’).
М-файл
Файл-сценариясы, сонымен Script-файлымен аталатын, команда
Ол келесідей структура болады.
‹‹Негізгі каментария℅ Қосымша каментария
Оларда шығу және енуі аргументтері
Жұмыс аумағының мәліметтерімен жұмыс
Орындалу процесінде компилирит етілмейді..
Негізгі коментария болып бірінші
М-файл функциясының структурасы
М-файл функциясы MATLAB жүйесінің обьектісінің
function
var=f_name(параметрлердің тізімі)
%Негізгі комментария
%Қосымша коментария
Файлдың денесі әртүрлі мәнімен
vаг=выражение
М-файл функциясы құрылым қызметі:
* function хабарлануымен
* Функция өз мәнін
* Барлық айнымалылар,
* Файл–функция өзіндік программалық модуль
* Коментарияны шығару
* Файл-MATLAB жүйесінің
* Файл анықталған соң–функцияны копилиритетеді
Соңғы конструкция vаг=мән
function [varl,var2....]=f_name(Параметр тізімі)
%Негізгі комментария
%Қосымша комментария
Файлдың денесі әртүрлі мәнімен
vаг1=мәні
vаг2=мәні
Мұндай функция көбінесе процедураны еске
[varl,var2,... ]=f_nаmе(Параметрлер тізімі)
Содан кейін varl,
Қорытынды
Қазір оннан аса танымал комьпютер
Қолданылған әдебиеттер тізімі
В.Г.Потемкин 5.х 1 том. Диалогмифи.
В.Г.Потемкин 5.х 2 том. Диалогмифи.
В.Дьяконов 'Инструментальные средства Matlab'. Диалогмифи.
Қосымша А
function z=ardak2;
[x y z v] =
p = patch(isosurface(x,y,z,v,-3));
isonormals(x,y,z,v,p);
isonormals(x,y,z,v,p);
set(p,'facecolor','blue','edgecolor','red');
daspect([1 1 1]);
view(3); axis tight; grid on;
camlight;
lighting gouraud;
alpha(.5)
cla reset;
load topo;
[x y z] = sphere(45);
s = surface(x,y,z,'facecolor','texturemap','cdata',topo);
set(s,'backfacelighting','unlit');
colormap(earth);
alpha('direct');
alphamap([.1;1])
axis off vis3d;
campos([2 13 10]);
camlight;
lighting gouraud;
function z=ardak1;
[x y z v] =
p = patch(isosurface(x,y,z,v,-3));
isonormals(x,y,z,v,p);
isonormals(x,y,z,v,p);
set(p,'facecolor','blue','edgecolor','red');
daspect([1 1 1]);
view(3); axis tight; grid on;
camlight;
lighting gouraud;
alpha(.5)
cla reset;
load topo;
[x y z] = sphere(45);
s = surface(x,y,z,'facecolor','texturemap','cdata',topo);
set(s,'edgecolor','none','facealpha','texture','alphadata',topo);
set(s,'backfacelighting','unlit');
colormap(earthmap_img04);
alpha('direct');
alphamap([.1;1])
axis off vis3d;
campos([2 13 10]);
camlight;
lighting gouraud;
function graf2d2(action);
if nargin


Скачать


zharar.kz