Grafika trójwymiarowa
|
|
- Lech Sokołowski
- 9 lat temu
- Przeglądów:
Transkrypt
1 Strona 1 Grafika 3D w systemie Android Wprowadzenie do OpenGL ES Podstawy rysowania Rzutowanie i kamera Klasa GLSurfaceView Algorytm rysowania Tekstury
2 Strona 2 Grafika 3D w systemie Android W komputerach, programowanie grafiki trójwymiarowej możliwe jest m.in. przy użyciu wieloplatformowej biblioteki OpenGL (Open Graphics Library). Obok DirectX, stanowi ona jeden ze standardów programowania grafiki. Dla systemów wbudowanych, urządzeń o małej mocy obliczeniowej i ograniczonych zasobach (takich jak urządzenia mobilne) opracowano zoptymalizowaną i uproszczoną wersję tej biblioteki OpenGL ES (Embeded System). W systemie Android dostępna jest ona w pakiecie android.opengl. Dzięki takiemu rozwiązaniu i znajomości wykorzystania biblioteki OpenGL w aplikacjach komputerowych, możliwe jest zastosowanie podobnej metodologii programowania grafiki w urządzeniach mobilnych. Szczegółowa dokumentacja bibliotek graficznych dostępna jest w Internecie: OpenGL: OpenGL ES:
3 Strona 3 Wprowadzenie do OpenGL ES W systemie Android wspierane są wersje OpenGL ES 1.0/1.1 i 2.0. Należy podkreślić, że obie wersje stosują nieco inne podejście do tworzenia kodu źródłowego aplikacji graficznej. Charakterystyka biblioteki OpenGL ES 1.0 / 1.1: dostępna od wersji systemu Android 1.0 (API 1), użycie potoku renderowania i kodowanie operacji nieco wygodniejsze niż w wersji 2.0 (dla początkujących programistów grafiki). Charakterystyka biblioteki OpenGL ES 2.0: dostępna od wersji systemu Android 2.2 (API 8), stosunkowo większa wydajność i szybkość grafiki, możliwość programowania tzw. shader ów (większe możliwości efektów), nie jest obsługiwana przez programowe emulatory systemu Android. Z tego powodu, dalsze rozważania dotyczą wersji OpenGL ES 1.0 / 1.1.
4 Strona 4 Podstawy rysowania reprezentacje obiektów Podstawowa koncepcja tworzenia i rysowania grafiki 3D oparta jest na trzech rodzajach reprezentacji obiektów: Reprezentacja punktowa (wierzchołkowa) Reprezentacja krawędziowa Reprezentacja wypełniana
5 Strona 5 Podstawy rysowania bufory Do rysowania wykorzystywane są dwie tablice (bufory), definiujące obiekt: bufor punktów/wierzchołków (vertex buffer) i bufor indeksów (index buffer). Obiekt trójwymiarowy 2 x3,y3,z3 0,0,0 x1,y1,z1 0 x4,y4,z4 3 0,0,0 Bufor punktów (wierzchołków) x1,y1,z1 0 1 x2,y2,z2 float punkty[] = { -0.5, -0.5f, 0, // 0 0.5f, -0.5f, 0, // 1 0.0f, 0.5f, 0 // 2 }; Kolejność: przeciwna do ruchu wskazówek zegara. x2,y2,z2 1 2 x3,y3,z3 float punkty[] = { -0.5f, 0.5f, 0, // 0-0.5f, -0.5f, 0, // 1 0.5f, -0.5f, 0, // 2 0.5f, 0.5f, 0 // 3 }; Bufor indeksów short indeksy[] = { 0, 1, 2 }; short indeksy[] = { 0, 1, 2, 0, 2, 3 };
6 Strona 6 Podstawy rysowania najważniejsze metody API Z punktu widzenia rysowania, zasadnicze metody biblioteki OpenGL ES to: glvertexpointer definiuje zbiór punktów (wierzchołków), gldrawarrays, gldrawelements rysują zbiór punktów, glclear czyści powierzchnię rysowania, glclearcolor, glcolor4f ustalają kolor tła i rysowania, glulookat ustala parametry kamery, glfrustumf ustala parametry bryły widzenia, glviewport ustala parametry ekranu (rzutu). OpenGL ES jest maszyną stanów: wywołanie dowolnej metody powoduje ustalenie pewnych parametrów dla kolejnych wywoływanych po niej metod. Przykładowo, wywołanie metody glvertexpointer definiuje bufor punktów, który będzie wykorzystywany przez wywołaną w następnej kolejności metodę gldrawelements. Wymagana znajomość pojęcia bryły widzenia w grafice 3D.
7 Strona 7 Podstawy rysowania metoda glvertexpointer Metoda ta służy do definiowania zbioru punktów (wierzchołków) w tzw. buforze wierzchołków. Punkty definiowane są w lokalnym układzie współrzędnych (x, y, z), który jest zaczepiony np. w środku obiektu. Y x3,y3,z3 Z X Układ współrzędnych prawoskrętny (oś Z skierowana od ekranu). x1,y1,z1 x2,y2,z2 Przykładowy obiekt 0,0,0 (-1,1) (1,1) (0,0) (-1,-1) (1,-1) Domyślny układ współrzędnych ekranu w OpenGL float punkty[] = { -0.5f, -0.5f, 0, // x1, y1, z1 0.5f, -0.5f, 0, // x2, y2, z2 0.0f, 0.5f, 0 // x3, y3, z3 }; // współrzędne w tablicy Java
8 Strona 8 Podstawy rysowania tworzenie bufora wierzchołków Tablicę języka Java zawierającą współrzędne punktów należy skonwertować na natywny bufor wierzchołków, przy pomocy pakietu java.nio (zawiera on klasy buforów ByteBuffer, ShortBuffer, FloatBuffer). // utworzenie bufora bajtowego // 3 punkty * 3 współrzędne * 4 bajty (float) = 36 bajtów ByteBuffer buf = ByteBuffer.allocateDirect(3*3*4); buf.order(byteorder.nativeorder()); // porządek bajtów natywny // dla urządzenia // bufor wierzchołków (vertex buffer) FloatBuffer vb = buf.asfloatbuffer(); // bufor float z bajtowego // umieszczenie współrzędnych punktów w buforze wierzchołków vb.put(punkty); // tablica punkty zdefiniowana na str.30 vb.position(0); // ustawienie pozycji bufora na 1-szą współrzędną // zdefiniowanie bufora wierzchołków w OpenGL glvertexpointer(3, GL10.GL_FLOAT, 0, vb); bufor punktów (vertex buffer) liczba współrzędnych typ współrzędnych liczba bajtów oddzielających punkty w pamięci
9 Strona 9 Podstawy rysowania tworzenie bufora indeksów Tablicę języka Java zawierającą indeksy należy skonwertować na natywny bufor indeksów, przy pomocy pakietu java.nio. Rysowanie odbywa się w oparciu o współrzędne z bufora wierzchołków (vertex buffer). Mogą one być wielokrotnie wykorzystywane (tzw. indeksowanie bufora punktów). Służy do tego bufor indeksów index buffer. // indeksy punktów w tablicy Java short indeksy[] = { 0, 1, 2 }; // punkty o indeksach 0, 1, 2 // utworzenie bufora bajtowego // 3 indeksy * 2 bajty (short) = 6 bajtów ByteBuffer buf = ByteBuffer.allocateDirect(3*2); buf.order(byteorder.nativeorder()); // porządek bajtów natywny // dla urządzenia // bufor indeksów (index buffer) ShortBuffer ib = buf.asshortbuffer(); // bufor short z bajtowego ib.put(indeksy); ib.position(0); // umieszczenie indeksów w buforze indeksów // ustawienie pozycji bufora na 1-szą współrzędną
10 Strona 10 Podstawy rysowania metoda gldrawelements Do odrysowania zawartości bufora wierzchołków służy metoda gldrawarrays. W przypadku wykorzystania bufora indeksów, do rysowania należy użyć metody gldrawelements. Metody te umożliwiają odrysowanie punktów przy pomocy kształtów geometrycznych dostępnych w bibliotece OpenGL ES. gldrawarrays(gl10.gl_triangles, 0, 3); gldrawelements(gl10.gl_triangles, 3, GL10.GL_UNSIGNED_SHORT,ib); rodzaj kształtu GL_POINTS GL_LINES GL_LINE_STRIP GL_LINE_LOOP GL_TRIANGLES GL_TRIANGLE_STRIP GL_TRIANGLE_FAN liczba indeksów = liczba rysowanych punktów tylko punkty tylko linie pasek linii (2 punkty + każdy kolejny punkt tworzy kolejną linię) pętla linii tylko trójkąty typ wartości indeksów GL_UNSIGNED_SHORT lub GL_UNSIGNED_BYTE pasek trójkątów (3 punkty + każdy kolejny punkt tworzy kolejny trójkąt) wachlarz trójkątów (pierwszy punkt to wierzchołek każdego trójkąta = środek wachlarza, każdy kolejny punkt tworzy kolejny trójkąt) bufor indeksów (index buffer)
11 Strona 11 Podstawy rysowania metody glclear i glcolor4f Metoda glclear służy do czyszczenia powierzchni rysowania. argument metody glclear GL_COLOR_BUFFER_BIT GL_DEPTH_BUFFER_BIT GL_STENCIL_BUFFER_BIT efekt wyzerowanie bufora koloru (usunięcie grafiki) wyzerowanie bufora głębi (Z-bufor) wyzerowanie bufora szablonu (np. efekt cienia) Metoda glclearcolor ustala kolor tła. Metoda glcolor4f służy do ustalania koloru dla następnej operacji rysowania. Parametry metody to kolejno: nasycenie składowej czerwonej, zielonej, niebieskiej i współczynnik alfa (przezroczystość) wszystkie jako liczby typu float z zakresu <0, 1>. glclear(gl_color_buffer_bit); // wyczyszczenie ekranu glclearcolor(1.0f, 0.0f, 0.0f, 0.5f); // RGBalfa, kolor tła glcolor4f(1.0f, 0.0f, 0.0f, 0.5f); // RGBalfa, kolor rysow.
12 Rzutowanie i kamera Końcowym etapem tworzenia grafiki 3D jest rzutowanie obiektu 3D na powierzchnię rysowania 2D. Odpowiadają za to metody: glulookat ustala położenie, kierunek i orientację kamery, glfrustumf definiuje tzw. bryłę widzenia (ostrosłup widzenia), glviewport ustala rozmiar ekranu (płaszczyzny rzutowania). współrzędne kamery (wewnątrz bryły widzenia) punkt widoku, na który skierowano kamerę Strona 12 Wymagana znajomość pojęcia bryły widzenia w grafice 3D. wektor góry, od środka układu wsp. (orientacja kamery tutaj pionowa) 0, -1, 0 => do góry nogami glulookaat(gl, 0, 0, 5, 0, 0, 0, 0, 1, 0); float x = (float) szer/wys; // aspekt (proporcje ekranu) glmatrixmode(gl10.gl_projection); // rzutowanie perspektywiczne glfrustumf(-x, // lewa strona ostrosłupa widzenia x, // prawa strona ostrosłupa widzenia -1, // spód ostrosłupa widzenia 1, // szczyt ostrosł.widzenia (wys.ostrosłupa = 2) 3, // odległość kamera-przednia ściana ostrosłupa 7); // odl.kamera-tylna ściana ostr.(głęb.ostr. = 4) glviewport(0, 0, szer, wys); // lewy-dolny róg (0, 0)
13 Strona 13 Klasa GLSurfaceView Każda aplikacja OpenGL ES 1.0 zawiera aktywność wykorzystującą obiekt klasy GLSurfaceView (widok w postaci powierzchni rysowania) i interfejs GLSurfaceView.Renderer (kontroluje proces rysowania). Tworzą one łącze między operacjami rysowania a systemem operacyjnym. Budowa i ogólny algorytm aplikacji OpenGL ES 1.0 jest następujący: 1. Utworzenie klasy implementującej interfejs GLSurfaceView.Renderer, 2. Konfiguracja parametrów rzutowania i kamery, 3. Zdefiniowanie obiektów 3D (bufor wierzchołków, bufor indeksów), 4. Zaprogramowanie operacji rysowania w metodzie ondrawframe, 5. Utworzenie obiektu klasy GLSurfaceView, 6. Konfiguracja silnika graficznego w obiekcie klasy GLSurfaceView przy użyciu metody setrenderer, 7. Utworzenie klasy dla aktywności i ustalenie kontrolki GLSurfaceView jako widoku treści w tej aktywności. Fragmenty kodu na str oznaczone na żółto wyświetlają puste okno.
14 Strona 14 Algorytm rysowania implementacja interfejsu Renderer // silnik graficzny 1 public class NaszRenderer implements GLSurfaceView.Renderer { metoda wywoływana automatycznie dla utworzenia powierzchni rysowania (inicjalizacja grafiki, tworzenie obiektów) public void onsurfacecreated(gl10 gl, EGLConfig eglconfig) { gl.glclearcolor(0.5f, 0.5f, 0.5f, 1.0f); // kolor tła 3 definiuj_obiekt(); włącz użycie bufora indeksów gl.glenableclientstate(gl10.gl_vertex_array); 2 } metoda wywoływana automatycznie po zmianie wymiarów powierzchni rysowania (np. po zmianie orientacji ekranu) public void onsurfacechanged(gl10 gl, int szer, int wys) { gl.glviewport(0, 0, szer, wys); float aspekt = (float) szer/wys; // proporcje ekranu gl.glmatrixmode(gl10.gl_projection); // tryb macierzy rzutowania gl.glloadidentity(); // macierz jednostkowa (stan domyślny) gl.glfrustumf(-aspekt, aspekt, -1, 1, 3, 7); // macierz rzutowania } //...
15 Strona 15 Algorytm rysowania implementacja interfejsu Renderer (c.d.) 2 4 //... public void ondrawframe(gl10 gl) { // usunięcie grafiki: } //... metoda wywoływana automatycznie przy każdym odrysowywaniu powierzchni (operacje rysowania) gl.glclear(gl10.gl_color_buffer_bit GL10.GL_DEPTH_BUFFER_BIT); gl.glmatrixmode(gl10.gl_modelview); // tryb macierzy MODELVIEW gl.glloadidentity(); // macierz jednostkowa (stan domyślny) // parametry kamery: GLU.gluLookAt(gl, 0, 0, 5, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f); gl.glcolor4f(0.0f, 1.0f, 0.0f, 0.5f); // kolor rysowania (str.34) // bufor wierzchołków (str.31): gl.glvertexpointer(3, GL10.GL_FLOAT, 0, vb); // rysowanie bez bufora indeksów: // gl.gldrawarrays(gl10.gl_triangles, 0, VERTICES); // rysowanie z bufora indeksów (str.33): gl.gldrawelements(gl10.gl_triangles, INDEXES, GL10.GL_UNSIGNED_SHORT, ib);
16 Strona 16 Algorytm rysowania tworzenie buforów punktów i indeksów private final static int VERTICES = 3; // liczba wierzchołków private final static int INDEXES = 3; // liczba indeksów private FloatBuffer vb; // bufor wierzchołków (vertex buffer) private ShortBuffer ib; // bufor indeksów (index buffer) public void definiuj_obiekt() definicja współrzędnych dla 3 { GLSurfaceView (patrz str. 30): float punkty[] = (0,0,0) środek powierzchni { -0.5f, -0.5f, 0, // (x1, y1, z1) (1,1,0) prawy górny róg 0.5f, -0.5f, 0, // (x2, y2, z2) (-1,-1,0) lewy dolny róg 0.0f, 0.5f, 0 // (x3, y3, z3) }; // współrzędne punktów w tablicy Java definicja indeksów (patrz str. 32) short indeksy[] = { 0, 1, 2 }; // indeksy punktów w tablicy Java ByteBuffer vbuf = ByteBuffer.allocateDirect(VERTICES*3*4); vbuf.order(byteorder.nativeorder()); tworzenie bufora punktów (patrz str. 31) vb = vbuf.asfloatbuffer(); vb.put(punkty); vb.position(0); współrzędne do bufora punktów (patrz str. 31) } ByteBuffer ibuf = ByteBuffer.allocateDirect(VERTICES*2); ibuf.order(byteorder.nativeorder()); tworzenie bufora indeksów (patrz str. 32) ib = ibuf.asshortbuffer(); ib.put(indeksy); ib.position(0); indeksy do bufora indeksów (patrz str. 32)
17 Strona 17 Algorytm rysowania aktywność dla rysowania public class OpenGLActivity extends Activity { private GLSurfaceView public void oncreate(bundle savedinstancestate) { } super.oncreate(savedinstancestate); sv = new GLSurfaceView(this); sv.setrenderer(new NaszRenderer()); //sv.setrendermode(glsurfaceview.rendermode_when_dirty); setcontentview(sv); powierzchnia rysowania jako widok treści w public void onpause() { super.onpause(); sv.onpause(); } 7 utworzenie widoku (powierzchnia rysowania) konfiguracja silnika graficznego i ustalenie obiektu renderującego dla powierzchni rysowania odrysowywanie tylko gdy jest to konieczne np. inna aktywność na pierwszym planie public void onresume() { super.onresume(); sv.onresume(); } powrót ze stanu pauzy - aktywność przechodzi na pierwszy plan
18 Strona 18 Algorytm rysowania rejestracja i uruchomienie aktywności Rejestracja aktywności w pliku deskryptora AndroidManifest.xml: <application <activity android:name=".openglactivity" android:label="rysowanie w OpenGL"> </activity> </application> Rejestrowanie nie jest konieczne, jeżeli aktywność jest aktywnością główną aplikacji. Jeżeli wykorzystywane są specyficzne możliwości OpenGL ES, w pliku AndroidManifest.xml należy określić wymagania aplikacji: <! -- Informacja dla systemu, że aplikacja wymaga OpenGL ES > <uses-feature android:glesversion="0x " android:required="true"/> <! -- Wymagania dotyczące formatu kompresji tekstur ---> <supports-gl-texture android:name="gl_img_texture_compression_pvrtc"> Aktywność może być uruchamiana w standardowy sposób (np. w menu): Intent intencja = new Intent(this, OpenGLActivity.class); startactivity(intencja);
19 Strona 19 Tekstury Tekstura to obraz (mapa bitowa) odwzorowujący właściwości powierzchni obiektu. Teksturowanie, to proces umieszczanie map bitowych lub innych obrazów na powierzchni rysowanego obiektu. Współrzędne wierzchołków obiektu są odwzorowywane (mapowane) na współrzędne tekstury. Dopasowanie tekstury do kształtu obiektu uzyskuje się stosując algorytmy nazywane owinięciami. Wyznaczają one tzw. współrzędne tekstury. W pewnych przypadkach konieczne jest zaprogramowanie własnych funkcji do obliczania współrzędnych tekstury. Dopasowanie rozmiarów obiektu do rozmiarów tekstury uzyskuje się poprzez normalizację. Powierzchnia obiektu jest zmniejszana tak, aby mieściła się w wymiarach 1 x 1. W bibliotece OpenGL tekstura jest kwadratem o wymiarach 1 x 1, gdzie lewy górny róg posiada współrzędne (0, 0).
20 Strona 20 Metody OpenGL ES do obsługi tekstur Wybrane funkcje do obsługi tekstur: GLUtils.texImage2D wczytuje mapę bitową (teksturę) z pliku glgentextures tworzy niepowtarzalny identyfikator tekstury (odniesienie do tekstury tzw. nazwę tekstury) glbindtexture wiąże bieżącą teksturę z identyfikatorem j.w. gltexparameter definiuje parametry tekstury gltexenv definiuje dodatkowe parametry tekstury gltexcoordpointer określa współrzędne tekstury (mapowanie współrzędnych tekstury na obszar zdefiniowany metodą glvertexpointer) glactivetexture ustala aktywną jednostkę teksturującą Szczegóły powyższych metod dostępne są w dokumentacji OpenGL ES.
ANDROID. OpenGL ES 1.0. Tomasz Dzieniak
ANDROID OpenGL ES 1.0 Tomasz Dzieniak Wymagania JRE & JDK 5.0 + IDE (Eclipse 3.3.1 + / Netbeans 7.0.0 +) Android SDK Starter Package Android SDK Components Pierwszy program Project name: OpenGL Build Target:
grafika 2D i animacja obsługa rotacji i elementy 3D-OpenGL w Androidzie
grafika 2D i animacja obsługa rotacji i elementy 3D-OpenGL w Androidzie Krzysztof Czech, 2 rok IZ Grzegorz Duszyński, 2 rok IZ Daniel Engel, 2 rok IZ Łukasz Olech, 2 rok IZ Radek Wilczak, 2 rok EKA Nadpisywanie
GLKit. Wykład 10. Programowanie aplikacji mobilnych na urządzenia Apple (IOS i ObjectiveC) #import "Fraction.h" #import <stdio.h>
#import "Fraction.h" #import @implementation Fraction -(Fraction*) initwithnumerator: (int) n denominator: (int) d { self = [super init]; } if ( self ) { [self setnumerator: n anddenominator:
9. Rysowanie, animacje i podstawy grafiki 3D
9. Rysowanie, animacje i podstawy grafiki 3D 171
3 Przygotował: mgr inż. Maciej Lasota
Laboratorium nr 3 1/5 Grafika Komputerowa 3D Instrukcja laboratoryjna Temat: Rysowanie prymitywów 3 Przygotował: mgr inż. Maciej Lasota 1) Rysowanie prymitywów Podstawową rodziną funkcji wykorzystywanych
2 Przygotował: mgr inż. Maciej Lasota
Laboratorium nr 2 1/6 Grafika Komputerowa 3D Instrukcja laboratoryjna Temat: Manipulowanie przestrzenią 2 Przygotował: mgr inż. Maciej Lasota 1) Manipulowanie przestrzenią Istnieją dwa typy układów współrzędnych:
Zatem standardowe rysowanie prymitywów wygląda następująco:
Instrukcja laboratoryjna 10 Grafika komputerowa 3D Temat: Prymitywy Przygotował: dr inż. Grzegorz Łukawski, mgr inż. Maciej Lasota, mgr inż. Tomasz Michno 1 Wstęp teoretyczny Prymitywy proste figury geometryczne,
Trójwymiarowa grafika komputerowa rzutowanie
Trójwymiarowa grafika komputerowa rzutowanie Mirosław Głowacki Wydział Inżynierii Metali i Informatyki Przemysłowej Rzutowanie w przestrzeni 3D etapy procesu rzutowania określenie rodzaju rzutu określenie
Wprowadzenie do rysowania w 3D. Praca w środowisku 3D
Wprowadzenie do rysowania w 3D 13 Praca w środowisku 3D Pierwszym krokiem niezbędnym do rozpoczęcia pracy w środowisku 3D programu AutoCad 2010 jest wybór odpowiedniego obszaru roboczego. Można tego dokonać
1. Prymitywy graficzne
1. Prymitywy graficzne Prymitywy graficzne są elementarnymi obiektami jakie potrafi bezpośrednio rysować, określony system graficzny (DirectX, OpenGL itp.) są to: punkty, listy linii, serie linii, listy
8 Przygotował: mgr inż. Maciej Lasota
Laboratorium nr 8 1/6 Grafika Komputerowa Instrukcja laboratoryjna Temat: Listy wyświetlania i tablice wierzchołków 8 Przygotował: mgr inż. Maciej Lasota 1) Listy wyświetlania Listy wyświetlania (ang.
Wykład 5. Rendering (2) Geometria
Wykład 5. Rendering (2) Geometria 1. Z ogólnego, niezależnego od implementacji punktu widzenia, dane stanowiące opis geometrii modelu zorganizowane są w skończoną sekwencję (lub grupę sekwencji), którego
Janusz Ganczarski. OpenGL Pierwszy program
Janusz Ganczarski OpenGL Pierwszy program Spis treści Spis treści..................................... 1 1. Pierwszy program.............................. 1 1.1. Rysowanie sceny 3D...........................
Programowanie Urządzeń Mobilnych. Laboratorium nr 11, 12
Programowanie Urządzeń Mobilnych Laboratorium nr 11, 12 Android Temat 3 wykorzystanie sensorów i multimediów w Android SDK Krzysztof Bruniecki 1 Zadania do wykonania na zajęciach 1 Zadanie 1. (opisane
Tworzenie natywnych aplikacji na urządzenia mobilne - PhoneGap Tomasz Margalski
Tworzenie natywnych aplikacji na urządzenia mobilne - PhoneGap Tomasz Margalski Agenda Dlaczego PhoneGap i co to jest? Możliwości PhoneGap Jak pisać aplikacje z PhoneGap? Konfiguracja i przykład aplikacji
Plan wykładu. Akcelerator 3D Potok graficzny
Plan wykładu Akcelerator 3D Potok graficzny Akcelerator 3D W 1996 r. opracowana została specjalna karta rozszerzeń o nazwie marketingowej Voodoo, którą z racji wspomagania procesu generowania grafiki 3D
Grafika Komputerowa Wykład 4. Synteza grafiki 3D. mgr inż. Michał Chwesiuk 1/30
Wykład 4 mgr inż. 1/30 Synteza grafiki polega na stworzeniu obrazu w oparciu o jego opis. Synteza obrazu w grafice komputerowej polega na wykorzystaniu algorytmów komputerowych do uzyskania obrazu cyfrowego
Podstawy Processingu. Diana Domańska. Uniwersytet Śląski
Podstawy Processingu Diana Domańska Uniwersytet Śląski Processing jest językiem programowania opartym na języku Java. Jest on nastawiony na aplikacje związane z grafiką, animacją. Projekt został zainicjowany
Wykład 4. Rendering (1) Informacje podstawowe
Wykład 4. Rendering (1) Informacje podstawowe Z punktu widzenia dzisiejszego programowania gier: Direct3D jest najczęściej wykorzystywanym przez profesjonalnych deweloperów gier API graficznym na platformie
Systemy operacyjne na platformach mobilnych
Systemy operacyjne na platformach mobilnych Wykład 3 Grzegorz Jabłoński, Piotr Perek Katedra Mikroelektroniki i Technik Informatycznych Zagadnienia wykładu Menu opcji ListActivity własny widok własny adapter
Mobilne aplikacje multimedialne. OpenGL
Mobilne aplikacje multimedialne OpenGL Marek Kulawiak Katedra Systemów Geoinformatycznych Wydział Elektroniki, Telekomunikacji i Informatyki Politechniki Gdańskiej Open Graphics Library API do tworzenia
Obsługa SMS i telefonii
Strona 1 Interfejsy API telefonii Wysyłanie wiadomości SMS Odbieranie wiadomości SMS Symulowanie nadchodzących wiadomości SMS Obsługa skrzynki wiadomości SMS Wysyłanie wiadomości e-mail Monitorowanie połączeń
Temat: Transformacje 3D
Instrukcja laboratoryjna 11 Grafika komputerowa 3D Temat: Transformacje 3D Przygotował: dr inż. Grzegorz Łukawski, mgr inż. Maciej Lasota, mgr inż. Tomasz Michno 1 Wstęp teoretyczny Bardzo często programując
Aktywności są związane z ekranem i definiują jego wygląd. Dzieje się to poprzez podpięcie do aktywności odpowiedniego widoku.
Aktywności to podstawowe elementy związane z platformą Android. Dzięki poznaniu aktywności będziesz w stanie napisać pierwszą aplikację przeznaczoną na urządzenie mobilne. Po dodaniu kontrolek możesz w
Wprowadzenie do programowania z wykorzystaniem biblioteki OpenGL. Dorota Smorawa
Wprowadzenie do programowania z wykorzystaniem biblioteki OpenGL Dorota Smorawa Pierwszy program Pierwszy program będzie składał się z trzech etapów: Funkcji rysującej scenę 3D, Inicjacji okna renderingu,
Konstruktory. Streszczenie Celem wykładu jest zaprezentowanie konstruktorów w Javie, syntaktyki oraz zalet ich stosowania. Czas wykładu 45 minut.
Konstruktory Streszczenie Celem wykładu jest zaprezentowanie konstruktorów w Javie, syntaktyki oraz zalet ich stosowania. Czas wykładu 45 minut. Rozpatrzmy przykład przedstawiający klasę Prostokat: class
Podstawy tworzenia aplikacji z wykorzystaniem języka Java ME ćwiczenia 2
z wykorzystaniem języka Java ME ćwiczenia 2 Wykorzystanie plików graficznych w MIDlet ach utworzenie obiektu klasy Image (statyczna metoda createimage()) utworzenie obiektu klasy ImageItem dodanie utworzonego
1 Wstęp teoretyczny. Temat: Manipulowanie przestrzenią. Grafika komputerowa 3D. Instrukcja laboratoryjna Układ współrzędnych
Instrukcja laboratoryjna 9 Grafika komputerowa 3D Temat: Manipulowanie przestrzenią Przygotował: dr inż. Grzegorz Łukawski, mgr inż. Maciej Lasota, mgr inż. Tomasz Michno 1 Wstęp teoretyczny 1.1 Układ
Systemy wirtualnej rzeczywistości. Komponenty i serwisy
Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych Systemy wirtualnej rzeczywistości Laboratorium Komponenty i serwisy Wstęp: W trzeciej części przedstawione zostaną podstawowe techniki
Elementarne obiekty geometryczne, bufory. Dorota Smorawa
Elementarne obiekty geometryczne, bufory Dorota Smorawa Elementarne obiekty Tworząc scenę 3D, od najprostszej, po najbardziej skomplikowaną, używamy obiektów złożonych, przede wszystkim podstawowych, elementarnych
Systemy operacyjne na platformach mobilnych
Systemy operacyjne na platformach mobilnych Wykład 2 Grzegorz Jabłoński, Piotr Perek Katedra Mikroelektroniki i Technik Informatycznych Zagadnienia wykładu Interfejs użytkownika Activity Views Resources
I. Spis treści I. Spis treści... 2 II. Kreator szablonów... 3 1. Tworzenie szablonu... 3 2. Menu... 4 a. Opis ikon... 5 3. Dodanie nowego elementu...
Kreator szablonów I. Spis treści I. Spis treści... 2 II. Kreator szablonów... 3 1. Tworzenie szablonu... 3 2. Menu... 4 a. Opis ikon... 5 3. Dodanie nowego elementu... 7 a. Grafika... 7 b. Tekst... 7 c.
Systemy wirtualnej rzeczywistości. Podstawy grafiki 3D
Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych Systemy wirtualnej rzeczywistości Laboratorium Podstawy grafiki 3D Wstęp: W drugiej części przedstawione zostaną podstawowe mechanizmy
- Narzędzie Windows Forms. - Przykładowe aplikacje. Wyższa Metody Szkoła programowania Techniczno Ekonomiczna 1 w Świdnicy
Wyższa Metody Szkoła programowania Techniczno Ekonomiczna 1 w Świdnicy - Narzędzie Windows Forms - Przykładowe aplikacje 1 Narzędzia Windows Form Windows Form jest narzędziem do tworzenia aplikacji dla
Informatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018
Informatyka I Klasy i obiekty. Podstawy programowania obiektowego dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2018 Plan wykładu Pojęcie klasy Deklaracja klasy Pola i metody klasy
0. OpenGL ma układ współrzędnych taki, że oś y jest skierowana (względem monitora) a) w dół b) w górę c) w lewo d) w prawo e) w kierunku do
0. OpenGL ma układ współrzędnych taki, że oś y jest skierowana (względem monitora) a) w dół b) w górę c) w lewo d) w prawo e) w kierunku do obserwatora f) w kierunku od obserwatora 1. Obrót dookoła osi
Baltie 3. Podręcznik do nauki programowania dla klas I III gimnazjum. Tadeusz Sołtys, Bohumír Soukup
Baltie 3 Podręcznik do nauki programowania dla klas I III gimnazjum Tadeusz Sołtys, Bohumír Soukup Czytanie klawisza lub przycisku myszy Czytaj klawisz lub przycisk myszy - czekaj na naciśnięcie Polecenie
akademia androida Pierwsze kroki w Androidzie część I
akademia androida Pierwsze kroki w Androidzie część I agenda Środowisko do pracy + emulator Struktura projektu z omówieniem Po co nam AndroidManifest.xml? Cykl życia aplikacji Zadanie 1. Kod, symulacja,
1. Które składowe klasa posiada zawsze, niezależnie od tego czy je zdefiniujemy, czy nie?
1. Które składowe klasa posiada zawsze, niezależnie od tego czy je zdefiniujemy, czy nie? a) konstruktor b) referencje c) destruktor d) typy 2. Które z poniższych wyrażeń są poprawne dla klasy o nazwie
Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu.
Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu. Dr inż. Zofia Kruczkiewicz Dwa sposoby tworzenia apletów Dwa sposoby
SPOSOBY POMIARU KĄTÓW W PROGRAMIE AutoCAD
Dr inż. Jacek WARCHULSKI Dr inż. Marcin WARCHULSKI Mgr inż. Witold BUŻANTOWICZ Wojskowa Akademia Techniczna SPOSOBY POMIARU KĄTÓW W PROGRAMIE AutoCAD Streszczenie: W referacie przedstawiono możliwości
Java: otwórz okienko. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak
Java: otwórz okienko Programowanie w językach wysokiego poziomu mgr inż. Anna Wawszczak PLAN WYKŁADU klasy wewnętrzne, lokalne i anonimowe biblioteka AWT zestaw Swing JFrame JPanel komponenty obsługa zdarzeń
Wykład 8: klasy cz. 4
Programowanie obiektowe Wykład 8: klasy cz. 4 Dynamiczne tworzenie obiektów klas Składniki statyczne klas Konstruktor i destruktory c.d. 1 dr Artur Bartoszewski - Programowanie obiektowe, sem. 1I- WYKŁAD
Karta przedmiotu. Podstawy programowania procesorów graficznych. realizowanego w ramach projektu PO WER
Karta przedmiotu Podstawy programowania procesorów graficznych realizowanego w ramach projektu PO WER 2017-2019 Wydział Inżynierii Elektrycznej i Komputerowej Kierunek studiów: Informatyka Profil: Ogólnoakademicki
Pakiety i interfejsy. Tomasz Borzyszkowski
Pakiety i interfejsy Tomasz Borzyszkowski Pakiety podstawy W dotychczasowych przykładach nazwy klas musiały pochodzić z jednej przestrzeni nazw, tj. być niepowtarzalne tak, by nie doprowadzić do kolizji
Podstawowe elementy GUI - zadania
Podstawowe elementy GUI - zadania LIVE DEMO Proszę zainstalować (rozpakować) Eclipse ADT z https://developer.android.com/sdk/index.html Proszę pobrać przez SDK Manager wszystko dotyczące Androida 4.4.2.
akademia androida Sensory część V Mobile Applications Developers www.mad.zut.edu.pl
akademia androida Sensory część V agenda 1. O sensorach słów kilka 2. Sensor Framework 3. Akcelerometr 4. Czujnik zbliżeniowy 5. Czujnik światła 6. Zadanie 1. 7. Zadanie 2 (domowe) 1. O sensorach słów
Mobilne aplikacje multimedialne
Mobilne aplikacje multimedialne Laboratorium 1 Wyznaczanie orientacji urządzenia względem lokalnego układu odniesienia autor: Krzysztof Bruniecki Gdańsk, 2013-10-08 wersja 12 Wprowadzenie Platforma Android
Programowanie gier 3D w HTML5. Andrzej P.Urbański Politechnika Poznańska
Programowanie gier 3D w HTML5 Andrzej P.Urbański Politechnika Poznańska Moje marzenie Od dawna jest znany pakiet Open GL napisany w C++ i bardzo ułatwiający tworzenie gier 3D Zaproponowałem kiedyś jako
Języki i metody programowania Java. Wykład 2 (część 2)
Języki i metody programowania Java INF302W Wykład 2 (część 2) Autor Dr inż. Zofia Kruczkiewicz 1 Struktura wykładu 1. Identyfikacja danych reprezentowanych przez klasy podczas opracowania koncepcji prostego
Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz
Programowanie obiektowe Literatura: Autor: dr inŝ. Zofia Kruczkiewicz Java P. L. Lemay, Naughton R. Cadenhead Java Podręcznik 2 dla kaŝdego Języka Programowania Java Linki Krzysztof Boone oprogramowania
JAVA. Java jest wszechstronnym językiem programowania, zorientowanym. apletów oraz samodzielnych aplikacji.
JAVA Java jest wszechstronnym językiem programowania, zorientowanym obiektowo, dostarczającym możliwość uruchamiania apletów oraz samodzielnych aplikacji. Java nie jest typowym kompilatorem. Źródłowy kod
Wprowadzenie do QT OpenGL
Wprowadzenie do QT mgr inż. Michał Chwesiuk mgr inż. Tomasz Sergej inż. Patryk Piotrowski 1/21 - Open Graphics Library Open Graphics Library API pozwalające na wykorzystanie akceleracji sprzętowej do renderowania
Zaawansowany kurs języka Python
PyGame 18 grudnia 2015 Plan wykładu 1 Wprowadzenie Parametry wyświetlania Powierzchnie 2 Klawiatura Mysz Dżojstik 3 Odtwarzanie plików dźwiękowych Odtwarzanie muzyki Samodzielne tworzenie dźwięków 4 3D:
Programowanie obiektowe
Programowanie obiektowe Laboratorium 1. Wstęp do programowania w języku Java. Narzędzia 1. Aby móc tworzyć programy w języku Java, potrzebny jest zestaw narzędzi Java Development Kit, który można ściągnąć
Autodesk 3D Studio MAX Teksturowanie modeli 3D
Autodesk 3D Studio MAX Teksturowanie modeli 3D dr inż. Andrzej Czajkowski Instyt Sterowania i Systemów Informatycznych Wydział Informatyki, Elektrotechniki i Automatyki 25 kwietnia 2017 1 / 20 Plan Wykładu
DesignCAD 3D Max 24.0 PL
DesignCAD 3D Max 24.0 PL Październik 2014 DesignCAD 3D Max 24.0 PL zawiera następujące ulepszenia i poprawki: Nowe funkcje: Tryb RedSDK jest teraz dostępny w widoku 3D i jest w pełni obsługiwany przez
2. Klasy cz. 2 - Konstruktor kopiujący. Pola tworzone statycznie i dynamicznie - Funkcje zaprzyjaźnione - Składowe statyczne
Tematyka wykładów 1. Wprowadzenie. Klasy cz. 1 - Język C++. Programowanie obiektowe - Klasy i obiekty - Budowa i deklaracja klasy. Prawa dostępu - Pola i funkcje składowe - Konstruktor i destruktor - Tworzenie
Utworzenie aplikacji mobilnej Po uruchomieniu Visual Studio pokazuje się ekran powitalny. Po lewej stronie odnośniki do otworzenia lub stworzenia
Utworzenie aplikacji mobilnej Po uruchomieniu Visual Studio pokazuje się ekran powitalny. Po lewej stronie odnośniki do otworzenia lub stworzenia nowego projektu (poniżej są utworzone projekty) Po kliknięciu
PRZEWODNIK PO PRZEDMIOCIE
Nazwa przedmiotu: Kierunek: Informatyka Rodzaj przedmiotu: moduł specjalności obowiązkowy: Inżynieria oprogramowania Rodzaj zajęć: wykład, laboratorium I KARTA PRZEDMIOTU CEL PRZEDMIOTU GRAFICZNE MODELOWANIE
GRAFIKA KOMPUTEROWA 8: Konwersja i mieszanie kolorów
GRAFIKA KOMPUTEROWA 8: Konwersja i mieszanie kolorów http://galaxy.agh.edu.pl/~mhojny Prowadzący: dr inż. Hojny Marcin Akademia Górniczo-Hutnicza Mickiewicza 30 30-059 Krakow pawilon B5/p.406 tel. (+48)12
Programowanie na poziomie sprzętu. Programowanie w Windows API
Programowanie w Windows API Windows API Windows Application Programming Interface (API) to zestaw funkcji systemu operacyjnego Windows, które umożliwiają aplikacjom korzystanie z wszystkich usług systemu.
Życie aktywności Nawigując przez aplikacje poszczególne Aktywności przechodzą pomiędzy stanami. Dla przykładu gdy aktywność uruchamia się po raz
Życie aktywności Nawigując przez aplikacje poszczególne Aktywności przechodzą pomiędzy stanami. Dla przykładu gdy aktywność uruchamia się po raz pierwszy najpierw znajduje się w tle systemu gdzie otrzymuje
1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość
1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość 2. Poprawna definicja wskażnika b to: a) float *a, **b = &a; b) float
Wykład 3 Składnia języka C# (cz. 2)
Wizualne systemy programowania Wykład 3 Składnia języka C# (cz. 2) 1 dr Artur Bartoszewski -Wizualne systemy programowania, sem. III- WYKŁAD Wizualne systemy programowania Metody 2 Metody W C# nie jest
Minimalna wspierana wersja systemu Android to 2.3.3 zalecana 4.0. Ta dokumentacja została wykonana na telefonie HUAWEI ASCEND P7 z Android 4.
Dokumentacja dla Scandroid. Minimalna wspierana wersja systemu Android to 2.3.3 zalecana 4.0. Ta dokumentacja została wykonana na telefonie HUAWEI ASCEND P7 z Android 4. Scandroid to aplikacja przeznaczona
76.Struktura oprogramowania rozproszonego.
76.Struktura oprogramowania rozproszonego. NajwaŜniejsze aspekty obiektowego programowania rozproszonego to: Współdziałanie (interoperability) modułów programowych na róŝnych maszynach. Wielokrotne wykorzystanie
Sieciowe Technologie Mobilne. Laboratorium 2
Sieciowe Technologie Mobilne Laboratorium 2 Tworzenie wieloplatformowych aplikacji mobilnych przy użyciu biblioteki PhoneGap. Łukasz Kamiński Laboratorium 2 Na dzisiejszym laboratorium skupimy się na implementacji
Interfejsy. Programowanie obiektowe. Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej
Programowanie obiektowe Interfejsy Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej pawel.rogalinski pwr.wroc.pl Interfejsy Autor: Paweł Rogaliński Instytut Informatyki,
Tworzenie i wykorzystanie usług
Strona 1 Co to jest usługa w systemie Android? Usługi HTTP Obsługa wywołania HTTP GET Obsługa wywołania HTTP POST Obsługa wieloczęściowego wywołania HTTP POST Usługi lokalne Usługi zdalne Tworzenie usługi
OpenGL przezroczystość
OpenGL przezroczystość W standardzie OpenGL efekty przezroczystości uzyskuje się poprzez zezwolenie na łączenie kolorów: Kolor piksela tworzy się na podstawie kolorów obiektu przesłanianego i przesłaniającego
Rysowanie punktów na powierzchni graficznej
Rysowanie punktów na powierzchni graficznej Tworzenie biblioteki rozpoczniemy od podstawowej funkcji graficznej gfxplot() - rysowania pojedynczego punktu na zadanych współrzędnych i o zadanym kolorze RGB.
Operator przypisania. Jest czym innym niż konstruktor kopiujący!
Operator przypisania Jest czym innym niż konstruktor kopiujący! Domyślnie jest zdefiniowany jako przypisanie składowa po składowej (zatem niekoniecznie bajt po bajcie). Dla klasy X definiuje się jako X&
Techniki programowania INP001002Wl rok akademicki 2018/19 semestr letni. Wykład 3. Karol Tarnowski A-1 p.
Techniki programowania INP001002Wl rok akademicki 2018/19 semestr letni Wykład 3 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Abstrakcja funkcyjna Struktury Klasy hermetyzacja
Expo Composer. www.doittechnology.pl 1. Garncarska 5 70-377 Szczecin tel.: +48 91 404 09 24 e-mail: info@doittechnology.pl. Dokumentacja użytkownika
Expo Composer Dokumentacja użytkownika Wersja 1.0 www.doittechnology.pl 1 SPIS TREŚCI 1. O PROGRAMIE... 3 Wstęp... 3 Wymagania systemowe... 3 Licencjonowanie... 3 2. PIERWSZE KROKI Z Expo Composer... 4
Architektura interfejsu użytkownika
Uniwersytet Jagielloński Interfejsy graficzne Wykład 3 Architektura interfejsu użytkownika Barbara Strug 2011 Hall of shame Hall of Shame Hall of Fame O czym dzisiaj Model Widok- Kontroler Hierarchia widoków
Multimedia JAVA. Historia
Multimedia JAVA mgr inż. Piotr Odya piotrod@sound.eti.pg.gda.pl Historia 1990 rozpoczęcie prac nad nowym systemem operacyjnym w firmie SUN, do jego tworzenia postanowiono wykorzystać nowy język programowania
GRAFIKA CZASU RZECZYWISTEGO Wprowadzenie do OpenGL
GRAFIKA CZASU RZECZYWISTEGO Wprowadzenie do OpenGL Grafika komputerowa i wizualizacja, Bioinformatyka S1, II Rok OpenGL Open Graphics Library Jest to API pozwalające na renderowanie grafiki w czasie rzeczywistym,
Projektowanie obiektowe. Roman Simiński Wzorce projektowe Wybrane wzorce strukturalne
Projektowanie obiektowe Roman Simiński roman.siminski@us.edu.pl www.siminskionline.pl Wzorce projektowe Wybrane wzorce strukturalne Fasada Facade Pattern 2 Wzorzec Fasada Facade Pattern koncepcja 3 Wzorzec
Programowanie w Javie 1 Wykład i Ćwiczenia 3 Programowanie obiektowe w Javie cd. Płock, 16 października 2013 r.
Programowanie w Javie 1 Wykład i Ćwiczenia 3 Programowanie obiektowe w Javie cd. Płock, 16 października 2013 r. Programowanie obiektowe Programowanie obiektowe (z ang. object-oriented programming), to
Bartosz Bazyluk SYNTEZA GRAFIKI 3D Grafika realistyczna i czasu rzeczywistego. Pojęcie sceny i kamery. Grafika Komputerowa, Informatyka, I Rok
SYNTEZA GRAFIKI 3D Grafika realistyczna i czasu rzeczywistego. Pojęcie sceny i kamery. Grafika Komputerowa, Informatyka, I Rok Synteza grafiki 3D Pod pojęciem syntezy grafiki rozumiemy stworzenie grafiki
Grafika Komputerowa Wykład 5. Potok Renderowania Oświetlenie. mgr inż. Michał Chwesiuk 1/38
Wykład 5 Potok Renderowania Oświetlenie mgr inż. 1/38 Podejście śledzenia promieni (ang. ray tracing) stosuje się w grafice realistycznej. Śledzone są promienie przechodzące przez piksele obrazu wynikowego
Wykład 4: Klasy i Metody
Wykład 4: Klasy i Metody Klasa Podstawa języka. Każde pojęcie które chcemy opisać w języku musi być zawarte w definicji klasy. Klasa definiuje nowy typ danych, których wartościami są obiekty: klasa to
Dokumentacja do API Javy.
Dokumentacja do API Javy http://java.sun.com/j2se/1.5.0/docs/api/ Klasy i obiekty Klasa jest to struktura zawierająca dane (pola), oraz funkcje operujące na tych danych (metody). Klasa jest rodzajem szablonu
Wprowadzenie do biblioteki klas C++
Instrukcja laboratoryjna nr 7 Programowanie w języku C 2 (C++ poziom zaawansowany) Wprowadzenie do biblioteki klas C++ WxWidgets mgr inż. Lasota Maciej dr inż. Kaczmarek Tomasz dr inż. Wilk-Jakubowski
Programowanie urządzeń mobilnych. dr inż. Juliusz Mikoda
Programowanie urządzeń mobilnych dr inż. Juliusz Mikoda Instalacja środowiska 1 Wymagane składniki środowiska Eclipse wersja 3.4 (Ganymede) lub 3.5 (Galileo classic) http://www.eclipse.org/downloads/packages/release/galileo/r
Fragmenty są wspierane od Androida 1.6
W androidzie można tworzyć dynamiczne interfejsy poprzez łączenie w moduły komponentów UI z aktywnościami. Moduły takie tworzy się za pomocą klasy Fragment, która zachowuje się jak zagnieżdżone aktywności
Technologie i usługi internetowe cz. 2
Technologie i usługi internetowe cz. 2 Katedra Analizy Nieliniowej, WMiI UŁ Łódź, 15 luty 2014 r. 1 Programowanie obiektowe Programowanie obiektowe (z ang. object-oriented programming), to paradygmat programowania,
Klasy abstrakcyjne i interfejsy
Klasy abstrakcyjne i interfejsy Streszczenie Celem wykładu jest omówienie klas abstrakcyjnych i interfejsów w Javie. Czas wykładu 45 minut. Rozwiązanie w miarę standardowego zadania matematycznego (i nie
Projektowanie, tworzenie aplikacji mobilnych na platformie Android
Program szkolenia: Projektowanie, tworzenie aplikacji mobilnych na platformie Android Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Projektowanie, tworzenie aplikacji mobilnych
Przekształcenia geometryczne. Dorota Smorawa
Przekształcenia geometryczne Dorota Smorawa Przekształcenia geometryczne Na poprzednich laboratoriach już dowiedzieliśmy się, na czym polegają podstawowe przekształcenia geometryczne. Trzy podstawowe przekształcenia
GRAFIKA KOMPUTEROWA 7: Kolory i cieniowanie
GRAFIKA KOMPUTEROWA 7: Kolory i cieniowanie http://galaxy.agh.edu.pl/~mhojny Prowadzący: dr inż. Hojny Marcin Akademia Górniczo-Hutnicza Mickiewicza 30 30-059 Krakow pawilon B5/p.406 tel. (+48)12 617 46
Język JAVA podstawy. Wykład 5, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna
Język JAVA podstawy Wykład 5, część 3 1 Język JAVA podstawy Plan wykładu: 1. Wprowadzenie do grafiki w Javie 2. Budowa GUI: komponenty, kontenery i układanie komponentów 3. Budowa GUI: obsługa zdarzeń
Tablice. Jones Stygar na tropie zmiennych
Tablice Jones Stygar na tropie zmiennych Czym jest tablica? Obecnie praktycznie wszystkie języki programowania obsługują tablice. W matematyce odpowiednikiem tablicy jednowymiarowej jest ciąg (lub wektor),
PROE wykład 2 operacje na wskaźnikach. dr inż. Jacek Naruniec
PROE wykład 2 operacje na wskaźnikach dr inż. Jacek Naruniec Zmienne automatyczne i dynamiczne Zmienne automatyczne: dotyczą kontekstu, po jego opuszczeniu są usuwane, łatwiejsze w zarządzaniu od zmiennych
Księgarnia PWN: Andrzej Jaskulski - AutoCAD 2010/LT Podstawy projektowania parametrycznego i nieparametrycznego
Księgarnia PWN: Andrzej Jaskulski - AutoCAD 2010/LT2010+. Podstawy projektowania parametrycznego i nieparametrycznego Spis treści 1. Koncepcja i zawartość podręcznika...11 1.1. Zawartość programowa...11
Wykład 4 Delegat (delegate), właściwości indeksowane, zdarzenie (event) Zofia Kruczkiewicz
Wykład 4 Delegat (delegate), właściwości indeksowane, zdarzenie (event) Zofia Kruczkiewicz Zagadnienia 1. Delegaty wiązane, właściwości indeksowane 2. Delegaty niewiązane 3. Nowa wersja kalkulatora, delegaty
Java - tablice, konstruktory, dziedziczenie i hermetyzacja
Java - tablice, konstruktory, dziedziczenie i hermetyzacja Programowanie w językach wysokiego poziomu mgr inż. Anna Wawszczak PLAN WYKŁADU zmienne tablicowe konstruktory klas dziedziczenie hermetyzacja
Język JAVA podstawy. wykład 2, część 1. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna
Język JAVA podstawy wykład 2, część 1 1 Język JAVA podstawy Plan wykładu: 1. Rodzaje programów w Javie 2. Tworzenie aplikacji 3. Tworzenie apletów 4. Obsługa archiwów 5. Wyjątki 6. Klasa w klasie! 2 Język
Języki i metody programowania Java INF302W Wykład 2 (część 1)
Języki i metody programowania Java INF302W Wykład 2 (część 1) Autor Dr inż. Zofia Kruczkiewicz Autor: Zofia Kruczkiewicz, Języki i metody programowania Java, wykład 2, część 1 1 Struktura wykładu 1. Identyfikacja