Нысанды программалар

ЖОСПАР:

КІРІСПЕ

І БӨЛІМ. НЫСАНДЫ ПРОГРАММАЛАР: OPEN GL
1.1 OPEN GL орнату жолдары.
1.2 Графикамен жұмыс жасау
1.3 «Үш өлшемді фигуралар»
1.4 Жаңадан координаттарға көшу.

ІІ БӨЛІМ. НЫСАНДЫ ПРОГРАММАЛАР: DIRECT X
2.1. Сом туралы жалпы түсінік.
2.2 Визуалдық эффекттер.
2.3 Расторлық бейнелерді сақтау.
2.4 Объекттерді таңдау

ҚОРЫТЫНДЫ

ҚОЛДАНҒАН ӘДЕБИЕТТЕР ТІЗІМІ
КІРІСПЕ

Менің курстық жұмысымның тақыры: «Нысанды программалар» болғандықтан мен Open Graphics Library және DirectX программаларын сипаттауды жөн көрдім.
Себебі, бұл программалар қазіргі кезде кең өрісте қолданылуда. Бұл программалар арқылы графиктік суреттерді, сондай – ақ мультимедиялық қосымшаларды құруға болады.

OpenGL - Open Graphics Library, ашық графикалық кітапхана болып саналады. «Ашық» термині өндірішулерге бағынбайды деген ұғымды білдіреді. Бұл кітапхананы Microsoft, Silicon Graphics сияқты ірі корпорациялар шығарады.
OpenGL кітапханасы үш мөлшерлі графиканы программалайтын интерфейс негізінде қарастырылады. Бағдарламаны құрушы белгілі бір биіктікті таңдап, оны қалайша қосу керектігін көрсетеді. Камералардың және шамдардың параметрлерін құрайды. Ал OpenGL кітапханасы бұл параметрлерді қолдана отырып, экранға қажетті суретті бейнелеп шығарады.

DirectX - бұл драйверлер жинағы, ол Windows ортасындағы және ақпарат құралдардың арасында белгілі бір интерфейс құрайды. DirectX өте қарқынды дамып келе жатыр, оны құрастыратын корпорациялар жыл сайын оның жаңадан версиясын құрастырады. DirectX құралы мультимедиялық қосымшаларды құруға арналған.

Әрбір жаңа версия бұрынғысына қарағанда бұл бағдарламен жұмыс істеу кезіндегі жаңа мүмкіндіктермен ерекшеленеді.
Мен өз жұмысымда DirectX (API) жетінші және сегізінші версияларын тікелей қарастырамын.
Бұл жұмыста мен көптеген (суреттелген) мысалдар келтіремін.
ҚОЛДАНЫЛҒАН ӘДЕБИЕТТЕР ТІЗІМІ:


1. Акишкин А.М., Федорова Г.В. Основы программирования на персональных ЭВМ. М.: Экономическое образование, 1996. - 27 бет
2. Информация негіздері. Журнал . №4 2003 ж.
3. «ИФМ» №1, 1999 ж.
4. «ИФМ» №3, 2001 ж.
5. С.Алдашев, Н.Р.Ахметов «Терминдердің орысша – қазақша сөздігі» Алматы, 1993
6. В.Ф. Ляхович «Основы информатики» Финикс, 1996
        
        ЖОСПАР:
КІРІСПЕ
І БӨЛІМ. НЫСАНДЫ ПРОГРАММАЛАР: OPEN GL
1.1 OPEN GL орнату ... ... ... ... «Үш ... фигуралар»
1.4 Жаңадан координаттарға көшу.
ІІ БӨЛІМ. НЫСАНДЫ ПРОГРАММАЛАР: DIRECT X
2.1. Сом туралы жалпы түсінік.
2.2 Визуалдық эффекттер.
2.3 Расторлық бейнелерді сақтау.
2.4 ... ... ... ... ... ... ... «Нысанды программалар» болғандықтан
мен Open Graphics Library және DirectX ... ... ... бұл ... ... кезде кең өрісте қолданылуда. Бұл
программалар арқылы ... ... ... – ақ ... ... ... - Open Graphics Library, ашық ... кітапхана болып
саналады. «Ашық» термині өндірішулерге бағынбайды ... ... ... ... Microsoft, Silicon Graphics ... ірі ... ... үш ... ... ... интерфейс
негізінде қарастырылады. Бағдарламаны құрушы белгілі бір биіктікті таңдап,
оны қалайша қосу керектігін көрсетеді. ... және ... ... Ал OpenGL ... бұл ... ... ... қажетті суретті бейнелеп шығарады.
DirectX - бұл драйверлер жинағы, ол Windows ... және ... ... ... бір интерфейс құрайды. DirectX өте қарқынды
дамып келе жатыр, оны құрастыратын корпорациялар жыл ... оның ... ... DirectX ... ... қосымшаларды құруға
арналған.
Әрбір жаңа версия бұрынғысына қарағанда бұл ... ... ... жаңа ... ерекшеленеді.
Мен өз жұмысымда DirectX (API) жетінші және сегізінші версияларын
тікелей қарастырамын.
Бұл жұмыста мен көптеген (суреттелген) ... ... ... ... ... OPEN ... OPEN GL ОРНАТУ ЖОЛДАРЫ.
Ең бірінші біз қажетті бағдарламалық қамтуды орнатудан жұмысызды
бастаймыз. ... ... және jdk113 ... Екіншіден
бізге OpenGL кітапханасын өндіруші қажет болады. Ол ... ... ... оған opengl32.dll & glu32.dll кітапханалы
кіреді. Сонымен қатар OpenGL кітапханасын Silicon Graphics ... ... және glu.dll ... ... алу ... одан кейін
opengl.lib, glu.lib Lib каталогына орналастырамыз. Онда ... ... ... жұмыс жасау
OpenGL бүкіл мүмкіншіліктерін сфера объектісі айқын көрсетеді. Оны
көрсету үшін ... ... ... ... ... ... ... іске қосу;
2. File->New->Win32 Console Application менюсын ашу;
3. Проекттің атын және каталогын таңдау, sphere ... OK ... ... An Empty Project ... Finish басу;
5. glaux.c шаблоның өз каталогынызға көшіріп алып, оған sphere.c деген
жаңа ат ... Оны ... To ... ... ... ... Active Configuration басып тұрып, sphere - Win32 ... ... ... ... modules басу, opengl32.lib,
glu32.lib и glaux.lib қосу;
9. display функциясына келесі кодты қойыңыз:
glColor3d(1,0,0);
auxSolidSphere(1);
10. Енді ... іске ... ... ... ... Sphere.exe)
glColor3d функциясы өтпелі түсті орнатады, онымен фигуралар боялады.
Түс төрт параметр бойынша орнатылады: қызыл, көк, жасыл, мөлдір ашык.
Бұл ... ... ... ... ... ... ... тілінде қайта жүктеу қызметі іске ... ... ... ... тікелей қолданылады: FuncionName
[n= параметрлер саны]
[параметрлер түрі].
Келесі түрлерді қолдануға болады:
b - GLbyte байт
s - GLshort қысқаша тұтас
i - GLint ... - GLfloat ... - GLdouble ... ... ... - GLubyte ... байт
us - GLushort белгіленбеген қысқаша тұтас
ui - GLuint белгіленбеген тұтас
v – берілген n ... ... ... ... ... ... ... асыруға болады:
мәні_өзгермелі_сақтаулы_байта/255, (255 – 1 байттағы сақталатын максималдық
сан). glColor3dv функциясы ... ... 3 GLdouble ... ... ... ... беріледі.
Мысалы:
double array[] = {0.5, 0.75, 0.3, 0.7};
...
glColor3dv(array);
glColor3ub(200,100,0); // 200/256, 100/256, 0,256 ... // ... // ... // ... ... ... басындағы және ... ... ... «Үш ... ... функциясын астыда көрсетілген параметрлерге сай функцияға
ауыстыру керек. Параметрлер мәнің бірлік тәртібіне сай етіп орнату қажет –
яғни, 0.5-1.7.
Егер өте ... ... ... онда ... ... көрінеді.
Ал егер тым үлкен қылып жасасаңын, онда фигура кескін болып ... ... ... ... ... салуға болады:
auxSolidCube(width) // куб
auxSolidBox(width, height, depth) // қорап
auxSolidTorus(r,R) // ... // ... // ... // көп ... // ... ... ... сымдық фигураны салу керек болса, онда Solid орнына Wire жазасыз.
Мысалы:
auxWireCube(1) // сымдық ... ... ... ... ... ... көшу ұшін OpenGL ... екі функцияны қолдануға
болады:
glTranslated( Δx,Δy,Δz )
glRotated(ϕ,x0,y0,z0 )
Бірінші функция жүйенің басын ( Δx,Δy,Δz) ... ... ... ϕ ... ... ... қарама қарсы (x0,y0,z0)векторды айнала
жылжытылады. Тағы да екі маңызды функция:
glPushMatrix()
glPopMatrix()
Олар ... ... ... және оларды қайтадан іске қосуға
арналған. Бұл координаттарды glPushMatrix() ... ... өте ... ... ... ... ... үшін glPopMatrix фукциясы қолданылады.
Жоғарыда аталған процестерді жүзеге асыру үшін жаңадан ... ... оған sphere2 ... ат қою қажет. Display функциясына ... ... ... // өтпелі кординаттарды ... // Х осі ... 1.4 ... // 1.4,0,0-те сфераны салу
// абсолюттік координаттарда
glTranslated(1,0,0); // тағы бір рет жылжыту
glColor3d(0,0,1);
auxSolidSphere(0.3);
glPopMatrix(); // ... ... ... ... // (0,0,0) ... ... ... абсолюттік координаттарда
Енді бағдарламаны іске қосуға болады:
Build->Execute Sphere.exe
ІІ БӨЛІМ. НЫСАНДЫ ПРОГРАММАЛАР: DIRECT X
2.1. СОМ туралы жалпы түсінік.
Операциондық жүйенің ... ... амал ... қарастрайық. Қажетті
функциясы бар кітапхананы орнатамыз.
Жасалынатын жұмыстың ... Delphi ... ... ... ExOl ... ... менюдан File | New пунктін таңдап, пайда болған New Items
терезесіндегі "DLL" белгісін басыңыз.
Проектті компликтировалдаудан ... оны ... іке ... ... сурет Құрылған кітапхананың секциясындағы экспортталған ... ... жоқ ... ... секциясына келесі жолды енгізу керек::
procedure DrawBMP (Handle : THandle); stdcall; external 'Projectl.dll';
1.2. сурет. Барлық импортталған ... ... ... ... ... ... ... реттейтін жүйелік бағдарламасын іске қосқаннан ... кез ... ... ... ... ... ақпарат
базасындағы қажетті жазуларды табуға болды. (1.3. сурет)
Ex01 каталогының проектінде фон ... ... ... берілген. Оның
фонында көрсеткіш бейнеленген. Ол тышқан арқылы басқарылады. (1.4 сурет)
Ех03 проект ... ... ... 256 ... режим қолданылады.
(1.5 сурет).
2.2 Визуалдық эффекттер.
Ех14 каталогының ... ... ... ... ... емес көрініс тәрізді эффект)
(1.6 сурет)
Бұл эффекті щығару өте оңай. Бейненің массивынан берілген нүктелерді таңдау
арқыы бұл ... іске ... ... ... қара ... қалдыра беруге
болады.
function TfrmDD.Effect : HRESULT; var
desc : ... j : ... : ... // ... массив,
//мөлшерлер k : Integer; hRet : HRESULT; растрларына сәйкес
begin
Result := DD_FALSE; ZeroMemory (@desc, SizeOf(desc)); ... ... ... ... әақашан да инициалировалдау керек ZeroMemory
(@Image, SizeOf (Image));
for k := 0 to 100000 do begin // ... ... ... қоюлығын береді
i := random (255); // Кіші интервалды таңдау
j := random (255); // 256x256 растр ... ... ... [i, j] := Pict [i, j]; // ... нүктесін таңдаймыз
end;
hRet := FDDSPrimary.Lock (nil, desc, DDLOCK_WAIT, 0}; if Failed (hRet) then
begin
Result := hRet;
Exit;
end;
for i := 0 to 255 ... j := 0 to 255 ... (Integer ... + (j + 113) * desc.lPitch + i + 193)^ :=
Image [i, j];
Resuit := FDDSPrimary. Unlock (nil) ;
end;
Нүктелердің саның ортайту үшін 9 ... ... ... ... : HRESOLT;
var
desc : TDDSURFACEDESC2 ;
i, j : Byte;
Pict : Array [0..63, 0..63] of ... : ... (@desc, ... desc.dwSize := SizeOf(desc);
hRet := FDDSBack.Lock (nil, desc, DDLOCK_WAIT, 0); if Failed (hRet) then
begin
Result := hRet;
Exit;
end;
//Көмектескіш ... for i := 0 to 63 do ... ... ... j := 0 to 63 do
Pict [i, j] := PBYTE (Integer (desc.IpSurface) +
(j + 208) * desc.lPitch + (i + 288) ... ... ... ... ... пиксел мәні көршілес орналасқан 9
нүктенің орташа мәніне сәйкес алынады.
for i := 1 to 62 do
for j := 1 to 62 ... (Integer ... +
(j + 208) * ... + i + 288)^ := (Pict [i - 1, j - 1] ... [i, j - i] +
Pict [i + 1, j - 1] +
Pict [i - 1, j] +
Pict [i, j] ... [i + 1, j - 1] ... [i - 1, j + 1] ... [i, j + 1] ... [i + 1, j 4- 1] ) div 9;
Result := FDDSBack.Unlock (nil);
end;
Бұл ... ... ... сурет пайда болады.
(1.7 сурет)
2.3 Расторлық бейнелерді сақтау.
Суреттерді сақтау үшін:
procedure TfrmDD. FormKeyDown (Sender: TObject; var Key: ... ... ; ... : TBitmap; // ... begin ... жазу ... Key ... NEXT : BlurFactor := BlurFactor + 1;
VK_PRIOR : begin
BlurFactor := BlurFactor - ... ... < 1 then ... := ... : ... ... 1000);
if ParticleCount > MaxParticles then ParticleCount := MaxParticles;
end;
VK_END : begin
Dec {ParticleCount, 1000);
if ParticleCount < 2000 then ParticleCount := 2000;
end;
// Кемтікті ... ... ... ... ... VK_SPACE : begin ... := ... := pf24bit; // 23 разрядты береміз
BitMap.Height := ClientHeight;
BitMap.Width := ClientWidth;
// Экрандағы көріністі BitMap көшіру
BitBlt(BitMap.Canvas.Handle, 0, 0, ClientWidth, ClientHeight,
Canvas.Handle, 0, 0, ... ... // ... ... : ... файлда жазылады, түс туралы ... кез ... ... бұл жұмысымда осы жоғары аталған графиктін программалар туралы
толық мәлімет ... ... ... ... ... туралы, оларды ... ... ... т.б. қысқаша анықтама бердім.
Жалпы курстық жұмысымның мақсаты: нысанды программаларды ... ... ... ... ... ... жеттім деп ойлаймын.
Курстық жұмыстағы суреттер (иллюстрация) Интернеттен алынды, олардың
мінездемесі әрқайсысының (суреттің) астында ... ... бұл ... жиыны қазіргі өмірде кең көлемде
қолданылуда. Олар түрлі графикалық ... ... ... ... ... әр ... кәсіпорын сфераларында кең
қолданылуда. (типография, кино өнері с.с.т.б.)
ҚОЛДАНЫЛҒАН ӘДЕБИЕТТЕР ТІЗІМІ:
1. ... А.М., ... Г.В. ... ... на персональных ЭВМ.
М.: Экономическое образование, 1996. - 27 ... ... ... ... . №4 2003 ... ... №1, 1999 ... «ИФМ» №3, 2001 ж.
5. С.Алдашев, Н.Р.Ахметов «Терминдердің орысша – ... ... ... В.Ф. ... ... информатики» Финикс, 1996

Пән: Информатика
Жұмыс түрі: Курстық жұмыс
Көлемі: 18 бет
Бұл жұмыстың бағасы: 400 теңге









Ұқсас жұмыстар
Тақырыб Бет саны
Нысанды-бағдарланған программалаудың негізгі принциптері5 бет
"нысанды-бағдарланған программалаудың негізгі принциптері:инкапсуляция, мұрагерлеу, полиморфизм"5 бет
Оқу залының жұмысын жеңілдететін автоматты басқару жүйесін жасау атты дипломдық жұмысқа арналған патенттік-ақпараттық зерттеулер52 бет
C/С++ программалау тілінде қарапайым программаларды құру жолдары13 бет
WEB беттері және онда қолданбалы программаларды оқытуды ұйымдастыру48 бет
Windows - тың стандартты программалары6 бет
Windows жүйесінiң стандартты программалары7 бет
Windows жүйесінің стандартты программалары туралы5 бет
Windows операциялық жүйесіндегі стандартты программалар7 бет
Wіndows жүйесінің cтандартты программалары6 бет


Исходниктер
Пәндер
Көмек / Помощь
Арайлым
Біз міндетті түрде жауап береміз!
Мы обязательно ответим!
Жіберу / Отправить


Зарабатывайте вместе с нами

Рахмет!
Хабарлама жіберілді. / Сообщение отправлено.

Сіз үшін аптасына 5 күн жұмыс істейміз.
Жұмыс уақыты 09:00 - 18:00

Мы работаем для Вас 5 дней в неделю.
Время работы 09:00 - 18:00

Email: info@stud.kz

Phone: 777 614 50 20
Жабу / Закрыть

Көмек / Помощь