SVILUPPO DI UN GEOBROWSER 3D BASATO SU SHADER PER DISPOSITIVI IOS

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "SVILUPPO DI UN GEOBROWSER 3D BASATO SU SHADER PER DISPOSITIVI IOS"

Transcript

1 Università di Trento SVILUPPO DI UN GEOBROWSER 3D BASATO SU SHADER PER DISPOSITIVI IOS Federico Devigili Relatore: Raffaele De Amicis Università di Tento Facoltà di scienze MM.FF.NN Corso di laurea in Informatica Documento relativo alla tesi triennale Novembre

2 2

3 Abstract Negli ultimi anni la diffusione di sistemi per la visualizzazione 3D di immagini terrestri è cresciuta vertiginosamente. La disponibilità e la qualità delle informazioni consultabili sono cresciute di pari passo. Sin dal 2006 sono disponibili cellulari compatibili con le API OpenGL ES ed è già disponibile hardware destinato a mobile che implementa le specifiche Opengl 4.0 e DirectX Nonostante questo, applicazioni che facciano uso di tali funzioni, sono ancora poche. L obiettivo di questo documento è di fornire le specifiche dell implementazione di un software per la visualizzazione di terreni 3D reali su dispositivi mobile che tragga vantaggio dalle funzionalità del nuovo hardware. Nel rendering di terreni realistici il limite maggiore è quello della memoria e della potenza di calcolo del dispositivo che deve contenere e processare una grande quantità di dati. E stato di conseguenza sviluppato un geobrowser WMS basato sugli shader, che trae vantaggio della possibilità di riutilizzare le geometrie e texture compresse minimizzando il lavoro della CPU e l utilizzo di memoria. Texture e dati d elevazione [DEM] vengono forniti da un server personalizzato che processa i dati on-the-fly. La soluzione risulta essere performante nel caso in cui il dispositivo sia CPU-limited o si abbia un grande numero di texture da renderizzare. 3

4 4

5 Sommario Abstract... 3 Stato dell arte... 9 Iphone hardware... 9 Iphone OS... 9 Opengl ES Gli Shader Il Vertex shader Il Fragment Shader Protocollo WMS GetCapabilities GetMap Il formato BIL La compressione PVRTC Soluzione Proposta Schema dell Architettura Level of Detail, Il Quadtree dei Tile Implementazione del Culling Il Frustum Culling Culling basato sull incidenza Culling, Considerazioni Vertex Shader e VBO (Vertex Buffer Object) Le skirts Fragment Shader e le Texture Compresse La servlet Il sistema di cache I problemi riscontrati Displacement Mapping e il Vertex Texture Fetch

6 2010 La compressione PVRTC Lo Z-Buffer, il limite dei 16 bit Test Test delle Prestazioni Conclusioni Conclusioni Lavori Futuri Hardware Tessellation su GPU di nuova generazione

7 Introduzione Sin dal 2006 GPU compatibili con le API OpenGL ES 2.0 sono disponibili sul mercato, mentre nel 2010 è stata stampata la prima GPU destinata a dispositivi mobile compatibile con le specifiche OpenGL 4.0 e DirectX Anche se sui personal computer GPU programmabili sono disponibili ormai da dieci anni sui dispositivi mobile la mancanza di memoria e di Potenza di calcolo non hanno permesso fino ad ora di sfruttare pienamente le potenzialità di queste nuove tecnologie. Tuttavia, sui dispositivi mobile, il passaggio al nuovo standard è solo questione di tempo. Il problema più grande quando si sviluppa un geobrowser su un dispositivo mobile è la mancanza di memoria e la potenza della CPU. Grandi strutture dati contenenti i dati tridimensionali e le texture sono necessarie per il rendering del terreno in tre Dimensioni. Oltre a questo durante la navigazione il terreno deve costantemente essere aggiornato a una risoluzione maggiore, nuove texture devono essere scaricate e processate e il tutto deve essere caricato in memoria video utilizzando cosi costantemente il bus di trasmissione. La nostra soluzione minimizza il carico della CPU, della memoria e del bus. Una lista di tile che compongono il terreno è generata da un algoritmo che tiene conto della posizione del punto di vista. In base alla distanza dal punto di vista è disegnato un tile a minore o maggiore risoluzione. L algoritmo di rendering utilizza i vertex shader per riutilizzare le geometrie già caricate in memoria video, infatti, non sono mai caricati in memoria dati 3D aggiuntivi ma lo stesso tile è ridisegnato continuamente. Il vertex shader si occupa di traslare e scalare il tile nella posizione corretta in base ai parametri di rendering. Sempre nel vertex shader le coordinate delle textures sono generate on-the-fly. Un server personalizzato si occupa di preparare i dati per essere caricati dal sotware, le texture, scaricate da un server WMS, sono trasformate in un formato compresso e, insieme ai dati DEM, inviate al client. 7

8 8

9 Stato dell Arte 2010 Stato dell arte Iphone hardware Per lo sviluppo dell'applicazione è stato scelto il dipositivo iphone 3GS, questa versione, rispetto alla precedente, offre, oltre a una migliore CPU e un maggior quantitativo di memoria, un ottima soluzione grafica, necessaria per lo sviluppo di qualsiasi applicazione 3D. Specifiche tecniche: CPU: ARM 8 600MHz GPU: Power VR SGX 525 RAM: 128Mb Shared Memory (Cache, L1:32KB, L2:256KB) Schermo: 480x320(0.15Mp) LCD TouchScreen Per la nostra applicazione l'importanza della CPU è relativa, come andremo a vedere, il vero lavoro sarà svolto dalla GPU. La soluzione grafica presente è compatibile con le librerie OpenGL ES 2.0 ed è quindi una GPU programmabile attraverso il linguaggio GLSL, considerando la relativamente bassa risoluzione dello schermo tale soluzione grafica è in grado di renderizzare in real-time scene piuttosto complesse ed effetti grafici avanzati quando necessario. La quantità di memoria RAM è modesta e condivisa tra CPU e GPU. Come andremo a vedere il throughput RAM sarà il collo di bottiglia per la nostra applicazione. Iphone OS Iphone OS è il sistema operativo presente su tutti i dispositivi mobile Apple. Contiene le api necessarie per l'interfacciamento con tutte le periferiche del dispositivo, come la bussola, lo schermo touchscreen o il GPS oltre che a varie librerie: UIKit, la libreria per la costruzione della parte grafica delle applicazioni touchscreen. Foundation, la libreria di classi per la gestione dei dati (Collezioni), e la gestione dell'applicazioni in generale. E le librerie OpenGL ES necessarie per l'interfacciamento a basso livello e la programmazione della GPU. L'insieme di queste tecnologie forma il COCOA framework. Il principale linguaggio di programmazione usato è Objective C. Objective C è un linguaggio di programmazione riflessivo ad oggetti che estende C. E' prevalentemente utilizzato nei sistemi operativi Apple. 9

10 Stato dell Arte 2010 Opengl ES OpenGL ES è un API multi-piattaforma per la grafica 2D e 3D su sistemi embedded. Offre un interfaccia a basso livello tra il software e l acceleratore grafico. Sono presenti due versioni di quest API: 1.0/1.1: Per hardware a pipeline fissa. Basata sulle specifiche delle OpenGL 1.5 offre funzionalità di base, performance e miglioramenti per minimizzare il consumo energetico e l'utilizzo di banda in memoria. 2.0: Per hardware a pipeline programmabile. Basata sulle specifiche OpenGL 2.0 permette quindi di sfruttare la pipeline programmabili delle GPU compatibili. Si ha la possibilità di scrivere vertex e fragment shaders in GLSL (OpenGL Shading Language). Questa versione rimuove totalmente la possibilità di usare la fixed pipeline orami obsoleta, che è, infatti, del tutto emulabile via shaders. E' stato scelto quindi di implementare l applicazione utilizzando l'ultima versione delle API. Tale scelta è stata dettata anche dalla necessità di trasferire quanto più carico possibile sulla GPU, per questioni di risparmio energetico e responsività dell'applicazione. Essendo quest API un sottoinsieme delle più complete classiche OpenGL molte funzionalità sono state rimosse, in particolare sono state rimosse: API e funzionalità ridondanti lasciando solamente le più performanti (es. glbegin(), glend()) L OpenGL Utility Library, contenente varie funzioni d'utilità come le strutture matematiche e le funzioni più utilizzate nel campo della grafica 3D. Il supporto ai numeri Floating Point in doppia precisione. Wireframe rendering, 24bit Z-Buffer e altre funzioni troppo computazionalmente pesanti per essere utilizzate su mobile. La rimozione di tali funzionalità non compromette le potenzialità della libreria, e forza lo sviluppatore a utilizzare le funzioni più adatte allo scopo. Gli Shader Gli shader sono piccoli programmi che sono eseguiti parallelamente sulla GPU per renderizzare le immagini. Nel caso delle OpenGL ES 2.0 si possono distinguere due shader differenti. In ordine cronologico abbiamo il Vertex Shader e il Fragment Shader. 10

11 Stato dell Arte 2010 Figure 1- OGL ES 2.0 Pipeline Anche se gli shader erano originariamente pensati solo per renderizzare effetti grafici avanzati, la loro continua evoluzione e maggiore versatilità li ha portati a diventare strumenti per calcolo parallelo ad alte prestazioni. Le GPU odierne dispongono di API per il calcolo parallelo [CUDA e DirectCompute] con le quali sono stati implementati vari software per la simulazione fisica, folding di proteine, simulazione n-body, motori di rendering non realtime e basati su ray-tracing. 11 Figure 2 NVIDIA CUDA, Simulazione n-body Tra i più comuni e utilizzati c è sicuramente Physx il simulatore fisico targato NVIDIA già utilizzato in molti software videoludici.

12 Stato dell Arte 2010 Il Vertex shader Il Vertex shader è un programma che riceve in input la posizione di un vertice in 3 dimensioni e deve dare in output [come minimo] la posizione del vertice proiettata in 2 dimensioni. Il vertex shader viene utilizzaro oltre che per la classica trasformazione in coordinate-schermo anche per eseguire vari effetti grafici che alterano la posizione dei vertici. Ad esempio se si alterano le posizioni dei vertici di un piano si possono simulare le onde dell oceano. Aattraverso una texture si può eseguire il displacement-mapping cioè lo scostamento dei vertici in base ad una texture in bianco e nero lungo la normale. Tale tecnica è utilizzata per aggiungere dettagli ad alta frequenza a modelli più grossolani. Il Fragment Shader Il Fragment Shader, conosciuto in altri contesti come Pixel Shader, è un programma che riceve in input tutti gli output del vertex shader da in output unicamente il colore del frammento relativo. Un frammento corrisponde solitamente ma non necessariamente ai pixel dello schermo. Nel Fragment Shader sono implementate tutte le tecniche d illuminazione oltre a molte altre tecniche per rendere più realistiche le immagini sullo schermo. Bump mapping, normal mapping, effetti di sfocatura, motion blur, ombre ecc. E nel Fragment Shader che la maggior parte delle letture-texture avvengono; ogni effetto, oltre alla classica lettura della texture diffusa, si basa solitamente su una texture aggiuntiva sul modello. Il bump mapping usa una texture in bianco e nero per simulare piccole imperfezioni della superficie, stessa cosa accade per il normal mapping che però si basa su una texture dove sono immagazzinati vettori direzione. L unico limite per generare effetti aggiuntivi è dato dalla memora e dalla potenza di calcolo della GPU e dalle capacità di artisti e programmatori. Protocollo WMS Il protocollo Web Map Service [WMS] è un interfaccia ad un servizio web per la richiesta di immagini geo-referenziate ottenute da una o più basi di dati. Il servizio si occupa di recuperare le immagini da una o più sorgenti, di costruire l'immagine finale in base alle coordinate di richiesta e di trasformarla nel formato richiesto (es. jpg, png). Lo stesso server può fornire diversi livelli d immagini e quindi differenti tipi d informazioni. I dati disponibili e i formati possono variare sensibilmente da server a server. In generale si può dire che un generico server WMS possa: -Produrre e fornire una mappa in un generico formato. -Fornire le proprie funzionalità e di dati disponibili. Per generare queste richieste il client deve accedere al server attraverso un URL 12

13 Stato dell Arte 2010 che sarà differente a seconda della richiesta, in particolare andremo a descrivere le 2 richieste più comuni. Da notare che un servizio WMS è generico, non include solamente i dati visuali del terreno ma può includere qualsiasi dato geo referenziato mappabile. Ad esempio esistono layer in bianco e nero che descrivono l altezza del terreno, altri che mappano la densità di popolazione, le piogge, l emissione di raggi IR o l assorbimento UV. GetCapabilities La richiesta GetCapabilities serve a fornire al client la lista di funzionalità disponibili sul server WMS. Attraverso questa richiesta si puo ottenere la lista di mappe e layer disponibili, il formato delle immagini supportate, l area nella quale sono disponibili i dati, e descrizioni in linguaggio naturale del layer. Grazie alla standardizzazione del formato è possibile popolare dinamicamente una lista di funzionalità e implementare cosi un client che sia compatibile con tutti i server wms. Un esempio di richiesta può essere: tale richiesta restituisce un file XML contenete le informazioni indicate. GetMap La richiesta GetMap è la richiesta vera e propria del dato al servizio WMS. I parametri necessari, oltre ai parametri comuni, per eseguire la richiesta sono: Layers: Descrive i layer che si desiderano attivare, il server wms comporrà l immagine finale utilizzando i layer selezionati. SRS: Specifica in che modo saranno passate le coordinate del Bounding Box dell immagine. BBOX: Specifica l area che si vuole sia visualizzata sull immagine. Width/Height: Specifica la risoluzione della texture desiderata. Format: Specifica il formato desiderato dell immagine. Un esempio di richiesta GetMap è la seguente: 326&format=image/jpeg&layers=bmng200406&styles=&bbox=27,27,35,35&widt h=512&height=512 La richiesta d esempio richiede al server di generare un immagine utilizzando il layer [bmng200406] dell area che va dalle coordinate [27,27 ] e si estende per 8 a nord ed ad est; l immagine deve essere della risoluzione 512x512 e verrà fornita nel formato [JPEG]. 13

14 Stato dell Arte Figura 1 - Blue Marble e la stessa texture utilizzata nell applicazione. Come possiamo vedere il risultato è un immagine in colori artificiali del delta del Nilo. Il nome comune del layer utilizzato è Blue Marble. Il formato BIL Il formato file BIL è un formato non standard per la trasmissione di dati DEM [Digital Elevation Model] utilizzato in Nasa World Wind, cioè un file che contiene informazioni sull altezza del terreno in vari punti della terra. Dato che i file BIL non contengono header e informazioni sulla struttura, bisogna conoscere in anticipo queste informazioni, nel nostro caso i file BIL provengono dal server pubblico JPL (Jet Propulsion Laboratory) ed hanno dimensione fissa. Il file BIL è composto di un bitmap a risoluzione e dimensione fissa di 150x150 pixel 16bpp [45000B]. Ogni pixel va a descrivere l altezza di un area del terreno in metri, i sedici bit d informazione vanno interpretati come intero con segno quindi il formato può descrivere altezze da -32 a 32 Km con una risoluzione di 1 m, più che sufficiente per descrivere la variazione di altitudine presente sulla terra che va circa da -13Km a 9Km. Per richiedere un file BIL si utilizza una richiesta http attraverso una semplice sintassi. Un esempio di richiesta di un file BIL è la seguente:

15 Stato dell Arte 2010 &L=0&X=9&Y=6 Come possiamo vedere la richiesta ha bisogno di quattro parametri; il primo è il tipo di file desiderato, possiamo richiedere un file compresso o non compresso, in questo caso stiamo richiedendo un file compresso. Il secondo parametro indica il livello di dettaglio desiderato, il livello zero è il livello minimo di dettaglio, dove ogni file descrive un area di 20x20, sono quindi necessari 18x9 tile per coprire il globo al livello minimo. A ogni livello successivo la risoluzione raddoppia quindi l area coperta è un quarto del livello precedente. Gli altri due parametri sono il numero del tile a partire da [-180,-90 ]. A livello zero le coordinate 5,8 corrispondono al tile che va da [0,0 ] a [20,20 ], le coordinate 6,9 a [20,20 ], [40,40 ]; a livello 1 ogni tile copre un area di 10 quindi a coordinate 0,0 l area coperta sarà [-180,-90 ], [-170,-80 ]. 15 Figura 2- Altimetria e Batimetria attraverso BIL Le immagini mostrano il tile [9,6] a livello zero, le immagini sono state processate in un programma di fotoritocco per aumentarne il contrasto. La compressione PVRTC La Compressione texture PVRTC usata nell applicazione è una compressione lossy, block based usata su tutte le schede grafiche Power VR MBX e SGX, schede montate in particolare sul nostro Device di riferimento. Al contrario delle comuni compressioni lossy come le compressioni usate nel formato jpg, la compressione PVRTC è stata sviluppata in modo che sia possibile decomprimere i dati via hardware, in modo veloce ed efficiente senza dover decomprimere l intera immagine, questo permette di mantenere i dati compressi in memoria video e decomprimerli al volo quando richiesti per il rendering risparmiando memoria e

16 Stato dell Arte 2010 banda. La compressione funziona generando due immagini a bassa frequenza (1/16 o 1/64 della risoluzione) dell immagine originale e un immagine di modulazione a risoluzione piena raggiungendo una compressione finale di 1/8 o 1/16 su immagini RGBA8 (32bit), corrispondente a un costo fisso per pixel di 4bpp o 2bpp. Per ottenere il colore del pixel richiesto si scalano le due immagini a bassa frequenza alla risoluzione originale con un filtro bilineare, e utilizzando i dati dell immagine modulatrice si compone il colore finale. L utilizzo di questa tecnologia permette di caricare in memoria fino a 3200 texture RGBA8 256x256 nella memoria video del dispositivo contemporaneamente usando il formato a 4bpp. Figura 3 - Compressione PVRTC e S3TC 16

17 Soluzione Proposta Schema dell Architettura Com è possibile osservare dallo schema nella pagina seguente l applicazione è stata progettata per essere molto parallelizzabile. Una servlet installata su un server WEB apache funziona da interfaccia e primo livello di cache per la raccolta dei dati necessari al rendering del terreno attraverso due servizi pubblici WMS e DEM. All interno della servlet un software per la compressione PVRTC processa le immagini ricevute da server WMS per trasformarle nel formato adatto all harware; allo stesso modo i dati DEM vengono processati per essere pronti per il caricamento in memoria. 17

18 Soluzione Proposta 2010 Figura 4 - Schema dell'architettura. La parte dedicata alla CPU è divisa in quattro parti logiche alle quali sono assegnati uno o più thread. La prima si occupa di gestire l input dall utente, ne intercetta gli eventi e modifica il punto di vista dell utente nel geobrowser. Il Data-Manager s interfaccia alla servlet e invia le richieste per il download dei dati, inoltre si occupa della gestione dei dati in memoria, scarica e carica i dati in memoria video quando richiesto e tiene traccia di tutti i dati disponibili. Implementa un livello di cache sulla memoria fissa del dispositivo, il download è effettuato solo se i dati richiesti non sono disponibili localmente. Fatta eccezione per l effettivo caricamento in memoria video dei dati, che non è possibile parallelizzare, il procedimento di download e preparazione dei dati avviene in thread separati per ogni richiesta permettendo cosi all applicazione di mantenere l interattività durante il download. L algoritmo di pre-rendering si occupa della logica della suddivisione in tile del terreno. Basandosi sul POV e dai dati attualmente disponibili, attraverso un 18

19 Soluzione Proposta 2010 algoritmo di suddivisione ricorsiva dei tile e due tecniche di culling genera una lista di tile pronti al rendering. Con la lista generata dal pre-rendering, nel thread dove è presente il contesto OpenGL ES, avviene l effettiva richiesta di rendering alla GPU. Lo stesso thread si deve occupare obbligatoriamente anche del caricamento in memoria dei dati necessari quando istruito dal data manager bloccando il rendering. Ciò è dovuto al fatto che i driver a disposizione non supportano il DMA che permetterebbe di accedere direttamente alla memoria destinata alla scheda video e quindi di caricare dati da thread separati. In fine la GPU, istruita dal Rendering-Loop e carica dei dati necessari, va a disegnare l immagine finale per ogni frame utilizzando due semplici shader, il Vertex shader si occuperà di processare i vertici e i triangoli eseguendo trasformazioni e traslazioni dei dati 3D mentre il Fragment Shader leggerà i dati delle texture caricate che andranno cosi a definire il colore finale dell immagine renderizzata. 19

20 Soluzione Proposta 2010 Level of Detail, Il Quadtree dei Tile Perché sia possibile renderizzare livelli di dettaglio diverso, in un applicazione come un geobrowser, è necessario implementare un sistema di LOD avanzato, i sistemi comuni come il mip mapping sono pensati per avere differenze di livello di dettaglio limitate e non prevedono l ottimizzazione sull uso della memoria. Figura 5 Bianco: Tile Disegnati, Nero: Tile Esclusi per Frustum Culling Nell applicazione sviluppata è stato implementato un sistema personalizzato per avere risoluzioni da centinaia di km/pixel fino a frazioni di m/pixel. Per eseguire il rendering della superficie terrestre si parte alla risoluzione base, dove un tile corrisponde a 20x20 gradi. Questo porta a un primo livello composto di 18x9 tile. Tale soluzione è stata scelta per corrispondere alla risoluzione del servizio DEM utilizzato. In questo modo si ha una corrispondenza 1:1 con i file BIL ed i tile. 20

21 Soluzione Proposta 2010 Nel momento in cui la visuale si avvicina alla superfice terrestre, e la risoluzione spaziale diminuisce, i tile renderizzati sono suddivisi in quattro sotto tile di dimensioni inferiori aventi tuttavia textures alla stessa risoluzione aumentando cosi il dettaglio. Questo è eseguito finché la distanza tra il nostro punto di vista ed i nuovi tile non è sufficientemente elevata rispetto alla dimensione stessa dei tile o finche non si raggiunge il livello massimo consentito. Per gestire le suddivisioni sono generati diversi quadtree. Ogni tile di primo livello corrisponde a una root di un quadtree avente a sua volta quattro figli. Grazie a questa struttura è facile associare a ogni tile tutti i dati relativi. Implementazione del Culling Un sistema di LOD come descritto sopra sarebbe del tutto inattuabile se non fosse integrato insieme con un sistema di culling dei tile. Se si disegnassero tutti i tile di un determinato livello il numero di tile da disegnare salirebbe esponenzialmente, per il livello uno sarebbero 162, a livello tre sarebbero 2592, a livello otto sarebbero più di due milioni. Per ovviare a questo problema i tile non visibili sono scartati. Grazie alla struttura del quadtree sappiamo che se il tile padre non è visibile allora anche tutti i figli non lo sono. Sfruttando questa proprietà possiamo implementare un sistema di hierarchical 21

22 Soluzione Proposta 2010 culling basato su due tecniche. La prima, la più comune è il frustum culling, la seconda, specifica di quest applicazione, è una tecnica basata sull angolo d incidenza tra il tile e la telecamera. L insieme delle due tecniche permette di avere un efficienza sul culling e raramente sono disegnati più di venti tile alla volta durante il normale utilizzo dell applicazione. Figura 6 - Blu: Tile Esclusi per incidenza. Il Frustum Culling Il frustum culling è una tecnica di culling basata sul volume visivo della matrice di proiezione usata per la trasformazione delle coordinate. Una matrice di proiezione prospettica genera un frustum che può essere definito da 6 piani (Left,Right,Top,Bottom,Near,Far). Il software oltre a generare la classica matrice di trasformazione modifica i valori del Near e Far Plane per ottenere una maggiore risoluzione sullo Z-Buffer. Conoscendo i sei piani che definiscono il frustum è possibile stabilire se un punto è all interno di essi facendo un controllo sulla distanza tra punto e piano relativo. Se la distanza è positiva per tutti sei i piani 22

23 Soluzione Proposta 2010 significa che il punto si trova all interno del frustum. Si può eseguire lo stesso processo per una sfera semplicemente tenendo conto del suo raggio quando si fa il controllo sulla distanza. Per verificare l effettiva visibilità di un tile il programma calcola quindi una sfera (Bounding Sphere) che contiene completamente il tile e verifica se tale sfera è almeno in parte all interno del frustum della telecamera. Tale controllo non è perfetto e dato che una sfera è comunque un approssimazione dei tile è possibile che vengano disegnati tile che non sono all interno dell area di visualizzazione. Figura 7 - Punto di vista reale ( Blu: Tile esclusi per incidenza) Culling basato sull incidenza Questa tecnica di culling si basa su una caratteristica della sfera. Se l incidenza di un raggio che ha origini al nostro punto di vista su un certo punto di una sfera è minore di zero allora quel punto non è visibile dal punto di vista. Questo significa semplicemente che i tile nell emisfero retrostante rispetto al nostro punto di vista, com è ovvio che sia, non sono visibili. Tuttavia tali tile possono comunque risulatare all interno del frustum della telecamera e quindi essere disegnati. Se si calcola l angolo tra il vettore normale di un tile e un vettore con direzione pov -> tile possiamo dire che se quest angolo è maggiore di 90 allora il tile non è visibile. Effettuare questo test è molto veloce e permette di escludere molti tile in alcune situazioni, vedi Figura 7. 23

24 Soluzione Proposta 2010 Figura 8 - Verde: Frustum, Rosso: Intersezione Frustum e Superficie. Culling, Considerazioni In Figura 7 sono visibili tile bianchi all esterno del frustum (Notare che il limite della visualizzazione è dato dalla linea rossa). Questo perché sfere contenenti tile completamente esterni al Frustum potrebbero intersecarlo. Soluzioni migliori prevedono l uso di forme di bounding diverse come il cilindro, o tecniche basate sul calcolo della visibilità dei triangoli; più complesse tuttavia da implementare e più computazionalmente pesanti. 24

25 Soluzione Proposta 2010 Vertex Shader e VBO (Vertex Buffer Object) attribute vec4 position; attribute float height; varying vec2 textcoord; uniform float size,x,y; uniform mat4 u_matviewprojection; uniform sampler2d s_texture; void main() { textcoord = vec2(position.x+0.5, position.y+0.5); vec4 pos = position; pos.x = (pos.x * size + x) ; pos.y = (pos.y * size + y); pos.x = * (pos.x - 9.0) / 9.0; pos.y = * (pos.y - 4.0) / 9.0; float coslat=cos(pos.y); float sinlat=sin(pos.y); float coslon=cos(pos.x); float sinlon=sin(pos.x); float equatorialradius = ; float distortioncoeff = ; float rpm = equatorialradius / sqrt(1.0 - distortioncoeff * sinlat * sinlat); pos.x = (rpm + 0.0) * coslat * sinlon; pos.y = (rpm * (1.0 - distortioncoeff) + 0.0) * sinlat; pos.z = (rpm + height) * coslat * coslon; gl_position = u_matviewprojection * pos; } Nell applicazione 3D il vertex shader non si occupa solamente della proiezione dei vertici ma anche dell effettiva trasformazione in sfera dei tile. La CPU disegna costantemente un unico tile nella stessa posizione, le uniche cose che cambiano sono i parametri passati al vertex shader con i quali il programma trasforma i vertici nella posizione e dimensione adatta. I parametri effettivi passati o generati dallo shader sono elencati di seguito. In particolare il programma andrà a basarsi su size, x, y per traslare il vertice in due dimensioni. In seguito, durante la 25

26 Soluzione Proposta 2010 trasformazione in sfera del tile, sarà aggiunta all altezza base, computata da latitudine e longitudine, la componente di altezza letta dal VBO andando cosi a trasformare il vertice nel punto esatto. Si può inoltre vedere come le coordinte textures siano generate on-the-fly dallo shader textcoord = vec2(position.x+0.5, position.y+0.5); Questo permette, in caso di utilizzo di alter tecniche di rendering, di rimappare ogni tile a piacimento a seconda di ulteriori parametri. PARAMETER USE position Actual vertex position before transforming height VBO ready to get used for displacement textcoord TextCoords generated on the fly for the Fragment Shader Based on position size Parameter used to scale the tile to the real size x, y Parameters used to translate the tile to the correct position u_matviewprojection Transformation matrix, representing view and projection s_texture Diffuse texture pointer. 26

27 Soluzione Proposta 2010 Le skirts Quando durante il rendering sono disegnati i tile su un terreno che non è piano, può succedere che i bordi dei tile adiacenti e a LOD differenti, non condividano la coordinata Z o l altitudine. Questo perché la mappatura dell altezza non è perfetta e i file bil a diversi LOD contengono informazioni leggermente differenti. Cioè se andiamo a interpolare linearmente le altezze di un DEM a bassa risoluzione non corrisponderanno ovviamente a quelle di un DEM a risoluzione maggiore. Questo può causare dei buchi nel rendering e quindi rovinare la percezione del terreno e spezzare la continuità del modello tridimensionale. Per ovviare a questo problema sono possibili molteplici soluzioni. La tecnica implementata nel prototipo è di utilizzare delle skirts per i tile [Gonne]. Le skirts sono una serie di poligoni aggiuntivi che circondano tutti i tile andando quindi a formare delle gonne. E facile capire come sono costruite se pensiamo a una semplice operazione di estrusione sul tile. I vertici delle skirts andranno a ereditare le coordinate texture dai vertici soprastanti Figura 9 Wireframe skirts venendo cosi renderizzati con i colori dei bordi dei tile dando un senso di continuità al terreno. In figura 9 è possibile osservare le geometrie aggiuntive generate dalle skirts. Ai bordi dei tile si notano i poligoni verticali che vanno a coprire gli eventuali buchi di rendering. 27

28 Soluzione Proposta 2010 Figura 10 - Tile con skirts Figura 11 - Tile Senza Skirts Fragment Shader e le Texture Compresse Il Fragment shader utilizzato è estremamente semplice ed esegue unicamente l operazione di leggere dalla texture il colore della mappa e restituirlo in output. Lo shader corrente è solo la base dell algoritmo necessario a renderizzare le immagini più realisticamente. Vanno ancora implementata la parte d illuminazione che necessita tuttavia delle informazioni sul vettore normale delle superfici che non 28

29 Soluzione Proposta 2010 sono al momento disponibili. La natura del motore di rendering adottato impone alcuni limiti su come ottenere le normali delle superfici. Se per oggetti statici o conosciuti a priori le normali possono essere computate prima, quando si generano le geometrie on-the-fly, come nel nostro caso, questo non è possibile. Le normali potrebbero essere computate dall analisi dei dati DEM quindi generando una texture aggiuntiva per il Fragment Shader. Tale soluzione tuttavia andrebbe a pesare ulteriormente sul già limitato quantitativo di memoria del dispositivo. La servlet Per ovviare al problema della compressione delle texture è stata implementata una servlet in grado di funzionare oltre che come servizio per la compressione delle texture anche come primo livello di cache. Dato che la compressione PVRTC utilizzata nelle GPU SGX è estremamente pesante da effettuare e, in ogni caso, non esistono ancora librerie per effettuarla sul dispositivo mobile; la servlet si occuperà di comprimerla attraverso un applicazione apposita. Dato che comprimere una piccola texture 256x256, al formato utilizzato [4bpp - Low Quality], su una macchina intel a 2GHz impiega ben due secondi, è stato implementato una cache a livello di file in modo che richieste successive dello stesso tile non abbiano bisogno di nuovo calcolo. I tile calcolati sono quindi salvati sul server web in una cache. La servlet riceve la richiesta attraverso un URL che come parametro ha un ulteriore URL che corrisponde all indirizzo dell immagine da comprimere. L indirizzo dell immagine non deve necessariamente essere quello di un server WMS e, in effetti, la servlet può comprimere qualsiasi immagine presente sul web se appartenente a uno dei formati supportati [jpg, png]. Il sistema di cache Mantenere in memoria tutte le texture scaricate comporterebbe un enorme spreco di memoria. Per ovviare a ciò è stato implementato un sistema di cache a più livelli. Quando è richiesta la texture di un certo tile per il rendering viene generato un thread che ha la funzione di caricarla in memoria. Per prima cosa il thread controlla che la texture non sia già presente nella memoria fisica del dispositivo, se è presente, la texture è caricata direttamente e segnata come pronta al caricamento sulla GPU. Nel caso in cui la texture non sia presente, è generato un URL di richiesta per la servlet che si occuperà di preparare e restituire la texture. Una volta ottenuta la texture dalla servlet, il thread ne salva una copia sulla memoria fisica del dispositivo e segna la copia in memoria RAM come pronta al caricamento sulla GPU. 29

30 Soluzione Proposta 2010 Solo il thread di rendering può eseguire l effettivo caricamento in memoria video delle texture pronte al caricamento; sfortunatamente questo implica che durante il caricamento effettivo in memoria il thread di rendering sia bloccato. Questo è un limite delle librerie OpenGL che solitamente è aggirato attraverso l uso del DMA [Direct Memory Access] che non è tuttavia disponibile sul dispositivo utilizzato. 30

31 I problemi riscontrati Displacement Mapping e il Vertex Texture Fetch La soluzione che inizialmente era stata pensata per eseguire il rendering del terreno prevedeva l utilizzo di una tecnica, già da qualche tempo utilizzata nei software d intrattenimento, chiamata Displacement Mapping. Il Displacement Mapping è una tecnica che prevede l utilizzo di texture in bianco e nero per compiere un displacement (Uno scostamento) dei vertici di una superfice. Attraverso l utilizzo del vertex shader è possibile andare a leggere i dati presenti in una texture e quindi utilizzarli per eseguire uno spostamento, solitamente lungo la normle dei vertici di un oggetto 3D. Nel caso del rendering di un terreno 3D è facile immaginare che disegnando un oggetto piano formato da molti poligoni, è possibile applicarci una texture in bianco e nero, quindi, nel vertex shader, andare a leggere il punto relativo e scostare il vertice lungo l asse z di un valore proporzionale al colore della texture. L operazione di letture delle texture nel vertex shader è chiamata Vertex Texture Fetch [VTF]. I vantaggi di questa tecnica sono molteplici. Il Vertex Texture Fetch funziona esattamente come la lettura di una texture del Fragment Shader e quindi trae vantaggio dall hardware della GPU. E possibile utilizzare diversi tipi d interpolazione dei dati [punto, bilineare, trilineare]. Le texture traggono vantaggio della compressione hardware. E possibile mappare più tile sulla stessa texture andando a modificare le coordinate U.V. Ma soprattutto le texture possono avere qualsiasi risoluzione e non sono legate alla risoluzione poligonale del tile. Questo significa che potremmo variare le risoluzioni poligonali dei tile in realtime senza andare a modificare le texture di displacement. Tuttavia ciò non è possibile sul dispositivo utilizzato; anche se la GPU montata supporta il Vertex Texture fetch, i driver disponibili al momento della realizzazione del software non ne hanno permesso l utilizzo. Questo ci ha portato a utilizzare i Vertex Buffer Object [VBO]; i VBO sono array ad alte prestazioni solitamente utilizzati per lo storage di dati 3D e parametri nella memoria video e per l ottimizzazione del rendering. Nel nostro caso sono stati utilizzati per eseguire il Displacement. Utilizzare i VBO implica però che ci sia una corrispondenza 1:1 tra il numero di vertici dell oggetto disegnato e il numero di elementi dell array. Quando il VBO è passato come parametro alla GPU è possibile leggerne i valori dal Vertex shader e quindi utilizzare i dati presenti per eseguire il Displacement del vertice. Al contrario delle texture però i VBO sono strettamente collegati all oggetto renderizzato. Se andiamo a disegnare un tile a risoluzione maggiore, cioè con più poligoni, con lo stesso VBO la corrispondenza tra gli elementi 31

32 Problemi Riscontrati 2010 dell array e i vertici dell oggetto verrà a mancare. Con questa soluzione si perde quindi la possibilità di cambiare la risoluzione del tile a piacimento poiché questo prevedrebbe l aggiornamento di tutti i VBO caricati in memoria. La compressione PVRTC Inizialmente il software è stato sviluppato senza tenere conto della compressione texture, tuttavia i limiti dovuti a tale scelta non hanno tardato a farsi notare. Con un limite di memoria video utilizzabile dalle texture impostato a 50 MB è possibile caricare sul dispositivo utilizzando texture non compresse circa 200 textures 256x256x32bit. Tuttavia navigando sul terreno, è estremamante facile superare questo limite. Dato che le texture compresse permettono, oltre che un risparmio di memoria, anche un aumento prestazionale considerevole, è stato obbligatorio introdurle. La compressione texture PVRTC, o la compressione texture in genere, potrebbe sembrare la panacea di tutti i problemi di memoria sui dispositivi con performance limitate. Tuttavia l utilizzo di questa tecnica non è banale. Se in un applicazione 3D classica come potrebbe essere un software d intrattenimento, le texture sono solitamente già presenti sul dispositivo al momento dell avvio e quindi fornite nel formato più comodo e performante, ciò non è possibile per un geobrowser. I servizi WMS solitamente offrono la possibilità di scaricare le texture in vari formati [png, jpg, dds] tuttavia essendo il formato PVR relativamente nuovo e di nicchia non è mai presente. Non esistono quindi servizi in grado di fornire direttamente le texture compresse nel formato compatibile con il dispositivo utilizzato. Attualmente l unico modo per ottenere una texture PVRTC è quella di crearla attraverso una libreria sviluppata da Imagination Technologies, l azienda che sviluppa le GPU SGX. Comprimere una texture come quelle utilizzate dall applicazione [256x256x32bit] risulta essere estremamente pesante. Oltre a richiedere circa 30MB di memoria il processo impiega circa due secondi se eseguito su CPU intel a 2GHz. Questo, comporta che, anche esistesse una libereria per eseguire la compressione sul dispositivo, il tempo per eseguire il processo sarebbe troppo elevato, più di 10 secondi per un singolo tile. Per questo è stata sviluppata una servlet di compressione da utilizzare anche come primo livello di cache. Lo Z-Buffer, il limite dei 16 bit Uno dei problemi delle specifiche OpenGL ES 2.0 è la precisione dello Z-Buffer limitata a 16 bit. Lo Z-Buffer è un buffer creato per tenere traccia di cosa è stato disegnato sullo schermo dalla GPU. 32

33 Problemi Riscontrati Figura 31 - Esempio di Z-Fighting tra 2 piani Lo Z-Buffer, se attivato, ha la stessa risoluzione del render buffer corrente e solitamente può essere usato a precisioni multiple. Già da molto tempo sui dispositivi desktop, secondo le specifiche OpenGL e DirectX più aggiornate, è possibile scegliere tra Z-Buffer a 24b e Z-Buffer a 16b. All inizio del rendering di ogni frame la scheda grafica esegue una pulitura dello Z-Buffer assegnando a tutti i pixel il valore 0. Prima che la GPU inizi a calcolare il colore di un pixel, fa un controllo tra la profondità di quel pixel e quella del pixel salvato sullo Z-Buffer; solo se la profondità è minore, la GPU va a calcolare e salvare il nuovo colore altrimenti salta il calcolo. Se il pixel è effettivamente calcolato e salvato sul render buffer, allora anche lo Z-Buffer è aggiornato con la nuova profondità. Com è ovvio che sia uno Z-Buffer a 16 bit per pixel permette di avere 2^16 piani di disegno. La precisione spaziale finale dipende poi dal frustum della telecamera; più precisamente dalla distanza tra near e far plane definiti nella matrice di proiezione. Se due triangoli o facce condividono la stessa profondità, allora avviene un fenomeno detto Z-Fighting (Vedi Figura 11). Per combattere questo fenomeno si può intervenire su più fronti. Solitamente si va ad aumentare la precisione a 24 bit, operazione che, sulle GPU odierne, ha un impatto sulle prestazioni quasi nullo. Tuttavia le specifiche OpenGL ES 2.0 prevedono solo lo Z- Buffer a 16 Bit. In un applicazione come un geobrowser, il range di profondità e la precisione necessaria sono enormi. Questo può causare un fenomeno tra un tile e le sue skirts. Un altra operazione che può migliorare la situazione è di avere un

BDX 3D-EDITOR (autore: Marco Bedulli) Scopo del software. Caratteristiche fondamentali. Linguaggi utilizzati. Navigazione 3D

BDX 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

Dettagli

GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain.

GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain. *+33(GLWRU GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain. Il programma si basa su un architettura di tasti funzionali presenti

Dettagli

lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000

lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Capittol lo 2 Visualizzazione 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Nel primo capitolo sono state analizzate le diverse componenti della finestra di Word 2000: barra del titolo, barra dei menu,

Dettagli

Capitolo V : Il colore nelle immagini digitali

Capitolo 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

Dettagli

Capitolo 13: L offerta dell impresa e il surplus del produttore

Capitolo 13: L offerta dell impresa e il surplus del produttore Capitolo 13: L offerta dell impresa e il surplus del produttore 13.1: Introduzione L analisi dei due capitoli precedenti ha fornito tutti i concetti necessari per affrontare l argomento di questo capitolo:

Dettagli

Sistema operativo: Gestione della memoria

Sistema operativo: Gestione della memoria Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Sistema operativo: Gestione della memoria La presente dispensa e

Dettagli

Sistema operativo. Sommario. Sistema operativo...1 Browser...1. Convenzioni adottate

Sistema operativo. Sommario. Sistema operativo...1 Browser...1. Convenzioni adottate MODULO BASE Quanto segue deve essere rispettato se si vuole che le immagini presentate nei vari moduli corrispondano, con buona probabilità, a quanto apparirà nello schermo del proprio computer nel momento

Dettagli

La Videosorveglianza Criteri per il dimensionamento dello storage

La Videosorveglianza Criteri per il dimensionamento dello storage La Videosorveglianza Criteri per il dimensionamento dello storage Serie vol 1005/2010 L importanza di registrare le immagini video Il valore di un sistema di videosorveglianza non dipende solo dall abilità

Dettagli

3DE Modeling Professional

3DE Modeling Professional 3DE Modeling Professional 3DE Modeling Professional è la parte di 3DE Modeling Suite che si occupa della modellazione 3D automatica di oggetti ed edifici a partire da nuvole di punti ottenute con scanner

Dettagli

Fotografia corso base. Educazione Permanente Treviso. Specifiche digitali. Federico Covre. http://arcifotografiabase.wordpress.com

Fotografia corso base. Educazione Permanente Treviso. Specifiche digitali. Federico Covre. http://arcifotografiabase.wordpress.com Fotografia corso base Educazione Permanente Treviso Specifiche digitali http://arcifotografiabase.wordpress.com Federico Covre Pixel (picture element) Indica ciascuno degli elementi puntiformi che compongono

Dettagli

Architettura hardware

Architettura hardware Architettura dell elaboratore Architettura hardware la parte che si può prendere a calci Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione

Dettagli

Gestione della memoria centrale

Gestione della memoria centrale Gestione della memoria centrale Un programma per essere eseguito deve risiedere in memoria principale e lo stesso vale per i dati su cui esso opera In un sistema multitasking molti processi vengono eseguiti

Dettagli

I MODULI Q.A.T. PANORAMICA. La soluzione modulare di gestione del Sistema Qualità Aziendale

I MODULI Q.A.T. PANORAMICA. La soluzione modulare di gestione del Sistema Qualità Aziendale La soluzione modulare di gestione del Sistema Qualità Aziendale I MODULI Q.A.T. - Gestione clienti / fornitori - Gestione strumenti di misura - Gestione verifiche ispettive - Gestione documentazione del

Dettagli

Registratori di Cassa

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

Dettagli

Setup e installazione

Setup 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

Dettagli

LE FUNZIONI A DUE VARIABILI

LE FUNZIONI A DUE VARIABILI Capitolo I LE FUNZIONI A DUE VARIABILI In questo primo capitolo introduciamo alcune definizioni di base delle funzioni reali a due variabili reali. Nel seguito R denoterà l insieme dei numeri reali mentre

Dettagli

PORTALE CLIENTI Manuale utente

PORTALE CLIENTI Manuale utente PORTALE CLIENTI Manuale utente Sommario 1. Accesso al portale 2. Home Page e login 3. Area riservata 4. Pagina dettaglio procedura 5. Pagina dettaglio programma 6. Installazione dei programmi Sistema operativo

Dettagli

Calcolatori Elettronici A a.a. 2008/2009

Calcolatori Elettronici A a.a. 2008/2009 Calcolatori Elettronici A a.a. 2008/2009 PRESTAZIONI DEL CALCOLATORE Massimiliano Giacomin Due dimensioni Tempo di risposta (o tempo di esecuzione): il tempo totale impiegato per eseguire un task (include

Dettagli

Mac Application Manager 1.3 (SOLO PER TIGER)

Mac Application Manager 1.3 (SOLO PER TIGER) Mac Application Manager 1.3 (SOLO PER TIGER) MacApplicationManager ha lo scopo di raccogliere in maniera centralizzata le informazioni piu salienti dei nostri Mac in rete e di associare a ciascun Mac i

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

Sistema di ripresa con fotocamera digitale fissa Calibrazione

Sistema di ripresa con fotocamera digitale fissa Calibrazione Sistema di ripresa con fotocamera digitale fissa Calibrazione TUTORIAL CALIBRAZIONE FOTOCAMERA Sommario 1. Interfacciamento PC... 3 2. Collocamento fotocamera... 4 3. Distanza di ripresa... 5 4. Interfacciamento

Dettagli

ICARO Terminal Server per Aprile

ICARO Terminal Server per Aprile ICARO Terminal Server per Aprile Icaro è un software aggiuntivo per Aprile (gestionale per centri estetici e parrucchieri) con funzionalità di terminal server: gira sullo stesso pc dove è installato il

Dettagli

HBase Data Model. in più : le colonne sono raccolte in gruppi di colonne detti Column Family; Cosa cambia dunque?

HBase Data Model. in più : le colonne sono raccolte in gruppi di colonne detti Column Family; Cosa cambia dunque? NOSQL Data Model HBase si ispira a BigTable di Google e perciò rientra nella categoria dei column store; tuttavia da un punto di vista logico i dati sono ancora organizzati in forma di tabelle, in cui

Dettagli

Input/Output. Moduli di Input/ Output. gestiscono quantità di dati differenti a velocità diverse in formati diversi. n Grande varietà di periferiche

Input/Output. Moduli di Input/ Output. gestiscono quantità di dati differenti a velocità diverse in formati diversi. n Grande varietà di periferiche Input/Output n Grande varietà di periferiche gestiscono quantità di dati differenti a velocità diverse in formati diversi n Tutti più lenti della CPU e della RAM n Necessità di avere moduli di I/O Moduli

Dettagli

Scuola Digitale. Manuale utente. Copyright 2014, Axios Italia

Scuola Digitale. Manuale utente. Copyright 2014, Axios Italia Scuola Digitale Manuale utente Copyright 2014, Axios Italia 1 SOMMARIO SOMMARIO... 2 Accesso al pannello di controllo di Scuola Digitale... 3 Amministrazione trasparente... 4 Premessa... 4 Codice HTML

Dettagli

1) GESTIONE DELLE POSTAZIONI REMOTE

1) GESTIONE DELLE POSTAZIONI REMOTE IMPORTAZIONE ESPORTAZIONE DATI VIA FTP Per FTP ( FILE TRANSFER PROTOCOL) si intende il protocollo di internet che permette di trasferire documenti di qualsiasi tipo tra siti differenti. Per l utilizzo

Dettagli

Programma Gestione Presenze Manuale autorizzatore. Versione 1.0 25/08/2010. Area Sistemi Informatici - Università di Pisa

Programma Gestione Presenze Manuale autorizzatore. Versione 1.0 25/08/2010. Area Sistemi Informatici - Università di Pisa - Università di Pisa Programma Gestione Presenze Manuale autorizzatore Versione 1.0 25/08/2010 Email: service@adm.unipi.it 1 1 Sommario - Università di Pisa 1 SOMMARIO... 2 2 ACCESSO AL PROGRAMMA... 3

Dettagli

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. D. Talia - UNICAL. Sistemi Operativi 9.1

Sistemi 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

Dettagli

Funzioni in C. Violetta Lonati

Funzioni 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

Dettagli

Università degli Studi di Salerno

Università degli Studi di Salerno Università degli Studi di Salerno Facoltà di Scienze Matematiche Fisiche e Naturali Corso di Laurea in Informatica Tesi di Laurea Algoritmi basati su formule di quadratura interpolatorie per GPU ABSTRACT

Dettagli

Esame di INFORMATICA

Esame di INFORMATICA Università di L Aquila Facoltà di Biotecnologie Esame di INFORMATICA Lezione 4 MACCHINA DI VON NEUMANN Anni 40 i dati e i programmi che descrivono come elaborare i dati possono essere codificati nello

Dettagli

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14. Pietro Frasca.

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14. Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14 Pietro Frasca Lezione 11 Martedì 12-11-2013 1 Tecniche di allocazione mediante free list Generalmente,

Dettagli

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile Problemi connessi all utilizzo di un numero di bit limitato Abbiamo visto quali sono i vantaggi dell utilizzo della rappresentazione in complemento alla base: corrispondenza biunivoca fra rappresentazione

Dettagli

UTILIZZATORI A VALLE: COME RENDERE NOTI GLI USI AI FORNITORI

UTILIZZATORI A VALLE: COME RENDERE NOTI GLI USI AI FORNITORI UTILIZZATORI A VALLE: COME RENDERE NOTI GLI USI AI FORNITORI Un utilizzatore a valle di sostanze chimiche dovrebbe informare i propri fornitori riguardo al suo utilizzo delle sostanze (come tali o all

Dettagli

Approfondimento: Migrazione dei database e backup della posta

Approfondimento: Migrazione dei database e backup della posta Approfondimento: Migrazione dei database e backup della posta In questo approfondimento ci focalizzeremo sulla migrazione dei database analizzando le differenze operative e le varie implicazioni a seconda

Dettagli

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino Il Sistema Operativo Il Sistema Operativo è uno strato software che: opera direttamente sull hardware; isola dai dettagli dell architettura hardware; fornisce un insieme di funzionalità di alto livello.

Dettagli

Introduzione. Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD... 6

Introduzione. Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD... 6 Appunti di Calcolatori Elettronici Esecuzione di istruzioni in parallelo Introduzione... 1 Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD...

Dettagli

NOTE OPERATIVE. Prodotto Inaz Download Manager. Release 1.3.0

NOTE OPERATIVE. Prodotto Inaz Download Manager. Release 1.3.0 Prodotto Inaz Download Manager Release 1.3.0 Tipo release COMPLETA RIEPILOGO ARGOMENTI 1. Introduzione... 2 2. Architettura... 3 3. Configurazione... 4 3.1 Parametri di connessione a Internet... 4 3.2

Dettagli

(Esercizi Tratti da Temi d esame degli ordinamenti precedenti)

(Esercizi Tratti da Temi d esame degli ordinamenti precedenti) (Esercizi Tratti da Temi d esame degli ordinamenti precedenti) Esercizio 1 L'agenzia viaggi GV - Grandi Viaggi vi commissiona l'implementazione della funzione AssegnaVolo. Tale funzione riceve due liste

Dettagli

MANUALEDIUTILIZZO MODULO CRM POSTVENDITA

MANUALEDIUTILIZZO MODULO CRM POSTVENDITA MANUALEDIUTILIZZO MODULO CRM POSTVENDITA INDICE INTRODUZIONE INSERIMENTO CHIAMATA CHIAMATE Dettaglio Chiamate Macchine Coinvolte Documenti Riepilogo MACCHINE Dettaglio Macchine Documenti Interventi MACCHINE

Dettagli

SOMMARIO... 3 INTRODUZIONE...

SOMMARIO... 3 INTRODUZIONE... Sommario SOMMARIO... 3 INTRODUZIONE... 4 INTRODUZIONE ALLE FUNZIONALITÀ DEL PROGRAMMA INTRAWEB... 4 STRUTTURA DEL MANUALE... 4 INSTALLAZIONE INRAWEB VER. 11.0.0.0... 5 1 GESTIONE INTRAWEB VER 11.0.0.0...

Dettagli

Animazioni 3D. Informatica Grafica I. Le basi dell'animazione 3D. Le basi dell'animazione 3D. Le basi dell'animazione 3D. Le basi dell'animazione 3D

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

Dettagli

Le 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 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

Dettagli

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. Implementazione del File System. Struttura del File System. Implementazione

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. Implementazione del File System. Struttura del File System. Implementazione 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

Dettagli

I Thread. I Thread. I due processi dovrebbero lavorare sullo stesso testo

I Thread. I Thread. I due processi dovrebbero lavorare sullo stesso testo I Thread 1 Consideriamo due processi che devono lavorare sugli stessi dati. Come possono fare, se ogni processo ha la propria area dati (ossia, gli spazi di indirizzamento dei due processi sono separati)?

Dettagli

Dispositivi di rete. Ripetitori. Hub

Dispositivi di rete. Ripetitori. Hub Ripetitori Dispositivi di rete I ripetitori aumentano la distanza che può essere ragginta dai dispositivi Ethernet per trasmettere dati l'uno rispetto all'altro. Le distanze coperte dai cavi sono limitate

Dettagli

ELABORAZIONE DI DATI TRIDIMENSIONALI - RELAZIONE HOMEWORK 2

ELABORAZIONE DI DATI TRIDIMENSIONALI - RELAZIONE HOMEWORK 2 DAVIDE ZANIN 1035601 ELABORAZIONE DI DATI TRIDIMENSIONALI - RELAZIONE HOMEWORK 2 SOMMARIO Elaborazione di dati tridimensionali - Relazione Homework 2... 1 Obiettivo... 2 Descrizione della procedura seguita...

Dettagli

Le immagini digitali. Le immagini digitali. Caterina Balletti. Caterina Balletti. Immagini grafiche. Trattamento di immagini digitali.

Le immagini digitali. Le immagini digitali. Caterina Balletti. Caterina Balletti. Immagini grafiche. Trattamento di immagini digitali. 1 Le immagini digitali Le immagini digitali Università IUAV di venezia Trattamento di immagini digitali immagini grafiche immagini raster immagini vettoriali acquisizione trattamento geometrico trattamento

Dettagli

Più processori uguale più velocità?

Più processori uguale più velocità? Più processori uguale più velocità? e un processore impiega per eseguire un programma un tempo T, un sistema formato da P processori dello stesso tipo esegue lo stesso programma in un tempo TP T / P? In

Dettagli

A intervalli regolari ogni router manda la sua tabella a tutti i vicini, e riceve quelle dei vicini.

A intervalli regolari ogni router manda la sua tabella a tutti i vicini, e riceve quelle dei vicini. Algoritmi di routing dinamici (pag.89) UdA2_L5 Nelle moderne reti si usano algoritmi dinamici, che si adattano automaticamente ai cambiamenti della rete. Questi algoritmi non sono eseguiti solo all'avvio

Dettagli

Che differenza c è tra una richiesta XML ed una domanda XML? (pag. 4)

Che differenza c è tra una richiesta XML ed una domanda XML? (pag. 4) FAQ INVIO DOMANDE CIGO CON FLUSSO XML Cosa serve per inviare una domanda CIGO con il flusso XML? (pag. 2) Come si prepara una domanda in formato XML? (pag. 3) Che differenza c è tra una richiesta XML ed

Dettagli

InfiXor. il programma facile e versatile per preventivi veloci e completi. il software di preventivazione per produttori e rivenditori di infissi

InfiXor. il programma facile e versatile per preventivi veloci e completi. il software di preventivazione per produttori e rivenditori di infissi InfiXor il software di preventivazione per produttori e rivenditori di infissi di Paolo Audisio SOFTWARE PROGRAMMAZIONE CONSULENZA INFORMATICA sito internet: www.infixor.it Via Carlo Zucchi 19 40134 BOLOGNA

Dettagli

AddCAD per ZWCad. Passa alla progettazione 3D rimanendo sul tuo Cad famigliare

AddCAD per ZWCad. Passa alla progettazione 3D rimanendo sul tuo Cad famigliare AddCAD per ZWCad Passa alla progettazione 3D rimanendo sul tuo Cad famigliare Passare alla progettazione 3D è un salto di qualità che molti Professionisti tentano di compiere, ma in tanti casi senza successo.

Dettagli

WEBGIS 1.0. Guida per l utente

WEBGIS 1.0. Guida per l utente WEBGIS 1.0 Guida per l utente SOMMARIO 1 INTRODUZIONE...3 2 FUNZIONALITA...4 2.1 Strumenti WebGIS... 4 2.1.1 Mappa... 5 2.1.2 Inquadramento mappa... 6 2.1.3 Toolbar... 7 2.1.4 Scala... 9 2.1.5 Legenda...

Dettagli

4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0

4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0 Rappresentazione dei numeri I numeri che siamo abituati ad utilizzare sono espressi utilizzando il sistema di numerazione decimale, che si chiama così perché utilizza 0 cifre (0,,2,3,4,5,6,7,8,9). Si dice

Dettagli

Ti consente di ricevere velocemente tutte le informazioni inviate dal personale, in maniera assolutamente puntuale, controllata ed organizzata.

Ti consente di ricevere velocemente tutte le informazioni inviate dal personale, in maniera assolutamente puntuale, controllata ed organizzata. Sommario A cosa serve InfoWEB?... 3 Quali informazioni posso comunicare o ricevere?... 3 Cosa significa visualizzare le informazioni in maniera differenziata in base al livello dell utente?... 4 Cosa significa

Dettagli

UNIVERSITÀ DEGLI STUDI DI SIENA

UNIVERSITÀ 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

Dettagli

lem logic enterprise manager

lem logic enterprise manager logic enterprise manager lem lem Logic Enterprise Manager Grazie all esperienza decennale in sistemi gestionali, Logic offre una soluzione modulare altamente configurabile pensata per la gestione delle

Dettagli

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software di sistema e software applicativo I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software soft ware soffice componente è la parte logica

Dettagli

SmartGPS Satellite Information System Guida all utilizzo del programma Sviluppato da Fabio e Marco Adriani Versione 1.0.0

SmartGPS Satellite Information System Guida all utilizzo del programma Sviluppato da Fabio e Marco Adriani Versione 1.0.0 SmartGPS Satellite Information System Guida all utilizzo del programma Sviluppato da Fabio e Marco Adriani Versione 1.0.0 Benvenuto in SmartGPS, l'applicativo che consente di determinare, utilizzando un

Dettagli

2003.06.16 Il sistema C.R.M. / E.R.M.

2003.06.16 Il sistema C.R.M. / E.R.M. 2003.06.16 Il sistema C.R.M. / E.R.M. Customer / Enterprise : Resource Management of Informations I-SKIPPER è un sistema di CONOSCENZE che raccoglie ed integra INFORMAZIONI COMMERCIALI, dati su Clienti,

Dettagli

IMMAGINE BITMAP E VETTORIALI

IMMAGINE BITMAP E VETTORIALI BITMAP VETTORIALE VETTORIALE BITMAP IMMAGINE BITMAP è una immagine costituita da una matrice di Pixel. PIXEL (picture element) indica ciascuno degli elementi puntiformi che compongono la rappresentazione

Dettagli

uadro Soluzioni software per L archiviazione elettronica dei documenti Gestione Aziendale Fa quadrato attorno alla tua azienda

uadro Soluzioni software per L archiviazione elettronica dei documenti Gestione Aziendale Fa quadrato attorno alla tua azienda Fa quadrato attorno alla tua azienda Soluzioni software per L archiviazione elettronica dei documenti Perché scegliere Q Archiviazione Elettronica dei Documenti? Tale applicativo si pone come obbiettivo

Dettagli

Sommario. Sommario 1. Introduzione 2. Funzionamento dell'applicazione 3. Scelta del punto di partenza 4. Filtro delle mete 5. La mappa delle mete 6

Sommario. Sommario 1. Introduzione 2. Funzionamento dell'applicazione 3. Scelta del punto di partenza 4. Filtro delle mete 5. La mappa delle mete 6 Sommario Sommario 1 Introduzione 2 Funzionamento dell'applicazione 3 Scelta del punto di partenza 4 Filtro delle mete 5 La mappa delle mete 6 Il percorso 7 Pag. - 1 - Introduzione L applicazione Scoprire

Dettagli

L APP PER IPHONE E ANDROID

L APP PER IPHONE E ANDROID L APP PER IPHONE E ANDROID PER LA PIANIFICAZIONE E GESTIONE DELLA FORZA LAVORO IN MOBILITA GIUGNO 2013 RCSOFT Software House 1 GAT MOBILE COS E GAT MOBILE è una APP rivolta alle aziende che si occupano

Dettagli

MArine Coastal Information SysTEm

MArine Coastal Information SysTEm GUIDA ALL UTILIZZO DELL INTERFACCIA CARTOGRAFICA Il MArine Coastal Information SysTEm è un sistema informativo integrato che permette di gestire dati ambientali interdisciplinari (fisici, chimici e biologici)

Dettagli

INDICE. Accesso al Portale Pag. 2. Nuovo preventivo - Ricerca articoli. Pag. 4. Nuovo preventivo Ordine. Pag. 6. Modificare il preventivo. Pag.

INDICE. Accesso al Portale Pag. 2. Nuovo preventivo - Ricerca articoli. Pag. 4. Nuovo preventivo Ordine. Pag. 6. Modificare il preventivo. Pag. Gentile Cliente, benvenuto nel Portale on-line dell Elettrica. Attraverso il nostro Portale potrà: consultare la disponibilità dei prodotti nei nostri magazzini, fare ordini, consultare i suoi prezzi personalizzati,

Dettagli

Introduzione alla Virtualizzazione

Introduzione alla Virtualizzazione Introduzione alla Virtualizzazione Dott. Luca Tasquier E-mail: luca.tasquier@unina2.it Virtualizzazione - 1 La virtualizzazione è una tecnologia software che sta cambiando il metodo d utilizzo delle risorse

Dettagli

Working with WMS Data

Working with WMS Data Working with WMS Data QGIS Tutorials and Tips Author Ujaval Gandhi http://google.com/+ujavalgandhi Translations by Pino Nicolosi a.k.a Rattus This work is licensed under a Creative Commons Attribution

Dettagli

Manuale Amministratore Legalmail Enterprise. Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise

Manuale Amministratore Legalmail Enterprise. Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise Manuale Amministratore Legalmail Enterprise Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise Pagina 2 di 16 Manuale Amministratore Legalmail Enterprise Introduzione a Legalmail Enterprise...3

Dettagli

e-dva - eni-depth Velocity Analysis

e-dva - eni-depth Velocity Analysis Lo scopo dell Analisi di Velocità di Migrazione (MVA) è quello di ottenere un modello della velocità nel sottosuolo che abbia dei tempi di riflessione compatibili con quelli osservati nei dati. Ciò significa

Dettagli

3. Introduzione all'internetworking

3. Introduzione all'internetworking 3. Introduzione all'internetworking Abbiamo visto i dettagli di due reti di comunicazione: ma ce ne sono decine di tipo diverso! Occorre poter far comunicare calcolatori che si trovano su reti di tecnologia

Dettagli

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Compito fondamentale di un S.O. è infatti la gestione dell

Dettagli

HR - Sicurezza. Parma 17/12/2015

HR - Sicurezza. Parma 17/12/2015 HR - Sicurezza Parma 17/12/2015 FG Software Produce software gestionale da più di 10 anni Opera nel mondo del software qualità da 15 anni Sviluppa i propri software con un motore completamente proprietario

Dettagli

Configurazione della ricerca desktop di Nepomuk. Sebastian Trüg Anne-Marie Mahfouf Traduzione della documentazione in italiano: Federico Zenith

Configurazione della ricerca desktop di Nepomuk. Sebastian Trüg Anne-Marie Mahfouf Traduzione della documentazione in italiano: Federico Zenith Configurazione della ricerca desktop di Nepomuk Sebastian Trüg Anne-Marie Mahfouf Traduzione della documentazione in italiano: Federico Zenith 2 Indice 1 Introduzione 4 1.1 Impostazioni di base....................................

Dettagli

TECNICHE DI SIMULAZIONE

TECNICHE DI SIMULAZIONE TECNICHE DI SIMULAZIONE INTRODUZIONE Francesca Mazzia Dipartimento di Matematica Università di Bari a.a. 2004/2005 TECNICHE DI SIMULAZIONE p. 1 Introduzione alla simulazione Una simulazione è l imitazione

Dettagli

Soluzione dell esercizio del 12 Febbraio 2004

Soluzione dell esercizio del 12 Febbraio 2004 Soluzione dell esercizio del 12/2/2004 1 Soluzione dell esercizio del 12 Febbraio 2004 1. Casi d uso I casi d uso sono riportati in Figura 1. Figura 1: Diagramma dei casi d uso. 2. Modello concettuale

Dettagli

Architettura di un calcolatore

Architettura di un calcolatore 2009-2010 Ingegneria Aerospaziale Prof. A. Palomba - Elementi di Informatica (E-Z) 7 Architettura di un calcolatore Lez. 7 1 Modello di Von Neumann Il termine modello di Von Neumann (o macchina di Von

Dettagli

Introduzione al 3D con Autocad

Introduzione al 3D con Autocad 2 Introduzione al 3D con Autocad Coso di CAD B condotto da Daniela Sidari a.a. 2012/2013 19.02.2013 Modellazione geometrica 3D wireframe superfici solidi Si distinguono tre tecniche principali di modellazione:

Dettagli

Lezione1. Cos è la computer grafica. Lezione del 10 Marzo 2010. Michele Antolini Dipartimento di Ingegneria Meccanica Politecnico di Milano

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

Dettagli

Capitolo 4 Pianificazione e Sviluppo di Web Part

Capitolo 4 Pianificazione e Sviluppo di Web Part Capitolo 4 Pianificazione e Sviluppo di Web Part Questo capitolo mostra come usare Microsoft Office XP Developer per personalizzare Microsoft SharePoint Portal Server 2001. Spiega come creare, aggiungere,

Dettagli

Come masterizzare dischi con Nero 11

Come masterizzare dischi con Nero 11 Come masterizzare dischi con Nero 11 Non c è dubbio che Nero è diventato un sinonimo di masterizzatore di dischi, data la lunga esperienza sul mercato. Molte persone pensano in questo programma nel momento

Dettagli

Tipi classici di memoria. Obiettivo. Principi di localita. Gerarchia di memoria. Fornire illimitata memoria veloce. Static RAM. Problemi: Dynamic RAM

Tipi classici di memoria. Obiettivo. Principi di localita. Gerarchia di memoria. Fornire illimitata memoria veloce. Static RAM. Problemi: Dynamic RAM Obiettivo Tipi classici di memoria Fornire illimitata memoria veloce Problemi: costo tecnologia Soluzioni: utilizzare diversi tipi di memoria... Static RAM access times are 2-25ns at cost of $100 to $250

Dettagli

GUIDA UTENTE PRIMA NOTA SEMPLICE

GUIDA UTENTE PRIMA NOTA SEMPLICE GUIDA UTENTE PRIMA NOTA SEMPLICE (Vers. 2.0.0) Installazione... 2 Prima esecuzione... 5 Login... 6 Funzionalità... 7 Prima Nota... 8 Registrazione nuovo movimento... 10 Associazione di file all operazione...

Dettagli

Con SIGNUM è possibile intervenire con diversi livelli di personalizzazione e controllo sui dati letti. In particolare SIGNUM può essere usato:

Con SIGNUM è possibile intervenire con diversi livelli di personalizzazione e controllo sui dati letti. In particolare SIGNUM può essere usato: Il software SIGNUM è stato interamente realizzato da Technosoft, società che da sempre si pone l obiettivo di automatizzare e migliorare tutte le fasi di raccolta dati da documenti cartacei. SIGNUM, abbinato

Dettagli

Manuale Operativo per l utilizzo della piattaforma E-Learning@AQ. Versione 1.1

Manuale Operativo per l utilizzo della piattaforma E-Learning@AQ. Versione 1.1 Manuale Operativo per l utilizzo della piattaforma E-Learning@AQ Versione 1.1 Autore Antonio Barbieri, antonio.barbieri@gmail.com Data inizio compilazione 11 maggio 2009 Data revisione 14 maggio 2009 Sommario

Dettagli

Open Source 3D Engine. OpenGL Rendering System. Il Framework

Open 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

Dettagli

Protocollo di tracciamento e valutazione degli studenti dei corsi di italiano ICoNLingua A.A. 2013-2014

Protocollo di tracciamento e valutazione degli studenti dei corsi di italiano ICoNLingua A.A. 2013-2014 Progetto ICoNLingua Scienza senza Frontiere CsF- Italia Protocollo di tracciamento e valutazione degli studenti dei corsi di italiano ICoNLingua A.A. 2013-2014 1. Introduzione La valutazione sia in itinere

Dettagli

Utilizzo della APP IrriframeVoice. Versione 1.0 maggio 2015

Utilizzo della APP IrriframeVoice. Versione 1.0 maggio 2015 Utilizzo della APP IrriframeVoice Versione 1.0 maggio 2015 0.0 Installazione Sul telefono o sul tablet andare sullo store delle applicazioni per scaricare la APP A seconda del sistema operativo del telefono

Dettagli

Gestione di foto e immagini

Gestione di foto e immagini GSM/GPRS/GPS MINI-MANUALI DEI SERVIZI PER ARGOMENTI Gestione di foto e immagini Versione: 2.01 settembre 2014 Informativa Dalla pagina principale http://www.mywakes.com anche senza essere registrati è

Dettagli

SPSS Statistics per Windows - Istruzioni di installazione per (Licenza per utenti singoli)

SPSS Statistics per Windows - Istruzioni di installazione per (Licenza per utenti singoli) SPSS Statistics per Windows - Istruzioni di installazione per (Licenza per utenti singoli) Le seguenti istruzioni sono relative all installazione di SPSS Statistics con licenza per utenti singoli. Una

Dettagli

BMSO1001. Virtual Configurator. Istruzioni d uso 02/10-01 PC

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

Dettagli

Analisi e diagramma di Pareto

Analisi e diagramma di Pareto Analisi e diagramma di Pareto L'analisi di Pareto è una metodologia statistica utilizzata per individuare i problemi più rilevanti nella situazione in esame e quindi le priorità di intervento. L'obiettivo

Dettagli

1- OBIETTIVI DEL DOCUMENTO 2- INTRODUZIONE

1- OBIETTIVI DEL DOCUMENTO 2- INTRODUZIONE 1- OBIETTIVI DEL DOCUMENTO... 1 2- INTRODUZIONE... 1 3- ACCESSO ALLA PROCEDURA... 2 4- COMPILAZIONE ON-LINE... 4 5- SCELTA DELLA REGIONE O PROVINCIA AUTONOMA... 5 6- DATI ANAGRAFICI... 6 7- DATI ANAGRAFICI

Dettagli

LA TRASMISSIONE DELLE INFORMAZIONI QUARTA PARTE 1

LA TRASMISSIONE DELLE INFORMAZIONI QUARTA PARTE 1 LA TRASMISSIONE DELLE INFORMAZIONI QUARTA PARTE 1 I CODICI 1 IL CODICE BCD 1 Somma in BCD 2 Sottrazione BCD 5 IL CODICE ECCESSO 3 20 La trasmissione delle informazioni Quarta Parte I codici Il codice BCD

Dettagli

Mon Ami 3000 Varianti articolo Gestione di varianti articoli

Mon Ami 3000 Varianti articolo Gestione di varianti articoli Prerequisiti Mon Ami 3000 Varianti articolo Gestione di varianti articoli L opzione Varianti articolo è disponibile per le versioni Azienda Light e Azienda Pro e include tre funzionalità distinte: 1. Gestione

Dettagli

Il controllo della visualizzazione

Il 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

Dettagli

COME CREARE UNA COMUNICAZIONE / NEWSLETTER

COME CREARE UNA COMUNICAZIONE / NEWSLETTER COME CREARE UNA COMUNICAZIONE / NEWSLETTER Benvenuti nella MINI GUIDA di Centrico per la creazione di una nuova Comunicazione o Newsletter. Grazie a questa guida, potrai creare delle comunicazioni ad hoc

Dettagli

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena daino@unisi.it

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena daino@unisi.it MODELLO CLIENT/SERVER Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena daino@unisi.it POSSIBILI STRUTTURE DEL SISTEMA INFORMATIVO La struttura di un sistema informativo

Dettagli

In questo manuale sono indicate le procedure per utilizzare correttamente la gestione delle offerte dei fornitori.

In questo manuale sono indicate le procedure per utilizzare correttamente la gestione delle offerte dei fornitori. Release 5.20 Manuale Operativo ORDINI PLUS Gestione delle richieste di acquisto In questo manuale sono indicate le procedure per utilizzare correttamente la gestione delle offerte dei fornitori. La gestione

Dettagli