pekfos |
» 2011-01-12 16:42:56 szukałeś tutoriali? błędne założenia! do algorytmów nie ma zbytnio tutoriali. co do obsługi konsoli, zmiany jej rozmiarów to zapraszam na MSDN. to jak wykonać program w miarę przystępnie ci napisałem. zostało tylko to poskładać. jaki masz termin tej pracy? http://lmgtfy.com/?q=bresenham cały dzień na google? coś nie wierzę.. //edit: ty chyba nie szukałeś.. na wikipedii masz kod przejrzysty jak woda destylowana, z rysowaniem przez OGL. rozwiązania jak na tacy! |
|
killer625 Temat założony przez niniejszego użytkownika |
» 2011-01-12 16:59:22 ale algorytm bresenhama jest do rysowania linii, a ja musze to narysować za pomocą znaków ASCII. Nie wiem, da sie jakoś za pomocą tego algorytmu rysować nie linią tylko znakami ? Tak jak mówie, traktujcie mnie jak totalnego laika w tym temacie, wszystko co miałem w szkole na ten temat do tej pory to tylko i wyłącznie programy do obliczania funkcji matematycznych typu liczby doskonałe, potęgi, silnie. termin: piątek. |
|
pekfos |
» 2011-01-12 17:10:45 ale algorytm bresenhama jest do rysowania linii |
taaak, zgadza się a ja musze to narysować za pomocą znaków ASCII |
a co za problem? jedno nie wyklucza drugiego. wszystko zależy od implementacji wyświetlania. załóż że jeden piksel z algorytmie to wybrany przez użytkownika znak.. |
|
killer625 Temat założony przez niniejszego użytkownika |
» 2011-01-12 17:27:32
void BresenhamLine( const int x1, const int y1, const int x2, const int y2 ) { int d, dx, dy, ai, bi, xi, yi; int x = x1, y = y1; if( x1 < x2 ) { xi = 1; dx = x2 - x1; } else { xi = - 1; dx = x1 - x2; } if( y1 < y2 ) { yi = 1; dy = y2 - y1; } else { yi = - 1; dy = y1 - y2; } glVertex2i( x, y ); if( dx > dy ) { ai =( dy - dx ) * 2; bi = dy * 2; d = bi - dx; while( x != x2 ) { if( d >= 0 ) { x += xi; y += yi; d += ai; } else { d += bi; x += xi; } glVertex2i( x, y ); } } else { ai =( dx - dy ) * 2; bi = dx * 2; d = bi - dy; while( y != y2 ) { if( d >= 0 ) { x += xi; y += yi; d += ai; } else { d += bi; y += yi; } glVertex2i( x, y ); } } }
zakładając że to kompletny algorytm Bresenhama, co tu trzeba zmienić aby rysował on za pomocą znaków ? ja nie mam pojęcia bo nie widzę tu rzeczy, które znam do wyświetlania czegoś na ekranie. Nie wspominając o fakcie że implementacja tego w taki sposób aby to współgrało z moim programem, to dla mnie chyba niemożliwe albo po prostu wszystko to co mam do tej pory staje się bezużyteczne przez ten algorytm czyli musiałbym kombinować nad całym programem od nowa pewno. |
|
pekfos |
» 2011-01-12 18:17:11 tak, to pełna implementacja. zrób teraz bufor ekranu by szybko rysować znaki i zastąp vertexy funkcją która ma rysować na buforze, lub po prostu wal gotoxy i printf ale efekt bedzie mierny bo konsola zacznie migać |
|
killer625 Temat założony przez niniejszego użytkownika |
» 2011-01-13 09:56:16 ehh coś mi się kompilator zrypał, non stop wyskakuje mi okienko z tekstem "Plik źródłowy nie został skompilowany" nawet hello world nie moge włączyć.
edit: uff działa po przeinstalowaniu.
jak sie robi bufor ekranu ? |
|
pekfos |
» 2011-01-13 14:50:32 Plik źródłowy nie został skompilowany |
to trzeba było skompilować.. bufor ekranu to nic innego jak tablica która buforuje krótkie, "skoczne" operacje. jak chcesz by rozmiary były zmienne bufor musi być dynamicznie alokowany //edit: a tak właściwie to sądząc po terminie tego programu i stopniu jego trudności to chyba jest on na 6 na semestr. zgadłem? |
|
killer625 Temat założony przez niniejszego użytkownika |
» 2011-01-13 22:39:34 nie, jest to projekt ktory bedzie mial wplyw na 30% oceny koncowej(mamy pare ocen w polroczu ktore maja okreslona wage ). raczej tego nie zrobie, za gleboka woda ;/ praktycznie zadnej z rzeczy uzytej w tym programie nie mialem w szkole, z tego co piszesz, to jeszcze wiecej powinienem znac aby byc w stanie zrobic to poprawnie, nie ogarniam tego poki co. |
|
1 2 3 4 « 5 » 6 7 |