![]() |
|
Модераторы: PILOT |
![]()
|
|
| Delphin |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 2.4.2002 Где: Кайеркан Репутация: нет Всего: нет |
Ребята пожайлуста помогите!!!
Сражу предупреждаю работа за спасибо, так как денег нет. Нужно сделать программу на паскалее с помощью графа. На играни должен появляться куб, которым бы я мог управлять с помощью курсоров: вверх - куб поварачивается снизу вверх, и т.д. нужна не срочно, но желательно по быстрее. Кто откликнется пишити на личную почту!!! Заранее благодарен... |
|||
|
||||
| Vex |
|
|||
![]() кацапосрачмученiкъ ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3103 Регистрация: 28.3.2002 Где: strawberry fields Репутация: нет Всего: 88 |
У меня был исходник на паскале, там тоже вращающийся куб, правда написан только с помощью CRT, вещь классная, если хочешь, я на мыло тебе скину. Можешь переделать под свои нужды. Исходник написал не я потому это бесплатно.
-------------------- Слава Україні. |
|||
|
||||
| Devos |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 294 Регистрация: 28.7.2002 Где: Владимир Репутация: нет Всего: нет |
-------------------- Не надо спорить о достоинствах, а нужно всё достойно сочитать =) |
|||
|
||||
| Vex |
|
||||
![]() кацапосрачмученiкъ ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3103 Регистрация: 28.3.2002 Где: strawberry fields Репутация: нет Всего: 88 |
Ну ведь раздел работа называется. -------------------- Слава Україні. |
||||
|
|||||
| Chingachguk |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1232 Регистрация: 25.3.2002 Где: Москва Репутация: нет Всего: 18 |
Вращающийся куб - это было одно из первых моих "творений", когда я учился программировать(только чур не смеяться !):
-------------------- I don't like the drugs (but the drugs like me). M.Manson. |
|||
|
||||
| Delphin |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 2.4.2002 Где: Кайеркан Репутация: нет Всего: нет |
всем спасибо, буду проверять, если че снова к вам
|
|||
|
||||
| Delphin |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 2.4.2002 Где: Кайеркан Репутация: нет Всего: нет |
Chingachguk
Твой код конечно работает бе проблем, но дело в том, что мне нужна прога вращением куба в которой я бы мог управлять курсороми клавы. Если не трудно подскажи как будет. |
|||
|
||||
| Chingachguk |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1232 Регистрация: 25.3.2002 Где: Москва Репутация: нет Всего: 18 |
Счас я на работе да и нету под рукой графических библиотек (graph.tpu).
Если будет время на выходных - попробую сделать... -------------------- I don't like the drugs (but the drugs like me). M.Manson. |
|||
|
||||
| Delphin |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 2.4.2002 Где: Кайеркан Репутация: нет Всего: нет |
Буду ждать.... |
|||
|
||||
| MuToGeN |
|
|||
![]() Лесник ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 4379 Регистрация: 15.8.2002 Где: Москва Репутация: нет Всего: 32 |
блин, я на паскале когда-то (очень давно) писал примитивный 3д-шный движок. был тормозной, но работал. исходники год назад где-то прое...л. обидно... -------------------- Three pings for the token rings, Five pings for the UNIX machines, Hundred pings for the broken links, One special ping to check them all Through Simple Network Management Protocol! |
|||
|
||||
| Chingachguk |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1232 Регистрация: 25.3.2002 Где: Москва Репутация: нет Всего: 18 |
Да, я начал делать, но я решил переписать все заново потому, что тот бред я не в силах поправить ... -------------------- I don't like the drugs (but the drugs like me). M.Manson. |
|||
|
||||
| Chingachguk |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1232 Регистрация: 25.3.2002 Где: Москва Репутация: нет Всего: 18 |
Вот, держи. Правда, без закраски ;)
uses graph,crt; const d = 50; color = 14; type vector = array[1..3] of real; const cubic: array[1..8,1..3] of integer = (( 1, 1,-1),( 1, 1, 1),( 1,-1, 1),( 1,-1,-1), (-1, 1,-1),(-1, 1, 1),(-1,-1, 1),(-1,-1,-1)); S_XYZ: array[1..3] of integer = (240,200,200); a0: vector = (0,Pi/2,d); b0: vector = (Pi/2,Pi/2,d); c0: vector = (0,0,d); var regim,driver: integer; key: char; i,j,p1,p2: integer; tempY,tempZ: real; phi,teta: real; a,b,c: vector; x,y,z: array[1..3] of real; points: array[1..8,1..3] of integer; begin driver:=detect; initgraph(driver,regim,'c:\tp\bgi'); outtextxy(245,420,'DEAD WORLD INC.'); outtextxy(230,450,'PRESS ESC TO EXIT'); phi:=0; teta:=0; repeat setcolor(0); setfillstyle(1,0); bar(100,40,500,300); {Поворот в плоскости XY на угол phi} a[1]:=a0[3]*cos(a0[1]+phi)*sin(a0[2]); a[2]:=a0[3]*sin(a0[1]+phi)*sin(a0[2]); a[3]:=a0[3]*cos(a0[2]); b[1]:=b0[3]*cos(b0[1]+phi)*sin(b0[2]); b[2]:=b0[3]*sin(b0[1]+phi)*sin(b0[2]); b[3]:=b0[3]*cos(b0[2]); c[1]:=c0[3]*cos(c0[1]+phi)*sin(c0[2]); c[2]:=c0[3]*sin(c0[1]+phi)*sin(c0[2]); c[3]:=c0[3]*cos(c0[2]); {Поворот в плоскости YZ на угол teta} tempY:=a[2]; tempZ:=a[3]; a[2]:=tempY*cos(teta)+tempZ*sin(teta); a[3]:=tempY*sin(teta)+tempZ*cos(teta); tempY:=b[2]; tempZ:=b[3]; b[2]:=tempY*cos(teta)+tempZ*sin(teta); b[3]:=tempY*sin(teta)+tempZ*cos(teta); tempY:=c[2]; tempZ:=c[3]; c[2]:=tempY*cos(teta)+tempZ*sin(teta); c[3]:=tempY*sin(teta)+tempZ*cos(teta); for i:=1 to 8 do for j:=1 to 3 do points[i,j]:=S_XYZ[j]+round(cubic[i,1]*a[j]+cubic[i,2]*b[j]+cubic[i,3]*c[j]); setcolor(color); for i:=1 to 4 do begin p1:=i; p2:=i+1; if p2>4 then p2:=1; line(points[p1,1],points[p1,2],points[p2,1],points[p2,2]); line(points[p1+4,1],points[p1+4,2],points[p2+4,1],points[p2+4,2]); line(points[p1,1],points[p1,2],points[p1+4,1],points[p1+4,2]); end; key:=readkey; if key=#77 then phi:=phi-Pi/9; if key=#75 then phi:=phi+Pi/9; if key=#72 then teta:=teta-Pi/9; if key=#80 then teta:=teta+Pi/9; until key=#27; closegraph; end. -------------------- I don't like the drugs (but the drugs like me). M.Manson. |
|||
|
||||
| Delphin |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 2.4.2002 Где: Кайеркан Репутация: нет Всего: нет |
Спасибо;=)
Щас попробую сделать чтобы невидимые линии были --------.. если что - опять сюда |
|||
|
||||
| Delphin |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 2.4.2002 Где: Кайеркан Репутация: нет Всего: нет |
блн, что то не получается..
слушайте, а можно сделать невидимые линии в виде пунктиров и вращение по оси yz не колебательно а по кругу , как по оси xy...? |
|||
|
||||
| MuToGeN |
|
|||
![]() Лесник ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 4379 Регистрация: 15.8.2002 Где: Москва Репутация: нет Всего: 32 |
это делается с помощью матрицы глубины. т.е. для каждого пикселя на экране просчитываешь координату Z того, что на этом пикселе отображается. и когда уже окончательно рисуешь, то проверяешь по этой матрице, "верхний" это элемент или нет. -------------------- Three pings for the token rings, Five pings for the UNIX machines, Hundred pings for the broken links, One special ping to check them all Through Simple Network Management Protocol! |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Обсуждение работы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |