lunedì 9 gennaio 2012

Creare modelli 3D con MeshLab


Oggi mi concederò una breve incursione nel campo della grafica, un campo nel quale io mi sento a mio agio come un pinguino nel deserto del Gobi, per parlare di un programma di origine italiana, ma forse non molto conosciuto tra i non adepti del suo settore. Mi riferisco a MeshLab.
MeshLab è un programma open-source, il cui sviluppo ha avuto inizio verso la metà dello scorso decennio presso l’università di Pisa e che adesso ha raggiunto la versione 1.3.0a, oltre a essere stato reso disponibile per i principali sistemi operativi: Windows, Linux, Mac OS X e di recente anche iOS (cioè i gingilli portatili che cominciano per i-, come iPhone e iPad). Lo potete scaricare sia dalla sua pagina ufficiale su SourceForge (in tutte le versioni), sia dallo AppStore (nella versione per iOS).

Ma a cosa serve MeshLab? La prima parte del nome, ossia Mesh, dovrebbe già suggerire il campo in cui si utilizza questo programma, ossia l’elaborazione di immagini e modelli 3D. Un mesh, infatti, è una di quelle piccole figure geometriche che, solitamente, sono utilizzate per comporre una immagine 3D in campo grafico e che, uniti, creano l’illusione di tridimensionalità in un modello che ci è mostrato su uno schermo bidimensionale. Avete presenti le sfaccettature, che si possono vedere ad esempio nelle immagini tridimensionali dei videogiochi? Ecco, quelle sfaccettature sono meshes (plurale di mesh).
Solitamente, un mesh può essere di forma triangolare, oppure quadrangolare, a seconda delle scelte di chi ha realizzato il modello 3D, ma non mi addentrerò nelle discussioni su quale delle due forme sia la migliore, ammesso che una sia migliore dell’altra: come spesso succede in questi casi, ci sono già state guerre di religione tra gli adepti delle due chiese e non mi pare necessario riesumare le diatribe. Esistono modelli composti da meshes triangolari e altri composti da meshes quadrangolari, basta sapere questo. Inoltre, è possibile passare dai triangoli a quadrilateri, e viceversa, anche se la conversione non è sempre indolore, come ogni altra conversione. In particolare, il passaggio da triangoli a quadrilateri pare essere alquanto complesso e poco soddisfacente.
A ogni modo, MeshLab è un programma che si occupa proprio di questo: grafica computerizzata in 3D. Permette sia di creare, sia di modificare modelli tridimensionali, intervenendo anche sui singoli meshes (plurale di mesh), cioè sui singoli poligoni che compongono il modello, e supporta anche la conversione da un modello all’altro: si può dunque passare da un modello con mesh triangolare a uno con mesh quadrangolare, e viceversa (per accontentare entrambi gli schieramenti). Se siete particolarmente interessati alla conversione da triangoli a quadrilateri, magari attraverso MeshLab potete anche approfondire leggendo lo studio prodotto da alcune delle persone che lavorano a questo software. Se non siete amanti degli algoritmi, potrebbe risultato piuttosto noioso, ma è pur sempre un testo interessante.
Maggiori dettagli sul funzionamento di MeshLab e su come utilizzarlo, però, andrebbero ben al di là delle mie forze e delle mie risibili competenze.  Per dirla con le parole di Dante, “non eran da ciò le proprie penne”, e neanche i propri tasti. A parlare in mia vece, lascerò dunque qualcuno di ben più competente, ossia l’apposito canale YouTube dedicato a MeshLab, dove potrete trovare sia guide, sia dimostrazioni sul suo utilizzo:

Come ultimo appunto, la natura open-source di MeshLab lo rende disponibile per due usi distinti, ma parimenti preziosi. Può essere infatti utilizzato sia come programma indipendente, sia come libreria all’interno di un progetto più ampio, incorporandolo nel software che potreste stare usando. Per maggiori dettagli sulla licenza di uso, però, vi rimando al documento ufficiale.

Un’altra cosa che si può fare, anche se non direttamente con MeshLab, è creare un file PDF con il vostro modello 3D, una volta che lo avrete completato. Ora, si potrebbe discutere a lungo sull’utilità o meno di realizzare una sorta di PDF 3D (nei limiti in cui è possibile inserire una terza dimensione in un PDF, per quanto sia illusoria questa terza dimensione), ma un motivo che potrebbe spingere alcuni di voi lungo questa strada è quello di condividere più facilmente il vostro lavoro, anche con chi non è addetto ai lavori o non dispone di programmi per visualizzare i modelli 3D da voi realizzati. Oppure, potete sempre creare un PDF in simil-3D perché è divertente farlo.
Come mi è stato suggerito, il procedimento per creare questo tipo di PDF consiste nel salvare prima una copia del vostro lavoro su MeshLab in formato .tex e poi compilarlo con un altro strumento, ossia LaTeX, che produrrà il PDF finale. Per molti potrebbe essere una sorta di ritorno alle origini, quando il sistema LaTeX era molto più usato nella creazione di PDF, perché mancavano più semplici ed economiche alternative (come un OpenOffice che vi salva i documenti in PDF), oppure perché era minore il numero di “profani” che utilizzavano un computer...

mercoledì 4 gennaio 2012

Cosa sono i siti .onion

Per creare e condividere un sito web, la soluzione più tradizionale e più usata consiste nell’ottenere uno spazio, gratuito o a pagamento, sui server privati di una società che fornisca questo servizio, come ad esempio Aruba, Altervista o mille altre. Una volta ottenuto questo spazio, con relativo indirizzo, potremo cominciare a caricare le pagine e il materiale del nostro futuro sito, oppure a creare le varie pagine direttamente online, se la società in questione ci offre anche un servizio per “montare” le pagine senza passare attraverso il codice HTML, come si può fare ad esempio su Altervista.
Soluzione tradizionale e più usata, come appunto si diceva, ma non l’unica soluzione possibile. Oltre ai siti “normali”, ossia ai siti che visitiamo tutti i giorni col nostro browser e che state visitando anche adesso, se leggere questa pagina (ok, si tratta di un blog e non di un sito, ma il principio resta lo stesso), esistono però altri siti e altre modalità di creare e condividere un sito, che non passano attraverso società private e server, e che spesso non passano neanche attraverso i nostri browser, perché richiedono altri strumenti per trovarli. Spazi di questo tipo sono spesso definiti “siti nascosti” e altrettanto spesso sono anche anonimi, nonché alquanto difficili da scovare e affondare, se contengono materiale non gradito a questo o quel governo.
Un esempio di siti che non si appoggiano a un server, ma a una rete di contatti tra gli utenti, lo abbiamo già visto, quando si parlava di Osiris. Osiris, infatti, è un programma che ci permette proprio di creare e condividere siti attraverso una rete peer-to-peer (pensate a eMule e a Torrent), senza passare dunque attraverso società fornitrici di spazi web e di altri servizi: un sito creato con Osiris non si troverà in un qualche punto della Rete, ma sarà distribuito attraverso tutti gli altri utenti che ne possiedono una copia. Attraverso Isis, poi, questi siti possono essere agganciati alla Rete tradizionale e raggiunti anche da chi non possiede Osiris. Ma di questo abbiamo già parlato.
Oltre a Osiris, però, esistono anche altri modi per creare siti nascosti, che non richiedono di essere ospitati sul server di qualche società e che non sono raggiungibili con mezzi normali. Uno di questi modi passa attraverso Tor e consiste nella creazione di un sito .onion, anonimo e privo di un indirizzo pubblico vero e proprio.
Di Tor abbiamo già parlato in più occasioni e non credo sia necessario ripetersi anche qui: è un servizio per la navigazione anonima e criptata, realizzato inizialmente dalla marina degli Stati Uniti come mezzo per proteggere le comunicazioni, e che in seguito ha acquisito una esistenza autonoma. Il nome Tor deriva dalla sigla The Onion Router ed è proprio da qui che proviene il suffisso .onion, usato per i siti costruiti al suo interno.
Questi siti sono, di fatto, ospitati sul computer del loro creatore e possono essere trovati e raggiunti solo navigando attraverso Tor, sia nella sua versione Tor Browser, sia nella sua versione completa. Il tipico indirizzo di questi siti è qualcosa come duskgytldkxiuqc6.onion, dove la prima parte è un numero a 80 bit in base 32 (ma questi dettagli non hanno importanza) e la seconda parte è lo pseudodominio di primo livello .onion, che ne identifica la natura. Se state navigando con Tor, potrete accedere a questi siti; se non state navigando con Tor, non potrete.
Il procedimento per creare un sito .onion può risultare complicato, ma in sostanza si riduce a due programmi che devono essere presenti sul vostro computer: Tor, ovviamente, e un server. Tor vi servirà per condividere il sito, inserendolo appunto nella Rete anonima costruita da questo programma, mentre il server è necessario per poterci mettere fisicamente il materiale e le pagine che vorrete condividere. Esempi di server sono Apache, Savant, thttpd: al loro interno potrete costruire un sito vero e proprio, come preferite voi, ma che non sarà poi caricato su un server privato, gestito da una qualche società. Il server e il sito resteranno sul vostro computer e lì potranno essere raggiunti e visitati, attraverso Tor.
Un aspetto positivo dei siti .onion è che sono anonimi e non poggiano su un server esterno. Dalla Rete tradizionale non possono essere né trovati, né raggiunti, e di conseguenza neppure bloccati: questo li rende adatti ad aggirare le censure, proprio come Tor stesso permette di accedere alle aree che, altrimenti, sarebbero bloccate dal firewal di questo o quel governo. In luoghi dove la libertà e i diritti sono parecchio limitati, strumenti di questo tipo sono estremamente preziosi, come è facile da capire.
Come per tutte le tecnologie, anche in questo caso esistono però lati negativi, collegati all’abuso dei siti .onion in contesti che nulla hanno a che fare con le intenzioni di chi ha sviluppato questi mezzi. Per sua natura, un sito .onion permette di sottrarsi all’occhio vigile di censure e repressioni, ed è cosa buona e giusta. Condividere informazioni che un governo vuole nascondere e insabbiare è un atto più che legittimo e strumenti difficili da attaccare e bloccare, come Tor, sono necessari. Non ci sarebbe condivisione di idee e di notizie fuori dai recinti ufficiali, in caso contrario.
Allo stesso tempo, però, questi servizi possono essere abusati per sottrarsi anche al controllo della legge, approfittando degli spazi protetti per portare avanti attività illegali. Proprio durante il mese di ottobre, per esempio, gli attivisti di Anonymous hanno condotto una operazione contro i siti di Freedom Hosting (servizio che offre spazi web .onion, per chi non sa o non può crearseli da solo), perché al suo interno erano stati realizzati anche siti per condividere materiale pedopornografico. In questo caso, il problema è culturale, o meglio di civiltà (e inciviltà), non certo tecnologico...