Neumann János Informatikai Kar

Slides:



Advertisements
Hasonló előadás
Fejmozgás alapú gesztusok felismerése
Advertisements

 Megfigyelhető, hogy amikor több elem közötti összehasonlítás történik, akkor szükség van egyszerre több értékre is, főleg akkor, ha ezek az értékek jóval.
Feladat 1 •Tekintsük a prim alprogramot, amely az n, (n≤32000) paraméteren keresztül egy természetes számot kap és visszatéríti az 1–et, ha n prímszám.
K ÉPERNYŐ MINT KIMENETI ESZKÖZ. adatok, szövegek, képek, filmek vizuális megjelenítését szolgáló készülék, a számítógépek legfontosabb kimenete. Míg.
FRAME-k (keretek). FRAME-k A frame-ek (keretek) segítségével a képernyőt felosztva egyszerre jeleníthetünk meg több webes dokumentumot a képernyőn. Fejlec.html.
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
Bevezetés a Java programozásba
Mire jók a tabulátorok? Lehetőséget nyújtanak
UNIVERSITY OF SZEGED D epartment of Software Engineering UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programozás II. 9. Gyakorlat Alap file műveletek.
UNIVERSITY OF SZEGED D epartment of Software Engineering UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programozás II. 6. Gyakorlat const, static, dinamikus 2D.
Tömbök ismétlés Osztályok Java-ban Garbage collection
Prototípuskészítés Verilog nyelven Screen Saver Készítette: Mészáros Péter.
Grafika a programban Készítette: Pető László. Bevezetés Valójában nem a célobjektumra rajzolunk, hanem annak festővászon területére (canvas). Csak olyan.
Leírónyelvek: HTML és XHTML
A körlevél készítésének menete
A C++ programozási nyelvSoós Sándor 1/12 C++ programozási nyelv Gyakorlat - 8. hét Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet.
Bekezdésformázás Nevem: Berkes András Speciális kategória
Zsombori Balázs Neumann János Számítástechnikai SZKI
Rétegek használata GIMP képszerkesztő programban
P ROGRAMOZÁS I/O műveletek. S YSTEM.C ONSOLE A programjainknak fontos része a felhasználóval való kommunikáció. Adatokat kell kérni tőle, vagy közölnünk.
A PHP (PHP: Hypertext Preprocessor) nyílt forráskódú, számítógépes szkriptnyelv, legfőbb felhasználási területe a dinamikus weboldalak készítése. Emiatt.
Fejmozgás alapú gesztusok felismerése Bertók Kornél, Fazekas Attila Debreceni Egyetem, Informatikai Kar Debreceni Képfeldolgozó Csoport KÉPAF 2013, Bakonybél.
Összetett adattípusok
Számítógépes Grafika 2. gyakorlat Programtervező informatikus (esti) 2011/2012 őszi félév.
Alapszint 2.  Készíts makrót, ami a kijelölt cellákat egybenyitja, a tartalmat vízszintesen és függőlegesen középre igazítja és 12 pontos betűméretűre.
Szintaktikai, szemantikai szabályok
Pozicionálás 1. Kurzor elhelyezése a képernyőn 2. Színkezelés.
1.4. Fordítás, szerkesztés, az objektumkönyvtár használata.
1. Gyakorlat - Alapok 1. Írjon konzolprogramot, amely kiírja a “Hello ELTE” üzenetet! Használja a System.out.println() -t! 2. Írjon konzolprogramot, amely.
Programozás4 Készítette: Rummel Szabolcs
A képernyő kezelése: kiíratások
Hyper Text Markup Language
Hyper Text Markup Language
Honlap készítés 4. óra.
Gráf szélességi bejárása SzB(G,p). Tetszőleges gráf, melyben a p csúcsot választottam kiindulónak: A gráfnak megfelelő fa:
Programozás Imagine Logo.
Web-grafika II (SVG) 3. gyakorlat Kereszty Gábor.
Web-grafika II (SVG) 7. gyakorlat Kereszty Gábor.
Csempe Programozás érettségi mintafeladat
2. Feladat. És akkor kezdjük is el! Menü Mint ahogy már megszokhattuk módosítsuk az editek text mező tulajdonságát a minta szerint! Tovább.
Táblázatok.
Bekezdések formázása 1..
1. feladat  Készíts olyan függvényt, mely paraméterül kapja két egész típusú változó címét, s hívása után a két változó értéke helyet cserél.
Plakát Ha lehet, akkor ez 1.oldalon lévő mintából kellene plakátot készíteni A szöveg középen : Kabát akció!, mellette a piros alapú logo A divat.
Bekezdések formázása 2..
Gazdasági informatikus - Szövegszerkesztés 1 Bekezdések formázása 2.
Összeállította: Gergely János
V 1.0 OE-NIK, Programozás I. Gyakorlás egydimenziós tömbökkel Többdimenziós tömbök Gyakorló feladatok.
V 1.0 Programozás III. Gyakorlás. V 1.0ÓE-NIK, 2014 Gyakorlás –Feladat: Tic Tac Toe játék –Szabályok: A játékosok felváltva teszik le a jelöléseiket.
PHP függvények MySQL adatbázisok kezelésére
Neumann János Informatikai Kar
Óra modell készítése Óralap1.
Neumann János Informatikai Kar
9.16.Tengely, mint forgástest
Neumann János Informatikai Kar
Neumann János Informatikai Kar
Dinamikus adatszerkezetek
Neumann János Informatikai Kar
Fodor Edina, óra feladata Fodor Edina,
Neumann János Informatikai Kar
Kanyó Kristóf Milacski Zoltán
Koordináta táblázat elkészítésének bemutatása egy példán keresztül.
TabuláTOROK HASZNÁLATA
Neumann János Informatikai Kar
Cím elrendezése képpel
Készítette: Sinkovics Ferenc
téma közlemény SmartArt-ábra piros hátterű képekkel (Haladó)
Filmes példaalkalmazás I.
Készítette: Sinkovics Ferenc
Előadás másolata:

Neumann János Informatikai Kar Óbudai Egyetem Neumann János Informatikai Kar .NET Gadgeteer – Gyorsulásmérő modul

Áttekintés A feladat Hardverkonfiguráció A program megírása Önálló feladat Felkészülést segítő kérdések

1. A feladat Szükséges eszközök Működés: A foglalkozás célja bemutatni a .NET Gadgeteer gyorsulásmérő moduljának használatát Szükséges eszközök FEZ Spider panel 1 db TE35 Display modul 1 db Accel G248 modul Működés: A szenzor három tengelyén mért gyorsulás értékeket jelenítjük meg grafikon segítségével a kijelzőn. A képernyő három részre oszlik, a felső harmadban az X, középen az Y, a harmadik harmadban pedig a Z irányokban vett értékeket kell megjeleníteni az idő függvényében. Amennyiben a képernyő betelik, törlés után újrakezdődik a rajzolás.

2. Hardverkonfiguráció Állítsuk össze a következő hardver konfigurációt:

3. A program megírása A szenzor használata: Magyarázat: A szenzor értékeinek nyomon követésére nem áll rendelkezésre esemény, ezért ciklikusan (célszerűen) egy időzítővel le kell kérdeznünk az aktuális adatokat. Az értékek 1 és -1 között változnak. A gyorsulásértékek kiolvasására több lehetőség is van: GetX(), GetY(), GetZ() GetXYZ(out double x, out double y, out double z) GetAcceleration() : egy struktúrát ad vissza az x, y, z tengelyekre vett gyorsulás értékekkel

3. A program megírása Rajzolás A ProgramStarted() metódust bővítsük a következő sorokkal: A rajzolás Bitmap segítségével történik, hogy kiküszöböljük a villogást. A fenti kódrészlet a rajzolási logikát tartalmazza, ahol egy Timer segítségével meghatározott időnként lekérdezzük a szenzor állapotát és kirajzoljuk.

3. A program megírása Koordináta-tengelyek (1)

3. A program megírása Koordináta-tengelyek (2) Bevezettünk két konstanst, az egyik az egyes tengelyek magasságát, a másik a köztük lévő távolságot jelöli. A DrawAxes metódusban egy ciklus segítségével kirajzoljuk a tengelyeket. Az első sor a vertikális, a második a horizontális vonalakat rajzolja rá a Bitmap-re.

3. A program megírása Képernyő szélének figyelése (1) Az előzőleg megírt programot alakítsuk át:

3. A program megírása Képernyő szélének figyelése (2) Az xCoord változó fogja nyomon követni az X-tengelyen lévő értékek számát, amit minden periódusban növelünk 1-gyel. A CheckReset metódus felel azért, hogy rajzolás ne történhessen a képernyőn kívül. Amennyiben betelt a képernyő, beállítjuk az xCoord változó érték 1-re, letöröljük a Bitmap-et és kirajzoljuk a tengelyeket. Az xCoord kezdő értékeként egy nagy számot állítunk be (ami biztosan nagyobb a képernyő szélességénél), aminek hatására indulás után törlődik a képernyő és a tengelyek kirajzolódnak.

3. A program megírása Értékek kirajzolása (1) Egészítsük ki a meglévő kódot az alábbiak szerint:

3. A program megírása Értékek kirajzolása (2) A Draw metódus tartalma:

3. A program megírása Értékek kirajzolása (3) A last tömb fogja tartalmazni az utolsó x, y, z tengelyekre vett gyorsulás értékeket. A colors tömb tartalmazza a színeket a rajzoláshoz: 0 = X - Piros, 1 = Y - Zöld, 2 = Z – Kék A Draw metódus paraméterei között szerepel a tengely száma, valamint a hozzátartozó aktuális érték. Először megvizsgáljuk, hogy a határok között mozog-e az érték, amit egy normalizáció követ. Ezután rajzolunk egy vonalat az aktuális és az előző érték felhasználásával. Végezetül az aktuális értéket eltároljuk a last tömbben. A timer Tick eseményében lekérdezzük az értékeket a szenzortól, majd a Draw metódust meghívjuk az egyes tengelyeknek megfelelő paraméterezéssel.

3. A program megírása Értékek kirajzolása (4) Az eddig megírt kód futásának eredménye a következő képen látható:

3. A program megírása Értékek kiíratása (1) Módosítsuk a programot úgy, hogy számokkal is kiírja az értékeket:

3. A program megírása Értékek kiíratása (2) A GetAcceleration által visszaadott struktúra ToString() metódusának felhasználásával a képernyő aljára, középre igazítva íratjuk ki az értékeket. A font nevezetű változóba az egyszerűség kedvéért előre lekérjük az erőforrásokból a használni kívánt Font típust. A ComputeExtent metódus megadja az adott string magasságát és szélességét, amit a pozícionáláshoz tudunk felhasználni. Mivel nem minden ciklusban töröljük a képernyőt, gondoskodni kell a szöveg törléséről. A módszer az lesz, hogy a szöveget fehérrel jelenítjük meg, majd a törlésnél ugyanazt a string-et felhasználva feketével (ami a háttérszín is egyben). A temp változó tartalmazza az előző ciklusban kiíratott string-et.

3. A program megírása Értékek kiíratása (3) Az eddig megírt program futás közben:

3. A program megírása Utolsó simítás A ProgramStarted() metódus elejére illesszük be a következő kódrészletet: A fenti kódrészlet az eszköz elindulását követően a képernyő közepére kiírja, hogy „AccelG248 Modul”, majd 2 másodpercet várakozik. Itt is ismerni kell a szöveg méreteit és ezekkel az értékekkel pontosan középre lehet pozícionálni.

4. Önálló feladat Készítsen egy játékot a következőek szerint: A gyorsulásmérő felhasználásával lehessen egy virtuális piros golyót mozgatni a képernyőn. (DrawEllipse) A golyó a képernyő határait nem lépi át. Véletlenszerűen valamennyi darabszámú és méretű lyukat helyezzen el a pályán, amibe ha beleér a golyó vége a játéknak. A golyó kiindulási pozíciója a képernyő jobb oldala. A rajzoláshoz használjon Bitmap-et. Használjon osztályokat! A játék célja, hogy a gyorsulásmérő szenzor döntögetésével a lyukak ügyes kikerülgetésével a golyót a képernyő másik végébe átvigyük.

5. Felkészülést segítő kérdések Milyen módokon lehet a gyorsulásmérő szenzorból adatokat kinyerni? Bármelyik tengelyére állítjuk a szenzort azt tapasztaljuk, hogy ott a gyorsulás nem 0. Miért?