Le mappe normali e di altezza

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Le mappe normali e di altezza"

Transcript

1 Informatica Grafica ][ Le mappe normali e di altezza Abbiamo visto come realizzare personaggi ed ambienti virtuali. I mondi visti fino ad adesso erano pero' "piatti": la terza dimensione non era un elemento fondamentale del terreno di movimento. Inoltre, non vi era nessun controllo per impedire l'attraversamento di muri o pareti. Marco Gribaudo marcog@di.unito.it Esistono numerose tecniche per effettuare tali controlli. Alcune sono basate su complessi calcoli matematici sulle geometrie, altre invece sfruttano particolari dati prodotti dagli strumenti con cui sono creati gli scenari. Le tecniche basate su calcoli matemaci sulle geometrie degli oggetti sono le piu' precise. Sono pero' anche le piu' difficili da implementare e quelle meno efficienti da effettuare in tempo reale. Le tecniche basate su dati ausiliari invece, forniscono solamente delle approssimazioni alla soluzione del problema. Sono pero' decisamente piu' facili da implementare, e molto piu' veloci da caloclare. Per contro, richiedo uno sforzo ulteriore nel configurare gli strumenti di authoring 3D per produrre i dati necessari all'approssimazione. In questo corso vedremo una tecnica basata su dati ausiliari chiamati. Questa tecnica, oltre ad essere abbastanza semplice da implementare, permette di vedere alcune metodologie utilizzate comunqmente nella nella realizzazione di applicazioni real-time

2 Una e' una immagine Bitmap i cui colori dei pixel rappresentano la distanza dei punti del terreno dal piano orizzontale. La difficolta' maggiore nell'utilizzo delle mappe di altezza sta nella precisione con cui i colori vengono definiti in una immagine bitmap. Un formato standard infatti, ammette solamente 256 livelli di rosso, 256 livelli di verde e 256 livelli di blu. Per risolvere questo problema, si inizia a stabilire quale sia la "gamma" di altezze presenti nella scena tridimensionale. Quindi si cerca di sfruttare al meglio tutte le combinazioni di colore possibile. Si inizia a calcolare quali siano gli estremi minimi e massimi lungo i tre assi x, y e z. I quattro angoli della texture corrisponderanno alle coordinate minime e massime lungo gli assi x e z. Consideriamo solo il canale rosso. Associamo il nero alla coordinata y di valore minimo, ed il rosso piu' intenso a quella di valore massimo.

3 I punti a parita' di livello di rosso, saranno contraddistinti dal livello del colore verde: l'intensita' di tale colore sara' superiore per i punti con una coordinata y maggiore. Infine, per i punti aventi gli stessi valori di verde e rosso, il colore blu discriminera' quelli piu' in alto. In questo modo, il punto con coordinata y minima sara' di colore nero, mentre quello di coordinata massima bianco. Inoltre, l'intera gamma delle altezze differenti sara' suddivisa in piu' di 16 milioni di possibili livelli, garantendo quindi una precisione piu' che adeguata per la maggior parte degli scopi. In Maya, un mappa di altezza puo' essere generata creando un particolare shader che assegna un colore differente in base all'altezza dei punti renderizzati ed una cinepresa ortografica che riprende "dall'alto" l'intera scena, posizionandosi esttamente sopra di essa.

4 L'intero processo di creazione degli shader, assegnazione dei materiali, creazione della cinpresa e rendering puo' essere automatizzato attraverso uno script M E L. Esso si puo' anche occupare di calcolare gli estremi inferiori e superiori lungo i tre assi coordinati. Normal Map In modo analogo alle, si possono creare le M a p p e d e l l e n o r m a l i (N o r m a l M a p). Esse non codificano l'altezza di un punto dal piano orizzontale, ma la direzione della normale alla superfice in quel punto. Normal Map Per le Normal Map, i tre colori primari (r, g, b) rappresentano la componente del vettore normale lungo i tre assi cartesiani (x, y, z). Normal Map Per le Normal Map non occorre la stessa precisione necessaria per le mappe di altezza. Ogni colore quindi codifica una componente del vettore, sfruttando solamente 8 bit (quindi 256 valori differenti). Normal Map Le normali possono servire per orientare un oggetto in modo che si adagi perfettamente sul terreno. Normal Map Anche se in questo corso non lo vedremo, le Normal Map vengono anche utilizzate come particolari strumenti per aumentare i dettagli di oggetti definiti da pochi triangoli.

5 Una mappa di altezza risulta utilizzabalie solamente se corredata dalla informazioni che permettano di decodificarla. Le prime righe indicheranno la risoluzione della mappa. Queste informazioni sono: la risoluzione della mappa, gli estremi inferiori e superiori dei tre assi cartesiani. Utilizzeremo quindi un nuovo tipo di file per memorizzare queste informazioni. Quindi seguiranno i limiti inferioiri lungo le coordinate x,y e z, e dunque i limiti superiori lungo le medesime coordinate. Infine ci sranno i nomi dei file contenti la mappa di altezza e quella delle normali Quindi creeremo un nuovo tipo dato per memorizzare le All'inizio del codice dovremo inserire un particolare informazioni di decodifica delle mappe. comando per poter leggere i colori presenti in una bitmap. Tipo di dati per il terreno Private Type Terrain ' Funzione di accesso alla memoria per poter leggere i pixel Private Declare Sub CopyMemoryRead Lib "kernel32" Alias _ "RtlMoveMemory" (Destination As Any, _ ByVal Source As Long, ByVal Length As Long) TexW As Integer ' Dimensione mappa TexH As Integer xmin As Single ' Grandezza mappa ymin As Single zmin As Single xmax As Single ymax As Single zmax As Single YTexName As String ' Mappa delle altezze YTex As Direct3DTexture8 NTexName As String ' Mappa delle normali NTex As Direct3DTexture8 Type

6 Le Bitmap verranno caricate come se fossero delle Texture, ma non verranno mai visualizzate direttamente. Aggiungeremo all'inizio una nuova variabile per contenere le definizioni del terreno. Inseriamo quindi il codice per il caricamento effettivo della mappa e delle informazioni necessarie alla sua decodifica. Private Function LoadTerrain(FileName As String) As Terrain With LoadTerrain Open FileName For Input As #1 Input #1,.TexW ' Carica i dati Input #1,.TexH Input #1,.xMin Input #1,.yMin Input #1,.zMin Input #1,.xMax Input #1,.yMax Input #1,.zMax Input #1,.YTexName Input #1,.NTexName Close #1 ' Carica la texture Set.YTex = D3DX.CreateTextureFromFileEx(D3DDevice, _.YTexName, D3DX_DEFAULT, D3DX_DEFAULT, _ 1, 0, D3DFMT_UNKNOWN, _ D3DPOOL_MANAGED, D3DX_FILTER_POINT, _ D3DX_FILTER_POINT, &HFF000000, _ ByVal 0, ByVal 0) Set.NTex = D3DX.CreateTextureFromFileEx(D3DDevice, _.NTexName, D3DX_DEFAULT, D3DX_DEFAULT, _ 1, 0, D3DFMT_UNKNOWN, _ D3DPOOL_MANAGED, D3DX_FILTER_POINT, _ D3DX_FILTER_POINT, &HFF000000, _ ByVal 0, ByVal 0) With Function Essa carica semplicemente i campi della struttura dati con i valori contenuti nel file... E poi le mappe vere proprie nelle texture.

7 Inseriamo poi la procedura per il calcolo dell'altezza in base alla mappa. Private Function GetTerrainY(T As Terrain, _ ByVal x As Single, ByVal z As Single) Dim YDef As D3DLOCKED_RECT Dim Pix00 As Long Dim Pix01 As Long Dim Pix10 As Long Dim Pix11 As Long Dim Y00 As Single Dim Y01 As Single Dim Y10 As Single Dim Y11 As Single Dim px As Long Dim pz As Long Dim ax As Single Dim az As Single ax = (x - T.xMin) / (T.xMax - T.xMin) * T.TexW az = (z - T.zMin) / (T.zMax - T.zMin) * T.TexH px = Int(ax) pz = Int(az) ax = ax - px az = az - pz (px >= 0 And px < T.TexW And pz >= 0 And pz < T.TexH) Then T.YTex.LockRect 0, YDef, ByVal 0, D3DLOCK_READONLY CopyMemoryRead Pix00, YDef.pBits + (pz * YDef.Pitch + px * 4), 4 CopyMemoryRead Pix01, YDef.pBits + (pz * YDef.Pitch + px * 4 + 4), 4 CopyMemoryRead Pix10, YDef.pBits + ((pz + 1) * YDef.Pitch + px * 4), 4 CopyMemoryRead Pix11, YDef.pBits + ((pz + 1) * YDef.Pitch + px * 4 + 4), 4 T.YTex.UnlockRect 0 Y00 = (Pix00 And &HFFFFFF) / (&HFFFFFF) Y01 = (Pix01 And &HFFFFFF) / (&HFFFFFF) Y10 = (Pix10 And &HFFFFFF) / (&HFFFFFF) Y11 = (Pix11 And &HFFFFFF) / (&HFFFFFF) Y00 = T.yMin + Y00 * (T.yMax - T.yMin) Y01 = T.yMin + Y01 * (T.yMax - T.yMin) Y10 = T.yMin + Y10 * (T.yMax - T.yMin) Y11 = T.yMin + Y11 * (T.yMax - T.yMin) GetTerrainY = (1 - az) * (Y00 * (1 - ax) + Y01 * (ax)) + _ (az) * (Y10 * (1 - ax) + Y11 * (ax)) Else GetTerrainY = 0 Function Essa prende in input le coordinate x e z del punto, e restituisce la coordinata y del terreno in quel punto. Per effettuare tale calcolo, usa diversi artifici quali ad esempio l'interpolazione dei valori specificati da piu' pixel vicini alla posizione richiesta. Inseriamo il comando per leggere la mappa nella fase di inizializzazione dell'applicazione.

8 Modifichiamo infine il codice che aggiorna la posizione dell'oggetto in corrispondenza del timer, in modo che utilizzi il valore ritornato dalla mappa per stabilire l'altezza dell'oggetto. Identificare i muri Oltre che per stabilire l'altezza del terreno, le mappe di altezza possono anche essere usate per definire i muri e gli ostacoli che possono impedire l'avanzamento di un oggetto. Se infatti l'altezza della posizione che deve essere raggiunta e' troppo superiore a quella attuale, allora si puo' supporre che vi sia un ostacolo che non puo' essere superato. Private Sub Timer1_Timer() Dim AutoTn As Integer Dim RuotaTn As Integer AutoTn = FindTn("Palla") Dim NewX As Single Dim NewY As Single Dim NewZ As Single Identificare i muri Per utilizzare le mappe di altezza per identificare gli ostacoli e' suffiente cambiare il codice presente nel timer in questo modo: NewX = TrnNds(AutoTn).tX + VelAuto * Sin(DirAuto * / 180) NewZ = TrnNds(AutoTn).tZ + VelAuto * Cos(DirAuto * / 180) NewY = GetTerrainY(Terr, NewX, NewZ) NewY > TrnNds(AutoTn).tY Then VelAuto = 0 Else TrnNds(AutoTn).tX = NewX TrnNds(AutoTn).tY = NewY TrnNds(AutoTn).tZ = NewZ TrnNds(AutoTn).rY = DirAuto CamTx = TrnNds(AutoTn).tX CamTy = TrnNds(AutoTn).tY CamTz = TrnNds(AutoTn).tZ CamPx = CamPx * * (TrnNds(AutoTn).tX * Sin(DirAuto * / 180)) CamPy = TrnNds(AutoTn).tY CamPz = CamPz * * (TrnNds(AutoTn).tZ * Cos(DirAuto * / 180)) Rot = Rot + VelAuto * 500 Rot >= 360 Then Rot = Rot RuotaTn = FindTn("PallaRoll") TrnNds(RuotaTn).rX = Rot Sub Identificare i muri La nuova posizione viene memorizzata in una variabile, invece che direttamente nelle trasformazioni del TN. Identificare i muri Se l'altezza alla nuova posizione e' troppo superiore a quella attuale, si ferma l'oggetto e non si aggiornano le posizioni.

9 Identificare i muri Altrimenti si aggiornano le posizioni dell'oggetto con quelle appena calcolate. Le pendenze Se il terreno non solo presenta divese altezze, ma anche delle pendenze, e l'oggetto che si muove ha una forma "piatta", allora occorre ruotarlo in modo che sia sempre "attaccato al terreno". In particolare occorre allineare la direzione verticale dell'oggetto alla normale del terreno. Le pendenze Allineando l'asse che indica la perpendicolare dell'oggetto alla normale, esso aderisce perfettamente al terreno. Le pendenze Le Normal Map ci forniscono il valore delle normali nei vari punti del terreno. Purtroppo i calcoli precisi per allineare l'oggetto alla normale del terreno sono molto complessi e richiedo strumenti matematici specifici. Presentiamo quindi una approssimazione di tale calcolo, che pur non essendo perfetta, da risultati tollerabili. Le pendenze In particolare aggiungamo la procedura che ricava le normali a partire dalla Bitamp. Questa procedura e' del tutto analoga a quella che ricava la coordinata y. Private Sub GetTerrainNormal(T As Terrain, x As Single, z As Single, _ nx As Single, ny As Single, nz As Single) Dim YDef As D3DLOCKED_RECT Dim Pix00 As Long Dim Pix01 As Long Dim Pix10 As Long Dim Pix11 As Long Dim Nx00, Ny00, Nz00 As Single Dim Nx01, Ny01, Nz01 As Single Dim Nx10, Ny10, Nz10 As Single Dim Nx11, Ny11, Nz11 As Single Dim px As Long Dim pz As Long Dim ax As Single Dim az As Single Dim norm As Single ax = (x - T.xMin) / (T.xMax - T.xMin) * T.TexW az = (z - T.zMin) / (T.zMax - T.zMin) * T.TexH px = Int(ax) pz = Int(az) ax = ax - px az = az - pz (px >= 0 And px < T.TexW And pz >= 0 And pz < T.TexH) Then T.NTex.LockRect 0, YDef, ByVal 0, D3DLOCK_READONLY CopyMemoryRead Pix00, YDef.pBits + (pz * YDef.Pitch + px * 4), 4 CopyMemoryRead Pix01, YDef.pBits + (pz * YDef.Pitch + px * 4 + 4), 4 CopyMemoryRead Pix10, YDef.pBits + ((pz + 1) * YDef.Pitch + px * 4), 4 CopyMemoryRead Pix11, YDef.pBits + ((pz + 1) * YDef.Pitch + px * 4 + 4), 4 T.NTex.UnlockRect 0 Nx00 = 2 * (Pix00 And &HFF0000) / (&HFF0000) - 1 Ny00 = 2 * ((Pix00 / 256) And &HFF) / (&HFF) - 1 Nz00 = 2 * (Pix00 And &HFF) / (&HFF) - 1 Nx01 = 2 * (Pix01 And &HFF0000) / (&HFF0000) - 1 Ny01 = 2 * ((Pix01 / 256) And &HFF) / (&HFF) - 1 Nz01 = 2 * (Pix01 And &HFF) / (&HFF) - 1 Nx10 = 2 * (Pix10 And &HFF0000) / (&HFF0000) - 1 Ny10 = 2 * ((Pix10 / 256) And &HFF) / (&HFF) - 1

10 Nz10 = 2 * (Pix10 And &HFF) / (&HFF) - 1 Nx11 = 2 * (Pix11 And &HFF0000) / (&HFF0000) - 1 Ny11 = 2 * ((Pix11 / 256) And &HFF) / (&HFF) - 1 Nz11 = 2 * (Pix11 And &HFF) / (&HFF) - 1 nx = (1 - az) * (Nx00 * (1 - ax) + Nx01 * (ax)) + _ (az) * (Nx10 * (1 - ax) + Nx11 * (ax)) nz = (1 - az) * (Ny00 * (1 - ax) + Ny01 * (ax)) + _ (az) * (Ny10 * (1 - ax) + Ny11 * (ax)) ny = (1 - az) * (Nz00 * (1 - ax) + Nz01 * (ax)) + _ (az) * (Nz10 * (1 - ax) + Nz11 * (ax)) norm = Sqr(nx * nx + ny * ny + nz * nz) nx = nx / norm: ny = ny / norm: nz = nz / norm Else nx = 0 ny = 1 nz = 0 Sub Private Sub Timer1_Timer() Dim AutoTn As Integer Dim AutoTn2 As Integer AutoTn = FindTn("Auto") AutoTn2 = FindTn("AutoRoll") Le pendenze Modifichiamo quindi la procedura richiamata allo scatto del timer, in modo che pieghi l'oggetto opportunamente. Dim NewX As Single Dim NewY As Single Dim NewZ As Single Dim nx As Single, ny As Single, nz As Single, vx As Single, vz As Single NewX = TrnNds(AutoTn).tX + VelAuto * Cos(DirAuto * / 180) NewZ = TrnNds(AutoTn).tZ - VelAuto * Sin(DirAuto * / 180) NewY = GetTerrainY(Terr, NewX, NewZ) NewY > TrnNds(AutoTn).tY Then VelAuto = 0 Else TrnNds(AutoTn).tX = NewX TrnNds(AutoTn).tY = NewY TrnNds(AutoTn).tZ = NewZ TrnNds(AutoTn).rY = DirAuto GetTerrainNormal Terr, NewX, NewY, nx, ny, nz vx = Cos((DirAuto - 90) * / 180) vz = -Sin((DirAuto - 90) * / 180) TrnNds(AutoTn2).rX = (Atn((vx * nx + vz * nz) / ny) / * 180) vx = Cos((DirAuto) * / 180) vz = -Sin((DirAuto) * / 180) TrnNds(AutoTn2).rZ = -(Atn((vx * nx + vz * nz) / ny) / * 180) CamPx = CamPx * * (TrnNds(AutoTn).tX _ * Cos(DirAuto * / 180)) CamPy = TrnNds(AutoTn).tY CamPz = CamPz * * (TrnNds(AutoTn).tZ _ * Sin(DirAuto * / 180)) Rot = Rot + VelAuto * 2000 Rot >= 360 Then Rot = Rot Sub CamTx = TrnNds(AutoTn).tX CamTy = TrnNds(AutoTn).tY CamTz = TrnNds(AutoTn).tZ

CODIFICA IMMAGINI IN BIANCO E NERO

CODIFICA IMMAGINI IN BIANCO E NERO Rappresentazione delle immagini Anche le immagini possono essere codificate mediante una sequenza di 0 e 1., questa operazione si chiama digitalizzazione. La prima cosa da fare è dividere l immagine in

Dettagli

Primitive 3D. Lo Z-Buffer. Informatica Grafica ][ Lo Z-Buffer. Lo Z-Buffer. Lo Z-Buffer. Lo Z-Buffer

Primitive 3D. Lo Z-Buffer. Informatica Grafica ][ Lo Z-Buffer. Lo Z-Buffer. Lo Z-Buffer. Lo Z-Buffer Informatica Grafica ][ Primitive 3D Fino ad ora abbiamo utilizzato solamente triangoli singoli. In questa lezione vedremo come disegnare primitive composte da piu' triangoli. Prima pero' dovremo attivare

Dettagli

Animazione con le DirectX

Animazione con le DirectX Informatica Grafica ][ Animazione con le DirectX Si e' visto come Maya codifichi al suo interno le animazioni, utilizzando chiavi ed interpolazioni. Si e' anche detto che replicare questo comportamento

Dettagli

Lezione 18: Tecniche ed effetti 3D. Il motion capture. Il motion capture. Il motion capture. Il motion capture. Il motion capture

Lezione 18: Tecniche ed effetti 3D. Il motion capture. Il motion capture. Il motion capture. Il motion capture. Il motion capture Il motion capture Lezione 18: Tecniche ed effetti 3D Le tecniche di animazione quali i collegamenti e le ossa facilitano la realizzazione di animazioni di oggetti complessi. Malgrado la loro potenzialita',

Dettagli

Montaggio e post-produzione

Montaggio e post-produzione Informatica Grafica I Montaggio e post-produzione Una volta creata un'animazione, occorre eseguirne il rendering per crearne un filmato. Il procedimento e' simile al rendering di immagini statiche, ma

Dettagli

Programma del corso. Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori

Programma del corso. Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori Programma del corso Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori Il concetto di FILE FILE: sequenza di byte conosciuta nel computer

Dettagli

Capitolo 10 - Strutture

Capitolo 10 - Strutture 1 Capitolo 10 - Strutture Strutture In molte situazioni, una variabile non è sufficiente per descrivere un oggetto. Ad esempio, una posizione sul piano cartesiano è identificata da due coordinate, e la

Dettagli

Formati e compressioni

Formati e compressioni Sistemi Multimediali Marco Gribaudo marcog@di.unito.it, gribaudo@elet.polimi.it Formati e compressioni Anche se in memoria le immagini vengono quasi sempre memorizzate come una sequenza di colori RGB,

Dettagli

La codifica delle immagini

La codifica delle immagini Lettere e numeri non costituiscono le uniche informazioni utilizzate dagli elaboratori ma si stanno diffondendo sempre di più applicazioni che utilizzano ed elaborano anche altri tipi di informazione:

Dettagli

Mesh e nodi di trasformazione

Mesh e nodi di trasformazione Informatica Grafica per le arti Mesh e nodi di trasformazione Come avevamo accennato in precedenza, tutti gli oggetti visualizzati in grafica 3D, si basano sulle posizioni dei loro vertici all'interno

Dettagli

Le problematiche della grafica tridimensionale

Le problematiche della grafica tridimensionale Architetture per la grafica 3D Le problematiche della grafica tridimensionale Marco Gribaudo marcog@di.unito.it Per riuscire a comprendere a pieno le motivazioni che hanno determinato le scelte effettuate

Dettagli

Rappresentazione dei numeri: il sistema di numerazione decimale

Rappresentazione dei numeri: il sistema di numerazione decimale Università degli Studi di Cagliari Facoltà di Scienze Corso di Laurea in Matematica Corso di Elementi di Informatica Lezione 3 14 marzo 2017 Dott. A.A. 2016/2017 pgarau.unica@gmail.com 1 Codifica dei numeri

Dettagli

Esempio 1: Dato il vettore A=-10:2:10

Esempio 1: Dato il vettore A=-10:2:10 Esempio 1: Dato il vettore A=-10:2:10 1) Determinare la lunghezza L del vettore; 2) Creare il vettore colonna B=-20:4:20 3) Effettuare il prodotto S= AxB righe per colonne 4) Estrarre da A il vettore C

Dettagli

Grafici. Un programma grafico inizia con un comando che chiude una eventuale finestra grafica precedente: close

Grafici. Un programma grafico inizia con un comando che chiude una eventuale finestra grafica precedente: close Grafici MATLAB permette di creare in modo semplice grafici bi- e tri-dimensionali e di corredare tali grafici con una serie di annotazioni utili a renderli chiari ed esplicativi. Un programma grafico inizia

Dettagli

Grafica 3D Interattiva

Grafica 3D Interattiva Informatica Grafica ][ Grafica 3D Interattiva Introduzione La grafica 3D viene utilizzata in prodotti interattivi e non interattivi. Esempi di prodotti non interattivi sono i filmati di animazione e gli

Dettagli

Effetti speciali. Informatica Grafica I. I fondali. I fondali. I fondali. I fondali. I fondali

Effetti speciali. Informatica Grafica I. I fondali. I fondali. I fondali. I fondali. I fondali Informatica Grafica I La grafica 3D trova ampio utilizzo nella realizzazione di effetti speciali. I modelli tridimensionali vengono impiegati per aggiungere oggetti ad una immagine o ad un filmato acqusito

Dettagli

Informatica. Comunicazione & DAMS A.A. 2015/16. Dr.ssa Valeria Fionda

Informatica. Comunicazione & DAMS A.A. 2015/16. Dr.ssa Valeria Fionda Informatica Comunicazione & DAMS A.A. 2015/16 Dr.ssa Valeria Fionda Informatica - Com&DAMS A.A. 2015/2016 Sistemi di numerazione I sistemi di numerazione servono a rappresentare i numeri grazie a un insieme

Dettagli

Il sistema binario: bit e Byte Codifica del testo Il Byte come U.d.M. dell'informazione Multipli del Byte

Il sistema binario: bit e Byte Codifica del testo Il Byte come U.d.M. dell'informazione Multipli del Byte Rappresentazione digitale delle informazioni Il sistema binario: bit e Byte Codifica del testo Il Byte come U.d.M. dell'informazione Multipli del Byte Ordini di grandezza Codifica delle immagini Codifica

Dettagli

Corso di Informatica modulo Informatica di Base 6 CFU. Immagini digitali: concetti di base

Corso di Informatica modulo Informatica di Base 6 CFU. Immagini digitali: concetti di base DIPARTIMENTO DELL INNOVAZIONE INDUSTRIALE E DIGITALE Corso di Informatica modulo Informatica di Base 6 CFU Anno Accademico 6/7 Docente: ing. Salvatore Sorce Immagini digitali: concetti di base L informazione

Dettagli

La codifica del testo

La codifica del testo La codifica delle informazioni Informatica e sistemi di elaborazione delle informazioni La codifica delle informazioni Informatica e sistemi di elaborazione delle informazioni I slide Informatica e sistemi

Dettagli

Interpolazione e Rendering

Interpolazione e Rendering Informatica Grafica per le arti Interpolazione e Rendering Limiti della Keyframe-Animation La tecnica della keyframe animation, vista nella precedente lezione, non e' sufficiente a creare animazioni realistiche.

Dettagli

Una libreria di funzioni per la geometria analitica

Una libreria di funzioni per la geometria analitica Una libreria di funzioni per la geometria analitica Michele Impedovo La geometria analitica del piano costituisce uno dei più importanti e consolidati argomenti di matematica. Un lavoro interessante parallelo

Dettagli

Sistemi di Elaborazione delle Informazioni

Sistemi di Elaborazione delle Informazioni Università degli Studi di Messina Policlinico G. Martino - Sistemi di Elaborazione delle Informazioni A.A. 26/27 Università degli Studi di Messina Policlinico G. Martino - Sistemi di Elaborazione delle

Dettagli

Le trasformazioni 3D. Le trasformazioni in 3D. Informatica Grafica ][ Le trasformazioni in 3D. Le trasformazioni in 3D. Le trasformazioni in 3D

Le trasformazioni 3D. Le trasformazioni in 3D. Informatica Grafica ][ Le trasformazioni in 3D. Le trasformazioni in 3D. Le trasformazioni in 3D Informatica Grafica ][ Le trasformazioni 3D Come abbiamo visto in precedenza, vi sono tre tipi di trasformazioni base in grafica 3D: Traslazione Rotazione Variazione di scala Marco Gribaudo marcog@di.unito.it

Dettagli

Strutture dati e loro organizzazione. Gabriella Trucco

Strutture dati e loro organizzazione. Gabriella Trucco Strutture dati e loro organizzazione Gabriella Trucco Introduzione I linguaggi di programmazione di alto livello consentono di far riferimento a posizioni nella memoria principale tramite nomi descrittivi

Dettagli

Le deformazioni. Animazione di parametri. Informatica Grafica ][ Animazione di parametri: colore. Animazione di parametri: colore

Le deformazioni. Animazione di parametri. Informatica Grafica ][ Animazione di parametri: colore. Animazione di parametri: colore Informatica Grafica ][ Marco Gribaudo marcog@di.unito.it Le deformazioni Animazione di parametri Nelle scorse lezioni abbiamo concentrato la nostra attenzione su come si possano animare le trasformaizoni.

Dettagli

Le immagini digitali

Le immagini digitali Le immagini digitali immagini raster immagini vettoriali Immagini raster Dette pittoriche o pixel oriented dividono l immagine in una griglia uniforme. Ciascuna cella della griglia ha uguale dimensione.

Dettagli

C: panoramica. Violetta Lonati

C: panoramica. Violetta Lonati C: panoramica Violetta Lonati Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica AA 2009/2010 Violetta Lonati

Dettagli

Introduzione al MATLAB c Parte 3 Script e function

Introduzione al MATLAB c Parte 3 Script e function Introduzione al MATLAB c Parte 3 Script e function Lucia Gastaldi DICATAM - Sezione di Matematica, http://lucia-gastaldi.unibs.it Indice 1 M-file di tipo Script e Function Script Function 2 Gestione dell

Dettagli

Esercitazione 1 Conversione di base

Esercitazione 1 Conversione di base Esercitazione 1 Conversione di base A.A. 2017-18 Esercizio 1 (M) Scrivere un programma che esegua la conversione di un numero reale qualunque da base 10 a base β {2,..., 16}, utilizzando gli M-function

Dettagli

Metodi di Analisi dei Dati Sperimentali. AA 2009/2010 Pier Luca Maffettone. Elementi di Matlab

Metodi di Analisi dei Dati Sperimentali. AA 2009/2010 Pier Luca Maffettone. Elementi di Matlab Metodi di Analisi dei Dati Sperimentali AA /2010 Pier Luca Maffettone Elementi di Matlab Sommario Introduzione Variabili Manipolazione di elementi Creazione di vettori/matrici Operazioni elementari Funzioni

Dettagli

Corso di VIDEOGAMES. PROGETTO Labirinto. Guida alla creazione di un VIDEOGAMES. Parte SECONDA Creiamo il Labirinto ed iniziamo a Muovere il Giocatore

Corso di VIDEOGAMES. PROGETTO Labirinto. Guida alla creazione di un VIDEOGAMES. Parte SECONDA Creiamo il Labirinto ed iniziamo a Muovere il Giocatore Guida alla creazione di un VIDEOGAMES PROGETTO Labirinto Parte SECONDA Creiamo il Labirinto ed iniziamo a Muovere il Giocatore prof. Michele Salvemini Indice Il labirinto... 3 Integriamo la classe Console...

Dettagli

I Clip Filmato. I marker. Informatica Grafica per le arti. I marker. I marker. I marker. I marker. gotoandplay("inizio");

I Clip Filmato. I marker. Informatica Grafica per le arti. I marker. I marker. I marker. I marker. gotoandplay(inizio); Informatica Grafica per le arti Marco Gribaudo marcog@di.unito.it Un strumento utile per organizzare il proprio filmato è quello di assegnare nomi a fotogrammi di particolare importanza. I nomi utilizzati

Dettagli

Disegnare con i computer

Disegnare con i computer Grazie alla diffusione dei computer (PC desktop, notebook) sempre più potenti e affidabili compresi i dispositivi elettronici affini quali (smartphone, tablet) e all utilizzo diffuso di Internet i contenuti

Dettagli

Materiali avanzati. Informatica Grafica per le arti. Raytracing. Raytracing. Raytracing. Raytracing. Raytracing

Materiali avanzati. Informatica Grafica per le arti. Raytracing. Raytracing. Raytracing. Raytracing. Raytracing Informatica Grafica per le arti Materiali avanzati Marco Gribaudo marcog@di.unito.it Molti degli oggetti modellabili sono costituiti da superfici trasparenti o riflettenti. I materiali Raytrace permettono

Dettagli

Array in Fortran 90. Ing. Luca De Santis. Anno accademico 2006/2007. DIS - Dipartimento di informatica e sistemistica

Array in Fortran 90. Ing. Luca De Santis. Anno accademico 2006/2007. DIS - Dipartimento di informatica e sistemistica Array in Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2006/2007 Fortran 90: array DIS - Dipartimento di informatica e sistemistica 1 / 25 Cosa vedremo

Dettagli

Lezione 6 programmazione in Java

Lezione 6 programmazione in Java Lezione 6 programmazione in Java Nicola Drago drago@sci.univr.it Dipartimento di Informatica Università di Verona Anteprima Le costanti I vettori Cos è un vettore Come si usa I vari tipi di vettori Esempi

Dettagli

Modulo 1: Le I.C.T. UD 1.3a: La Codifica Digitale delle Immagini

Modulo 1: Le I.C.T. UD 1.3a: La Codifica Digitale delle Immagini Modulo 1: Le I.C.T. : La Codifica Digitale delle Immagini Prof. Alberto Postiglione Corso di Informatica Generale (AA 07-08) Corso di Laurea in Scienze della Comunicazione Università degli Studi di Salerno

Dettagli

Nozioni di grafica sul calcolatore. concetti di base

Nozioni di grafica sul calcolatore. concetti di base Nozioni di grafica sul calcolatore concetti di base La riproduzione di immagini fotografiche su computer avviene suddividendo l'immagine stessa in una matrice di punti colorati: pixels I formati basati

Dettagli

Grafica 3D Interattiva

Grafica 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.

Dettagli

La codifica delle immagini

La codifica delle immagini Per distinguere 16777216 colori sono necessari 24 bit per la codifica di ciascun pixel: la codifica di un'immagine formata da 640X480 pixel richiederà 7.372.800 bit (921.600 byte) Esistono delle tecniche

Dettagli

CSS / GESTIONE DEL COLORE E DEI BACKGROUND. INFORMATICA E GRAFICA PER IL WEB HTML+CSS docente: Alessandro Gabbiadini 1

CSS / GESTIONE DEL COLORE E DEI BACKGROUND. INFORMATICA E GRAFICA PER IL WEB HTML+CSS docente: Alessandro Gabbiadini 1 CSS / GESTIONE DEL COLORE E DEI BACKGROUND INFORMATICA E GRAFICA PER IL WEB HTML+CSS docente: Alessandro Gabbiadini 1 CSS / DEFINIRE IL COLORE SECONDO IL MDELLO RGB Modello Additivo del colore Le lunghezze

Dettagli

Fondamenti di Informatica T-1. Classi e array

Fondamenti di Informatica T-1. Classi e array Classi e array 2 Classi e metodi statici Una classe è un costrutto linguistico che permette di modellare un'entità di un sistema, definendone le caratteristiche (variabili interne) e le azioni (metodi).

Dettagli

Le coordinate UV. Le texture. Informatica Grafica per le arti. Le texture. Le texture. Le texture. Le texture

Le coordinate UV. Le texture. Informatica Grafica per le arti. Le texture. Le texture. Le texture. Le texture Informatica Grafica per le arti Per rendere realistici gli oggetti modellati occorre definire accuratamente l'aspetto delle loro superfici. Il modo piu' semplice consiste nel sovrapporvi speciali immagini.

Dettagli

Cineprese e luci. Cineprese. Informatica Grafica ][ Cineprese. Cineprese. Cineprese. Cineprese

Cineprese e luci. Cineprese. Informatica Grafica ][ Cineprese. Cineprese. Cineprese. Cineprese Informatica Grafica ][ Marco Gribaudo marcog@di.unito.it e luci Come visto nel corso di I.G.1, esistono due tipi prinicipali di cineprese: Le cineprese libere possono muoversi in tutte le direzioni, mantenendo

Dettagli

RAPPRESENTAZIONE DELLE INFORMAZIONI

RAPPRESENTAZIONE DELLE INFORMAZIONI RAPPRESENTAZIONE DELLE INFORMAZIONI 1 RAPPRESENTAZIONE DELLE INFORMAZIONI Le informazioni gestite dai sistemi di elaborazione devono essere codificate per poter essere memorizzate, elaborate, scambiate,

Dettagli

Gli statement. Gli statement. Gli statement. Gli statement. Gli statement

Gli statement. Gli statement. Gli statement. Gli statement. Gli statement Ogni istruzione di uno script viene chiamata statement. La fine di uno statmenet e' indicata dal simbolo ;. Anche se in ActionScript il ; è opzionale, si consiglia di metterlo ugualmente per aumentare

Dettagli

Esercitazione Google Maps

Esercitazione Google Maps Esercitazione Google Maps Esercizio 1 Visualizzare i risultati della API comuni.php su una mappa geografica. Soluzione Come prima cosa, occorre creare una chiave di utilizzo della libreria Google Maps.

Dettagli

I sistemi di ossa. I sistemi di ossa. Informatica Grafica ][ I sistemi di ossa. I sistemi di ossa. I sistemi di ossa.

I sistemi di ossa. I sistemi di ossa. Informatica Grafica ][ I sistemi di ossa. I sistemi di ossa. I sistemi di ossa. Informatica Grafica ][ Nelle precedenti lezioni abbiamo visto come si possano animare oggetti in Maya e Motion Builder. In particolare abbiamo visto come si possa limitare la quantita' di memoria occupata,

Dettagli

Esercizi di MatLab. Sommario Esercizi di introduzione a MatLab per il corso di Calcolo Numerico e Laboratorio, A.A

Esercizi di MatLab. Sommario Esercizi di introduzione a MatLab per il corso di Calcolo Numerico e Laboratorio, A.A Esercizi di MatLab Sommario Esercizi di introduzione a MatLab per il corso di Calcolo Numerico e Laboratorio, AA 2017 2018 Gli esercizi sono divisi in due gruppi: fondamentali ed avanzati I primi sono

Dettagli

Modellazione poligonale

Modellazione poligonale Informatica Grafica ][ Modellazione poligonale La tecnica di modellazione poligonale permette di costruire oggetti tridimensionali basati su poligoni. Malgrado gli oggetti poligonali siano spigolosi per

Dettagli

L'animazione 3D. Le basi dell'animazione 3D. Informatica Grafica per le arti. Le basi dell'animazione 3D. Le basi dell'animazione 3D

L'animazione 3D. Le basi dell'animazione 3D. Informatica Grafica per le arti. Le basi dell'animazione 3D. Le basi dell'animazione 3D Informatica Grafica per le arti L'animazione 3D Marco Gribaudo marcog@di.unito.it L'animazione 3D si basa sugli stessi principi dell'animazione tradizionale. Il filmato viene realizzato attraverso una

Dettagli

Modellazione di interni ed esterni in Unreal

Modellazione di interni ed esterni in Unreal Informatica Grafica ][ Modellazione di interni ed esterni in Unreal Nella lezione precedente, abbiamo visto come creare "stanze" in sintesi sottrattiva utilizzando i Brush. Oltre ai pochi Brush disponibili,

Dettagli

Programmazione con il linguaggio LibreOffice Basic

Programmazione con il linguaggio LibreOffice Basic Programmazione con il linguaggio LibreOffice Basic L ambiente di programmazione Il software LibreOffice possiede un ambiente di programmazione in linguaggio Basic, che consente di creare procedure software

Dettagli

Breve guida al linguaggio FORTRAN 77

Breve guida al linguaggio FORTRAN 77 Breve guida al linguaggio FORTRAN 77 Variabili (valori di default) Iniziali con lettere da I a N Iniziali con lettere da A a H oppure da O a Z variabili intere, 4 byte in precisione singola variabili reali,

Dettagli

APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO VI.2015

APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO VI.2015 APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2014 2015 15.VI.2015 VINCENZO MARRA Indice Esercizio 1 1 Definizione dei tipi P e T, e calcolo dell area.

Dettagli

Corso di Informatica

Corso di Informatica CdLS in Odontoiatria e Protesi Dentarie Corso di Informatica Prof. Crescenzio Gallo crescenzio.gallo@unifg.it Rappresentazione delle immagini 2 Rappresentazione delle immagini Le forme e i colori presenti

Dettagli

1.3a: La Codifica Digitale delle Immagini

1.3a: La Codifica Digitale delle Immagini Prof. Alberto Postiglione Scienze della e Facoltà di Lettere e Filosofia Università degli Studi di Salerno 1.3a: La Codifica Digitale delle Immagini Informatica Generale (Laurea in Scienze della e) Sistemi

Dettagli

PIANO CARTESIANO e RETTE classi 2 A/D 2009/2010

PIANO CARTESIANO e RETTE classi 2 A/D 2009/2010 PIANO CARTESIANO e RETTE classi 2 A/D 2009/2010 1) PIANO CARTESIANO serve per indicare, identificare, chiamare... ogni PUNTO del piano (ente geometrico) con una coppia di valori numerici (detti COORDINATE).

Dettagli

Modulo 1: Le I.C.T. UD 1.3b: Grafica Bitmap e Vettoriale FONT Bitmap e Scalabili

Modulo 1: Le I.C.T. UD 1.3b: Grafica Bitmap e Vettoriale FONT Bitmap e Scalabili Modulo 1: Le I.C.T. : Grafica Bitmap e Vettoriale FONT Bitmap e Scalabili Prof. Alberto Postiglione Corso di Informatica Generale (AA 07-08) Corso di Laurea in Scienze della Comunicazione Università degli

Dettagli

Modellazione Edge - Loop

Modellazione Edge - Loop Informatica Grafica per le arti Modellazione Edge - Loop In animazione 3D, si e' constato che le figure costituite unicamente da quadrilateri si deformano piu' facilmente rispetto a quelle formate da poligoni

Dettagli

Meccanica: Introduzione. Lo Studio del moto degli oggetti

Meccanica: Introduzione. Lo Studio del moto degli oggetti Meccanica: Introduzione Lo Studio del moto degli oggetti 1 Grandezze fisiche n Scalari : esprimibili mediante singoli numeri (es. massa,temperatura, energia, carica elettrica ecc.) n Vettoriali : per essere

Dettagli

Informatica (Sistemi di elaborazione delle informazioni)

Informatica (Sistemi di elaborazione delle informazioni) Informatica (Sistemi di elaborazione delle informazioni) Corso di laurea in Scienze dell'educazione Lezione 9 Elaborazione di immagini (parte 1) Mario Alviano Sommario Grafica vettoriale e bitmap Risoluzione

Dettagli

UD4 - MATLAB. M-file. Efficienza degli algoritmi. Formati d uscita

UD4 - MATLAB. M-file. Efficienza degli algoritmi. Formati d uscita UD4 - MATLAB M-file. Efficienza degli algoritmi. Formati d uscita M-files In MatLab è possibile eseguire istruzioni contenute in file esterni; Tali file sono chiamati M-file perché devono avere estensione.m

Dettagli

Reti Neurali in Generale

Reti Neurali in Generale istemi di Elaborazione dell Informazione 76 Reti Neurali in Generale Le Reti Neurali Artificiali sono studiate sotto molti punti di vista. In particolare, contributi alla ricerca in questo campo provengono

Dettagli

La codifica delle immagini

La codifica delle immagini Lettere e numeri non costituiscono le uniche informazioni utilizzate dagli elaboratori ma si stanno diffondendo sempre di più applicazioni che utilizzano ed elaborano anche altri tipi di informazione:

Dettagli

La codifica delle immagini

La codifica delle immagini Non sempre il contorno della figura coincide con le linee della griglia. Quella che si ottiene nella codifica è un'approssimazione della figura originaria Se riconvertiamo la stringa 0000000011110001100000100000

Dettagli

Rappresentazione delle Immagini. Corso di Informatica. Rappresentazione delle Immagini. Rappresentazione delle Immagini

Rappresentazione delle Immagini. Corso di Informatica. Rappresentazione delle Immagini. Rappresentazione delle Immagini Corso di Laurea in Conservazione e Restauro dei Beni Culturali Rappresentazione delle Immagini Corso di Informatica Gianluca Torta Dipartimento di Informatica Tel: 011 670 6782 Mail: torta@di.unito.it

Dettagli

Definizioni. Esempi di alfabeti

Definizioni. Esempi di alfabeti Definizioni SIMBOLO: entità minima significativa STRINGA: sequenza finita di simboli giustapposti (lunghezza della stringa, stringa vuota) ALFABETO: insieme finito di simboli LINGUAGGIO: insieme di stringhe

Dettagli

9 - Array. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

9 - Array. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo 9 - Array Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso di Laurea

Dettagli

4. I moduli in Access 2000/2003

4. I moduli in Access 2000/2003 LIBRERIA WEB 4. I moduli in Access 2000/2003 Il modulo è uno degli oggetti del database di Access e rappresenta un insieme di dichiarazioni e routine scritte con il linguaggio Visual Basic, memorizzate

Dettagli

Tecnologie Multimediali a.a. 2016/2017. Docente: DOTT.SSA VALERIA FIONDA

Tecnologie Multimediali a.a. 2016/2017. Docente: DOTT.SSA VALERIA FIONDA Tecnologie Multimediali a.a. 2016/2017 Docente: DOTT.SSA VALERIA FIONDA Rappresentazione digitale delle immagini Sistema binario Il computer "capisce" solo 2 stati: passacorrente (1) non passa corrente

Dettagli

RAPPRESENTAZIONE DELLE INFORMAZIONI

RAPPRESENTAZIONE DELLE INFORMAZIONI RAPPRESENTAZIONE DELLE INFORMAZIONI 1 RAPPRESENTAZIONE DELLE INFORMAZIONI Le informazioni gestite dai sistemi di elaborazione devono essere codificate per poter essere memorizzate, elaborate, scambiate,

Dettagli

Rappresentazione di curve in tre dimensioni

Rappresentazione di curve in tre dimensioni Rappresentazione di curve in tre dimensioni Il comando plot3, con la sintassi >>plot3(x,y,z) Analoga al semplice plot, permette di tracciare nello spazio curve i cui punti hanno coordinate rispettivamente

Dettagli

Le immagini digitali. Grafica. Due approcci alla modellazione grafica

Le immagini digitali. Grafica. Due approcci alla modellazione grafica Le immagini digitali 1 Grafica Due approcci alla modellazione grafica Grafica bit-map Immagine è rappresentata come un insieme di punti (pixel) esattamente come sul monitor Non sempre i pixel logici dell

Dettagli

Modellazione poligonale

Modellazione poligonale Informatica Grafica per le arti Modellazione poligonale Ogni solido rappresentato in un programma di grafica 3D, viene visualizzato mediante un insieme di triangoli. Un insieme di triangoli adiacenti prende

Dettagli

15 Riepilogo di esercizi in MATLAB

15 Riepilogo di esercizi in MATLAB 15.1 Esercizi Esercizio 15.1 (TdE 2014) Si consideri l array definito in MATLAB e chiamato dati. Tale array contiene le informazioni riguardanti le precipitazioni atmosferiche registrate da una stazione

Dettagli

Scritto da Domenica 08 Agosto :43 - Ultimo aggiornamento Mercoledì 21 Marzo :55

Scritto da Domenica 08 Agosto :43 - Ultimo aggiornamento Mercoledì 21 Marzo :55 Alcuni componenti potrebbero includere già un metodo per stampare il proprio contenuto, come accade per esempio con il componente TRichEdit che utilizza direttamente il suo metodo print: RichEdit1.Print('Prova

Dettagli

Excel & VBA. Excel e Visual Basic for Application

Excel & VBA. Excel e Visual Basic for Application Excel & VBA Excel e Visual Basic for Application Automazione Excel con VBA incorpora la tecnologia dell automazione (OLE automation) Excel dialoga con VBA attraverso un insieme di comandi detto libreria

Dettagli

APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO VII.2017

APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO VII.2017 APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2016 2017 17.VII.2017 VINCENZO MARRA Indice Esercizio 1 2 Strutture di dati, funzioni diam, dist e centr.

Dettagli

UNITÀ I1-3 LE INTERSEZIONI

UNITÀ I1-3 LE INTERSEZIONI UNITÀ I1-3 LE INTERSEZIONI IL PRINCIPIO DELLE INTERSEZIONI Le intersezioni costituiscono, nella topografia classica, un metodo di rilievo di appoggio non autonomo, ma da utilizzare in particolari contesti

Dettagli

INFORMATICA E PROGRAMMAZIONE PROF. M. GIACOMIN ESPERIENZA IN AULA: ELABORAZIONE DI IMMAGINI A COLORI IN LINGUAGGIO C

INFORMATICA E PROGRAMMAZIONE PROF. M. GIACOMIN ESPERIENZA IN AULA: ELABORAZIONE DI IMMAGINI A COLORI IN LINGUAGGIO C INFORMATICA E PROGRAMMAZIONE PROF. M. GIACOMIN ESPERIENZA IN AULA: ELABORAZIONE DI IMMAGINI A COLORI IN LINGUAGGIO C DESCRIZIONE GENERALE In questa esperienza il C verrà utilizzato per elaborare immagini

Dettagli

Le primitive tridimensionali

Le primitive tridimensionali Informatica Grafica I Le primitive tridimensionali Lo schermo del calcolatore e' in grado di visualizzare immagini bidimensionali. In grafica 3D si modellano oggetti in tre dimensioni. Le proiezioni sono

Dettagli

28/02/2014 Copyright V. Moriggia

28/02/2014 Copyright V. Moriggia Informatica per la Finanza 3 Le variabili in VBA Altri I/O 28/02/2014 Copyright 2005-2007 V. Moriggia 1 28/02/2014 3.2 Le variabili in VBA V. Moriggia 1 28/02/2014 3.3 Dichiarazione di variabili in VBA

Dettagli

Capitolo Grafici di sezioni coniche

Capitolo Grafici di sezioni coniche Capitolo 14 Grafici di sezioni coniche È possibile tracciare grafici per uno qualsiasi dei seguenti tipi di sezioni coniche usando le funzioni incorporate nella calcolatrice. Grafico parabolico Grafico

Dettagli

Algoritmi, Strutture Dati e Programmi. UD 2.b: Programmazione in Pascal

Algoritmi, Strutture Dati e Programmi. UD 2.b: Programmazione in Pascal Algoritmi, Strutture Dati e Programmi : Programmazione in Pascal Prof. Alberto Postiglione AA 2007-2008 Università degli Studi di Salerno Il Linguaggio di Programmazione Pascal Esistono molti linguaggi

Dettagli

Effetti speciali. I fondali. Informatica Grafica per le arti. I fondali. I fondali. I fondali. I fondali

Effetti speciali. I fondali. Informatica Grafica per le arti. I fondali. I fondali. I fondali. I fondali Informatica Grafica per le arti La grafica 3D trova ampio utilizzo nella realizzazione di effetti speciali. I modelli tridimensionali vengono sempre piu' sovente impiegati per aggiungere oggetti ad una

Dettagli

CORSO DI PROGRAMMAZIONE E INFORMATICA GENERALE 1

CORSO DI PROGRAMMAZIONE E INFORMATICA GENERALE 1 CORSO DI PROGRAMMAZIONE E INFORMATICA GENERALE 1 Lezione 1 (Introduzione e Definizioni) Docenti Docente: Prof. Michele Colajanni Lezioni (Aula IV): martedì 10:00-12:45 Esercitazioni (Laboratorio): mercoledì

Dettagli

SurvCE: tracciamento, offset, Pregeo e altre funzioni di rilievo

SurvCE: tracciamento, offset, Pregeo e altre funzioni di rilievo SurvCE: tracciamento, offset, Pregeo e altre funzioni di rilievo 1. Funzioni base per un tracciamento (o picchettamento) Dopo aver effettuato la connessione ed aver verificato la buona qualità del posizionamento,

Dettagli

Vettori nel Piano e nello Spazio

Vettori nel Piano e nello Spazio Vettori nel Piano e nello Spazio Caratteristiche di un vettore Componenti di un vettore e Vettore applicato all origine Vettore definito da due punti Operazioni unarie sul vettore Lunghezza di un vettore

Dettagli

UD 3.2b: Programmazione in Pascal (1)

UD 3.2b: Programmazione in Pascal (1) UD 3.2b: Programmazione in Pascal (1) Il Linguaggio di Programmazione Pascal Esistono molti linguaggi di programmazione. Per motivi didattici utilizzeremo una versione ridotta di un linguaggio di programmazione

Dettagli

Argomenti della lezione. Introduzione agli Algoritmi e alle Strutture Dati. Lista Lineare. Lista Lineare come Tipo di Dato Astratto

Argomenti della lezione. Introduzione agli Algoritmi e alle Strutture Dati. Lista Lineare. Lista Lineare come Tipo di Dato Astratto Argomenti della lezione Introduzione agli Algoritmi e alle Strutture Dati Operazioni su Liste Dr. Emanuela Merelli Tipi di Dato Astratto Lista Lineare Pila Coda Concetto di Struttura dati dinamiche Lista

Dettagli

Lezione 6 Richiami di Geometria Analitica

Lezione 6 Richiami di Geometria Analitica 1 Piano cartesiano Lezione 6 Richiami di Geometria Analitica Consideriamo nel piano due rette perpendicolari che si intersecano in un punto O Consideriamo ciascuna di queste rette come retta orientata

Dettagli

Evoluzione del FORTRAN 14/03/2016. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 15 IL LINGUAGGIO FORTRAN

Evoluzione del FORTRAN 14/03/2016. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 15 IL LINGUAGGIO FORTRAN LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 15 IL LINGUAGGIO FORTRAN Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli Studi di Napoli Federico II wpage.unina.it/lapegna

Dettagli

LEZIONE PRECEDENTE. 1 Abilità Informatiche e Telematiche. 03/04/2015 Dott. ssa Carmen De Maio

LEZIONE PRECEDENTE. 1 Abilità Informatiche e Telematiche. 03/04/2015 Dott. ssa Carmen De Maio LEZIONE PRECEDENTE Introduzione a Sprite; Operatori e funzioni; Come usare i blocchi Movimenti per far muovere uno Sprite; Come usare i blocchi Penna per disegnare sullo stage; Esercizi 1 TO DO: Completa

Dettagli

I formati delle Font

I formati delle Font I formati delle Font PostScript Type1 fino a 250 glifi TrueType fino a 700 glifi* OpenType fino a 65.536 glifi POSTSCRIPT TYPE1 Il PS Type 1 è un formato di caratteri ideato da Adobe per la composizione

Dettagli

La Retta Ogni funzione di primo grado rappresenta, graficamente, una retta. L equazione della retta può essere scritta in due modi

La Retta Ogni funzione di primo grado rappresenta, graficamente, una retta. L equazione della retta può essere scritta in due modi La Retta Ogni funzione di primo grado rappresenta, graficamente, una retta. L equazione della retta può essere scritta in due modi Forma implicita Forma esplicita a x b y c 0 y m x q a c y x b b Esempio

Dettagli

Esercizio. Una moneta viene lanciata 1000 volte. Su 1000 lanci, per 600 volte esce croce. Quale è la ridondanza presente nella moneta?

Esercizio. Una moneta viene lanciata 1000 volte. Su 1000 lanci, per 600 volte esce croce. Quale è la ridondanza presente nella moneta? Una sorgente di informazione può produrre 8 diversi simboli con probabilità diverse, e presenta una entropia effettiva di 2.4 bit/simbolo. Quale è il numero medio di byte necessari per contenere un messaggio

Dettagli

Sistemi di Elaborazione delle Informazioni 6 CFU

Sistemi di Elaborazione delle Informazioni 6 CFU Università degli Studi di Palermo Dipartimento di Ingegneria Chimica, Gestionale, Informatica, Meccanica Sistemi di Elaborazione delle Informazioni 6 CFU Anno Accademico 2015/2016 Docente: ing. Salvatore

Dettagli

VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole.

VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole. Excel VBA VBA Visual Basic for Application VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole. 2 Prima di iniziare. Che cos è una variabile?

Dettagli