• Welcome to TUKE FÓRUM - Fórum pre študentov Technickej Univerzity v Košiciach.
 

Pisomka z PG

Started by JBull, 23.10.2006, 22:04:28

« predchdzajce - alie »

JBull

Caute, pisal uz niekto ten test z grafiky, alebo kedy budete pisat...nemohol by niekto urobit screenshot testu urcite by to pomohlo vela ludom...a z coho sa idete ucit?

Johny Bravo


VTI

ludia, plz, pokuste sa aspon spravit printscreen ked uz to budete robit...


JBull

Caute tak ako?co bolo na teste?...

kissk

neskorsie este napisem presnejsie tie otazky.....inac nefungovalo ctrl+c a printscreen  :j_sad:
1. Aku transformaciu v 3D priestore reprezentuje nasled. rovnica:

Xssz = -J^x*cos(alfa)*Xuss+J^y*cos(beta)*Yuss
Yssz = -J^x*sin(alfa)*Xuss-J^y*sin(beta)*Yuss+J^z*Zuss

a.kolme premietanie
*b.axonometricku zobrazovaciu transformaciu
c.perspektivne premietanie
d.otocenie v 3D priestore
e.posunutie v priestore

2.Skratka GDI znamena:
Graphic device interface - rozhranie grafickeho zariadenia

3. Predpokladajme ze existuje nasl. fcia na vykreslenie trojuholnika:
void DrawTriange()
{
        glBein(GL_TRIANGLES)
                glColor3f(1.0f,0.0f,0.0f);
                glVertex3f(0.0f,1.0f,0.0f);
                glColor3f(0.0f,1.0f,0.0f);
                glVertex3f(-1.0f,-1.0f,0.0f);
                glVertex3f(1.0f,-1.0f,0.0f);
        glEnd();
}

Ktora z uvedenych implementacii fcie DrawGLScene() by generovala vystup uvedeny na
obrazku?

a. int DrawGLScene(GLvoid)
{
        glClear.....
        glLoadIdentity()
        glTranslate(-1.0,1.0,-6.0)
                Draw triangle
         -- II --  (1.0,-2.0,0.0);
                - II-
         -- II --  (1.0, 2.0, 0.0)
                - II -
        return TRUE;

b.        --II--
        --II--       
        --II--       
        --II--       
        glLoadIdentity()
        glTr..(1.0,1.0,-6.0)
                Draw...
        glLoadIdentity()
        glTr..(0.0,-1.0,-6.0)
        return TRUE

d.        -II-
        glLoadIdentity()
        glTr..(-1.0,1.0,-6.0)
                DrwTriangle..
        glTr (2.0,0.0,0.0)
                --II--
        glTr..(-1.0,-2.0,000)
                Draw Tr..
        return True

4.Aku transformaciu vyjadruje maticovy zapis>
e. Transformacia tocena okolo osi x v 3D priestore

5.  2-D

6.medzi atributy GDI objektu stetec (Brush ) patria:
b.Tvar stetca
e.vyplnovy vzor

Johny Bravo

#6
 

1
Známky: 1
   Skratka GDI znamená:
Odpoveï:     
   a. Graphic development interspace - grafický vývojový medzipriestor
   b. Graphic device interface - rozhranie grafického zariadenia    Správne
   c. Game development interface - herné vývojové prostredie
   d. general device interface - rozhranie veobecného zariadenia
   e. Graphic development interface - grafické vývojové rozhranie
Správny

2
Známky: 1
   Medzi atribúty GDI objektu tetec (Brush) patria:
Odpoveï:     
   a. Orientácia tetca
   b. Farba tetca    Správne.
   c. Pozícia tetca
   d. Hrúbka tetca    Hrúbka má význam iba pri GDI objete pera, nie pri tetci.
   e. Výplòový vzor     Správne
   f. Tvar tetca

3
Známky: 2
   Predpokladajme, e existuje nasledujúca funkcia na vykreslenie trojuholníka.
void DrawTriangle()
{
glBegin(GL_TRIANGLES);
glColor3f(1.0f,0.0f,0.0f);
glVertex3f( 0.0f, 1.0f, 0.0f);
glColor3f(0.0f,1.0f,0.0f);
glVertex3f(-1.0f,-1.0f, 0.0f);
glColor3f(0.0f,0.0f,1.0f);
glVertex3f( 1.0f,-1.0f, 0.0f);
glEnd();
}

Ktorá z uvedených implementácii funkcie DrawGLScene() by generovala výstup uvedený na obrázku ?
!!! Pozor, dosiahnu rovnaký výsledok, je moné rôznymi spôsobmi !!!
Odpoveï:     
   a. int DrawGLScene(GLvoid)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
glTranslatef(-1.0f, 1.0f, -6.0f);
DrawTriangle();
glTranslatef(2.0f, 0.0f, 0.0f);
DrawTriangle();
glTranslatef(-1.0f, -2.0f, 0.0f);
DrawTriangle();
return TRUE;
}

   b. int DrawGLScene(GLvoid)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
glTranslatef(-1.0f, 1.0f, -6.0f);
DrawTriangle();
glTranslatef(1.0f, -2.0f, -6.0f);
DrawTriangle();
glTranslatef(1.0f, 2.0f, -6.0f);
DrawTriangle();
return TRUE;
}

   c. int DrawGLScene(GLvoid)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
glTranslatef(-1.0f, 1.0f, -6.0f);
DrawTriangle();
glLoadIdentity();
glTranslatef(1.0f, 1.0f, 0.0f);
DrawTriangle();
glLoadIdentity();
glTranslatef(0.0f, -1.0f, 0.0f);
DrawTriangle();
return TRUE;
}

   d. int DrawGLScene(GLvoid)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
glTranslatef(-1.0f, 1.0f, -6.0f);
DrawTriangle();
glLoadIdentity();
glTranslatef(1.0f, 1.0f, -6.0f);
DrawTriangle();
glLoadIdentity();
glTranslatef(0.0f, -1.0f, -6.0f);
DrawTriangle();
return TRUE;
}

   e. int DrawGLScene(GLvoid)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
glTranslatef(-1.0f, 1.0f, -6.0f);
DrawTriangle();
glTranslatef(1.0f, -2.0f, 0.0f);
DrawTriangle();
glTranslatef(1.0f, 2.0f, 0.0f);
DrawTriangle();
return TRUE;
}


4
Známky: 2
   Akú transformáciu vyjadruje maticový zápis uvedený na obrázku ?
Odpoveï:     
   a. Transformácia posunutia v 3D priestore
   b. Transformácia posunutia v 2D rovine
   c. Transformáciu zmeny mierky v 3D priestore    Správne
   d. Transformácia skosenia v 3D priestore
   e. Transformácia otoèenia okolo osi Z v 3D priestore
Správny

5
Známky: 1
   Akú transformáciu v 3D priestore reprezentuje následujúca rovnica ?

XSSZ = -JX * cos(alfa) * XUSS + JY * cos(beta) * YUSS
YSSZ = -JX * sin(alfa)  * XUSS - JY * sin(beta) * YUSS + JZ * ZUSS

Odpoveï:     
   a. Axonometrickú zobrazovaciu transformáciu    Spráne.
   b. Posunutie v 3D priestore.
   c. Otoèenie v 3D priestore
   d. Kolmé premietanie.
   e. Perspektívne premietanie.
Správny


6
Známky: 3
   Predpokladajme, e existuje následujúca funkcia na vykreslenie modrého tvorca DrawSquare().

void DrawSquare()
{
glColor3f(0.5f,0.5f,1.0f);
glBegin(GL_QUADS);
glVertex3f(-1.0f, 1.0f, 0.0f);
glVertex3f( 1.0f, 1.0f, 0.0f);
glVertex3f( 1.0f,-1.0f, 0.0f);
glVertex3f(-1.0f,-1.0f, 0.0f);
glEnd();
}

Priraïte správne obrázky s výstupom, ku odpovedajúcej implementácii funkcie DrawGLScene().

int DrawGLScene(GLvoid)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
glTranslatef(-2.0f, 0.0f, -6.0f);
DrawSquare();
glTranslatef(4.0f, 0.0f, 0.0f);
glScalef(1.0f, 1.0f, 1.0f);
DrawSquare();
return TRUE;
}   
int DrawGLScene(GLvoid)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
glTranslatef(-2.0f, 0.0f, -6.0f);
DrawSquare();
glTranslatef(4.0f, 0.0f, 0.0f);
glScalef(0.5f, 0.5f, 1.0f);
DrawSquare();
return TRUE;
}   
int DrawGLScene(GLvoid)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
glTranslatef(2.0f, 0.0f, -6.0f);
DrawSquare();
glTranslatef(-4.0f, 0.0f, 0.0f);
glScalef(0.5f, 2.0f, 1.0f);
DrawSquare();
return TRUE;
}   
int DrawGLScene(GLvoid)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
glTranslatef(-2.0f, 0.0f, -6.0f);
DrawSquare();
glTranslatef(4.0f, 0.0f, 0.0f);
glScalef(2.0f, 0.5f, 1.0f);
DrawSquare();
return TRUE;
}   
int DrawGLScene(GLvoid)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
glTranslatef(-2.0f, 0.0f, -6.0f);
DrawSquare();
glTranslatef(4.0f, 0.0f, 0.0f);
glScalef(0.5f, 2.0f, 1.0f);
DrawSquare();
return TRUE;
}   
int DrawGLScene(GLvoid)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
glTranslatef(-2.0f, 0.0f, -6.0f);
DrawSquare();
glTranslatef(4.0f, 0.0f, 0.0f);
glScalef(2.0f, 2.0f, 1.0f);
DrawSquare();
return TRUE;
}   


JBull

No super dakujem velmi pekne,este jedna malickost nevie niekto spravne odpovede na tie otazky s kodami?

kissk

v ot8zje>3
Známky: 2
   Predpokladajme, e existuje nasledujúca funkcia na vykreslenie trojuholníka....

a,d,e vykreslí rovnaké trojuholníky, asi tie budú správne  :bananawrite:

ijohny

#9
Takze test zo stvrtka PG1  :ringsmiley:

http://img82.imageshack.us/my.php?image=allws2.jpg
kliknut na obrazokz dovodu ze ma netradicnu velkost 1280x6000px cca
:o
test bol screenovany aj napriek obmedzeniu moodle systemu via soft Snippy http://www.stahni.cz/index.php?licence=2&dwn=376
:-X
Dufam ze to niekomu pomoze
:alc:

Johny Bravo

medzi základné GDI patrí:
Stetec, pero
Font, bitmapa

Zakladne atributy GDI objektu pero je:
hrubka pera, farba pera, styl ciary


Johny Bravo

tri trojuholniky su nakreslene..

glLoadIdentity();
glTranslatef(-2.0f,0.0f,-6.0f);
DrawTriangle();
glLoadIdentity();
glTranslatef(0.0f,0.0f,-6.0f);
DrawTriangle();
glLoadIdentity();
glTranslatef(2.0f,0.0f,-6.0f);
DrawTriangle();

glLoadIdentity();
glTranslatef(-2.0f,0.0f,0.0f);
DrawTriangle();
glTranslatef(2.0f,0.0f,0.0f);
DrawTriangle();
glTranslatef(2.0f,0.0f,0.0f);
DrawTriangle();

glLoadIdentity();
glTranslatef(2.0f,0.0f,-6.0f);
DrawTriangle();
glaTranslatef(-2,0f,0.0f,0.0f);
DrawTriangle();
glTranslatef(-2.0f,0.0f,0.0f);
DrawTriangle();


woody

toto je akoze co? :D lebo ak to je odpoved spravna tak dost nechapem lebo pri trojuholnikoch taketo moznosti nemas :P

ijohny

#13
Quote from: woody on  26.10.2006, 18:56:05
toto je akoze co? :D lebo ak to je odpoved spravna tak dost nechapem lebo pri trojuholnikoch taketo moznosti nemas :P

Je to spravne! Uz si aj nieco spravil z grafiky sam? Kedze ty pri trojuholnikoch take moznosti nemas!

pholie

#14
snad vam to pomoze ;)

woody

Quote from: ijohny on  26.10.2006, 19:16:02
Je to spravne! Uz si aj nieco spravil z grafiky sam? Kedze ty pri trojuholnikoch take moznosti nemas!
heeej tha ty si dost mudry teda woooow ... bud moj guru a ukaz mi kde v tomto texte su tie moznosti .... lebo ked som to pisal ten obrazok tam este uploadnuty nebol ..... clovek chce pomoct aby niekto nahodou nepisal kraviny a este ho zjebu ..... btw. mam body za aktivitu z kazdeho cvika ....

Známky: 2
   Predpokladajme, e existuje nasledujúca funkcia na vykreslenie trojuholníka.
void DrawTriangle()
{
glBegin(GL_TRIANGLES);
glColor3f(1.0f,0.0f,0.0f);
glVertex3f( 0.0f, 1.0f, 0.0f);
glColor3f(0.0f,1.0f,0.0f);
glVertex3f(-1.0f,-1.0f, 0.0f);
glColor3f(0.0f,0.0f,1.0f);
glVertex3f( 1.0f,-1.0f, 0.0f);
glEnd();
}

Ktorá z uvedených implementácii funkcie DrawGLScene() by generovala výstup uvedený na obrázku ?
!!! Pozor, dosiahnu rovnaký výsledok, je moné rôznymi spôsobmi !!!
Odpoveï:     
   a. int DrawGLScene(GLvoid)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
glTranslatef(-1.0f, 1.0f, -6.0f);
DrawTriangle();
glTranslatef(2.0f, 0.0f, 0.0f);
DrawTriangle();
glTranslatef(-1.0f, -2.0f, 0.0f);
DrawTriangle();
return TRUE;
}

   b. int DrawGLScene(GLvoid)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
glTranslatef(-1.0f, 1.0f, -6.0f);
DrawTriangle();
glTranslatef(1.0f, -2.0f, -6.0f);
DrawTriangle();
glTranslatef(1.0f, 2.0f, -6.0f);
DrawTriangle();
return TRUE;
}

   c. int DrawGLScene(GLvoid)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
glTranslatef(-1.0f, 1.0f, -6.0f);
DrawTriangle();
glLoadIdentity();
glTranslatef(1.0f, 1.0f, 0.0f);
DrawTriangle();
glLoadIdentity();
glTranslatef(0.0f, -1.0f, 0.0f);
DrawTriangle();
return TRUE;
}

   d. int DrawGLScene(GLvoid)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
glTranslatef(-1.0f, 1.0f, -6.0f);
DrawTriangle();
glLoadIdentity();
glTranslatef(1.0f, 1.0f, -6.0f);
DrawTriangle();
glLoadIdentity();
glTranslatef(0.0f, -1.0f, -6.0f);
DrawTriangle();
return TRUE;
}

   e. int DrawGLScene(GLvoid)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
glTranslatef(-1.0f, 1.0f, -6.0f);
DrawTriangle();
glTranslatef(1.0f, -2.0f, 0.0f);
DrawTriangle();
glTranslatef(1.0f, 2.0f, 0.0f);
DrawTriangle();
return TRUE;
}

Johny Bravo

z PG su body aj za aktivitu?

JBull

Body za aktivitu maju asi iba u Straku

Johny Bravo


flashmann

u nas dava hviezdicky prvym trom, co urobia to, co nakresli na tabulu...
sice to skoro furt len najdu na disku z predosleho cvika, co niekto uz urobil :)

witto007

toto si pozrite ludia....
http://opengl.org/documentation/specs/version1.1/glspec1.1/node25.html

... zapis matic v openGL .. aspon myslim  :bananadance: :h_huh:

DeeL

ludia tu nepiste toto je ARCHIV

Múdri sa naučia od hlupákov viac, ako sa hlúpi poučia z príkladu múdrych.
(Marcus Porcius C. Cato)
It's not that I'm so smart, it's just that I stay with problems longer.
(Albert Einstein)

Hi yourself ;)