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