Informatica Lezione VIII Visualizzazione 3D A.A. 2010/11 SSCTA 1 Lezione VIII Immagini 3D Visualizzazioni 3D • Rappresentazione di strutture/oggetti tridimensionali • Risultato di un esperimento • proteine osservate ai raggi X, o al TEM • modello teorico • proteine ipotizzate dalla sequenza primaria • dati fisici • Tac, NMR, • Dati astratti • sistemi di equazioni A.A. 2010/11 SSCTA 2 Lezione VIII Immagini 3D Che tipo di dati • In realtà siamo almeno in 4 dimensioni • punti in uno spazio tridimensionale • ciascuno con suo valore di “densità” • Noi siamo abituati e vedere l‟esterno di oggetti tridimensionali • Se pensiamo al nostro corpo sappiamo che sotto la pelle abbiamo muscoli, organi, apparati vari, anche essi tridimensionali e con diversi attributi • Il nostro corpo racchiude diverse componenti che per essere osservate vanno fatte emergere scoprendo la parte che le avvolge e le nasconde A.A. 2010/11 SSCTA 3 Lezione VIII Immagini 3D A cosa serve • Osservare la struttura da diverse angoli • rotazioni • ingrandimenti • penetrare nella struttura • rappresentare l‟interno • osservare parti diverse • tessuti/ossa - nuvola elettronica/nuclei • osservare condizioni diverse • NMR con e senza mezzo di contrasto • diverse modellizzazioni della realtà A.A. 2010/11 SSCTA 4 Lezione VIII Immagini 3D Tipi di dato • Array 3D di punti (matrice 3D di voxel) • es. output di una TAC a spirale • Corrisponde ad uno stack di immagini • insieme di vettori • es. molecola caratterizzata da atomi e legami chimici • I dati sono espressi mediante funzioni analitiche A.A. 2010/11 SSCTA 5 Lezione VIII Immagini 3D Matrice di voxel Insieme di valori: M(i,j,k) Analogo 3D di un‟immagine A.A. 2010/11 SSCTA 6 Lezione VIII Immagini 3D Dati vettoriali Rappresentazione a “ball and stick” Uso di: •Sfere •Cilindri A.A. 2010/11 SSCTA 7 Lezione VIII Immagini 3D Tecniche di rappresentazione • Sezioni mobili • volume rendering • ray tracing • surface rendering • dipendente dalle schede grafiche A.A. 2010/11 SSCTA 8 Lezione VIII Immagini 3D Sezioni mobili • Vengono visualizzate sezioni all‟interno del volume • Molto veloce – non altera i dati • E‟ possibile ruotare il volume • Traslarlo • Avvicinare o allontanare l‟oggetto • Di norma le sezioni sono parallele alle facce del volume che coincide con un parallelepipedo • E‟ possibile anche rappresentare sezioni oblique • Richiede interpolazione A.A. 2010/11 SSCTA 9 Lezione VIII Immagini 3D Sezioni mobili Esempio su dati di una TAC Dati: matrice 512x512x256 A.A. 2010/11 SSCTA 10 Lezione VIII Immagini 3D Ray-tracing • L‟immagine e‟ calcolata punto per punto ricostruendo a ritroso la traiettoria di ogni raggio incidente sul pixel A.A. 2010/11 SSCTA 11 Lezione VIII Immagini 3D Ray tracing • Il colore del pixel risultante è determinato dalla somma di tutti i contributi dei voxel del volume attraversati dal raggio • Per ogni voxel del volume è stato precedentemente definito un valore di opacità • Lo stesso volume può essere rappresentato usando soglie di opacità differenti • Il colore da rappresentare per ogni grado di opacità può essere definito dall‟utente • Gestione delle sorgenti luminose • Non necessita di hardware dedicato • Ma può essere utile • Capacità di gestire grandi quantità di dati A.A. 2010/11 SSCTA 12 Lezione VIII Immagini 3D Ray tracing Esempio su dati di una TAC; dati: matrice 512x512x256 A.A. 2010/11 SSCTA 13 Lezione VIII Immagini 3D Surface rendering • Scopo della procedura è rappresentare una superficie ideale che delimita valori di densità superiori ad una data soglia. • La soglia delimitante deve essere compresa nel range di valore dei voxel. • La superficie ripartisce il volume in due porzioni contenenti voxel di valore superiore o inferiore alla soglia. • La superficie viene calcolata tenendo conto dei punti dove interseca la griglia 3D che definisce i voxel. • Il problema del tracciamento è quindi ricondotto a congiungere in modo opportuno i punti sulla griglia • Una volta disegnata la superficie, l‟informazione sui voxel viene persa. A.A. 2010/11 SSCTA 14 Lezione VIII Immagini 3D Chaperonina GroEL Grande proteina del peso di qualche milione di Dalton Mappa 3D 64x64x64 1 voxel= 3.5 Å A.A. 2010/11 SSCTA 15 Lezione VIII Immagini 3D Surface rendering • Viene creata una isosuperficie a maglie triangolari • I triangoli sono rappresentati tenendo conto dell‟angolo di vista • La superficie è smussata eliminando la traccia dei triangoli A.A. 2010/11 SSCTA 16 Lezione VIII Immagini 3D Effetto della soglia • All‟aumentare della soglia la superficie include un volume via via più piccolo A.A. 2010/11 SSCTA 17 Lezione VIII Immagini 3D Surface rendering • Il calcolo della superficie può essere complesso • Una volta calcolati, la gestione dei triangoli viene gestita direttamente dalla scheda grafica o per emulazione software • Open GL • Consente di gestire le fonti di illuminazione • Definire le proprietà dei materiali • Colore • Opacità/semitrasparenza • Riflettività A.A. 2010/11 SSCTA 18 Lezione VIII Immagini 3D Surface rendering Esempio sui dati TAC Soglia a livello „pelle‟ A.A. 2010/11 SSCTA soglia a livello osseo 19 Lezione VIII Immagini 3D Dati vettoriali • L‟oggetto è descritto da un insieme di punti/vettori/superfici regolari noti per via analitica • Il problema è ricondotto a disegnare figure geometriche con le regole della prospettiva • Si possono applicare le metodologie del surface rendering o del ray tracing • Velocità e qualità dipendenti dall‟hardware A.A. 2010/11 SSCTA 20 Lezione VIII Immagini 3D Visualizzazione di modelli • Molecola • N atomi coordinate x,y,z • Tipi di atomi • La molecola possiede una specifica conformazione tridimensionale • Distanze ed angoli. • Sta a noi scegliere come rappresentare gli atomi A.A. 2010/11 SSCTA 21 Lezione VIII Immagini 3D Programmi liberi Dati Vettoriali • Rasmol (www.OpenrasMol.org) • Non richiede GL • Windows/Mac/Linux Canale del potassio visualizzato con Chimera • qualche problema con Vista, ma superabile • VMD university of Illinois (www.ks.uniuc.edu/Res earch/vmd/) • richiede GL • Chimera UCSF (University of California San Francisco) A.A. 2010/11 SSCTA 22 Lezione VIII Immagini 3D Actina Chimera VMD Rasmol A.A. 2010/11 SSCTA 23 Lezione VIII Immagini 3D Finestre di Rasmol Finestra a caratteri per introdurre comandi più complessi Finestra di visualizzazione e comandi via mause A.A. 2010/11 SSCTA 24 Lezione VIII Immagini 3D Finestra della guida A.A. 2010/11 SSCTA 25 Lezione VIII Immagini 3D Command reference Questi comandi vanno scritti esplicitamente nella finestra a caratteri A.A. 2010/11 SSCTA 26 Lezione VIII Immagini 3D Ciascun comando ha una sintassi A.A. 2010/11 SSCTA 27 Lezione VIII Immagini 3D Modello wire-frame aspirina CH3COOC6H4COOH rappresentiamo le connessioni A.A. 2010/11 SSCTA 28 Lezione VIII Immagini 3D Modello stick o stick-and-ball A.A. 2010/11 SSCTA 29 Lezione VIII Immagini 3D Modello space-fill • Viene disegnato l‟inviluppo delle sfere dei raggi atomici • effettiva „forma‟ della molecola A.A. 2010/11 SSCTA 30 Lezione VIII Immagini 3D Uso del colore • Per convenzione si usano colori per distinguere i vari atomi Ossigeno rosso idrogeno bianco Carbonio grigio (in origine nero) Azoto azzurro Zolfo giallo Fosforo arancio Cloro verde Sodio blu • Sono comunque ridefinibile dall‟utente A.A. 2010/11 SSCTA 31 Lezione VIII Immagini 3D Filosofia di Rasmol • Per modificare una parte della struttura • Un tipo di atomo • Un tipo di aminoacido • Un certo residuo • Selezionare l‟elemento • Comando select dalla finestra a caratteri • Select carbon • Select oxygen • Da questo momento in poi i comandi agiscono solo sulla parte selezionata • Color • Space-fill • Per azzerare la selezione: select all A.A. 2010/11 SSCTA 32 Lezione VIII Immagini 3D Informazione contenuta • Il file dei dati deve contenere informazioni su: • • • • • • coordinate atomiche Tipo di atomo tipo di amminoacido caratteristiche chimico-fisiche struttura secondaria numero di catene A.A. 2010/11 SSCTA 33 Lezione VIII Immagini 3D File PDB • File di tipo testo (apribile da un editor) • Derivato dai formati testo per fortran, ogni riga contiene record di 80 colonne con campi in posizioni definite • Tipi di record • • • • • • A.A. 2010/11 SSCTA Atom (tipo di atomo e coordinate) Helix Sheet Author Source (origine della molecola) Cryst1 (informazioni cristallografiche) 34 Lezione VIII Immagini 3D File PDB esempio COMPND AUTHOR ATOM ATOM ATOM ATOM ATOM ATOM ATOM ATOM ATOM ATOM ATOM ATOM ATOM ATOM ATOM ATOM ATOM ATOM ATOM ATOM ATOM TER END A.A. 2010/11 SSCTA ACETYLSALICYLIC ACID, ASPIRIN, ASA DAVE WOODCOCK 95 11 28 1 C 1 -0.415 -1.337 -0.026 1.00 0.00 2 C 1 -0.365 0.071 0.079 1.00 0.00 3 C 1 -1.599 0.791 0.065 1.00 0.00 4 C 1 -2.818 0.086 -0.087 1.00 0.00 5 C 1 -2.836 -1.307 -0.223 1.00 0.00 6 C 1 -1.633 -2.015 -0.185 1.00 0.00 Numero progressivo dell’atomo 7 C 1 -1.673 2.207 0.169 1.00 0.00 8 O 1 -2.888 2.842 0.184 1.00 0.00 9 O 1 -0.531 3.028 0.306 1.00 0.00 Coordinate atomiche (Å) 10 O 1 0.855 0.832 0.007 1.00 0.00 11 C 1 2.167 0.348 0.307 1.00 0.00 12 O 1 3.124 1.312 0.498 1.00 0.00 13 C 1 2.693 -1.068 0.074 1.00 0.00 Tipo di atomo 14 H 1 0.470 -1.926 -0.017 1.00 0.00 (andrebbe scritto alla fine0.614 della riga) 15 H 1 -3.761 -0.113 1.00 0.00 16 H 1 -3.773 -1.829 -0.348 1.00 0.00 17 H 1 -1.643 -3.126 -0.280 1.00 0.00 18 H 1 0.378 2.396 0.316 1.00 0.00 19 H 1 2.339 -1.452 -0.901 1.00 0.00 20 H 1 2.370 -1.732 0.901 1.00 0.00 21 H 1 3.773 -1.049 0.058 1.00 0.00 22 1 Riga do 80 caratteri 35 Lezione VIII Immagini 3D File PDB Ogni record contiene informazioni in un proprio formato 1 7 13 17 18 22 23 27 31 - 6 - 11 - 16 Record name Integer Atom Character Residue name Character Integer AChar Real(8.3) "ATOM " serial name altLoc resName chainID resSeq iCode x 39 - 46 Real(8.3) y 47 - 54 Real(8.3) z 55 61 73 77 79 Real(6.2) Real(6.2) LString(4) LString(2) LString(2) occupancy tempFactor segID element charge - 20 - 26 - 38 - 60 66 76 78 80 A.A. 2010/11 SSCTA 36 Atom serial number. Atom name. Alternate location indicator. Residue name. Chain identifier. Residue sequence number. Code for insertion of residues. Orthogonal coordinates for X in Angstroms. Orthogonal coordinates for Y in Angstroms. Orthogonal coordinates for Z in Angstroms. Occupancy. Temperature factor. Segment identifier, left-ustified. Element symbol, right-justified. Charge on the atom. Lezione VIII Immagini 3D Pixmap VS immagini vettoriali • Lo zoom di una pixmap richiede interpolazione dei pixel • Lo zoom di un‟immagine vettoriale no • Anche le immagini con testi spesso sono costruite tramite definizioni vettoriali dei font • Conviene salvare le immagini vettoriali alla dimensione finale desiderata • Ingrandimenti successivi peggiorano la qualità • Ma anche riduzioni successive possono far svanire le righe sottili. A.A. 2010/11 SSCTA 37 Lezione VIII Immagini 3D Esempi di zoom Zoom x 3 fatto con dell‟immagine salvata in precedenza Zoom x 3 fatto con rasmol A.A. 2010/11 SSCTA 38 Lezione VIII Immagini 3D Riduzioni Riduzione 50% pixmap Riduzione 50% vettoriale Immagine originale A.A. 2010/11 SSCTA 39 Lezione VIII Immagini 3D