OpenGL 2. Sisältö. Tietokonegrafiikka / perusteet T /301 4 ov / 2 ov
|
|
- Maija-Leena Pakarinen
- 8 vuotta sitten
- Katselukertoja:
Transkriptio
1 Tietokonegrafiikka / perusteet T /301 4 ov / 2 ov OpenGL 2 Iikka Olli OpenGL / 1 GLUT Display listat Teksturointi Sumu Blendaus Antialiasointi Picking Optimointi Sisältö OpenGL / 2 1
2 GLUT = OpenGL Utility Toolkit Author: Mark J. Kilgard GLUT Järjestelmä riippumaton OpenGL API (C kielellä) Tapahtuma käsitty takaisin kutsuina Useita ikkunoita Idle loop Syötelaitteet Popup menut 3D primitiivejä, torus, pallo, kartio, teepannu... Overlays Kirjasimet (fontit) Sekalaisia apufunktiota OpenGL / 3 GLUTin käyttö Alustus: glutinit(&argc, argv); glutinitdisplaymode(glut_double GLUT_RGB GLUT_DEPTH); Takaisin kutsujen rekisteröinti: glutdisplayfunc(display); glutmousefunc(mouse); glutkeyboardfunc(keypress); glutidlefunc(rotate_me); Tapahtumasilmukka: glutmainloop(); 3D primitiivit: glutsolidsphere, Cube, Cone, Torus, Teapot, Dodeca/Octa/Tetra/Icosaherdon glutwiresphere, Cube... Sekalaista: glutswapbuffers, glutestablishoverlay, glutcreatemenu, glutfullscreen... OpenGL / 4 2
3 GLUT takaisin kutsut void glutdisplayfunc(void (*func)(void)); void glutreshapefunc(void (*func)(int w, int h); void glutkeyboardfunc(void (*func)(unsigned char key, int x, int y)); void glutspecialfunc(void (*func)(int key, int x, int y)); GLUT_KEY_F1..F12, GLUT_KEY_LEFT, GLUT_KEY_UP, GLUT_KEY_DOWN, GLUT_KEY_RIGHT, GLUT_KEY_PAGE_UP, GLUT_KEY_PAGE_DOWN, GLUT_KEY_HOME, GLUT_KEY_INSERT void glutmousefunc(void (*func)(int button, int state, int x, int y)); GLUT_LEFT_BUTTON, GLUT_MIDDLE_BUTTON, GLUT_RIGHT_BUTTON GLUT_UP, GLUT_DOWN void glutidlefunc(void (*func)(void)); void gluttimerfunc(unsigned int msecs, void (*func)(int value), value); glutspaceballmotionfunc(), glutspaceballrotatefunc(), glutspaceballbuttonfunc(), glutbuttonboxfunc(), glutdialsfunc(), gluttabletmotionfunc(), gluttabletbuttonfunc()... Takaisin kutsu disabloidaan NULL argumentilla OpenGL / 5 GLUT kirjasimet Stroke kirjasimet geometria viivoina skaalautuvia void glutstrokecharacter(void *font, int character); GLUT_STROKE_ROMAN, GLUT_STROKE_MONO_ROMAN void *font = GLUT_STROKE_ROMAN; char message[] = GLUT means OpenGL. ;... glenable(gl_line_smooth); glenable(gl_blend); glblendfunc(gl_src_alpha, GL_ONE_MINUS_SRC_ALPHA); gllinewidth(3.0);... glrotatef(4.0, 0.0,0.0,1.0); for(i=0 ; i<len ; i++) glutstrokecharacter(font, message[i]); OpenGL / 6 3
4 GLUT kirjasimet Bittikartta kirjasimet Rasterimatriisi, yksi bittisiä kuvia Nopeita Vakio kokoisia (ei skaalautuvia) void glutbitmapcharacter(void *font, int character); GLUT_BITMAP_8_BY_13, GLUT_BITMAP_9_BY_15 GLUT_BITMAP_TIMES_ROMAN_10, 24 GLUT_BITMAP_HELVETICA_10, 12, 18 OpenGL / 7 Display listat Välimuisti OpenGL kutsuille Hyvä paikka objektien säilyttämiselle (geometria ja attribuutit) Käytä harkiten: Ei yksittäisiä kolmioita! Yleisesti tehokkaampia kuin yksittäiset kutsut Rakenna monimutkaiset objektit (esim robotti) käyttäen hierarkisia display listoja Ei sovellu erittäin suuriin malleihin käytä suuriin malleihin mieluummin fiksuja algoritmeja esim BSP Luotua listaa ei voi muuttaa käytännössä lista voidaan muuttaa poistamalla se ja luomalla uudelleen uusilla parametreilla Display lista luodaan laittamalla OpenGL komentoja glnewlist ja glendlist komentojen väliin Jokaisella display listalla on oma id Uuden id:n saat glgenlists() funktiolla Display lista voi sisältää kutsuja toisiin display listoihin OpenGL / 8 4
5 B5_world = glgenlists(1); Display listat glnewlist(b5_world, GL_COMPILE); glcalllist(station); glcalllist(planet); glcalllist(stars); glendlist(); glcalllist(b5_world); Voit kysyä OpenGL:ltä onko jokin display lista olemassa glislist() funktiolla Display listan voi tuhota gldeletelists() funktiolla void check_and_destroy(gluint list) { if(glislist(list)) gldeletelists(list,1); } OpenGL / 9 Display listat Display listoja rakennettaessa voidaan käyttää mitä tahansa laskuja ja algoritmeja Vain OpenGL komennot tallennetaan display listaan void buildcircle(int circle_list) { GLint i; GLfloat x,y; } glnewlist(circle_list, GL_COMPILE); glbegin(gl_line_loop); for(i=0 ; i<8 ; i++) { x=cos(i*2*m_pi/8.0); y=sin(i*2*m_pi/8.0); } glend(); glendlist(); OpenGL / 10 5
6 Display listat Display listat muuttavat OpenGL:n tilaa (matriiseja ja attribuutteja) aivan kuten mitkä tahansa OpenGL komennot Matriisit ja attribuutit voidaan tallettaa pinoon glnewlist(list, GL_COMPILE); glpushmatrix(); glpushattrib(gl_current_bit); gltranslatef(1.5, 0.0, 0.0); glcolor3f(1.0, 0.0, 0.0); glbegin(gl_triangles); glvertex2f(0.0, 0.0); glvertex2f(1.0, 0.0); glvertex2f(0.0, 1.0); glend(); glpopattrib(); glpopmatrix(); glendlist(); OpenGL sisältää yli 20 eri attribuuttiryhmää. Nämä käsittelevät mm. tämän hetkistä tilaa, puskureita, valoja, sumua jne. GL_CURRENT_BIT = color, normal, texture coords, edge_flag, rasterization info OpenGL / 11 Tekstuurit Tapa liittää kuva pinnalle Käytännöllinen yksityiskohtien toteuttamiseksi Samaa kuvaa voidaan kopioida useaan kertaa (esimerkiksi tiiliseinä) Mapping: yhdistetään tekstuurikoordinaatit (s,t) solmuun OpenGL / 12 6
7 Tekstuurit Tekstuurien koko aina 2 potensseja 16x16, 32x32, 64x64... On kaksi tapaa tehdä tekstuureja 1) Luetaan tekstuuri tiedostosta Kurssi tarjoaa kirjaston rgb kuvien lukemiseen Käytä xv tai gimpiä konvertoimaan jpg tms rgb(a) muotoon GLubyte *LoadRGBImage(const char *imagefile, GLint *w, GLint *h, GLenum *format); GLubyte *Image = NULL; Image = LoadRGBImage( foo.rgb, &ImgWidth, &ImgHeight, &ImgFormat); 2) Käytetään kivaa algoritmia tekemään kuva suoraan muistiin Hyvä yksikertaisiin kuviin kuten shakkilauta OpenGL / 13 Tekstuurit Tekstuuri ja sen parametrit voidaan määrittää nimetyksi tekstuuri objektiksi a) Luo tekstuureille nimet b) Yhdista tekstuuri data (kuva ja parametrit) nimeen c) Priorisoi jos tarpeen d) Käytä tekstuurikoordinaatteja solmuille e) Poista GLuint texnames[2]; GLubyte *myimage=null;... glgentextures(2, texnames); glbindtexture(gl_texture_2d, texnames[0]); gltexparameteri(gl_texture_2d, GL_TEXTURE_WRAP_S, GL_CLAMP); gltexparameteri(gl_texture_2d, GL_TEXTURE_WRAP_T, GL_CLAMP); glteximage2d(gl_texture_2d, 0, GL_RGBA, 256, 256, 0, GL_RGBA, GL_UNSIGNED_BYTE, myimage);... glbindtexture(gl_texture_2d, texnames[0]);... gldeletetextures(2, texnames); OpenGL / 14 7
8 Tekstuurien parametrit Muistiin tallennus muoto: glpixelstorei(gl_unpack_alignment,1); Tekstuurien kääriytyminen (wrapping): gltexparameterf(gl_texture_2d, GL_TEXTURE_WRAP_S, GL_WRAP); gltexparameterf(gl_texture_2d, GL_TEXTURE_WRAP_T, GL_CLAMP); Teksturointi metodi: gltexenvf(gl_texture_env, GL_TEXTURE_ENV_MODE, GL_DECAL); GL_DECAL, GL_MODULATE, GL_BLEND Muista laittaa teksturointi päälle! glenable(gl_texture_2d); OpenGL / 15 Tekstuurin sormenjälki: a) kohdetyyppi b) mipmap taso c) sisäinen muoto d) leveys ja korkeus e) kehys f) kuvan muoto g) kuvan data Tekstuurin määrittely glteximage2d(gl_texture_2d, 0, GL_RGB, ImgWidth, ImgHeight, 0, GL_RGB, GL_UNSIGNED_BYTE, ImgData); OpenGL / 16 8
9 Aseta tekstuuri koordinaatit jokaiselle solmulle! Tekstuuri koordinaatit void display(void) { glclear(gl_color_buffer_bit GL_DEPTH_BUFFER_BIT); glbegin(gl_quads); gltexcoord2f(0.0, 0.0); glvertex3f(-2.0, -1.0, 0.0); gltexcoord2f(0.0, 1.0); glvertex3f(-2.0, 1.0, 0.0); gltexcoord2f(1.0, 1.0); glvertex3f(0.0, 1.0, 0.0); gltexcoord2f(1.0, 0.0); glvertex3f(0.0, -1.0, 0.0); } gltexcoord2f(0.0, 0.0); glvertex3f(1.0, -1.0, 0.0); gltexcoord2f(0.0, 1.0); glvertex3f(1.0, 1.0, 0.0); gltexcoord2f(1.0, 1.0); glvertex3f(2.4, 1.0, -1.4); gltexcoord2f(1.0, 0.0); glvertex3f(2.4, -1.0, -1.4); glend(); glflush(); OpenGL / 17 Teksturointi funktiot Tekstuuri voidaan laittaa suoraan pinnalle tai sitten se voi muokata puskurissa olevaa väriä gltexenvi(gl_texture_envm GL_TEXTURE_ENV_MODE, GL_DECAL); gltexenvi(gl_texture_envm GL_TEXTURE_ENV_MODE, GL_MODULATE); OpenGL / 18 9
10 Mipmap Tarkkuustason säätö Optimointia: käytetään pienempää tekstuuria pienemmälle polygonille Täysi tarkkuus ainoastaan läheltä katsottaessa Esisuodatus gltexparameteri(gl_texture_2d, GL_TEXTURE_MIN_FILTER, GL_NEAREST); GL_NEAREST_MIPMAP_NEAREST, GL_LINEAR_MIPMAP_NEAREST, GL_LINEAR_MIPMAP_LINEAR OpenGL / 19 Environment mapping Tekstuurin osoitus pinnan normaalin ja katsomissuunnan funktiona gltexgeni(gl_s, GL_TEXTURE_GEN_MODE, GL_SPHERE_MAP); gltexgeni(gl_t, GL_TEXTURE_GEN_MODE, GL_SPHERE_MAP); glenable(gl_texture_gen_s); glenable(gl_texture_gen_t); OpenGL / 20 10
11 Sekoittaminen (Blending) Värin sekoittamista käyttäen alpha arvoja Läpinäkyvyys Muista aina disabloida syvyystestaus ja enabloida blendaus gldisable(gl_depth_test); glenable(gl_blend); Sekoitus funktioon voidaan vaikuttaa pixel = f(source, target) f = glblendfunc(sfactor, dfactor) Tyypillinen käyttö piirrä ensimmäinen objekti arvoilla sfactor=gl_one dfactor=gl_zero piirrä toinen objekti puoliksi läpinäkyvänä glcolor(0,1,0,0.5); sfactor=gl_src_alpha dfactor=gl_one_minus_src_alpha OpenGL / 21 Poistaa kulmikkuuden joka johtuu heikosta näytteenottotaajuudesta Alpha voidaan käyttää apuna Käytännössä sekoitetaan naapuripikseleitä Suhteellisen helppoa viivoille ja pisteille glenable(gl_line_smooth); glenable(gl_blend); glblendfunc(gl_src_alpha, GL_ONE_MINUS_SRC_ALPHA); glhint(gl_line_smooth_hint, GL_DONT_CARE); gllinewidth(1.5); Polygonit toimivat hieman toisin Antialiasointi OpenGL / 22 11
12 Antialiasointi Eräs tapa polygonien antialiasointiin: a) Aseta pieni alpha arvo polygonin reunapisteille glenable(gl_polygon_smooth); b) Disabloin syvyystesti gldisable(gl_depth_test); c) Valitse sekoitusfunktio reunapisteille glblendfunc(gl_src_alpha_saturate, GL_ONE); d) Piirrä syvyys järjestyksessä (painter s algorithm) Nykyisin antialiasointia myös raudalla Accumulation bufferia voidaan käyttää myös antialiasoinnin toteutukseen OpenGL / 23 Kaukana olevat objektit häviävät Toteutettu käyttäen syvyysarvoja Sumun parametrejä voidaan säätää Sumu glfog{if}{v}(glenum pname, TYPE param); pname: GL_FOG_MODE GL_FOG_COLOR GL_FOG_DENSITY GL_FOG_START GL_FOG_END param: GL_EXP, GL_EXP2, GL_LINEAR RGBA arvot sumun tiheys (EXP) sumun aloitus etäisyys (LINEAR) sumun lopetus etäisyys (LINEAR) glenable(gl_fog); OpenGL / 24 12
13 Picking Valitseminen on usein riippuvainen tapahtumista kuten hiiren nappulan painaminen OpenGL tarjoaa karkean tavan toteuttaa valitseminen a) Tee taulukko osumille tai valinta puskuri b) Alusta nimi pino c) Rajoita piirtoalue lähelle osoitinta (glupickmatrix() + projektio matriisi) d) Piirrä piirto moodina GL_SELECT. Piirron aikana liitä jokaiseen objektiin nimi e) Palaa GL_RENDER piirto moodiin f) Hae lähimmän objektin nimi osuma taulukosta. Taulukossa on osuman 1) indeksi 2) minz 3) maxz 4) objektin nimi OpenGL / 25 Picking esimerkki int selectpiece(int mousex, int mousey) { long hits; GLuint selectbuf[1024], closest, dist; } glselectbuffer(1024, selectbuf); glrendermode(gl_select); glinitnames(); glpushname(-1); glmatrixmode(gl_projection); glloadidentity(); glupickmatrix(mousex, H-mousey, 4, 4, viewport); gluperspective(45, 1,0.1, 100.0); drawall(); hits = glrendermode(gl_render); if(hits<=0) return 0; closest = 0; dist = ; while(hits) { if(selectbuf[(hits-1)*4+1]<dist) { dist= selectbuf[(hits-1)*4+1]; closest = selectbuf[(hits-1)*4+3]; } hits--; } return closest; OpenGL / 26 13
14 Optimointi Käytä mitä tahansa menetelmiä kohottamaan frameratea Yleisesti: Älä piirrä mitään mitä ei voida nähdä Kaikki on sallittua niin kauan kun se näyttää hyvältä Kerää yleisesti käytetyt objektit ja tila display listoihin Käytä yksipuoleista valaistusta Käytä vain yhtä tai kahta valonlähdettä Määritä katseija äärettömän kauaksi valaistusta laskettaessa Käytä back face cullingia Käytä natiivia kääntäjää (SGI cc tai CC) glcullface(gl_back); gllightmodelf(gl_light_model_two_side, GL_FALSE); gllightmodelf(gl_light_model_local_viewer, GL_FALSE); OpenGL / 27 Lisää optimointia Minimoi geometria ja käytä tekstuureja Käytä GL_TRIANGLE_STRIPia kaikkeen geometriaan, se on nopein Vältä yksittäisiä polygoneja Käytä solmutaulukoita (vertex array, RTFM) Vältä turhia moodin vaihtoja Ryhmittele objektit piirtoa varten materiaalin tekstuurin tai värin mukaan jos mahdollista Käytä vain nimettyjä tekstuureja OpenGL / 28 14
15 Aloittelijoille Ymmärsitlö siirto/pyöritys järjestyksen? Muistitko tyhjentää syvyyspuskurin? Missä objektisi ovat? Ovatko ne projektio frustumissa? Near/Far planes... Käytitkö materiaaleja? Laitapa ne valot päälle. Käytätkö tupla puskurointi? Muista joskus myös vaihtaa puskurit OpenGL komennot menevät putkeen. Jos haluat että komennot suoritetaan välittömästi huuhtele putki glflush():lla Aloita muokkaamaa jo toimivaa pohja sovellusta. OpenGL / 29 15
Sisällys. OpenGL 2. Display-listat. Display-Listat. Display-listat. Display-listat. Tietokonegrafiikka / perusteet Ako/T /301 4 ov / 2 ov
Tietokonegrafiikka / perusteet Ako/T-111.300/301 4 ov / 2 ov OpenGL 2 Display Listat Tekstitys GLUT:lla Teksturointi Varjot Lopuista harjoituksista Valaistus ja materiaalit GLUT Sisällys Marko Myllymaa
OpenGL:n perusteet Osa 3: Teksturointi
OpenGL:n perusteet Osa 3: Teksturointi OpenGL on käyttöjärjestelmäriippumaton kirjasto 2D- ja 3D-grafiikan piirtoon. Tämä artikkelisarja opettaa sinulle 3D-grafiikan perusteet OpenGL:ää käyttäen. Esimerkeissä
T Tietokonegrafiikan perusteet. OpenGL-ohjelmointi
T-111.4300 Tietokonegrafiikan perusteet OpenGL-ohjelmointi Id Softwaren huhtikuussa 2004 julkaisema Doom 3 -peli käyttää OpenGL-kirjastoa. Sisällys Mikä on OpenGL? historia nykytilanne OpenGL:n toiminta
Sisällys. T-111.4300 Tietokonegrafiikan perusteet. OpenGL-ohjelmointi 11/2007. Mikä on OpenGL?
T-111.4300 Tietokonegrafiikan perusteet OpenGL-ohjelmointi 11/2007 Sisällys Mikä on OpenGL? historia nykytilanne OpenGL:n toiminta Piirtäminen ja matriisit Muuta hyödyllistä kameran sijoittaminen valaistus
Esimerkkejä. OpenGL ohjelma. OpenGL tilakone. Geometriset primitiivit. Hyvät ja huonot polygonit. OpenGL Pipeline. Rasterointi
Tietokonegrafiikka / perusteet Ako/T-111.300/301 4 ov / 2 ov OpenGL 1 Yleistä harjoituksista OpenGL:n toiminta Primitiivit Kuvapuskurit Koordinaatistot ja projisointi Transformaatiot ja matriisit Valaistus
OpenGL:n perusteet - Osa 2: 3D grafiikka
OpenGL:n perusteet - Osa 2: 3D grafiikka OpenGL on käyttöjärjestelmäriippumaton kirjasto 2D- ja 3D-grafiikan piirtoon. Tämä artikkelisarja opettaa sinulle 3D-grafiikan perusteet OpenGL:ää käyttäen. Esimerkeissä
Luento 6: Piilopinnat ja Näkyvyys
Tietokonegrafiikan perusteet T-111.4300 3 op Luento 6: Piilopinnat ja Näkyvyys Janne Kontkanen Geometrinen mallinnus / 1 Johdanto Piilopintojen poisto-ongelma Syntyy kuvattaessa 3-ulotteista maailmaa 2-ulotteisella
Jypelin käyttöohjeet» Ruutukentän luominen
Jypelin käyttöohjeet» Ruutukentän luominen Pelissä kentän (Level) voi luoda tekstitiedostoon "piirretyn" mallin mukaisesti. Tällöin puhutaan, että tehdään ns. ruutukenttä, sillä tekstitiedostossa jokainen
T-111.4310 Vuorovaikutteinen tietokonegrafiikka Tentti 14.12.2011
T-111.4310 Vuorovaikutteinen tietokonegrafiikka Tentti 14.12.2011 Vastaa kolmeen tehtävistä 1-4 ja tehtävään 5. 1. Selitä lyhyesti mitä seuraavat termit tarkoittavat tai minkä ongelman algoritmi ratkaisee
T-110.1100 Johdatus tietoliikenteeseen ja multimediatekniikkaan Tietokonegrafiikka
Johdatus tietoliikenteeseen ja multimediatekniikkaan Tietokonegrafiikka Timo Tossavainen Mediatekniikan laitos, Aalto-yliopiston perustieteiden korkeakoulu Timo.Tossavainen@tkk.fi 25.3.2011 Sisältö Historiaa
Merkkijono määritellään kuten muutkin taulukot, mutta tilaa on varattava yksi ylimääräinen paikka lopetusmerkille:
Merkkijonot C-kielessä merkkijono on taulukko, jonka alkiot ovat char -tyyppiä. Taulukon viimeiseksi merkiksi tulee merkki '\0', joka ilmaisee merkkijonon loppumisen. Merkkijono määritellään kuten muutkin
Taulukot. Taulukon määrittely ja käyttö. Taulukko metodin parametrina. Taulukon sisällön kopiointi toiseen taulukkoon. Taulukon lajittelu
Taulukot Taulukon määrittely ja käyttö Taulukko metodin parametrina Taulukon sisällön kopiointi toiseen taulukkoon Taulukon lajittelu esimerkki 2-ulottoisesta taulukosta 1 Mikä on taulukko? Taulukko on
Demokoodaus Linuxilla, tapaus Eternity
Demokoodaus Linuxilla, tapaus Eternity Tuomo Sipola tuomo.sipola@iki.fi Linkin lanit 9.4.2010 Tuomo Sipola tuomo.sipola@iki.fi () Demokoodaus Linuxilla, tapaus Eternity Linkin lanit 9.4.2010 1 / 17 Sisältö
Luento 2: Tulostusprimitiivit
Tietokonegrafiikan perusteet T-111.4300 3 op Luento : Tulostusprimitiivit Lauri Savioja 11/06 D primitiivit / 1 Sisältö Mallintamisen alkeita Perusprimitiivit (GKS) attribuutteineen Näyttömuisti D primitiivit
Tietokonegrafiikka. Jyry Suvilehto T Johdatus tietoliikenteeseen ja multimediatekniikkaan kevät 2014
Tietokonegrafiikka Jyry Suvilehto T-110.1100 Johdatus tietoliikenteeseen ja multimediatekniikkaan kevät 2014 1. Sovellusalueita 2. Rasterigrafiikkaa 3. Vektorigrafiikkaa 4. 3D-grafiikkaa 1. Säteenheitto
Toinen harjoitustyö. ASCII-grafiikkaa
Toinen harjoitustyö ASCII-grafiikkaa Yleistä Tehtävä: tee Javalla ASCII-merkkeinä esitettyä grafiikkaa käsittelevä ASCIIArt-ohjelma omia operaatioita ja taulukoita käyttäen. Työ tehdään pääosin itse. Ideoita
Luento 4: Näkyvyystarkastelut ja varjot
Tietokonegrafiikan jatkokurssi T-111.5300 4 op Luento 4: Näkyvyystarkastelut ja varjot Lauri Savioja 02/07 Näkyvyystarkastelut ja varjot / 1 Näkyvyystarkastelu Solurenderöinti Portaalirenderöinti Quad-/Octtree
Sisällys. Yleistä attribuuteista. Näkyvyys luokan sisällä. Tiedonkätkentä. Aksessorit. 4.2
4. Attribuutit 4.1 Sisällys Yleistä attribuuteista. Näkyvyys luokan sisällä. Tiedonkätkentä. Aksessorit. 4.2 Yleistä Luokan lohkossa, mutta metodien ulkopuolella esiteltyjä muuttujia ja vakioita. Esittely
KÄYTTÖÖN. Koulukirjat tietokoneelle PIKAOHJEET PAPERPORT -OHJELMAN. Sisällysluettelo
Koulukirjat tietokoneelle PIKAOHJEET PAPERPORT -OHJELMAN KÄYTTÖÖN Sisällysluettelo ImageViewer ja PDF Viewer Plus -ohjelmien esittelyt 1 Käytön aloittaminen 1 Työpöydän hyödylliset työkalut 2 Image View
IDL - datan sovitus. ATK tähtitieteessä. IDL - esimerkiksi linfit. IDL - esimerkiksi linfit
IDL - datan sovitus 3. toukokuuta 2017 IDL sisältää monia yleisimpiä funktioita, joita voi helposti sovittaa datapisteisiin. Jos valmiista funktioista ei löydy mieleistä, voi oman mielivaltaisen sovitusfunktion
OpenGL:n perusteet Osa 4: Valot ja varjot
OpenGL:n perusteet Osa 4: Valot ja varjot OpenGL on käyttöjärjestelmäriippumaton kirjasto 2D- ja 3D-grafiikan piirtoon. Tämä artikkelisarja opettaa sinulle 3D-grafiikan perusteet OpenGL:ää käyttäen. Esimerkeissä
Ohjelmoinnin jatkokurssi, kurssikoe 28.4.2014
Ohjelmoinnin jatkokurssi, kurssikoe 28.4.2014 Kirjoita jokaiseen palauttamaasi konseptiin kurssin nimi, kokeen päivämäärä, oma nimi ja opiskelijanumero. Vastaa kaikkiin tehtäviin omille konsepteilleen.
Lyhyt kertaus osoittimista
, syksy 2007 Kertausta Luento 10 12.10.2007 Syksy 2007 1 Lyhyt kertaus osoittimista char *p; /* char, int, jne ilmoittavat, minkä tyyppisiä */ Keskusmuisti int *q; /* olioita sisältäviin muistilohkoihin
Tilanhallintatekniikat
Tilanhallintatekniikat 3D grafiikkamoottoreissa Moottori on projektin osa joka vastaa tiettyjen toiminnallisuuksien hallinnasta hallitsee kaikki vastuualueen datat suorittaa kaikki tehtäväalueen toiminnot
Action Request System
Action Request System Manu Karjalainen Ohjelmistotuotantovälineet seminaari HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos 25.10.2000 Action Request System (ARS) Manu Karjalainen Ohjelmistotuotantovälineet
Luento 10: Näkyvyystarkastelut ja varjot. Sisältö
Tietokonegrafiikka / perusteet T-111.300/301 4 ov / 2 ov Luento 10: Näkyvyystarkastelut ja varjot Marko Myllymaa / Lauri Savioja 10/04 Näkyvyystarkastelut ja varjot / 1 Näkyvyystarkastelu Solurenderöinti
Muita kuvankäsittelyohjelmia on mm. Paint Shop Pro, Photoshop Elements, Microsoft Office Picture Manager
Missio: 1. Asentaminen 2. Valokuvien tarkastelu, tallennus/formaatit, koko, tarkkuus, korjaukset/suotimet, rajaus 3. Kuvan luonti/työkalut (grafiikka kuvat) 4. Tekstin/grafiikan lisääminen kuviin, kuvien/grafiikan
ATK tähtitieteessä. Osa 5 - IDL datan sovitusta ja muita ominaisuuksia. 25. syyskuuta 2014
25. syyskuuta 2014 IDL - datan sovitus IDL sisältää monia yleisimpiä funktioita, joita voi helposti sovittaa datapisteisiin. Jos valmiista funktioista ei löydy mieleistä, voi oman mielivaltaisen sovitusfunktion
Tampereen yliopisto Tietokonegrafiikka 2013 Tietojenkäsittelytiede Harjoitus
Tampereen yliopisto Tietokonegrafiikka 201 Tietojenkäsittelytiede Harjoitus 6 1..201 1. Tarkastellaan Gouraudin sävytysmallia. Olkoon annettuna kolmio ABC, missä A = (0,0,0), B = (2,0,0) ja C = (1,2,0)
Tietorakenteet ja algoritmit
Tietorakenteet ja algoritmit Rekursio Rekursion käyttötapauksia Rekursio määritelmissä Rekursio ongelmanratkaisussa ja ohjelmointitekniikkana Esimerkkejä taulukolla Esimerkkejä linkatulla listalla Hanoin
Peilaus pisteen ja suoran suhteen Pythonin Turtle moduulilla
Peilaus pisteen ja suoran suhteen Pythonin Turtle moduulilla ALKUHARJOITUS Kynän ja paperin avulla peilaaminen koordinaatistossa a) Peilaa pisteen (0,0) suhteen koordinaatistossa sijaitseva - neliö, jonka
JAVA on ohjelmointikieli, mikä on kieliopiltaan hyvin samankaltainen, jopa identtinen mm. C++
JAVA alkeet JAVA on ohjelmointikieli, mikä on kieliopiltaan hyvin samankaltainen, jopa identtinen mm. C++ ja Javascriptin kanssa. Huom! JAVA ja JavaScript eivät silti ole sama asia, eivätkä edes sukulaiskieliä.
Esityksen sisältö. Peruskäsitteitä. 3D Grafiikka tietokonepeleissä. Piirto- ja taustapuskuri
Esityksen sisältö 3D Grafiikka tietokonepeleissä Peruskäsitteitä Korkean tason rakenne Piirron alkeisobjektit Tekstuurit Valotus Laitteistopiirtoliukuhihna Yhteenveto Peruskäsitteitä Piirto- ja taustapuskuri
ATK tähtitieteessä. Osa 5 - IDL datan sovitusta ja muita ominaisuuksia. 25. syyskuuta 2014
25. syyskuuta 2014 IDL - datan sovitus IDL sisältää monia yleisimpiä funktioita, joita voi helposti sovittaa datapisteisiin. Jos valmiista funktioista ei löydy mieleistä, voi oman mielivaltaisen sovitusfunktion
Toinen harjoitustyö. ASCII-grafiikkaa 2017
Toinen harjoitustyö ASCII-grafiikkaa 2017 Yleistä Tehtävä: tee Javalla ASCII-merkkeinä esitettyä grafiikkaa käsittelevä ASCIIArt17-ohjelma omia operaatioita ja taulukoita käyttäen. Työ tehdään pääosin
Algoritmit 2. Luento 7 Ti Timo Männikkö
Algoritmit 2 Luento 7 Ti 4.4.2017 Timo Männikkö Luento 7 Joukot Joukko-operaatioita Joukkojen esitystapoja Alkiovieraat osajoukot Toteutus puurakenteena Algoritmit 2 Kevät 2017 Luento 7 Ti 4.4.2017 2/26
Luento 6: Geometrinen mallinnus
Tietokonegrafiikan perusteet T-111.4300 3 op Luento 6: Geometrinen mallinnus Lauri Savioja, Janne Kontkanen 11/2007 Geometrinen mallinnus / 1 Sisältö Mitä on geometrinen mallinnus tietokonegrafiikassa
Monipuolinen esimerkki
Monipuolinen esimerkki Lopuksi monipuolinen esimerkki, jossa ohjelmisto koostuu pääohjelmasta ja kahdesta aliohjelmasta, joista toinen on proseduuri ja toinen funktio. Funktio Sqrt(int n): int Sqrt(int
Taulukot. Jukka Harju, Jukka Juslin 2006 1
Taulukot Jukka Harju, Jukka Juslin 2006 1 Taulukot Taulukot ovat olioita, jotka auttavat organisoimaan suuria määriä tietoa. Käsittelylistalla on: Taulukon tekeminen ja käyttö Rajojen tarkastus ja kapasiteetti
Luento 6: Tulostusprimitiivien toteutus
Tietokonegrafiikan perusteet T-111.4300 3 op Luento 6: Tulostusprimitiivien toteutus Lauri Savioja 11/07 Primitiivien toteutus / 1 ntialiasointi Fill-algoritmit Point-in-polygon Sisältö Primitiivien toteutus
Tietorakenteet ja algoritmit
Tietorakenteet ja algoritmit Kurssin sisältö pääpiirteittäin Tarvittavat pohjatiedot Avainsanat Abstraktio Esimerkkiohjelman tehtäväkuvaus Abstraktion käyttö tehtävässä Abstrakti tietotyyppi Hyötyjä ADT:n
Luku 6: Grafiikka. 2D-grafiikka 3D-liukuhihna Epäsuora valaistus Laskostuminen Mobiililaitteet Sisätilat Ulkotilat
2D-grafiikka 3D-liukuhihna Epäsuora valaistus Laskostuminen Mobiililaitteet Sisätilat Ulkotilat 2D-piirto 2-ulotteisen grafiikan piirto perustuu yleensä valmiiden kuvien kopioimiseen näyttömuistiin (blitting)
Funktionaalista grafiikkaa
Funktionaalista grafiikkaa Tommi Teistelä totateis@jyu.fi 22.4.2008 Tiivistelmä Haskellin kaltaisten funktionaalisten ohjelmointikielten ilmaisukyky mahdollistaa grafiikan koostamisen perinteistä korkeammalla
Tehtävä 3 ja 4. 3. aikakausilehden kansi pastissi 4. runokirjan kansi
Tehtävä 3 ja 4 3. aikakausilehden kansi pastissi 4. runokirjan kansi 3. Valitse esim. Opettaja-lehti ja tee sille uusi kansi lehden tyyliin samoilla fonteilla ym. (ohje sille), NYT-liite, tms. käy myös
Tampereen yliopisto Tietokonegrafiikka 2013 Tietojenkäsittelytiede Harjoitus
Tampereen yliopisto Tietokonegrafiikka 2013 Tietojenkäsittelytiede Harjoitus 2 7.2.2013 1. Matematiikan lukiokurssissa on esitetty, että ylöspäin aukeavan paraabelin f(x) = ax 2 +bx+c,a > 0,minimikohtasaadaan,kunf
Ohjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 15.3.2010 T-106.1208 Ohjelmoinnin perusteet Y 15.3.2010 1 / 56 Tiedostoista: tietojen tallentaminen ohjelman suorituskertojen välillä Monissa sovelluksissa ohjelman
Sukupuu -ohjelma. Ossi Väre (013759021) Joni Virtanen (013760641)
Sukupuu -ohjelma Ossi Väre (013759021) Joni Virtanen (013760641) 7.11.2011 1 Johdanto Toteutimme C -kielellä sukupuuohjelman, johon käyttäjä voi lisätä ja poistaa henkilöitä ja määrittää henkilöiden välisiä
Dynaaminen muisti. Pasi Sarolahti Aalto University School of Electrical Engineering. C-ohjelmointi Kevät 2017.
C! Dynaaminen muisti 9.2.2017 Agenda Kertausta merkkijonoista Dynaaminen muisti Valgrind-perusteet ja esimerkkejä Seuraava luento to 2.3. Ei harjoituksia arviointiviikolla 13.2. 17.2. 2 Palautetta merkkijonoihin
1.1 Pino (stack) Koodiluonnos. Graafinen esitys ...
1. Tietorakenteet Tietorakenteet organisoivat samankaltaisten olioiden muodostaman tietojoukon. Tämä järjestys voidaan saada aikaan monin tavoin, esim. Keräämällä oliot taulukkoon. Liittämällä olioihin
Tietueet. Tietueiden määrittely
Tietueet Tietueiden määrittely Tietue on tietorakenne, joka kokoaa yhteen eri tyyppistä tietoa yhdeksi asiakokonaisuudeksi. Tähän kokonaisuuteen voidaan viitata yhteisellä nimellä. Auttaa ohjelmoijaa järjestelemään
GeoGebra-harjoituksia malu-opettajille
GeoGebra-harjoituksia malu-opettajille 1. Ohjelman kielen vaihtaminen Mikäli ohjelma ei syystä tai toisesta avaudu toivomallasi kielellä, voit vaihtaa ohjelman käyttöliittymän kielen seuraavasti: 2. Fonttikoon
Operaattoreiden ylikuormitus. Operaattoreiden kuormitus. Operaattoreiden kuormitus. Operaattoreista. Kuormituksesta
C++ - perusteet Java-osaajille luento 5/7: operaattoreiden ylikuormitus, oliotaulukko, parametrien oletusarvot, komentoriviparametrit, constant, inline, Operaattoreiden ylikuormitus Operaattoreiden kuormitus
Sisältö. Luento 6: Piilopinnat. Peruskäsitteet (jatkuu) Peruskäsitteitä. Yksinkertaisia tapauksia. Yksinkertaiset tapaukset jatkuu
Tietokonegrafiikka / perusteet T-111.300/301 4 ov / 2 ov Peruskäsitteitä Z-buffer Syvyyslajittelu Juovalajittelu Rekursiivinen aluejako Piiloviivat Sisältö Luento 6: Piilopinnat Marko Myllymaa 09/03 Piilopinnat
C-kielessä taulukko on joukko peräkkäisiä muistipaikkoja, jotka kaikki pystyvät tallettamaan samaa tyyppiä olevaa tietoa.
Taulukot C-kielessä taulukko on joukko peräkkäisiä muistipaikkoja, jotka kaikki pystyvät tallettamaan samaa tyyppiä olevaa tietoa. Taulukon muuttujilla (muistipaikoilla) on yhteinen nimi. Jokaiseen yksittäiseen
Sisällys. Yleistä attribuuteista. Näkyvyys luokan sisällä ja ulkopuolelta. Attribuuttien arvojen käsittely aksessoreilla. 4.2
4. Attribuutit 4.1 Sisällys Yleistä attribuuteista. Näkyvyys luokan sisällä ja ulkopuolelta. Attribuuttien arvojen käsittely aksessoreilla. 4.2 Yleistä Luokan lohkossa, mutta metodien ulkopuolella esiteltyjä
Videon tallentaminen Virtual Mapista
Videon tallentaminen Virtual Mapista Kamera-ajon tekeminen Karkean kamera ajon teko onnistuu nopeammin Katseluohjelmassa (Navigointi > Näkymät > Tallenna polku). Liikeradan ja nopeuden tarkka hallinta
TIEA341 Funktio-ohjelmointi 1, kevät 2008
TIEA34 Funktio-ohjelmointi, kevät 2008 Luento 3 Antti-Juhani Kaijanaho Jyväskylän yliopisto Tietotekniikan laitos 2. tammikuuta 2008 Ydin-Haskell: Syntaksi Lausekkeita (e) ovat: nimettömät funktiot: \x
Osoittimet ja taulukot
Osoittimet ja taulukot Hannu Laine Copyright Hannu Laine Osoittimet int main (void) { int a; int *p; //p on osoitinmuuttuja p = &a; *p = 10; printf( %d, *p); //tulostuu muuttujan a sisältö scanf( %d, p);
Harjoitus Morphing. Ilmeiden luonti
LIITE 1 1(5) Harjoitus Morphing Harjoituksessa käsiteltävät asiat: Objektien kopioiminen Editoitavan polygonin muokkaaminen Morph-modifier käyttö ilmeiden luomiseen Lyhyen animaation luonti set key- toimintoa
Ohjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 2.3.2009 T-106.1208 Ohjelmoinnin perusteet Y 2.3.2009 1 / 28 Puhelinluettelo, koodi def lue_puhelinnumerot(): print "Anna lisattavat nimet ja numerot." print
Tieto- ja tallennusrakenteet
Tieto- ja tallennusrakenteet Sisältö Tyyppi, abstrakti tietotyyppi, abstraktin tietotyypin toteutus Tallennusrakenteet Taulukko Linkitetty rakenne Abstraktit tietotyypit Lista (Puu) (Viimeisellä viikolla)
TAMPEREEN TEKNILLINEN YLIOPISTO Digitaali- ja tietokonetekniikan laitos. Harjoitustyö 4: Cache, osa 2
TAMPEREEN TEKNILLINEN YLIOPISTO Digitaali- ja tietokonetekniikan laitos TKT-3200 Tietokonetekniikka I Harjoitustyö 4: Cache, osa 2.. 2010 Ryhmä Nimi Op.num. 1 Valmistautuminen Cache-työn toisessa osassa
XNA grafiikka laajennus opas. Paavo Räisänen. www.ohjelmoimaan.net. Tämän oppaan lähdekoodit ovat ladattavissa näiden sivujen Ladattavat osiossa.
XNA grafiikka laajennus opas Paavo Räisänen www.ohjelmoimaan.net Tämän oppaan lähdekoodit ovat ladattavissa näiden sivujen Ladattavat osiossa. Tätä opasta saa vapaasti kopioida, tulostaa ja levittää ei
6. Harjoitusjakso II. Vinkkejä ja ohjeita
6. Harjoitusjakso II Seuraavaksi harjoitellaan algebrallisten syötteiden, komentojen ja funktioiden käyttöä GeoGebrassa. Tarjolla on ensimmäisen harjoittelujakson tapaan kahden tasoisia harjoituksia: perustaso
Ohjelmoinnin peruskurssien laaja oppimäärä
Ohjelmoinnin peruskurssien laaja oppimäärä Luento 8: Pienen ohjelmointikielen tulkki (ohjelmoitava laskin) (mm. SICP 4-4.1.5 osin) Riku Saikkonen 15. 11. 2012 Sisältö 1 Nelilaskintulkki, globaalit muuttujat
Metodit. Metodien määrittely. Metodin parametrit ja paluuarvo. Metodien suorittaminen eli kutsuminen. Metodien kuormittaminen
Metodit Metodien määrittely Metodin parametrit ja paluuarvo Metodien suorittaminen eli kutsuminen Metodien kuormittaminen 1 Mikä on metodi? Metodi on luokan sisällä oleva yhteenkuuluvien toimintojen kokonaisuus
Sukelluskeräily, Pelihahmon liikuttaminen. Tee uusi hahmo: Pelihahmo. Nimeä se. Testaa ikuisesti -silmukassa peräkkäisinä testeinä (jos) onko jokin
Versio 1.0 1 Sukelluskeräily Tässä pelissä keräilet erilaisia aarteita ja väistelet vihollista. Tämän lisäksi pelaajan pitää käydä välillä pinnalla hengittelemässä. Peliin lisätään myös häiriötekijäksi
Ohjelmointi 1 / 2009 syksy Tentti / 18.12
Tentti / 18.12 Vastaa yhteensä neljään tehtävään (huomaa että tehtävissä voi olla useita alakohtia), joista yksi on tehtävä 5. Voit siis valita kolme tehtävistä 1 4 ja tehtävä 5 on pakollinen. Vastaa JOKAISEN
Tapio Takala / Lauri Savioja Teknillinen korkeakoulu Tietoliikenneohjelmistojen ja multimedian laboratorio
T-110.1100 Johdatus tietoliikenteeseen ja multimediatekniikkaan Tietokonegrafiikka Tapio Takala / Lauri Savioja Teknillinen korkeakoulu Tietoliikenneohjelmistojen ja multimedian laboratorio T-110.1100
Ohjelmoinnin peruskurssien laaja oppimäärä
Ohjelmoinnin peruskurssien laaja oppimäärä Luento 11: Tulkin muokkaaminen, sisäiset määrittelyt, makrot (mm. SICP 3.2.4, 4-4.1.6) Riku Saikkonen 29. 11. 2012 Sisältö 1 Kirjan tulkin muokkaaminen 2 Yksityiskohta:
TIEA341 Funktio-ohjelmointi 1, kevät 2008
TIEA341 Funktio-ohjelmointi 1, kevät 2008 Luento 4 Antti-Juhani Kaijanaho Jyväskylän yliopisto Tietotekniikan laitos 17. tammikuuta 2008 Modulin viimeistelyä module Shape ( Shape ( Rectangle, E l l i p
7/20: Paketti kasassa ensimmäistä kertaa
Ohjelmointi 1 / syksy 2007 7/20: Paketti kasassa ensimmäistä kertaa Paavo Nieminen nieminen@jyu.fi Tietotekniikan laitos Informaatioteknologian tiedekunta Jyväskylän yliopisto Ohjelmointi 1 / syksy 2007
OpenGL:n perusteet - Osa 1: Ikkunan luominen
OpenGL:n perusteet - Osa 1: Ikkunan luominen OpenGL on käyttöjärjestelmäriippumaton kirjasto 2D- ja 3D-grafiikan piirtoon. Tämä artikkelisarja opettaa sinulle 3D-grafiikan perusteet OpenGL:ää käyttäen.
Sisältö. 22. Taulukot. Yleistä. Yleistä
Sisältö 22. Taulukot Yleistä. Esittely ja luominen. Alkioiden käsittely. Kaksiulotteinen taulukko. Taulukko metodin parametrina. Taulukko ja HelloWorld-ohjelma. Taulukko paluuarvona. 22.1 22.2 Yleistä
Hakemistojen sisällöt säilötään linkitetyille listalle.
Harjoitustyö 1 Harjoitustyö Tehtävä: ohjelmoi Java-kielellä komentoikkunaa (komentotulkkia, komentoriviä) simuloiva olioperustainen ohjelma. Hakemistojen sisällöt säilötään linkitetyille listalle. Työ
Ohjelmoinnin peruskurssien laaja oppimäärä
Ohjelmoinnin peruskurssien laaja oppimäärä Luento 10: Paikalliset muuttujat, kirjan tulkki kokonaisuutena (mm. SICP 3.2, 4.1.24.1.6) Riku Saikkonen 22. 11. 2012 Sisältö 1 Ympäristöt: miten paikalliset
Fixcom Webmail ohje. Allekirjoitus. Voit lisätä yhden tai useamman allekirjoituksen.
Webmail on monipuolinen työkalu jolla voi tehdä paljon muutakin kuin lukea sähköpostia. Tässä ohjeessa on lyhyesti esitelty joitakin sen ominaisuuksia. Peruspostilaatikossa ei ole kaikkia ominaisuuksia,
Public Account-tili on pysyvä, joten kannattaa käyttää mieluummin sitä kuin kaupallisen tilin kokeiluversiota.
1.1 Tässä harjoituksessa opit laatimaan luokitellun teemakartan maastossa aiemmin keräämistäsi pisteistä. Käytämme Esrin ArcGis-palvelun ilmaisia ominaisuuksia. Kartan tekoa voi harjoitella kokonaan ilman
Ohjelmoinnin peruskurssien laaja oppimäärä
Ohjelmoinnin peruskurssien laaja oppimäärä Luento 4: Symbolit, derivojaesimerkki, kierroksen 1 ratkaisut (mm. SICP 2.32.3.2) Riku Saikkonen 1. 11. 2011 Sisältö 1 Symbolit ja sulkulausekkeet 2 Lisää Schemestä:
Kirjoita oma versio funktioista strcpy ja strcat, jotka saavat parametrinaan kaksi merkkiosoitinta.
Tehtävä 63. Kirjoita oma versio funktiosta strcmp(),joka saa parametrinaan kaksi merkkiosoitinta. Tee ohjelma, jossa luetaan kaksi merkkijonoa, joita sitten verrataan ko. funktiolla. Tehtävä 64. Kirjoita
1. OHJAAMATON OPPIMINEN JA KLUSTEROINTI
1. OHJAAMATON OPPIMINEN JA KLUSTEROINTI 1 1.1 Funktion optimointiin perustuvat klusterointialgoritmit Klusteroinnin onnistumista mittaavan funktion J optimointiin perustuvissa klusterointialgoritmeissä
Työ tehdään itsenäisesti yhden hengen ryhmissä. Ideoita voi vaihtaa koodia ei.
Harjoitustyö 1 Harjoitustyö Tehtävä: ohjelmoi lötköjen kansoittamaa alkulimaa simuloiva olioperustainen ohjelma Java-kielellä. Lötköt säilötään linkitetyille listalle ja tekstitiedostoon. Työ tehdään itsenäisesti
LIITE 1 1. Tehtävänä on mallintaa kitara ohjeiden mukaan käyttäen Edit Poly-tekniikkaa.
LIITE 1 1 HARJOITUS 1 Kitara Tehtävänä on mallintaa kitara ohjeiden mukaan käyttäen Edit Poly-tekniikkaa. Käsiteltävät asiat Edit Poly Muokkaus kuvan mukaan TurboSmooth Extrude 1. Tarkistetaan että mittayksiköt
Taulukot, taulukkoryhmät Sisällysluettelo
Excel 2013 Taulukot, taulukkoryhmät Sisällysluettelo TAULUKKORYHMÄT TAULUKOIDEN VÄLISET KAAVAT, FUNKTIOT YM.... 1 Taulukon lisääminen työkirjaan... 1 Taulukon (välilehden) poistaminen työkirjasta... 1
TYYLIT. Word Tyylit
Word 2013 Tyylit TYYLIT TYYLIT... 1 Pikatyylien käyttäminen... 1 Tyylimuotoilun poistaminen... 2 Tyylin muokkaaminen... 2 Uuden tyylin luominen muotoillusta tekstistä... 2 Uuden tyylin luominen valintataulussa...
A274101 TIETORAKENTEET JA ALGORITMIT
A274101 TIETORAKENTEET JA ALGORITMIT PERUSTIETORAKENTEET LISTA, PINO, JONO, PAKKA ABSTRAKTI TIETOTYYPPI Tietotyyppi on abstrakti, kun se on määritelty (esim. matemaattisesti) ottamatta kantaa varsinaiseen
Tietorakenteet ja algoritmit
Tietorakenteet ja algoritmit Taulukon edut Taulukon haitat Taulukon haittojen välttäminen Dynaamisesti linkattu lista Linkatun listan solmun määrittelytavat Lineaarisen listan toteutus dynaamisesti linkattuna
Tietorakenteet, laskuharjoitus 3, ratkaisuja
Tietorakenteet, laskuharjoitus 3, ratkaisuja 1. (a) Toistolauseen runko-osassa tehdään yksi laskuoperaatio, runko on siis vakioaikainen. Jos syöte on n, suoritetaan runko n kertaa, eli aikavaativuus kokonaisuudessaan
Hannu Mäkiö. kertolasku * jakolasku / potenssiin korotus ^ Syöte Geogebran vastaus
Perusohjeita, symbolista laskentaa Geogebralla Kielen vaihtaminen. Jos Geogebrasi kieli on vielä englanti, niin muuta se Options välilehdestä kohdasta Language suomeksi (finnish). Esittelen tässä muutaman
ITKP102 Ohjelmointi 1 (6 op)
ITKP102 Ohjelmointi 1 (6 op) Tentaattori: Antti-Jussi Lakanen 7. huhtikuuta 2017 Vastaa kaikkiin tehtäviin. Tee jokainen tehtävä erilliselle konseptiarkille. Kirjoittamasi luokat, funktiot ja aliohjelmat
QT tyylit. Juha Järvensivu 2008
QT tyylit Juha Järvensivu juha.jarvensivu@tut.fi 2008 Sisällys QStyle Style sheet Tyyli (QStyle) Kapseloi widgettien Look And Feel ominaisuudet Toteutettu QT:ssa QStyle luokkaan Sisäänrakennettuja tyylejä
ITKP102 Ohjelmointi 1 (6 op)
ITKP102 Ohjelmointi 1 (6 op) Tentaattori: Antti-Jussi Lakanen 20. huhtikuuta 2018 Vastaa kaikkiin tehtäviin. Tee kukin tehtävä omalle konseptiarkille. Noudata ohjelmointitehtävissä kurssin koodauskäytänteitä.
TIEA341 Funktio-ohjelmointi 1, kevät 2008
TIEA341 Funktio-ohjelmointi 1, kevät 2008 Luento 14: Monadit Antti-Juhani Kaijanaho Jyväskylän yliopisto Tietotekniikan laitos 21. tammikuuta 2008 Tyyppien tyypit eli luonteet engl. kind tyyppinimet, kuten
Vapo: Turveauman laskenta 1. Asennusohje
Turveauman mittaus 3D-system Oy 3D-Win ohjelman lisätoiminto, jolla lasketaan turveaumasta tilaajan haluamat arvot ja piirretään aumasta kuva. Laskentatoiminto löytyy kohdasta Työkalut/Lisätoiminnot. Valitse
Miten siirrän omat työni Office 365:stä Peda.nettiin sekä jaan sen siellä muille Eija Arvola
Miten siirrän omat työni Office 365:stä Peda.nettiin sekä jaan sen siellä muille Eija Arvola 16.12.2017 UUDEN SIVUN LUOMINEN OMAAN TILAAN Jos haluat tallentaa omia töitäsi Peda.nettiin, sinun pitää luoda
TEKSTINKÄSITTELYTEHTÄVIÄ, OSA 1
TEKSTINKÄSITTELYTEHTÄVIÄ, OSA 1 1 Perustekstejä Tehtävän tarkoituksena on varmistaa tietty perusosaaminen tekstinkäsittelystä sekä lisäksi tässä tulee mukaan myös hiukkasen suomen kielen oikeinkirjoitustakin.
A274101 TIETORAKENTEET JA ALGORITMIT
A274101 TIETORAKENTEET JA ALGORITMIT GRAAFITEHTÄVIÄ JA -ALGORITMEJA Lähteet: Timo Harju, Opintomoniste Keijo Ruohonen, Graafiteoria (math.tut.fi/~ruohonen/gt.pdf) GRAAFIN LÄPIKÄYMINEN Perusta useimmille
2. Olio-ohjelmoinista lyhyesti 2.1
2. Olio-ohjelmoinista lyhyesti 2.1 Sisällys Yleistä. Oliot ja luokat. Attribuutit. Olioiden esittely ja alustus. Rakentajat. Olion operaation kutsuminen. 2.2 Yleistä Olio-ohjelmointia käsitellään hyvin
Rakenteiset tietotyypit Moniulotteiset taulukot
C! Rakenteiset tietotyypit Moniulotteiset taulukot 22.2.2018 Agenda Rakenteiset tietotyypit Vilkaisu 6. kierroksen tehtäviin Moniulotteiset taulukot Esimerkki Seuraava luento to 8.3. Ilmoittautuminen ohjelmointikokeeseen
58131 Tietorakenteet ja algoritmit (syksy 2015)
58131 Tietorakenteet ja algoritmit (syksy 2015) Harjoitus 2 (14. 18.9.2015) Huom. Sinun on tehtävä vähintään kaksi tehtävää, jotta voit jatkaa kurssilla. 1. Erään algoritmin suoritus vie 1 ms, kun syötteen