INFORMATICA GRAFICA. 20 Aprile Introduzione a OpenGL. Michele Antolini michele.antolini@mail.polimi.it
|
|
- Norberto Leonardi
- 8 anni fa
- Visualizzazioni
Transcript
1 Knowledge Aided Engineering Manufacturing and Related Technologies INFORMATICA GRAFICA 20 Aprile Introduzione a OpenGL michele.antolini@mail.polimi.it
2 Computer graphics I programmi di grafica (non solo 3D) hanno una struttura molto simile Fasi: Definizione geometrie (vertici, vettori, linee, poligoni, curve, superfici) Definizione punto di vista, FOV, proiezione Rasterizzazione, shading (+ eventuali texture) Sono coinvolti vettori, matrici, equazioni matematiche
3 OpenGL Astrazione rispetto all hardware sottostante Implementazioni software di funzioni non supportate dall hardware Sfruttamento delle capacità dei diversi acceleratori 3D
4 OpenGL L interfaccia OpenGL ha portato nel tempo ad una convergenza nell architettura hardware delle schede grafiche punti, linee, poligoni come primitive base pipeline per trasformazioni e illuminazione Z-buffering Texture mapping Alpha blending Retrocompatibilità con versioni precedenti
5 OpenGL - Date 1992: OpenGL (gennaio): OpenGL 1.1, texture su GPU OpenGL viene aggiornato più o meno annualmente 2004: OpenGL 2.0, shaders programmabili (GLSL, OpenGL Shading Language) 2008: OpenGL 3.0, geometry shader, vertex array (tra le altre cose) 2010 (11 marzo) OpenGL 4.0: tassellazione virgola mobile a 64bit (doppia precisione) per gli shader supporto OpenCL (GPGPU) per lo sfruttamento della GPU per General Purpose computing
6 OpenGL OpenGL non si occupa di: event management input management (tastiera/mouse) window management L ambiente di sviluppo per OpenGL e` normalmente costituito da alcune librerie: gl OpenGL glu GL Utilities gl<ws> Estensione per <ws> (window system) glut Interfaccia a <ws>
7 OpenGL Libreria gl rendering 3D lighting z-buffering alpha blending texture mapping antialiasing fog
8 OpenGL Libreria glu gestione parametri viewing gestione texture mapping polygon tessellation (decompositore generico di poligoni concavi) curve e superfici parametriche gestione errori
9 OpenGL Libreria glut interfaccia con il window system gestione eventi gestione input keyboard/mouse primitive 3D realizza trasparenza rispetto al window system sottostante
10 OpenGL Configurazione In laboratorio utilizzeremo l editor CodeBlocks Compilatore: gcc Windows: MinGW (porting di gcc sotto Windows) OSX: necessario pacchetto XCode L interfaccia OpenGL non cambia a seconda del sistema operativo Cambiano le opzioni di compilazione e, spesso, dettagli nelle direttive #include GL Utility Toolkit Windows: freeglut
11 OpenGL Configurazione Creazione nuovo progetto vuoto Project->New->Empty Project Scegliere nome e directory Compilatore: GNU GCC Compiler Project->Build Options Include directories: Search directories Lib directories: Linker settings
12 OpenGL Configurazione Windows: Compiler: <freeglut dir>\include Linker: <freeglut dir>\lib Linker settings: -lfreeglut, -lopengl32, -lglu32 OSX (Codeblocks 10) Compiler: System/Library/Frameworks/OpenGL.framework/Headers System/Library/Frameworks/GLUT.framework/Headers Linker settings->other linker options: -framework OpenGL -framework GLUT Linux Compiler: /usr/local/include Linker glut, GLU, GL
13 OpenGL Prima compilazione main.c #include <stdlib.h> //Win32 / Linux #include <GL/gl.h> #include <GL/glu.h> #include <GL/glut.h> //OSX #include <OpenGL/gl.h> #include <OpenGL/glu.h> #include <GLUT/glut.h> int main(int argc, char** argv) { } return 0;
14 OpenGL - comandi Formato generale: <lib_name><command_name><signature> dove <signature>: [[<arg_number>]<arg_type>]... ] Esempi: glcolor3f libreria gl, Colore, 3 dati, float glvertex2i libreria gl, Vertice, 2 dati, int glutcreatewindow libreria glut, crea la window
15 OpenGL tipi di dati tipo abbrev. lungh GLbyte b 8 bit GLubyte ub 8 bit GLshort s 16 bit GLushort us 16 bit GLint i 32 bit GLuint ui 32 bit GLfloat f 32 bit GLdouble d 64 bit
16 OpenGL - comandi Nel main() è necessario impostare la configurazione iniziale utilizzando chiamate alla libreria GLUT glutinit( int argc, char** argv): inizializzazione GLUT glutinitdisplaymode( unsigned int mode ): combinazione tramite operatore (OR) di parametri relativi alla modalità di visualizzazione GLUT_RGBA, GLUT_RGB, GLUT_ALPHA, GLUT_INDEX: selezione colori in RGB o tramite indexing con eventuale trasparenza (ALPHA) GLUT_SINGLE, GLUT_DOUBLE, GLUT_ACCUM, GLUT_DEPTH, GLUT_STENCIL: bufferizzazione dei frame GLUT_STEREO: abilita la visualizzazione stereoscopica
17 OpenGL - comandi Creazione finestra di visualizzazione glutinitwindowsize( int width, int height ) glutinitwindowposition( int x, int y ) glutcreatewindow ( char *name )
18 OpenGL - comandi Gestione della finestra Vengono utilizzati puntatori a funzione per implementare callback glutdisplayfunc(void (*func)(void)) Viene chiamata quando il contenuto della finestra deve essere ridisegnato glutreshapefunc(void (*func)(int width, int height)) Viene chiamata quando la finestra viene spostata o ridimensionata glutpostredisplay(void) Forza la chiamata alla Display Function
19 OpenGL - comandi Eventi di input glutkeyboardfunc( void (*func)(unsigned int key, int x, int y) Quando viene premuto un tasto (ASCII) restituisce il codice (key) e le coordinate (x,y) del mouse glutmousefunc(void (*func)(int button, int state, int x, int y)) Pressione di un tasto del mouse. button può valere GLUT_LEFT_BUTTON, GLUT_RIGHT_BUTTON o GLUT_MIDDLE_BUTTON state può valere GLUT_UP o GLUT_DOWN
20 OpenGL - comandi Eventi di input glutmotionfunc( void (*func)(int x, int y) ) Questa callback viene attivata quando il mouse si muove con uno o più tasti premuti Primitive oggetti 3D glutwire<name>, glutsolid<name> (es. glutwirecube(int size)...cube( GLDouble size)...sphere( GLdouble radius, GLint slices, GLint stacks)...torus( GLdouble innerradius, GLdouble outerradius, GLint nsides, GLint rings )...Cone( GLdouble radius, GLdouble height, GLint slices, GLint stacks )...Teapot( GLdouble size )
21 OpenGL - comandi Impostazione del punto di vista void glulookat( GLdouble eyex, GLdouble eyey, GLdouble eyez, GLdouble centerx, GLdouble centery, GLdouble centerz, GLdouble upx, GLdouble upy, GLdouble upz );
22 OpenGL Viewing volume Proiezione prospettica void glfrustum(left,right,bottom,top,near,far) y near x left right far z
23 OpenGL Viewing volume Proiezione prospettica void gluperspective(fovy,aspect,near,far) fovy near far fovy = Field Of View Y aspect = w/h
24 OpenGL Viewing volume Proiezione ortogonale parallela void glortho(left,right,bottom,top,near,far) left near right far Proiezione ortogonale parallela 2D void glortho2d(left,right,bottom,top)
25 OpenGL - Matrici OpenGL gestisce le sue impostazioni principali tramite una pila (stack) di matrici Projection, Modelview, Texture Si imposta la modalità corrente tramite glsetmatrixmode ( GLenum mode ) mode: GL_MODELVIEW, GL_PROJECTION, GL_TEXTURE
26 OpenGL - Viewport void glviewport(x,y,width,height) scala l immagine su una viewport che ha origine in (x,y) e ha dimensioni (width,height) i parametri sono in window coordinates width e height possono essere inferiori alla dimensione della finestra una finestra può contenere diversi viewport
27 OpenGL - Viewport void glviewport(x,y,width,height) dopo aver definito una ulteriore viewport, chiamare glloadidentity() glulookat(... )
28 OpenGL - Colore due modalità: indicizzata RGB modalità indicizzata: selezione modalità glutinitdisplaymode( GLUT_INDEX ); entry della Look-up Table glutsetcolor( index, r, g, b ); selezione del colore corrente glindexi( index );
29 OpenGL - Colore modalità rgb: selezione la modalità glutinitdisplaymode( GLUT_RGB ); selezione colore corrente glcolor3f( r, g, b );
30 OpenGL - Primitive le primitive di OpenGL (punti, linee, triangoli, poligoni) sono descritte in termini di vertici i vertici sono descritti in coordinate omogenee (x, y, z, w) = (x/w, y/w, z/w, 1) glvertex4f( x, y, z, w ) (x, y, z, w ) glvertex3f( x, y, z ) (x, y, z, 1.0) glvertex2f( x, y ) (x, y, 0.0,1.0) il formato generale per il drawing e`: glbegin( tipo_di_primitiva ); <sequenza di vertici> glend();
31 OpenGL - Primitive V 2 V 1 V 4 V 3 GL_POINTS V 5 V 6 V 2 V 1 V 4 V 3 GL_LINES V 5 V 6 V 2 V 1 V 4 V 3 GL_LINE_STRIP V 5 V 6
32 OpenGL - Primitive V 2 V 1 V 4 V 3 GL_LINE_LOOP V 5 V 6 V 5 V 1 V 2 V 3 GL_TRIANGLES V 6 V 4 V 3 V 1 V 2 V 5 GL_TRIANGLE_STRIP V6 V 4
33 OpenGL - Primitive V 1 V 2 V 3 GL_TRIANGLE_FAN V 6 V5 V 4 V 2 V3 V 1 V 4 V 5 V 6 V 8 V 7 GL_QUADS V 1 V 3 V 5 V 7 GL_QUAD_STRIP V 2 V 4 V 6 V 8
34 OpenGL - Primitive esempio: glbegin( GL_LINES ); glcolor3f( 1.0, 1.0, 1.0 ); glvertex2f( -0.8, -0.8 ); glcolor3f( 1.0, 0.0, 0.0 ); glvertex2f( 0.5, 0.2 ); glvertex2f( -0.5, 0.4 ); glcolor3f( 0.0, 1.0, 0.0 ); glvertex2f( -0.2, 0.1 ); glend(); vertici differenti possono avere colore differente; in tal caso il colore viene interpolato da un vertice all altro
35 OpenGL Punti, Linee e Poligoni Si può impostare la dimensione di un punto con il comando glpointsize( GLfloat size ) default: 1.0) lo spessore di una linea con il comando gllinewidth( GLfloat size ) default: 1.0 pattern tratteggio void gllinestipple( GLint factor, GLushort pattern);
36 OpenGL Punti, Linee e Poligoni gllinestipple(4, 0xAAAA ); glenable(gl_line_stipple); glutwirecube(1); //dotted wireframe cube
37 ESEMPI
38 Esercizio Illustrate la costruzione grafica di una curva di Beziér di almeno secondo grado in 3 dimensioni Visualizzazione proiettata sul piano 2D Seconda viewport con visualizzazione prospettica o ortogonale Animazione
39 Esercizio Inviare via i sorgenti dell esercizio michele.antolini@mail.polimi.it Oggetto: [Infografica] Lab01 Nome e numero di matricola all interno del main.cpp Usate la vostra
INFORMATICA GRAFICA. 25 Marzo Introduzione a OpenGL. Michele Antolini
Knowledge Aided Engineering Manufacturing and Related Technologies INFORMATICA GRAFICA 25 Marzo Introduzione a OpenGL michele.antolini@mail.polimi.it Computer graphics I programmi di grafica (non solo
DettagliINFORMATICA GRAFICA. 27 Aprile Introduzione a OpenGL parte 2. Michele Antolini
Knowledge Aided Engineering Manufacturing and Related Technologies INFORMATICA GRAFICA 27 Aprile Introduzione a OpenGL parte 2 michele.antolini@mail.polimi.it COMANDI FONDAMENTALI OpenGL - comandi Nel
DettagliRIEPILOGO DRAWING INTRODUZIONE DRAWING EVENT MANAGEMENT VIEWING DOUBLE BUFFERING Z-BUFFERING LIGHTING
RIEPILOGO INTRODUZIONE DRAWING EVENT MANAGEMENT VIEWING DOUBLE BUFFERING Z-BUFFERING LIGHTING DRAWING creare una finestra inizializzare i buffer gestire il colore in modalita` indicizzata in modalita`
DettagliIntroduzione. Costruzione di Interfacce Primi passi in OpenGL. Sierpinski Gasket. Sierpinski gasket. Event driven programming. Stuttura del programma
Introduzione Costruzione di Interfacce Primi passi in OpenGL cignoni@iei.pi.cnr.it http://vcg.iei.pi.cnr.it/~cignoni Abbiamo visto Cosa significa rendering L approccio object viewer Mettiamo in pratica
DettagliOpenGL: visualizzazione 3D
OpenGL: visualizzazione 3D La visualizzazione di una scena avviene come se si stesse usando una macchina fotografica per la quale si può controllare la posizione nello spazio 3D; si può cambiare il tipo
DettagliIntroduzione SOMMARIO
SOMMARIO Introduzione alle librerie grafiche e a OpenGL Implementazioni hw e sw e supporto multipiattaforma Esempi di programma con OpenGL Sistemi di coordinate 2D e 3D Proiezioni Primitive 3D Pipeline
DettagliLezione1. Cos è la computer grafica. Lezione del 10 Marzo 2010. Michele Antolini Dipartimento di Ingegneria Meccanica Politecnico di Milano
Lezione1 Informatica Grafica Cos è la computer grafica Lezione del 10 Marzo 2010 Grafica OpenGL vs Direct Dipartimento di Ingegneria Meccanica Politecnico di Milano 1.1 Tubo a Raggi Catodici Cathode Ray
DettagliInformatica Grafica. (III anno Laurea Triennale - Corso di Laurea in Informatica) Donato D Ambrosio
Informatica Grafica (III anno Laurea Triennale - Corso di Laurea in Informatica) Donato D Ambrosio Dipartimento di Matematica e Centro d Eccellenza per il Calcolo ad Alte Prestazioni Cubo 22B, Università
DettagliDOUBLE BUFFERING. serve a nascondere la fase di drawing utilizzato soprattutto nelle animazioni INTRODUZIONE DRAWING EVENT MANAGEMENT VIEWING
DOUBLE BUFFERING INTRODUZIONE DRAWING EVENT MANAGEMENT VIEWING DOUBLE BUFFERING Z-BUFFERING LIGHTING serve a nascondere la fase di drawing utilizzato soprattutto nelle animazioni back buffer front buffer
DettagliCorso di grafica 3D con C++ e OpenGL. Alessandro Bugatti ITIS B. Castelli
Corso di grafica 3D con C++ e OpenGL Utilizzo di quadriche Una quadrica in 3D è ogni superficie rappresentata da un'equazione polinomiale del secondo ordine nelle variabili spaziali (coordinate). Esempi
DettagliGrafica Computazionale
Grafica Computazionale OpenGl + SDL Fabio Ganovelli fabio.ganovelli@isti.cnr.it a.a. 2005-2006 Storia Specifica di libreria per la scrittura di applicazioni di grafica 3D Cross-Language Cross-Platform
DettagliOpen Source 3D Engine. OpenGL Rendering System. Il Framework
Open Source 3D Engine OpenGL Rendering System Il Framework I moderni mezzi di programmazione, consentono a noi sviluppatori di utilizzare librerie avanzate e testate che si prestano eccellentemente allo
DettagliINFORMATICA GRAFICA. 5 Maggio Interattività. Michele Antolini
Knowledge Aided Engineering Manufacturing and Related Technologies INFORMATICA GRAFICA 5 Maggio Interattività michele.antolini@mail.polimi.it Input Libreria glut interfaccia con il window system gestione
DettagliIntroduzione Computer Graphics
Knowledge Aided Engineering Manufacturing and Related Technologies Dipartimento di Ingegneria Industriale Università di Parma Introduzione Computer Graphics Cosa e la computer graphics Computer Graphics
DettagliBloodshed Dev-C++ è l IDE usato durante le esercitazioni/laboratorio. IDE = Integrated Development Environment
Bloodshed Dev-C++ Bloodshed Dev-C++ è l IDE usato durante le esercitazioni/laboratorio IDE = Integrated Development Environment Gerardo Pelosi 01 Ottobre 2014 Pagina 1 di 8 Dev-C++ - Installazione Potete
DettagliGLUI: GLUT-based User Interface
GLUI: GLUT-based User Interface La GLUI è una libreria di oggetti C++ costruita utilizzando le GLUT e mette a disposizione tutta una serie di oggetti per rendere l interfaccia di un programma più user-friendly.
DettagliINFORMATICA GRAFICA!
Knowledge Aided Engineering Manufacturing and Related Technologies INFORMATICA GRAFICA! 11 Maggio! Interattività! Michele Antolini michele.antolini@mail.polimi.it! Input! Libreria glut! interfaccia con
DettagliRealizzazione di un semplice programma di Painting
Realizzazione di un semplice proramma di Paintin In un proramma di paintin si interaisce pesantemente con lo spazio dei Pixel fisici e non più con i pixel trasformati da coordinate mondo a coordinate schermo.
DettagliIntroduzione a OpenGL e alle GLUT
Introduzione a OpenGL e alle GLUT s OpenGL (Open Graphics Library) è una libreria per fare computer grafica. Il programmatore, per poter visualizzare sullo schermo quanto elaborato con opengl, necessita
DettagliGrafica 3D Interattiva
Informatica Grafica ][ Marco Gribaudo marcog@di.unito.it Grafica 3D Interattiva sono una libreria di funzioni a basso livello per facilitare la scrittura di videogiochi e di applicazioni multimediali.
DettagliInformatica Grafica. (III anno Laurea Triennale e I anno Laurea Magistrale del Corso di Laurea in Informatica) Donato D Ambrosio
Informatica Grafica (III anno Laurea Triennale e I anno Laurea Magistrale del Corso di Laurea in Informatica) Donato D Ambrosio Dipartimento di Matematica e Centro d Eccellenza per il Calcolo ad Alte Prestazioni
DettagliGuida all utilizzo del compilatore lcc-win32 per creare una applicazione console
Guida all utilizzo del compilatore lcc-win32 per creare una applicazione console Il compilatore per i linguaggi c e c++ chiamato lcc-win32 è un prodotto gratuito scaricabile dal sito http://www.cs.virginia.edu/~lcc-win32/
DettagliCorso di INFORMATICA GRAFICA. Modulo 2 (CAD) Stefano Cinti Luciani. Introduzione ad AutoCAD
Corso di INFORMATICA GRAFICA Modulo 2 (CAD) Stefano Cinti Luciani Introduzione ad AutoCAD Autodesk AutoCAD COS È AUTOCAD? Autodesk AutoCAD è un pacchetto software per la costruzione e modifica di disegni
DettagliOpenGL effects. Texture Mapping. La fase di texture mapping serve a conferire maggiore realismo agli oggetti della scena 3D.
Texture Mappin La fase di texture mappin serve a conferire maiore realismo ali oetti della scena 3D. Richiede molte risorse di calcolo specie se il modello eometrico è particolarmente complesso. ampi di
DettagliLe ombre in OpenGl. Daniele Varin LS Ing. Informatica Corso di Elementi di Grafica Digitale http://varindaniele.altervista.org
Le ombre in OpenGl Daniele Varin LS Ing. Informatica Corso di Elementi di Grafica Digitale http://varindaniele.altervista.org Punto di partenza In OpenGl le luci non proiettano ombre 2 Perché si introducono
DettagliIl compilatore Dev-C++
Il compilatore Dev-C++ A cura del dott. Marco Cesati 1 Il compilatore Dev-C++ Compilatore per Windows: http://www.bloodshed.net/devcpp.html Installazione Configurazione Utilizzazione 2 1 Requisiti di sistema
DettagliSOMMARIO. Introduzione - OpenInventor. Introduzione - OpenInventor. OpenInventor
OpenInventor SOMMARIO (riferimento: J. Wernecke, The Inventor Mentor Ed.: Addison-Wesley) Scene database e i scene graph Nodi Coin3D (riferimento: www.coin3d.org) Esempi Introduzione - OpenInventor OpenInventor
DettagliBMSO1001. Orchestrator. Istruzioni d uso 02/10-01 PC
BMSO1001 Orchestrator Istruzioni d uso 02/10-01 PC 2 Orchestrator Istruzioni d uso Indice 1. Requisiti Hardware e Software 4 1.1 Requisiti Hardware 4 1.2 Requisiti Software 4 2. Concetti fondamentali 4
DettagliIntroduzione. Costruzione di Interfacce Primi passi in OpenGL. Sierpinski Gasket. Sierpinski gasket. Event driven programming. Stuttura del programma
Introduzione Costruzione di Interfacce Primi passi in OpenGL cignoni@iei.pi.cnr.it http://vcg.iei.pi.cnr.it/~cignoni Abbiamo visto Cosa significa rendering L approccio object viewer Mettiamo in pratica
DettagliIntroduzione. Costruzione di Interfacce Primi passi in OpenGL. Sierpinski Gasket. Sierpinski gasket. Event driven programming. Stuttura del programma
Introduzione Costruzione di Interfacce Primi passi in OpenGL cignoni@iei.pi.cnr.it http://vcg.iei.pi.cnr.it/~cignoni Abbiamo visto Cosa significa rendering L approccio object viewer Mettiamo in pratica
DettagliANALISI E SVILUPPO DI SHADER GRAFICI IN LINGUAGGIO GLSL ANALYSIS AND DEVELOPMENT OF GRAPHICS SHADERS USING GLSL
UNIVERSITÀ DEGLI STUDI DI PARMA FACOLTÀ DI INGEGNERIA Corso di Laurea in Ingegneria Informatica ANALISI E SVILUPPO DI SHADER GRAFICI IN LINGUAGGIO GLSL ANALYSIS AND DEVELOPMENT OF GRAPHICS SHADERS USING
DettagliIL SISTEMA OPERATIVO IL SISTEMA OPERATIVO INTERFACCE TESTUALI INTERFACCE TESTUALI FUNZIONI DEL SISTEMA OPERATIVO INTERFACCE GRAFICHE
IL SISTEMA OPERATIVO Insieme di programmi che opera al di sopra della macchina fisica, mascherandone le caratteristiche e fornendo agli utenti funzionalità di alto livello. PROGRAMMI UTENTE INTERPRETE
DettagliComputer Graphics. Immagine sul Raster Display. Grafica 3D: analogia con fotocamera. La matrice di Pixel è memorizzata nel FRAME BUFFER
Computer Graphics Immagine sul Raster Display Il RASTER è costituito da più SCAN LINES Ogni Scan Line è formata da più PIXEL La matrice di Pixel è memorizzata nel FRAME BUFFER Grafica 3D: analogia con
DettagliComputer Graphics. Realtà Virtuale: il presente, il passato, 3D il Graphics futuro
Computer Graphics Immagine sul Raster Display Il RASTER è costituito da più SCAN LINES Ogni Scan Line è formata da più PIXEL La matrice di Pixel è memorizzata nel FRAME BUFFER Un unico frame buffer porterebbe
DettagliEXCEL PER WINDOWS95. sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area di lavoro, detta foglio di lavoro,
EXCEL PER WINDOWS95 1.Introduzione ai fogli elettronici I fogli elettronici sono delle applicazioni che permettono di sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area
DettagliAllocazione dinamica della memoria - riepilogo
Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica In breve Storage duration Allocazione dinamica della
DettagliBDX 3D-EDITOR (autore: Marco Bedulli) Scopo del software. Caratteristiche fondamentali. Linguaggi utilizzati. Navigazione 3D
BDX 3D-EDITOR (autore: Marco Bedulli) Scopo del software BDX 3D Editor è un programma che permette di navigare ed editare texture in un qualsiasi modello 3D.E compatibile con i software in grado di esportare
DettagliPer chi ha la Virtual Machine: avviare Grass da terminale, andando su Applicazioni Accessori Terminale e scrivere grass
0_Iniziare con GRASS Avvio di Grass e creazione della cartella del Database di GRASS Per chi ha la Virtual Machine: avviare Grass da terminale, andando su Applicazioni Accessori Terminale e scrivere grass
DettagliWebGL. Lezione 18: 15 Maggio 2014
WebGL Lezione 18: 15 Maggio 2014 Cronologia: Grafica 3D nell Hardware In principio (giurassico informatico) postazioni specializzate La Silicon Graphics si afferma come produttrice di workstation grafiche
DettagliFondamenti di Grafica Tridimensionale
Fondamenti di Grafica Tridimensionale La Pipeline Grafica Marco Di Benedetto marco.dibenedetto@isti.cnr.it Visualizzazione dell Informazione noi siamo qui Informazione mondo reale (es: 3D scans) creazione
DettagliGrafica al calcolatore - Computer Graphics
Grafica al calcolatore - Computer Graphics 8 Pipeline di rasterizzazione - 2 12/12/14 Grafica 2014 1 Riepilogo Operazioni geometriche Pixel processing 12/12/14 Grafica 2014 2 Rasterizzazione/scan connversion
DettagliComputer Graphics. La disciplina fornisce metodi per creare elaborare memorizzare visualizzare. immagini di oggetti o scene mediante un computer
Computer Graphics La disciplina fornisce metodi per creare elaborare memorizzare visualizzare immagini di oggetti o scene mediante un computer Image Processing La disciplina fornisce metodi per acquisire
DettagliLibrerie. Laboratorio di Informatica Antonio Monteleone 28
Librerie Una libreria è una collezione di funzioni (classi, variabili) usata per sviluppare applicazioni. Le funzioni (classi, variabili) contenute in una libreria si dicono da questa esportate. L'uso
DettagliIntroduzione a Dev-C++
Introduzione a Dev-C++ Università degli Studi di Brescia Docente: Massimiliano Giacomin Elementi di Informatica e Programmazione Università di Brescia 1 Note: Dev-C++ richiede Windows 95/98/NT/2000/XP
DettagliUNIVERSITÀ DEGLI STUDI DI SIENA
UNIVERSITÀ DEGLI STUDI DI SIENA FACOLTÀ DI INGEGNERIA Corso di Laurea Specialistica in Ingegneria Informatica, orientamento Robotica ed Automazione Tesi di Laurea Interazione Visuo-Aptica con Oggetti Deformabili
DettagliPresentation Draw. Guida dell utilizzatore
Presentation Draw I Guida dell utilizzatore Conservare l intera documentazione dell utente a portata di mano per riferimenti futuri. Il termine puntatore in questo manuale si riferisce al puntatore interattivo
DettagliManuale di utilizzo del sito ASUWEB
Manuale di utilizzo del sito ASUWEB Versione 1.0 maggio 2007 1. Introduzione:... 3 2. Come registrarsi:... 3 3. I diversi livelli di abilitazione degli utenti:... 5 4. UTENTI IN SOLA LETTURA... 5 4.1.
DettagliIRSplit. Istruzioni d uso 07/10-01 PC
3456 IRSplit Istruzioni d uso 07/10-01 PC 2 IRSplit Istruzioni d uso Indice 1. Requisiti Hardware e Software 4 1.1 Requisiti Hardware 4 1.2 Requisiti Software 4 2. Installazione 4 3. Concetti fondamentali
DettagliGrafica Computerizzata
Grafica Computerizzata dott. Giancarlo Amati gamati@libero.it wxveuca@tin.it 1 Programma del Corso Lo scopo del corso è quello di dare le conoscenze di base della modellazione geometrica 2D e 3D tramite
DettagliIl controllo della visualizzazione
Capitolo 3 Il controllo della visualizzazione Per disegnare in modo preciso è necessario regolare continuamente l inquadratura in modo da vedere la parte di disegno che interessa. Saper utilizzare gli
DettagliLinguaggio C. Fondamenti. Struttura di un programma.
Linguaggio C Fondamenti. Struttura di un programma. 1 La storia del Linguaggio C La nascita del linguaggio C fu dovuta all esigenza di disporre di un Linguaggio ad alto livello adatto alla realizzazione
DettagliProcesso di rendering
Processo di rendering Trasformazioni di vista Trasformazioni di vista Il processo di visione in tre dimensioni Le trasformazioni di proiezione 2 Rendering nello spazio 2D Il processo di rendering (visualizzazione)
DettagliManuale per l utilizzo dell applicazione Client per il controllo remoto di apparecchiature da laboratorio
Manuale per l utilizzo dell applicazione Client per il controllo remoto di apparecchiature da laboratorio Dopo il collegamento alla Home Page del laboratorio di teledidattica è possibile scaricare il file
DettagliIntroduzione alla GPGPU Corso di sviluppo Nvidia CUDATM. Davide Barbieri
Introduzione alla GPGPU Corso di sviluppo Nvidia CUDATM Davide Barbieri Contatti skype: davbar86 mail: davide.barbieri@ghostshark.it Panoramica corso Introduzione al mondo delle GPU Modello GPGPU Nvidia
DettagliBMSO1001. Virtual Configurator. Istruzioni d uso 02/10-01 PC
BMSO1001 Virtual Configurator Istruzioni d uso 02/10-01 PC 2 Virtual Configurator Istruzioni d uso Indice 1. Requisiti Hardware e Software 4 1.1 Requisiti Hardware 4 1.2 Requisiti Software 4 2. Concetti
DettagliGestione Risorse Umane Web
La gestione delle risorse umane Gestione Risorse Umane Web Generazione attestati di partecipazione ai corsi di formazione (Versione V03) Premessa... 2 Configurazione del sistema... 3 Estrattore dati...
DettagliGuida introduttiva alle librerie grafiche GTK+
Guida introduttiva alle librerie grafiche GTK+ Breve introduzione Sara Casti - Gianmarco Cherchi - Davide Gessa GTK (GimpToolKit) è un insieme di strumenti per la creazione di interfacce grafiche inizialmente
DettagliLaboratorio di Programmazione 1. Docente: dr. Damiano Macedonio Lezione 18 31/03/2014
Laboratorio di Programmazione 1 1 Docente: dr. Damiano Macedonio Lezione 18 31/03/2014 Funzioni: Dichiarazione e Definizione La dichiarazione di una funzione serve a comunicare al compilatore quali sono
DettagliFondamenti di Informatica e Laboratorio T-AB T-16 Progetti su più file. Funzioni come parametro. Parametri del main
Fondamenti di Informatica e Laboratorio T-AB T-16 Progetti su più file. Funzioni come parametro. Parametri del main Paolo Torroni Dipartimento di Elettronica, Informatica e Sistemistica Università degli
DettagliFunzioni in C. Violetta Lonati
Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica Funzioni - in breve: Funzioni Definizione di funzioni
DettagliCapitolo V : Il colore nelle immagini digitali
Capitolo V : Il colore nelle immagini digitali Lavorare con il colore nelle immagini digitali L uso dei colori nella visione computerizzata e nella computer grafica implica l incorrere in determinate problematiche
DettagliPG5 Starter Training PG5 Core e WebEditor 8 Daniel Ernst EN02 2013-03-14 Stefano Peracchi IT01 2013-05-15
PG5 Starter Training PG5 Core e WebEditor 8 Daniel Ernst EN02 2013-03-14 Stefano Peracchi IT01 2013-05-15 Introduzione Materiale richiesto: Notebook o computer PCD1 E-Controller Cavo USB Scheda «Training»
DettagliCos'é Code::Blocks? Come Creare un progetto Come eseguire un programma Risoluzione problemi istallazione Code::Blocks Che cos è il Debug e come si usa
di Ilaria Lorenzo e Alessandra Palma Cos'é Code::Blocks? Come Creare un progetto Come eseguire un programma Risoluzione problemi istallazione Code::Blocks Che cos è il Debug e come si usa Code::Blocks
DettagliLibreria grafica: OpenGL. Come realizzare semplici simulazioni video in C con OpenGL
Libreria grafica: OpenGL Come realizzare semplici simulazioni video in C con OpenGL 1 Simulazione video Una simulazione è un modello della realtà che consente di valutare e prevedere lo svolgersi dinamico
DettagliRegistratori di Cassa
modulo Registratori di Cassa Interfacciamento con Registratore di Cassa RCH Nucleo@light GDO BREVE GUIDA ( su logiche di funzionamento e modalità d uso ) www.impresa24.ilsole24ore.com 1 Sommario Introduzione...
DettagliIntroduzione a GCC: GNU Compiler Collection
Introduzione a GCC: GNU Compiler Collection Caratteristiche di GCC Compilatore multipiattaforma modulare Disponibile per tutti i principali sistemi operativi Può produrre programmi per la maggior parte
Dettagli3DSMAX 6. Una panoramica su l interfaccia e gli strumenti a disposizione
3DSMAX 6 Una panoramica su l interfaccia e gli strumenti a disposizione Vediamo di capire l interfaccia e i comandi base con i quali iniziare a lavorare con MAX, con le prossime guide affronteremo la modellazione
DettagliConsiglio regionale della Toscana. Regole per il corretto funzionamento della posta elettronica
Consiglio regionale della Toscana Regole per il corretto funzionamento della posta elettronica A cura dell Ufficio Informatica Maggio 2006 Indice 1. Regole di utilizzo della posta elettronica... 3 2. Controllo
DettagliIntroduzione al Linguaggio C
Introduzione al Linguaggio C File I/O Daniele Pighin April 2009 Daniele Pighin Introduzione al Linguaggio C 1/15 Outline File e dati Accesso ai file File I/O Daniele Pighin Introduzione al Linguaggio C
DettagliTRASMISSIONE RAPPORTO ARBITRALE IN FORMATO PDF
TRASMISSIONE RAPPORTO ARBITRALE IN FORMATO PDF Come da disposizioni di inizio stagione, alcune Delegazioni provinciali hanno richiesto la trasmissione dei referti arbitrali solo tramite fax o tramite mail.
DettagliPer scrivere una procedura che non deve restituire nessun valore e deve solo contenere le informazioni per le modalità delle porte e controlli
CODICE Le fonti in cui si possono trovare tutorial o esempi di progetti utilizzati con Arduino si trovano nel sito ufficiale di Arduino, oppure nei forum di domotica e robotica. Il codice utilizzato per
DettagliCapitolo 11 -- Silberschatz
Implementazione del File System Capitolo 11 -- Silberschatz Implementazione del File System File system: Definizione dell aspetto del sistema agli occhi dell utente Algoritmi e strutture dati che permettono
DettagliDeltaLog5 - ShortForm Introduzione
DeltaLog5 - ShortForm Introduzione Il programma DeltaLog5 permette di gestire dal proprio PC il fonometro HD2110 in modo semplice e intuitivo: è possibile avviare ed arrestare la memorizzazione, impostare
DettagliALL FOR SCAN Versione Twain Manuale Utente. Versione 2.0A00. Luccarelli Srl
ALL FOR SCAN Versione Twain Manuale Utente Versione 2.0A00 1. Cos è ALL FOR SCAN All For Scan è un software per l archiviazione ottica dei documenti, per scanner che usano le interfaccie Kofax o Twain.
DettagliSTRUMENTI DI PRESENTAZIONE MODULO 6
STRUMENTI DI PRESENTAZIONE MODULO 6 2012 A COSA SERVE POWER POINT? IL PROGRAMMA NASCE PER LA CREAZIONE DI PRESENTAZIONI BASATE SU DIAPOSITIVE (O LUCIDI) O MEGLIO PER PRESENTARE INFORMAZIONI IN MODO EFFICACE
DettagliCAD 2D/3D E RENDERING
FFA CAD 2D/3D E RENDERING OBIETTIVI Il corso si propone di fornire agli allievi le abilità pratiche necessarie per una corretta formazione relativa all uso professionale di AUTOCAD 2D, 3D e RENDERING con
DettagliMini Guida per Apple XCode. Maurizio Martinelli
Mini Guida per Apple XCode Maurizio Martinelli XCode? Piattaforma ufficiale di Apple per lo sviluppo di programmi in C, C++, Cocoa Si può ottenere gratuitamente da http://developer.apple.com/technologies/xcode.html
DettagliInstallazione e caratteristiche generali 1
Installazione e caratteristiche generali 1 Introduzione SIGLA Ultimate e SIGLA Start Edition possono essere utilizzati solo se sono soddisfatti i seguenti prerequisiti: Microsoft.Net Framework 3.5 (consigliato
DettagliArcView 8.3 2- strumenti di editing
ArcView 8.3 2- strumenti di editing Marco Negretti Politecnico di Milano Polo Regionale di Como e-mail: marco@geomatica.como.polimi.it http://geomatica.como.polimi.it - tel +39.031.332.7524 22/10/04 -
DettagliRaffaello. Licenza e requisiti. Trattamento dei dati personali. Installazione
Raffaello Licenza e requisiti Raffaello (in seguito "software") è un software libero rilasciato in licenza GPL versione 3. Il software richiede la presenza nel computer del Microsoft.NET Framework 2.0
DettagliIl web server Apache Lezione n. 3. Introduzione
Procurarsi ed installare il web server Apache Introduzione In questa lezione cominciamo a fare un po di pratica facendo una serie di operazioni preliminari, necessarie per iniziare a lavorare. In particolar
DettagliStrutture. Strutture e Unioni. Definizione di strutture (2) Definizione di strutture (1)
Strutture Strutture e Unioni DD cap.10 pp.379-391, 405-406 KP cap. 9 pp.361-379 Strutture Collezioni di variabili correlate (aggregati) sotto un unico nome Possono contenere variabili con diversi nomi
Dettagli3.2. Passo 2: Navigazione per individuare l articolo richiesto
1. Tec-Service CAD Häfele Tec-Service CAD è una banca dati di articoli Häfele, dalla quale scaricare disegni e modelli da trasferire nei propri software CAD, ad es. AutoCAD. Tec-Service CAD permette di
DettagliSetup e installazione
Setup e installazione 2 Prima di muovere i primi passi con Blender e avventurarci nel vasto mondo della computer grafica, dobbiamo assicurarci di disporre di due cose: un computer e Blender. 6 Capitolo
DettagliTachyCAD 8.0 Anno 2010
TachyCAD 8.0 Anno 2010 TachyCAD 8.0 contiene molte nuove novità! Le più importanti sono: Nuova struttura del software: nuove soluzioni verticali al posto dell estensione modulare Compatibilità con AutoCAD
DettagliINTERAZIONE CON L UTENTEL
IL SISTEMA OPERATIVO Insieme di programmi che opera al di sopra della macchina fisica, mascherandone le caratteristiche e fornendo agli utenti funzionalità di alto livello. PROGRAMMI UTENTE INTERPRETE
DettagliGrafica al calcolatore - Computer Graphics
Grafica al calcolatore - Computer Graphics 7 Pipeline di rasterizzazione 23/11/13 Grafica 2013 1 Rasterization pipeline Sappiamo implementare ray casting (o ray tracing). Abbiamo tuttavia già visto che
DettagliCapitolo 11. Il disegno in 3D
Capitolo 11 Il disegno in 3D o 11.1 Uso delle coordinate nello spazio o 11.2 Creazione di oggetti in 3D o 11.3 Uso dei piani di disegno in 3D (UCS) o 11.4 Creazione delle finestre di vista o 11.5 Definizione
DettagliAlgebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica
Fondamenti di Informatica Algebra di Boole: Concetti di base Fondamenti di Informatica - D. Talia - UNICAL 1 Algebra di Boole E un algebra basata su tre operazioni logiche OR AND NOT Ed operandi che possono
Dettagli2015 PERIODO D IMPOSTA
Manuale operativo per l installazione dell aggiornamento e per la compilazione della Certificazione Unica 2015 PERIODO D IMPOSTA 2014 società del gruppo Collegarsi al sito www.bitsrl.com 1. Cliccare sul
DettagliUniversità degli Studi di Catania Corso di Laurea Magistrale in Informatica Multimedia 2013/14. Cantarella Danilo. OpenCV Android
Università degli Studi di Catania Corso di Laurea Magistrale in Informatica Multimedia 2013/14 Cantarella Danilo Introduzione OpenCV (Open Source Computer Vision Library) è una libreria disponibile per
DettagliSistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. D. Talia - UNICAL. Sistemi Operativi 9.1
IMPLEMENTAZIONE DEL FILE SYSTEM 9.1 Implementazione del File System Struttura del File System Implementazione Implementazione delle Directory Metodi di Allocazione Gestione dello spazio libero Efficienza
DettagliGrafica Real-Time, Hardware Grafico e Linguaggi di Shading. Alessandro Martinelli
Grafica Real-Time, Hardware Grafico e Linguaggi di Shading Alessandro Martinelli Grafica Real Time Il concetto di 'Real Time' in ambito grafico ha una valenza molto particolare: Fino agli anni '80, solo
DettagliLaboratorio Informatico di base A.A. 2013/2014 Dipartimento di Scienze Aziendali e Giuridiche Università della Calabria Dott.
Strumenti di presentazione (Microsoft PowerPoint) Laboratorio Informatico di base A.A. 2013/2014 Dipartimento di Scienze Aziendali e Giuridiche Università della Calabria Dott. Pierluigi Muoio (pierluigi.muoio@unical.it)
DettagliEsame di Informatica CHE COS È UN FOGLIO ELETTRONICO CHE COS È UN FOGLIO ELETTRONICO CHE COS È UN FOGLIO ELETTRONICO. Facoltà di Scienze Motorie
Facoltà di Scienze Motorie CHE COS È UN FOGLIO ELETTRONICO Una tabella che contiene parole e numeri che possono essere elaborati applicando formule matematiche e funzioni statistiche. Esame di Informatica
DettagliFratini Service di G. Fratini
Pag. 1 di 7 Questo è una breve guida su come creare un proprio applicativo che utilizzi l OCX Prgfm1985ELA E un progetto in Visual Basic 6.0, per cui è destinato ai programmatori che utilizzano tale ambiente
DettagliFondamenti di Informatica T-1 CdS Ingegneria Informatica a.a. 2011/2012. Introduzione a Visual Studio 2005/2008/2010
Fondamenti di Informatica T-1 CdS Ingegneria Informatica a.a. 2011/2012 Introduzione a Visual Studio 2005/2008/2010 1 Outline Solution e Project Visual Studio e linguaggio C Visual Studio schermata principale
DettagliTale attività non è descritta in questa dispensa
Fondamenti di informatica Oggetti e Java ottobre 2014 1 Nota preliminare L installazione e l uso di Eclipse richiede di aver preliminarmente installato Java SE SDK Tale attività non è descritta in questa
Dettagli