OBSAH WEBU
ČTĚTE!
Definice
Popis
Úsečka je základní geometrická vektorová entita definovaná:
Obecná rovnice úsečky
Parametrické vyjádření
Směrnicový tvar
Algoritmy pro vykreslení úsečky
Jsou odvozeny pro případ, kdy:
Popis
… směrnice |
LineDDA(int x1, int y1, int x2, int y2) { double k = (y2-y1)/(x2-x1); double y = y1; for (int x = x1; x <= x2; x++) { draw_pixel( x, y); y += k; } }
Popis
LineEC(int x1, int y1, int x2, int y2) { double k = (y2-y1) / (x2-x1); double E = 0; int y = y1; for (int x = x1; x <= x2; x++) { draw_pixel( x, y); E += k; if (E >= 0.5) { y++; E -= 1; } } }
Popis
Takze po vynásobení rovnic :
V podstate:
LineBres(int x1, int y1, int x2, int y2) { int dx = x2-x1; int dy = y2-y1; int P = 2*dy – dx; int P1 = 2*dy, P2 = P1 - 2*dx; int y = y1; for (int x = x1; x <= x2; x++) { draw_pixel( x, y); if (P >= 0) { P += P2; y++; } else P += P1; } }
Popis
Kružnice je 8*symetrická⇒výpočet pro polovinu bodů jednoho kvadrantu, zbytek prohozením souřadnic a/nebo znamének souřadnice.
Algoritmy jsou odvozeny pro kružnice se středem v počátku [0,0].
Popis
Popis
Popis
Požadované vlastnosti:
INTERPOLAČNÍ KŘIVKA(prochází body) vs. APROXIMAČNÍ KŘIVKA(neprochází řídícími body)
Racionální křivka - řídící body mají váhové koeficienty (Neracionální - váhové koef.o velikosti 1)
Spojitost:
Spline křivky - po částech polynomiální křivka, používá se s cílem minimalizace křivosti křivky(délku, energii)
Přirozený spline - interpoluje své řídící body
Popis
Popis
Popis
odkazy
11 | ||
---|---|---|
Celé jméno | OK | !!! |
Jirka Hynek | ||
Jiří Hajný | ||
2 |
Diskuze
Nahoď sem Jirko ještě obrázky těch jednotlivých křivek, jak jsme se domlouvali na srazu.
u elipsy dopsat midpoint algoritmus + bod, ve kterem dojde ke zmene os pri vypoctu ke kazde krivce dodat obrazek, jak vypada - je to ve slajdech k IZG
jinak se zmenil doodle (hlasovani), tak si to pak uloz, at se tam zobrazi tve jmeno
Dobrá práce s těmi rovnicemi .
Na fitušce jsem narazil u jednoho uživatele na toto, že to měl v podpise…
V Error control DDA máte, že se inkrementuje X, přitom dle kódu se inkrementuje Y.