OT: matematika - definice oblouku

David Belohrad david.belohrad@cern.ch
Úterý Srpen 8 12:22:26 CEST 2006


Zdravim,
mozna tady nekdo vymyslel neco podobneho, tak se zeptam pred tim nez se
zacnu zamyslet (i kdyz by to melo byt naopak):

potreboval bych graficky nadefinovat oblouk. Ten oblouk muze byt
libovolneho tvaru, nicmene je to oblouk, takze z toho by melo
vyplyvat (pozn: moje definice :), ze je to cast pootocene elipsy (proc
pootocene? ->kdyz pouziji elipsu v zakladnim tvaru majici vrcholy
soubezne s osou x nebo y, tak nedostanu vsechny mozne tvary oblouku
ktere se daji touto elipsou vygenerovat, ovsem kdyz tu elipsu pootocim,
tak dostanu dalsi stupen volnosti, ktery dovoluje treba pouziti v
perspektive). Moje otazka zni:

Kolik, resp. jake, body lezici na elipse musim zadat abych vypocital:
radiusa, radiusb, uhel, startovni bod, koncovy bod (matne tusim ze 3,
pripadne 4 ovsem s omezujicimi podminkami)

momentalne pro nakresleni arcu pouzivam nasledujici algoritmus. nekde
jsem ho okopiroval na netu a trochu poupravil:

        glPushMatrix ();
        // translate to correct center
        glTranslated (2050000,2050000,0);
        // try rotation
        glRotatef (30.0,0.0f,0.0f,1.0f);
        glBegin(GL_LINE_STRIP);
            // drawing a circle of 10 degrees precision, starting at 30
degrees, finishing at 300
            for (int i=30; i < 300; i+=10)
            {
            //convert degrees into radians
            GLdouble degInRad = i*DEG2RAD;
            glVertex2f(cos(degInRad)*xradius,sin(degInRad)*yradius);
            }
        glEnd();
        glPopMatrix();

v podstate logicky a jednoduchy, ovsem parametry tohoto modelu musim
vypocitat z bodu zadanych.

vim ze je to brutalni OT, ale obcase se tady resi veci totalne out,
takze to zkousim. snad panove/damy prominou
dik
d.

-- 
-------------------------------------------
David Belohrad, Div. AB-BI, Box G02700
C.E.R.N. Site de Meyrin, CH 1211 Geneva 23
http://www.cern.ch
David.Belohrad@cern.ch
Tel +41.22.76.76318  Fax +41.22.76.69056
GSM +41.76.487.3455 
------------------------------------------- 




Další informace o konferenci Hw-list