Programowanie urządzeń mobilnych. dr inż. Andrzej Grosser na podstawie wykładu dr inż. Juliusz Mikoda
|
|
- Liliana Marcinkowska
- 8 lat temu
- Przeglądów:
Transkrypt
1 Programowanie urządzeń mobilnych dr inż. Andrzej Grosser na podstawie wykładu dr inż. Juliusz Mikoda
2 Open GL Open GL Open Graphics Library specyfikacja uniwersalnego, wieloplatformowego API do generowania grafiki. Zestaw funkcji składa się z podstawowych wywołań, umożliwiających budowanie złożonych trójwymiarowych scen z podstawowych figur geometrycznych. OpenGL wykorzystywany jest często przez gry komputerowe i wygaszacze ekranu. Wiele programów przedstawiających wyniki badań naukowych (programy typu CAD) używa biblioteki OpenGL.
3 Open GL Biblioteki pomocnicze: GLU (ang. GL Utility library), GLUT (ang. GL Utility Toolkit), GLX (w przypadku środowiska X Window System), WGL (w przypadku Windows), SDL (ang. Simple DirectMedia Layer),
4 Open GL ES OpenGL ES OpenGL for Embedded Systems to podzbiór OpenGL 3D zaprojektowany m.in. dla urządzeń mobilnych typu telefony komórkowe, palmtopy i konsole do gier. OpenGL ES jest oficjalnym API dla grafiki 3D w systemach Symbian, Android, ios. Ważniejsze różnice do pełnej wersji OpenGL: usunięcie glbegin... glend semantyka dla prymitywów, wprowadzenie stałej długości atrybutów zmiennoprzecinkowych (przyspieszenie obliczeń) i wiele innych.
5 Open GL ES dla Androida OpenGL ES 1.0 wspomagany na platformie android. OpenGL ES 1.1 wprowadzony na platformie od wersji Android 1.6 OpenGL ES 2.0 wspierany na platformie Android od wersji 2.2 OpenGL ES 2.0 wspierany w bibliotece NDK od wersji Android 2.0 OpenGL ES 3.0 wspierany w bibliotece NDK od wersji Android 4.3
6 Open GL ES - składowe void glvertexpointer (int size, int type, int stride, Buffer pointer) służy do określenia zbioru (tablicy) punktów (wierzchołków) dla elementów rysowanych w kontekście graficznym. size liczba współrzędnych wierzchołka, type typ przekazywanej wartości, stride przestrzeń pomiędzy wartościami (elementy pomijane), pointer bufor (tabela) danych.
7 Open GL ES - składowe void gldrawelements (int mode, int count, int type, Buffer indices) uruchomienie procedury rysowania prymitywów (elementów graficznych) według podanych parametrów oraz wczytanych wierzchołków: mode rodzaj rysowanego kształtu, count liczba indeksów (wierzchołków), type typ danych dla indeksów, indices bufor zawierający indeksy wierzchołków.
8 Open GL ES - składowe Rodzaj rysowanego kształtu (mode): GL_POINTS lista punktów, GL_LINES lista linii (odcinków), GL_LINE_STRIP wstęga odcinków (łamana), GL_LINE_LOOP zamknięta wstęga odcinków, GL_TRIANGLES lista trójkątów, GL_TRIANGLE_STRIP wstęga trójkątów, GL_TRIANGLE_FAN wachlarz trójkątów, GL_QUADS czworościany, GL_QUAD_STRIP wstęga czworościanów, GL_POLYGON wielokąt.
9 Open GL ES - składowe
10 Open GL ES - składowe glclear(int mask) wywołanie metody powoduje wymazanie odpowiedniego bufora danych: GL_COLOR_BUFFER_BIT Bufor koloru (obrazu). Wymazanie tego bufora powoduje ustawienie domyślnego koloru, GL_DEPTH_BUFFER_BIT Bufor głębokości odpowiedzialny za badanie zakrytych obszarów rysunku, GL_STENCIL_BUFFER_BIT Bufor szablonu bufor stosowany do tworzenia obrazów z odbiciem obrazu (lustro).
11 Open GL ES - składowe glcolor4f(float red, float green, float blue, float alpha), glcolor4x(int red, int green, int blue, int alpha) ustawienie barwy, za pomocą której będzie narysowany prymityw. Kolor można określić wartością rzeczywistą ( ) oraz wartością całkowitą (0 255). glcolorpointer(int size, int type, int stride, Buffer pointer) kolor może być przekazany dla każdego wierzchołka (ściany rysowanych prymitywów będą cieniowane). Wywołanie analogiczne jak w przypadku metody glvertexpointer.
12 Open GL ES - składowe glviewport(int x, int y, int width, int height) określenie rozmiaru okna graficznego obszaru w którym zostanie narysowany obraz. glorthof(float left, float right, float bottom, float top, float znear, float zfar) rzut prostokątny bez zastosowania perspektywy glfrustumf(float left, float right, float bottom, float top, float znear, float zfar) utworzenie tablicy projekcji (rzutowania) obrazu. gluperspective(gl10 gl, float fovy, float aspect, float znear, float zfar) ustawienie widoku perspektywy.
13 Open GL ES - składowe aspect = (float) w / (float) h; fovy - kąt pola widzenia w stopniach, w kierunku y.
14 Open GL ES - składowe glulookat(gl10 gl, float eyex, float eyey, float eyez, float centerx, float centery, float centerz, float upx, float upy, float upz) kontroluje położenie kamery widoku. glloadidentity() zerowanie macierzy transformacji. glrotatef(float angle, float x, float y, float z) obroty wokół jednej z osi o zadany kąt. gltranslatef(float x, float y, float z) translacja (przemieszczenie) obrazu o zadany wektor.
15 Open GL ES ekran Kolejne etapy tworzenia kontekstu rysowania: Implementacja interfejsu Renderer, Ustawienie obiektu kamery w klasie implementującej interfejs Renderer, Implementacja procedury rysowania w metodzie ondrawframe (interfejs Renderer), Konstrukcja obiektu GLSurfaceView, Konfiguracja interfejsu renderującego GLSurfaceView,
16 Open GL ES przykład public class OpenGl extends Activity { private GLSurfaceView public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); glsv = new GLSurfaceView(this); // Wyłączenie bufora głębokości glsv.seteglconfigchooser(false); // Ustawienie obiektu renderującego glsv.setrenderer(new SimpleTriangleRenderer(this)); // Statyczny tryb renderowania. // Przerysowanie wymaga wywołania requestrender () glsv.setrendermode( GLSurfaceView.RENDERMODE_WHEN_DIRTY); // Tryb automatcznego renderowania sceny // glsv.setrendermode( // GLSurfaceView.RENDERMODE_CONTINUOUSLY); setcontentview(glsv);
17 Open GL ES przykład public class OpenGl extends Activity { protected void onresume() { super.onresume(); protected void onpause() { super.onpause(); glsv.onpause();
18 Open GL ES przykład public abstract class AbstractRenderer implements Renderer { public void onsurfacecreated(gl10 gl, EGLConfig conf) gl.glclearcolor(0.5f, 0.5f, 0.5f, 0.5f); public void onsurfacechanged(gl10 gl, int w, int h) { gl.glviewport(0,0,w,h); float aspect = (float) w / h; gl.glmatrixmode(gl10.gl_projection); gl.glloadidentity(); gl.glfrustumf(-aspect, aspect, -1,1,3,7); gl.glmatrixmode(gl10.gl_modelview);
19 Open GL ES przykład public abstract class AbstractRenderer implements Renderer public void ondrawframe(gl10 gl) { gl.glclear(gl10.gl_color_buffer_bit GL10.GL_DEPTH_BUFFER_BIT); gl.glloadidentity(); GLU.gluLookAt(gl, 0,0,-5, 0f,0f,0f,0f,1.0f,0.0f); gl.glenableclientstate(gl10.gl_vertex_array); draw(gl); protected abstract void draw(gl10 gl);
20 Open GL ES przykład public class SimpleTriangleRenderer extends AbstractRenderer { private final static float [] coords = { -0.5f, -0.5f, 0.0f, 0.5f, -0.5f, 0.0f, 0.0f, 0.5f, 0.0f ; private final static short [] indexes = { 0, 1, 2 ; private final static int VERTEX = 3; // Bufor współrędnych private FloatBuffer vertex; // Bufor indeksów wierzchołków private ShortBuffer index;
21 Open GL ES przykład public class SimpleTriangleRenderer extends AbstractRenderer { SimpleTriangleRenderer(Context context) { ByteBuffer bb; bb = ByteBuffer.allocateDirect(VERTEX * 3 * 4); bb.order(byteorder.nativeorder()); vertex = bb.asfloatbuffer(); bb = ByteBuffer.allocateDirect(VERTEX * 3); bb.order(byteorder.nativeorder()); index = bb.asshortbuffer(); for (int i = 0; i < VERTEX; ++i { for (int j = 0; j < 3; ++j) { vertex.put(coords[i * 3 + j]);
22 Open GL ES przykład public class SimpleTriangleRenderer extends AbstractRenderer { SimpleTriangleRenderer(Context context) { //... for (int i = 0; i < indexes.length; ++ i) { index.put(indexes[i]); vertex.position(0); index.position(0); protected void draw(gl10 gl) { gl.glcolor4f(1.0f, 0.0f, 0.0f, 0.5f); gl.glvertexpointer(3, GL10.GL_FLOAT, 0, vertex); gl.gldrawelements(gl10.gl_triangles, 3, GL10.GL_UNSIGNED_SHORT, index);
23 Open GL ES - Obsługa zdarzeń boolean ontouchevent (MotionEvent event) final class MotionEvent getaction() typ zdarzenia ACTION_DOWN, ACTION_MOVE, ACTION_UP, or ACTION_CANCEL, float getx(), float gety() współrzędne wystąpienia zdarzenia, int getpointercount (), float getx (int index), loat gety (int index) wszystkie punkty w tym zdarzeniu....
24 Open GL ES - Obsługa zdarzeń public class OpenGlTouch extends Activity { private GLSurfaceView protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); mglview = new ClearGLSurfaceView(this); protected void onpause() { super.onpause(); protected void onresume() { super.onresume(); mglview.onresume();
25 Open GL ES - Obsługa zdarzeń class ClearGLSurfaceView extends GLSurfaceView { ClearRenderer mrenderer; public ClearGLSurfaceView(Context context) { super(context); mrenderer = new ClearRenderer(); setrenderer(mrenderer); { public boolean ontouchevent(final MotionEvent event) mrenderer.setcolor(event.getx() / getwidth(), event.gety() / getheight(), 1.0f ); return true;
26 Open GL ES - Obsługa zdarzeń class ClearRenderer implements GLSurfaceView.Renderer { public void onsurfacecreated(gl10 gl, EGLConfig config) { public void onsurfacechanged(gl10 gl, int w, int h) { gl.glviewport(0, 0, w, h); public void ondrawframe(gl10 gl) { gl.glclearcolor(mred, mgreen, mblue, 1.0f); gl.glclear(gl10.gl_color_buffer_bit); public void setcolor(float r, float g, float b) { mred = r; mgreen = g; mblue = b; private float mred, mgreen, mblue;
27 OGL Sfera OpenGLSphere public class OpenGLSphere extends Activity { private GLSurfaceView protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); // Pełny ekran bez tytułu this.requestwindowfeature(window.feature_no_title); getwindow().setflags( WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); // Kontekst renderowania mglview = new ViewSurface(this); setcontentview(mglview); protected void onpause() { //... protected void onresume() { //...
28 OGL Sfera ViewSurface class ViewSurface extends GLSurfaceView { ViewRenderer mrenderer; // Punkt dotyku ekranu private float x, y, o = 0; public ViewSurface(Context context) { super(context); // Moduł renderowania obrazu mrenderer = new ViewRenderer(); setrenderer(mrenderer); SetRenderMode( GLSurfaceView.RENDERMODE_CONTINUOUSLY);
29 OGL Sfera ViewSurface public boolean ontouchevent(final MotionEvent event) { switch (event.getaction()) { // Zdarzenie dotknięcia ekranu case MotionEvent.ACTION_DOWN : x = event.getx(); y =event.gety(); o = 1; break; // Zdarzenie zwolnienia nacisku case MotionEvent.ACTION_UP : o = 0; break; // Zdarzenie przesunięcia po ekranie case MotionEvent.ACTION_MOVE : if (o > 0) mrenderer.rotate(y - event.gety(), x - event.getx()); x = event.getx(); y = event.gety(); break; return true;
30 OGL Sfera ViewRenderer class ViewRenderer implements GLSurfaceView.Renderer { // Stałe pomocnicze private final static float X = f; private final static float Z = f; // wierzchołki private final static float [] vdata = { -X, 0, Z, X, 0, Z, -X, 0,-Z, X, 0,-Z, 0, Z, X, 0, Z,-X, 0,-Z, X, 0,-Z,-X, Z, X, 0, -Z, X, 0, Z,-X, 0, -Z,-X, 0 ; // kolory wierzchołków private final static float [] cdata = { 1,0,0,1, 0,1,0,1, 0,0,1,1, 1,1,0,1, 1,0,1,1, 0,1,1,1, X,0,0,1, 0,X,0,1, 0,0,X,1, X,X,0,1, X,0,X,1, 0,X,X,1, ;
31 OGL Sfera ViewRenderer // opis powierzchni dwudziestościanu private final static short [] idata = { 0,4,1, 0,9,4, 9,5,4, 4,5,8, 4,8,1, 8,10,1, 8,3,10, 5,3,8, 5,2,3, 2,7,3, 7,10,3, 7,6,10, 7,11,6, 11,0,6, 0,1,6, 6,1,10, 9,0,11, 9,11,2, 9,2,5, 7,2,11 ; // bufory danych private FloatBuffer vertex, color; private ShortBuffer index; // liczba trójkątów do narysowania private int ni; // współczynnik rotacji obrazy private float rx = 0, ry = 0; // macierz pomocnicza rotacji private float trans[] = {1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1;
32 OGL Sfera ViewRenderer ViewRenderer() { // tworzenie buforów danych do renderowania vertex = ByteBuffer.allocateDirect(vdata.length * 4).order(ByteOrder.nativeOrder()).asFloatBuffer(); color = ByteBuffer.allocateDirect(cdata.length * 4).order(ByteOrder.nativeOrder()).asFloatBuffer(); index = ByteBuffer.allocateDirect(idata.length * 2).order(ByteOrder.nativeOrder()).asShortBuffer(); vertex.put(vdata); color.put(cdata); index.put(idata); vertex.position(0); color.position(0); index.position(0); ni = idata.length ;
33 OGL Sfera ViewRenderer public void onsurfacecreated(gl10 gl, EGLConfig config) { // inicjacja kontekstu renderowania gl.glclearcolor(0.1f, 0.1f, 0.1f, 0.5f); // test głębokości gl.glenable(gl10.gl_depth_test); // rysowanie widocznych ścianek gl.glenable(gl10.gl_cull_face); gl.glfrontface(gl10.gl_ccw); gl.glcullface(gl10.gl_back);
34 OGL Sfera ViewRenderer public void onsurfacechanged(gl10 gl, int w, int h) { // inicjacja widoku gl.glviewport(0,0,w,h); float aspect = (float) w / (float) h; gl.glmatrixmode(gl10.gl_projection); gl.glloadidentity(); // gl.glfrustumf(-aspect, aspect, -1,1,-1,1); // widok perspektywiczny GLU.gluPerspective(gl, 40.0f, aspect, -1f, 2.0f); gl.glmatrixmode(gl10.gl_modelview);
35 OGL Sfera ViewRenderer public void ondrawframe(gl10 gl) { // Czyszczenie buforów gl.glclear(gl10.gl_color_buffer_bit GL10.GL_DEPTH_BUFFER_BIT); gl.glenableclientstate(gl10.gl_vertex_array); gl.glenableclientstate(gl10.gl_color_array); // transformacje - obroty gl.glloadidentity(); float tmp[] = {1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1; Matrix.rotateM(tmp, 0, rx, 1, 0, 0); Matrix.rotateM(tmp, 0, ry, 0, 1, 0); Matrix.multiplyMM(trans, 0, tmp, 0, trans, 0); gl.glmultmatrixf(trans, 0); rx = ry = 0; // gl.glrotatef(rx, 1, 0, 0); // gl.glrotatef(ry, 0, 1, 0);
36 OGL Sfera ViewRenderer // rysowanie obrazy sfery gl.glvertexpointer(3, GL10.GL_FLOAT, 0, vertex); gl.glcolorpointer(4, GL10.GL_FLOAT, 0, color); gl.gldrawelements(gl10.gl_triangles, ni, GL10.GL_UNSIGNED_SHORT, index); public void rotate(float x, float y) { // zmiana obrotu rx += x; ry += y;
37 Open GL - Teksturowanie public class OpenGLText extends Activity { private GLSurfaceView glsv; public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); glsv = new GLSurfaceView(this); // Wyłączenie bufora głębokości glsv.seteglconfigchooser(false); // Ustawienie obiektu renderującego glsv.setrenderer(new TexturedSquareRenderer(this)); // Statyczny tryb renderowania. // Przerysowanie wymaga wywołania requestrender () glsv.setrendermode(glsurfaceview.rendermode_when_dirty); setcontentview(glsv); protected void onresume() { super.onresume(); glsv.onresume(); protected void onpause() { super.onpause(); glsv.onpause();
38 Open GL - Teksturowanie abstract class AbstractRenderer implements Renderer { int mtextureid; int mimageresourceid; Context mcontext; public AbstractRenderer(Context ctx, int imageresourceid) { mimageresourceid = imageresourceid; mcontext = public void onsurfacecreated(gl10 gl, EGLConfig conf) { gl.glclearcolor(0.5f, 0.5f, 0.5f, 0.5f); gl.glenable(gl10.gl_depth_test); preparetexture(gl);
39 Open GL - Teksturowanie private void preparetexture(gl10 gl) { int[] textures = new int[1]; gl.glgentextures(1, textures, 0); mtextureid = textures[0]; gl.glbindtexture(gl10.gl_texture_2d, mtextureid); gl.gltexparameterf(gl10.gl_texture_2d, GL10.GL_TEXTURE_MIN_FILTER, GL10.GL_NEAREST); gl.gltexparameterf(gl10.gl_texture_2d, GL10.GL_TEXTURE_MAG_FILTER, GL10.GL_LINEAR); gl.gltexparameterf(gl10.gl_texture_2d, GL10.GL_TEXTURE_WRAP_S, GL10.GL_CLAMP_TO_EDGE); gl.gltexparameterf(gl10.gl_texture_2d, GL10.GL_TEXTURE_WRAP_T, GL10.GL_CLAMP_TO_EDGE); gl.gltexenvf(gl10.gl_texture_env, GL10.GL_TEXTURE_ENV_MODE, GL10.GL_REPLACE);
40 Open GL - Teksturowanie InputStream is = mcontext.getresources().openrawresource(this.mimageresourceid); Bitmap bitmap; bitmap = BitmapFactory.decodeStream(is); GLUtils.texImage2D(GL10.GL_TEXTURE_2D, 0, bitmap, 0); bitmap.recycle(); public void onsurfacechanged(gl10 gl, int w, int h) { gl.glviewport(0,0,w,h); float aspect = (float) w / h; gl.glmatrixmode(gl10.gl_projection); gl.glloadidentity(); gl.glfrustumf(-aspect, aspect, -1,1,3,7); gl.glmatrixmode(gl10.gl_modelview);
41 Open GL - Teksturowanie public void ondrawframe(gl10 gl) { gl.gldisable(gl10.gl_dither); gl.gltexenvx(gl10.gl_texture_env, GL10.GL_TEXTURE_ENV_MODE, GL10.GL_MODULATE); gl.glclear(gl10.gl_color_buffer_bit GL10.GL_DEPTH_BUFFER_BIT); gl.glmatrixmode(gl10.gl_modelview); gl.glloadidentity(); GLU.gluLookAt(gl, 0, 0, -5, 0f, 0f, 0f, 0f, 1.0f, 0.0f); gl.glenableclientstate(gl10.gl_vertex_array); gl.glenableclientstate(gl10.gl_texture_coord_array); gl.glactivetexture(gl10.gl_texture0); gl.glbindtexture(gl10.gl_texture_2d, mtextureid); gl.gltexparameterx(gl10.gl_texture_2d, GL10.GL_TEXTURE_WRAP_S, GL10.GL_REPEAT); gl.gltexparameterx(gl10.gl_texture_2d, GL10.GL_TEXTURE_WRAP_T, GL10.GL_REPEAT); draw(gl); protected abstract void draw(gl10 gl);
42 Open GL - Teksturowanie class TexturedSquareRenderer extends AbstractRenderer { //Nieskompresowany bufor natywny, współrzędne punktów private FloatBuffer mfvertexbuffer; //Nieskompresowany bufor natywny, współrzędne tekstury private FloatBuffer mftexturebuffer; // Nieskompresowany bufor natywny, przechowujący indeksy // pozwalające na wielokrotne wykorzystywanie punktów. private ShortBuffer mindexbuffer; private int numofindices = 0; private int sides = 4; public TexturedSquareRenderer(Context context) { super(context, R.drawable.icon); preparebuffers(sides);
43 Open GL - Teksturowanie private void preparebuffers(int sides) { RegularPolygon t = new RegularPolygon(0,0,0,0.8f,sides); this.mfvertexbuffer = t.getvertexbuffer(); this.mftexturebuffer = t.gettexturebuffer(); this.mindexbuffer = t.getindexbuffer(); this.numofindices = t.getnumberofindices(); this.mfvertexbuffer.position(0); this.mindexbuffer.position(0); this.mftexturebuffer.position(0); protected void draw(gl10 gl) { preparebuffers(sides); gl.glenable(gl10.gl_texture_2d); gl.glvertexpointer(3, GL10.GL_FLOAT, 0, mfvertexbuffer); gl.gltexcoordpointer(2, GL10.GL_FLOAT, 0, mftexturebuffer); gl.gldrawelements(gl10.gl_triangles, this.numofindices, GL10.GL_UNSIGNED_SHORT, mindexbuffer);
Grafika trójwymiarowa
Strona 1 Grafika 3D w systemie Android Wprowadzenie do OpenGL ES Podstawy rysowania Rzutowanie i kamera Klasa GLSurfaceView Algorytm rysowania Tekstury Strona 2 Grafika 3D w systemie Android W komputerach,
9. Rysowanie, animacje i podstawy grafiki 3D
9. Rysowanie, animacje i podstawy grafiki 3D 171
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
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:
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
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:
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,
Oprogramowanie i wykorzystanie stacji roboczych. Wykład 6
Wykład 6 p. 1/2 Oprogramowanie i wykorzystanie stacji roboczych Wykład 6 Dr inż. Tomasz Olas olas@icis.pcz.pl Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Wektory normalne
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
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:
Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich właścicieli.
Tytuł oryginału: Practical Android 4 Games Development Tłumaczenie: Szymon Pietrzak ISBN: 978-83-246-5087-3 Original edition copyright 2011 by J. F. DiMarzio. All rights reserved. Polish edition copyright
Rzutowanie DOROTA SMORAWA
Rzutowanie DOROTA SMORAWA Rzutowanie Rzutowanie jest operacja polegająca na tym, aby odpowiednie piksele na płaskim ekranie były wyświetlane w taki sposób, by sprawiać wrażenie trójwymiarowej głębi (przestrzeni
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:
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...........................
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
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
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
Janusz Ganczarski. OpenGL Definiowanie sceny 3D
Janusz Ganczarski OpenGL Definiowanie sceny 3D Spis treści Spis treści..................................... 1 1. Definiowanie sceny 3D........................... 1 1.1. Obszar renderingu............................
Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich właścicieli.
Tytuł oryginału: Practical Android 4 Games Development Tłumaczenie: Szymon Pietrzak ISBN: 978-83-246-5087-3 Original edition copyright 2011 by J. F. DiMarzio. All rights reserved. Polish edition copyright
Wysokopoziomowy silnik gier dla urządzeń mobilnych z systemem Android
Uniwersytet Łódzki Wydział Matematyki i Informatyki Michał Bieńkowski Numer albumu 289475 Wysokopoziomowy silnik gier dla urządzeń mobilnych z systemem Android Praca magisterska napisana pod kierunkiem:
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
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,
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
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,
Programowanie telefonów z Windows Phone 7, cz. 3
Programowanie telefonów z Windows Phone 7, cz. 3 Piotr M. Szczypiński Instytut Elektroniki Politechniki Łódzkiej http://www.eletel.p.lodz.pl/pms/ piotr.szczypinski@p.lodz.pl Budynek B9, II piętro, pokój
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
Java: interfejsy i klasy wewnętrzne
Java: interfejsy i klasy wewnętrzne Programowanie w językach wysokiego poziomu mgr inż. Anna Wawszczak 1 INTERFEJSY Interfejs to opis co klasa implementująca dany interfejs powinna robić, ale bez określania
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.
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.
GRAFIKA CZASU RZECZYWISTEGO Podstawy syntezy grafiki 3D i transformacji geometrycznych
GRAFIKA CZASU RZECZYWISTEGO Podstawy syntezy grafiki 3D i transformacji geometrycznych Grafika komputerowa i wizualizacja, Bioinformatyka S1, II Rok Synteza grafiki 3D Pod pojęciem syntezy grafiki rozumiemy
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
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
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
MonoGame. Wieloplatformowe gry w C# Mateusz Cicheński
MonoGame Wieloplatformowe gry w C# Mateusz Cicheński Plan prezentacji Założenia Alternatywy Narzędzia Różnice między WP8, ios, Android DEMO Podsumowanie Założenia CEL: Stworzenie wieloplatformowej gry
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
Temat: Wprowadzenie do OpenGL i GLUT
Instrukcja laboratoryjna 8 Grafika komputerowa 3D Temat: Wprowadzenie do OpenGL i GLUT Przygotował: dr inż. Grzegorz Łukawski, mgr inż. Maciej Lasota, mgr inż. Tomasz Michno 1 Wstęp teoretyczny OpenGL
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ń
Grafika 3D OpenGL część II
#include #include #include float kat=0.0f; void renderujscene(void) { glclearcolor(1.0f,1.0f,1.0f,1.0f); glclear(gl_color_buffer_bit); glpushmatrix(); glrotatef(kat,0,0,1);
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
Programowanie Procesorów Graficznych
Programowanie Procesorów Graficznych Wykład 1 9.10.2012 Prehistoria Zadaniem karty graficznej było sterowanie sygnałem do monitora tak aby wyświetlić obraz zgodnie z zawartościa pamięci. Programiści pracowali
Programowanie urządzeń mobilnych w systemie Android. Ćwiczenie 7 Wykorzystanie układu LinearLayout
Ćwiczenie 7 Wykorzystanie układu LinearLayout Cel ćwiczenia Celem ćwiczenia jest praktyczne zapoznanie się z zasadami użycia układu graficznego LinearLayout oraz wykształcenie umiejętności zastosowania
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
Programowanie obiektowe
Programowanie obiektowe Wykład 2: Wstęp do języka Java 3/4/2013 S.Deniziak: Programowanie obiektowe - Java 1 Cechy języka Java Wszystko jest obiektem Nie ma zmiennych globalnych Nie ma funkcji globalnych
Wstęp do JUNG. Omówione elementy wykorzystane w Edge Color Project
JUNG Java Universal Network/Graph Framework JUNG jest to biblioteka służąca do modelowania, analizy i wizualizacji danych reprezentowanych w postaci grafów lub sieci. Architektura JUNGa wspiera różnorodność
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
Co to jest OpenGL? Oprogramowanie i wykorzystanie stacji roboczych. Wykład 5. OpenGL - Achitektura. OpenGL - zalety. olas@icis.pcz.
Co to jest OpenGL? Oprogramowanie i wykorzystanie stacji roboczych Wykład 5 Dr inż. Tomasz Olas olas@icis.pcz.pl OpenGL (Open Graphics Library) jest niskopoziomowa biblioteka graficzna (API - programowy
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
Wykład 7: Pakiety i Interfejsy
Wykład 7: Pakiety i Interfejsy Plik Źródłowy w Javie Składa się z: instrukcji pakietu (pojedyncza, opcjonalna) instrukcji importujących (wielokrotne, opcjonalne) deklaracji klasy publicznej (pojedyncza,
Android pierwsza aplikacja
Android pierwsza aplikacja I. Środowisko 1. Uruchomić środowisko Android Devloppers tools 2. Wybrać/Utworzyć Wokspace Mobile-cw2 II Projekt 1. Utworzyć nowy projekt klikając na w pasku narzędzi 2. Rozwinąć
Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com
Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com GUI-Swing Wstęp do tworzenia prostych aplikacji z interfejsem graficznym (GUI) przy pomocy Swing, rysowanie prostych
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
JAVA W SUPER EXPRESOWEJ PIGUŁCE
JAVA W SUPER EXPRESOWEJ PIGUŁCE Obiekt Obiekty programowe to zbiór własności i zachowań (zmiennych i metod). Podobnie jak w świecie rzeczywistym obiekty posiadają swój stan i zachowanie. Komunikat Wszystkie
GRAFIKA CZASU RZECZYWISTEGO Wstęp do programowania grafiki czasu rzeczywistego.
GRAFIKA CZASU RZECZYWISTEGO Wstęp do programowania grafiki czasu rzeczywistego. http://bazyluk.net/zpsb Grafika Komputerowa, Informatyka, I Rok PROGRAMOWANIE GRAFIKI KOMPUTEROWEJ CZASU RZECZYWISTEGO Grafika
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
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
Laboratorium 1. Część I. Podstawy biblioteki graficznej OpenGL.
Laboratorium 1 Część I Podstawy biblioteki graficznej OpenGL. I. Konfiguracja środowiska 1. Ściągamy bibliotekę freeglut i rozpakujemy do głównego folderu dysku systemowego np. C:\freeglut 2. Uruchamiamy
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
Druga aplikacja Prymitywy, alpha blending, obracanie bitmap oraz mały zestaw przydatnych funkcji wyświetlających własnej roboty.
Przyszedł czas na rysowanie własnych figur, czyli prymitywy, obracanie bitmap, oraz alpha blending-czyli półprzezroczystość. Będę opisywał tylko rzeczy nowe-nie ma potrzeby abym się powtarzał. Zaczynajmny
Wprowadzenie. Artur Staszczyk Bartłomiej Filipek
Wprowadzenie Artur Staszczyk www.astaszczyk.com Bartłomiej Filipek www.bartlomiejfilipek.pl Bartlomiej.filipek@gmail.com Podstawy grafiki 3D GPU Co to jest OpenGL Potok Graficzny Inicjalizacja Rendering
Kurs programowania. Wykład 13. Wojciech Macyna. 14 czerwiec 2017
Wykład 13 14 czerwiec 2017 Java vs cpp - podobieństwa Podobny sposób definiowania klas. Występowanie typów podstawowych: boolean, char, byte, short, int, long, float, double. Podobna zasada definiowania
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,
Enkapsulacja, dziedziczenie, polimorfizm
17 grudnia 2008 Spis treści I Enkapsulacja 1 Enkapsulacja 2 Spis treści II Enkapsulacja 3 Czym jest interfejs Jak definuje się interfejs? Rozszerzanie interfejsu Implementacja interfejsu Częściowa implementacja
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
Klasy abstrakcyjne, interfejsy i polimorfizm
Programowanie obiektowe 12 kwietnia 2011 Organizacyjne Klasówka będzie 20 IV 2011. Sale jeszcze są pertraktowane. Materiał do wyjątków włącznie. Można mieć swoje materiały nieelektroniczne. Wywołanie z
Kurs programowania. Wykład 1. Wojciech Macyna. 3 marca 2016
Wykład 1 3 marca 2016 Słowa kluczowe języka Java abstract, break, case, catch, class, const, continue, default, do, else, enum, extends, final, finally, for, goto, if, implements, import, instanceof, interface,
Mobilne Aplikacje Multimedialne
Mobilne Aplikacje Multimedialne Rozszerzona rzeczywistość (AR, Augmented Reality) w Systemie Android Cz.2 Krzysztof Bruniecki Układy odniesienia Z B Już znamy Y B X B autor: Krzysztof Bruniecki 2 ECEF
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
Animowana grafika 3D. Opracowanie: J. Kęsik.
Animowana grafika 3D Opracowanie: J. Kęsik kesik@cs.pollub.pl Rzutowanie Równoległe Perspektywiczne Rzutowanie równoległe Rzutowanie równoległe jest powszechnie używane w rysunku technicznym - umożliwienie
Szybkie tworzenie grafiki w GcIde
Szybkie tworzenie grafiki w GcIde Opracował: Ryszard Olchawa Poniższy opis dotyczy aplikacji okienkowej w systemie Windows lub Linux bazującej na obiektowej bibliotece rofrm stworzonej w środowisku GcIde.
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,
Rysowanie. Rysowanie - podstawy
Rysowanie, K-16, 2017/2018 64 Rysowanie - podstawy Klasa rysująca dziedziczy po klasie graficznej View (do prostych zastosowań) lub SurfaceView (bardziej wydajne) Obiekt dziedziczący po klasie View ładowany
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
Grafika Komputerowa, Informatyka, I Rok
SYNTEZA GRAFIKI 3D Grafika realistyczna i czasu rzeczywistego. Wstęp do programowania grafiki 3D z użyciem OpenGL. Transformacje geometryczne. Grafika Komputerowa, Informatyka, I Rok Synteza grafiki 3D
Gry Komputerowe Laboratorium 1. Zajęcia organizacyjne Animacja z uwzględnieniem czasu. mgr inż. Michał Chwesiuk 1/22. Szczecin,
Gry Komputerowe Laboratorium 1 Zajęcia organizacyjne mgr inż. Michał Chwesiuk 1/22 projektowych Zajęcia projektowe składają się zajęć (plus jedno zajęcie godzinne). Zajęcia polegają na programowania grafiki
Programowanie obiektowe i zdarzeniowe
Marek Tabędzki Programowanie obiektowe i zdarzeniowe 1/23 Programowanie obiektowe i zdarzeniowe wykład 6 polimorfizm Na poprzednim wykładzie: dziedziczenie jest sposobem na utworzenie nowej klasy na podstawie
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
Wizualne systemy programowania. Wykład 11 Grafika. dr Artur Bartoszewski -Wizualne systemy programowania, sem. III- WYKŁAD
Wizualne systemy programowania Wykład 11 Grafika 1 dr Artur Bartoszewski -Wizualne systemy programowania, sem. III- WYKŁAD Grafika GDI+ GDI+ - Graphics Device Interface jeden z trzech podstawowych komponentów
PyGame Gra w Ponga. Spis treści
- 1 - PyGame Gra w Ponga Opis implementacji: Używając biblioteki PyGame oraz języka Python, stworzymy prostą grę Pong. Autorzy: Łukasz Zarzecki, Robert Bednarz Czas realizacji: 90 min Poziom trudności:
OpenGL - Open Graphics Library. Programowanie grafiki komputerowej. OpenGL 3.0. OpenGL - Architektura (1)
OpenGL - Open Graphics Library Programowanie grafiki komputerowej Rados$aw Mantiuk Wydzia$ Informatyki Zachodniopomorski Uniwersytet Technologiczny! OpenGL: architektura systemu do programowania grafiki
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
Bartosz Bazyluk Wprowadzenie Organizacja i tematyka zajęć, warunki zaliczenia.
Wprowadzenie Organizacja i tematyka zajęć, warunki zaliczenia http://bazyluk.net/dydaktyka Grafika Komputerowa i Wizualizacja, Informatyka S1, II Rok O MNIE mgr inż. Pokój 322/WI2 lub 316/WI2 bbazyluk@wi.zut.edu.pl
Podstawy Programowania Obiektowego
Podstawy Programowania Obiektowego Wprowadzenie do programowania obiektowego. Pojęcie struktury i klasy. Spotkanie 03 Dr inż. Dariusz JĘDRZEJCZYK Tematyka wykładu Idea programowania obiektowego Definicja
Oprogramowanie i wykorzystanie stacji roboczych. Wykład 5
Wykład 5 p. 1/? Oprogramowanie i wykorzystanie stacji roboczych Wykład 5 Dr inż. Tomasz Olas olas@icis.pcz.pl Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Wykład 5 p. 2/? Co
Grafika komputerowa i wizualizacja. dr Wojciech Pałubicki
Grafika komputerowa i wizualizacja dr Wojciech Pałubicki Grafika komputerowa Obrazy wygenerowane za pomocy komputera Na tych zajęciach skupiamy się na obrazach wygenerowanych ze scen 3D do interaktywnych
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
OpenGL - maszyna stanu. Oprogramowanie i wykorzystanie stacji roboczych. Wykład 7. Grupy atrybutów. Zmienne stanu.
OpenGL - maszyna stanu Oprogramowanie i wykorzystanie stacji roboczych Wykład 7 Dr inż. Tomasz Olas olas@icis.pcz.pl Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska OpenGL posiada
WSNHiD, Programowanie 2 Lab. 2 Język Java struktura programu, dziedziczenie, abstrakcja, polimorfizm, interfejsy
WSNHiD, Programowanie 2 Lab. 2 Język Java struktura programu, dziedziczenie, abstrakcja, polimorfizm, interfejsy Pojęcie klasy Program napisany w języku Java składa się ze zbioru klas. Każda klasa zawiera
1 Temat: Vertex Shader
Instrukcja Architektura procesorów graficznych 1 Temat: Vertex Shader Przygotował: mgr inż. Tomasz Michno 1 Wstęp 1.1 Czym jest shader Shader jest programem (zazwyczaj krótkim), wykonywanym przez kartę
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
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
Laboratorium Systemów Mobilnych. Wykład 1
Laboratorium Systemów Mobilnych 2015-02-27 Wykład 1 (Wstęp do programowania w systemie Android) Wojciech Wawrzyniak Zaliczenie wykładu i ćwiczeń Wykład omówienie zagadnień Ćwiczenie praktyczne zastosowanie
dziedziczenie - po nazwie klasy wystąpią słowa: extends nazwa_superklasy
PODSTAWOWE ELEMENTY JĘZYKA JAVA TYPY DANYCH, OPERATORY I INSTRUKCJE 1. Definicja klasy, dziedziczenie, implementowanie metod interfejsów class nazwa_klasy //ciało klasy Klasa: przed słowem class moŝe wystąpić
Języki i metody programowania Java Lab2 podejście obiektowe
Języki i metody programowania Java Lab2 podejście obiektowe https://docs.oracle.com/javase/tutorial/ http://zofia.kruczkiewicz.staff.iiar.pwr.wroc.pl/wyklady/pojava/javazk4_2.pdf Zofia Kruczkiewicz 1 Zadanie
Polimorfizm. dr Jarosław Skaruz
Polimorfizm dr Jarosław Skaruz http://jareks.ii.uph.edu.pl jaroslaw@skaruz.com O czym będzie? finalne składowe klasy abstrakcyjne interfejsy polimorfizm Finalne składowe Domyślnie wszystkie pola i metody
OpenGL oświetlenie. Bogdan Kreczmer. Katedra Cybernetyki i Robotyki Wydziału Elektroniki Politechnika Wrocławska
OpenGL oświetlenie Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Katedra Cybernetyki i Robotyki Wydziału Elektroniki Politechnika Wrocławska Kurs: Copyright c 2017 Bogdan Kreczmer Niniejszy dokument zawiera
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
Programowanie obiektowe
Programowanie obiektowe Wykład 7 Marcin Młotkowski 8 kwietnia 2015 Plan wykładu Z życia programisty, część 1 1 Z życia programisty, część 1 2 3 Z życia programisty, część 2 Model View Controller MVC w
Grafika Komputerowa Wykład 6. Teksturowanie. mgr inż. Michał Chwesiuk 1/23
Wykład 6 mgr inż. 1/23 jest to technika w grafice komputerowej, której celem jest zwiększenie szczegółowości renderowanych powierzchni za pomocą tekstur. jest to pewna funkcja (najczęściej w formie bitmapy)
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