Numero 5 di Michael J. Hammel traduzione di Antonio Cartelli


Benvenuti dalla Musa della grafica
Per una migliore visualizzazione predisponete il vostro browser alla lunghezza della riga sottostante.

Barra dei Bottoni Musa:
  1. v; per farsi assalire dai pensieri
  2. n; [ fr. Una delle nove sorelle, dee delle scienze e delle arti nella mitologia greca ]: sorgente di ispirazione
Benvenuti dalla Musa della Grafica! Perché una "musa"? Al di là dell'aspetto delle sorelle, le precedenti definizioni sono la maniera migliore di descrivere il mio interesse nella Computer Graphica: questa disciplina mi fa sprofondare nelle mie riflessioni ed è una sorgente giornaliera di ispirazione.

[ Novità nella Grafica ] [ Riflessioni ] [ Risorse ]
indent Questo spazio è dedicato all'uso, alla creazione, alla distribuzione ed alla discussione di pacchetti per la Computer Grafica su sistemi Linux.
      Che mese. Diciamo pure che è come se ne fossero passati due. Il mese scorso ho lavorato alacremente alla realizzazione di un lavoro da presentare all'IRTC utilizzando BMRT. Nel contempo ho tentato di apprendere le specifiche dell'interfaccia RenderMan quel tanto che mi consentisse di mettere insieme il secondo ed il terzo articolo sul BMRT. Non sono riuscito nell'intento ed ho convenuto di posticipare l'uscita dell'articolo di un mese. In questo modo sono riuscito a focalizzare meglio l'attenzione sull'apprendimento dell'interfaccia e mi sono preoccupato molto meno di scrivere qualcosa sull'argomento. Penso che i risultati siano stati positivi poiché la scena che ho preparato per l'IRTC di questo mese è la migliore che abbia mai realizzato e, nel contempo, ho acquisito una tale esperienza da poter scrivere un articolo significativo sul linguaggio degli ombreggiatori RenderMan.
      La ragione per la quale mi piace scrivere queste pagine è che in tal modo posso venire a contatto con persone oltre che con programmi di tutti i tipi. Il mondo della computer grafica per Linux cresce costantemente ed il software migliora di pari passo. Finalmente mi capita di sentir parlare di nuovi prodotti almeno una o due volte la settimana ma mi giungono continuamente notizie di aggiornamenti del software esistente. È molto difficile riuscire a tener testa a tutto ciò che sopravviene (ed il fatto che non ho più effettuato alcun aggiornamento del mini-Howto della grafica per Linux per certi versi riflette quanto appena detto), resta il fatto, però, che questo tipo di lavoro mi piace.
      Poiché le cose cambiano a ritmi vertiginosi non mi è mai chiaro quanti annunci devo fare mensilmente. Mai come questa volta si è andati dalle stelle alle stalle - essendo, ovviamente, questo mese il periodo delle stelle. La maggior parte degli annunci del numero di questo mese è di Aprile. Non so cosa sia accaduto - forse il cattivo tempo che si è avuto un po' dappertutto ha tenuto la gente dentro a lavorare ed ora che è uscito il sole stanno venendo fuori i prodotti di tanto lavoro. Mi piacerebbe avere il tempo di esaminare ogni cosa e possibilmente di giocarci un po' ma i miei datori di lavoro mi hanno imposto innanzitutto di terminare il mio progetto attuale, sempre che voglia che mi venga pagato uno stipendio, almeno così dicono loro.
      Nelle pagine di questo mese ho cercato di affrontare esclusivamente due argomenti tra loro collegati. Il primo è uno studio tipo sull'apprendimento all'uso di BMRT. Quando si sottopone un'immagine all'IRTC, infatti, è richiesta la trasmissione di un file ASCII che descriva l'immagine e, in maniera sintetica, come tale immagine sia stata creata. Molti non pongono eccessiva attenzione a questa fase del lavoro per cui ho scritto un bel testo al riguardo; siccome le informazioni che ho riportato hanno riguardato molto più del singolo BMRT ho ritenuto che fosse importante parlarne in questo numero.
      Il secondo lavoro è il tanto atteso (io stesso ho dovuto attendere un bel po' per poterlo portare a termine) 2º articolo sul BMRT, che si occupa del linguaggio degli ombreggiatori RenderMan. Ovviamente a me sembra che questo articolo sia venuto particolarmente bene. Vi sono inclusi alcuni esempi e delle spiegazioni di carattere generale sugli obiettivi che tali esempi si prefiggono. Devo precisare, comunque, che non avrei potuto fare quello che ho fatto senza il notevole aiuto dell'autore di BMRT, Larry Gritz della Pixar. Egli si è rivelato un docente paziente ed un critico arguto e mi ha fornito innumerevoli spunti ed idee per quanto ho scritto sull'IRTC, che per gran parte si può considerare concluso con questo articolo. Larry sei stato impagabile: - grazie di cuore. -
      So che avevo promesso che questo mese mi sarei occupato anche dell'articolo su HF-Lab, ma il lavoro sull'IRTC ha richiesto molto più tempo di quanto potessi prevedere e siccome ritengo opportuno tentare comunque di fare le cose per bene, ho deciso di rimandarne l'uscita. Se la cosa vi può consolare faccio presente che ho iniziato a passare nuovamente in rassegna HF-lab e che è il primo lavoro nella lista delle priorità che mi sono dato. Mi auguro pertanto di riuscire a farlo uscire sul numero del mese prossimo. Mi sono già fatto un'idea dell'utilizzo dell'output di HF-lab per la produzione di campi di quote con BMRT e devo dire che è pressoché banale. Mi auguro comunque che vi piacciano gli articoli di questo mese.
      Nota: Un paio di lettori mi hanno chiesto informazioni sul supporto di hardware tridimensionale da parte dei vari server X. Mi sono pertanto ripromesso di contattare i venditori di X Server (Xi Graphics, Metrolink, The XFree Project) così come Brian Paul (l'autore di MesaGL) per vedere se hanno qualche novità da darmi. Se poi c'è qualcuno che è in contatto con qualcuno dei soggetti testé nominati e sa qualcosa mi farebbe piacere avere la possibilità di uno scambio di idee. Più in generale inviatemi un'e-mail se vi risulta che un tale supporto sia in preparazione; potrei lavorarci al fine di includerlo nella Musa della Grafica del prossimo mese.

Novitā nella Grafica


      Avvertenza: Prima di addentrarmi eccessivamente nell'argomento devo far rilevare che ogni nuova informazione che inserisco in questa sezione ha solo ed essenzialmente un significato: quello di segnalazione di una novità. Ho avuto l'opportunità di venirne a conoscenza mediante alcune mailing-list cui sono iscritto, via gruppi di news Usenet, o infine, mediante messaggi inviatimi da lettori e curiosi. Certamente non garantisco questi prodotti (alcuni dei quali possono essere commerciali), faccio soltanto presente che ne ho sentito parlare il mese scorso.

indent

Driver cattura inquadrature per la scheda di acquisizione video ImageNation Cortex I - Versione 1.1

    L'adattatore è una scheda di acquisizione video con una risoluzione di 512 per 486 toni di grigio ad 8 bit e fornisce dati su file in formato pgm o dati grezzi di immagini.
Sito FTP:
ftp://sunsite.unc.edu/pub/Linux/
    apps/video/cortex.drv.1.1.tgz

Sito Web:
http://www.cs.ubc.ca/spider/
    jennings/cortex.drv.1.1.tgz
indent indent

3DOM - un nuovo progetto di modellizzatore 3D che usa OpenGL per Linux

      3DOM è un modellizzatore 3D per Unix (usa Starbase della HP o OpenGL/Mesa) aperto, libero e non-commerciale. È disponibile il codice sorgente ma si possono avere anche gli eseguibili per Linux/Intel, SGI, Sparc Solaris e HP-UX.

Non si tratta sicuramente di un prodotto "pronto all'uso", che significa che la documentazione è pressoché inesistente e che c'è ancora molto lavoro da fare sull'interfaccia utente.

http://www.cs.kuleuven.ac.be/
   cwis/research/graphics/3DOM/

indent

Pixcon/Anitroll R1.04

L'ho trovato nella mia directory /tmp mentre preparavo i testi di questo mese. Non sono riuscito a trovare alcun riferimento a questo pacchetto in nessun altro numero della Musa della Grafica per cui sono giunto alla conclusione che devo essermene dimenticato, durante qualche fase di spostamento su disco, mentre preparavo uno dei vecchi numeri. Mi auguro soltanto che nel frattempo non sia diventato troppo vecchio.
    Pixcon & Anitroll è un pacchetto per la rappresentazione tridimensionale e per l'animazione che viene distribuito liberamente, completo di file sorgenti. Pixcon è un rappresentatore 3D che crea immagini di alta qualità utilizzando una combinazione di 11 primitive di rappresentazione. Anitroll è sistema per l'animazione basato su inoltro cinematico che ha anche il supporto per alcune animazioni non cinematiche (come stormo di uccelli, e fotocamere autonome). Questi pacchetti si basano sulla libreria Graph che è piena di quelle rappresentazioni e di quegli algoritmi di animazione puliti ed eleganti che i faq 3D riportano. Nel pacchetto sono implementate anche alcune tecniche di rappresentazione presentate a Siggraph 96 da Ken Musgrave ed il software è stato utilizzato per generare un'animazione a Siggraph '95.
    Nuove caratteristiche rispetto alla versione 1.03:
  • eliminazione di un buco di memoria w/ la classe poligonale
  • implementazione di un sistema vettoriale più veloce per la visualizzazione d'anteprima delle inquadrature
  • riorganizzazione dei processi di rappresentazione per poter supportare future elaborazioni parallele
  • riduzione dal 30 al 60 % del tempo nella rappresentazione dell'uso delle risorse
La home page di Pixcon & Anitroll è :
    http://www.radix.net/~dunbar/index.html
Eventuali commenti possono essere inviati via e-mail a dunbar@saltmine.radix.net Il pacchetto Pixcon è disponibile sia sul sito web appena descritto, che presso Sunsite, attualmente all'indirizzo : /pub/Linux/Incoming/pixcon104.tgz che presto migrerà all'indirizzo : /pub/Linux/apps/graphics/pixcon104.tgz
ATTENZIONE: nelle aree indicate si può trovare anche un file pixcon1.04.tgz che risulta però rovinato. Assicurarsi di prelevare i file corretti.
indent

ELECTROGIG 3DGO

    ELECTROGIG è una società specializzata nella realizzazione di software per la modellizzazione, la visualizzazione e l'animazione di solidi 3D. L'ultima versione di 3DGO (versione 3.2), un pacchetto per la modellizzazione, l'animazione e la traccia di raggi, è ora disponibile per la piattaforma Linux-Intel. Una versione beta-test di prova è disponibile anche per la piattaforma MkLinux. Si dia un'occhiata agli esiti dei test per Linux su macchine Intel: http://www.gig.nl/products/prodbench.html.
    3DGO è stato sviluppato inizialmente per la piattaforma SGI ed è disponibile per gli ambienti SGI, SUN e HP.
    Per maggiori e più dettagliate informazioni su 3DGO si veda il sito WWW: http://www.gig.nl/products/prodinfo.html.
    Se lo si vuole si può scaricare la versione dimostrativa di 3DGO per Linux, ha tutte le funzionalità del programma principale escluse le funzioni di salvataggio. Basta andare all'area ftp : ftp://ftp.gig.nl/demo/. Si leggano i file .txt prima di provvedere a scaricare il software.

ELECTROGIG Technology
INFO: info@gig.nl

indent

EZWGL v1.2, la libreria della grafica e degli ammennicoli EZ.

      EZWGL è una libreria C scritta avendo come presupposto Xlib. È stata sviluppata su un sitema Linux ed è stata testata sulle seguenti piattaforme: SunOS 4.1.4, OSF1 V3.2 Alpha, IRIX 5.3, Linux 1.2 e Linux 2.0.23. Dovrebbe funzionare egregiamente su ogni sistema Unix con X11R6. Questa versione del software è la prima disponibile con un mauale postscript completo.

Per ulteriori informazioni si veda il sito http://www.ma.utexas.edu/~mzou/EZWGL.

indent

xfpovray v1.2b

    Una nuova versione di xfpovray, l'interfaccia grafica per POV-Ray, realizzata da Robert S. Mallozzi è ora disponibile. xfpovray v1.2b richiede la libreria XForms e supporta la maggior parte delle numerose opzioni di POV-Ray. Ci si può fare un'idea dell'interfaccia ed acquisire il codice sorgente andando alle pagine
    http://cspar.uah.edu/~mallozzir/
All'interno di queste pagine si può trovare anche un collegamento alla home page della libreria XForms, utile nel caso in cui non si disponga ancora di questa libreria.
indent indent

libgr V2.0.12

      Una nuova versione di libgr, versione 2.0.12, è ora disponibile all'indirizzo ftp.ctd.comsat.com:/
    pub/linux/ELF/libgr-2.0.12.tar.gz
.
    Innovazioni presenti in questa versione:
  • da netpbm-94 sono stati aggiornati pbm, pgm, ppm, pnm.
  • sono presenti tutte le applicazioni di netpbm-94. NON sono però costruite ed installate automaticamente per cui va istruito il make in modo da ottenere l'installazione di tutto il software, ad es. con: make install_everything.
  • Meno complicazioni per la compilazione con bash-2.0.
  • Meno complicazioni per la compilazione con glibc-2.
libgr è una collezione di librerie grafiche, che include fbm, jpeg, pbm, pgm, ppm, pnm, png, tiff, rle.

libgr creerà librerie condivise su Linux-ELF e su HP-UX.

indent

EPSCAN - driver per la gestione degli scanner EPSON ES-1200C/GT-9000

      EPSCAN è un driver per scanner EPSON ES-1200C/GT9000. Comprende un driver ed un'interfaccia abbastanza gradevole per ambienti X, basata su Qt. Consente di vedere in anteprima un'immagine, selezionare una zona dell'immagine da scannerizzare, così come la possibilità di modificare i parametri dello scanner. Supporta soltanto scanner collegati a porte SCSI, non a porte parallele.

EPSCAN può essere reperito all'indirizzo:
ftp://sunsite.unc.edu/pub/Linux/Incoming/epscan-0.1.tar.gz.
versioni RPM dei file binari e dei sorgenti sono disponibili su: ftp://ftp.redhat.com/pub/Incoming/epscan-0.1-1.src.rpm ftp://ftp.redhat.com/pub/Incoming/epscan-0.1-1.i386.rpm.
Le loro destinazioni ultime saranno: ftp://ftp.redhat.com/pub/contrib/epscan-0.1-1.src.rpm ftp://ftp.redhat.com/pub/contrib/epscan-0.1-1.i386.rpm, insieme a ftp://sunsite.unc.edu/pub/Linux/apps/graphics/scanners/epscan-0.1.tar.gz

Questo driver dovrebbe funzionare altrettanto bene su ciascuno dei modelli seguenti: ES-{300-800}C / GT-{1000-6500} anche se su questi ultimi non è stato ancora provato.

    Pre-requisiti :
  • Linux 2.x
  • XFree3.x
  • libreria Qt versione >= 1.1
  • libtiff versione >= 3.4
  • g++ versione >= 2.7.2
Autore: Adam P. Jenkins <ajenkins@cs.umass.edu>
indent

Inlab-Scheme Versione 4

      La versione 4 di Inlab-Scheme è ora disponibile per Linux/386 (nucleo 2.X, eseguibili ELF) e FreeBSD.
      Inlab-Scheme è un'implementazione indipendente del linguaggio imperativo Schema come definito dall'R4RS e dal documento 1178 degli standard IEEE. Oltre a supportare il nucleo essenziale del linguaggio Inlab-Scheme gestisce vari tipi di elaborazione bitmap/greymap. Inlab-Scheme può essere utilizzato come un qualsiasi pacchetto per l'elaborazione di immagini, per l'OCR o per qualunque riconoscimento ottico specializzato di oggetti.
      La versione 4 di Inlab-Scheme legge e scrive file grafici dei formati tiff/G4, XBM e PNG multipagina, ha implementati al suo interno convertitori per vari tipi di file di immagine coperti da brevetto (USAPat, PATENTIIMAGES ed ESPACE).
      Inlab-Scheme viene distribuito all'indirizzo http://www.munich.net/inlab/scheme, ove sono disponibili anche ulteriori informazioni sullo stato attuale del progetto, sulle piattaforme supportate, gli attuali diritti di licenza ed altro ancora.
indent indent

Il Progetto SDK (Software Development Kit) per giochi su LINUX

La nuova pagina web per l'SDK relativo a giochi su LINUX è all'indirizzo
    http://www.ultranet.com/~bjhall/GSDK/.
      Il Progetto GSDK su Linux è un nuovo progetto che si prefigge di creare un insieme di librerie coerenti e semplici da utilizzare per aiutare gli sviluppatori di giochi (professionisti o no che siano) a realizzare giochi di alto livello in ambiente operativo Linux. Il GSDK fornirà librerie grafiche 2D e 3D, gestione avanzata dei suoni, possibilità di realizzare giochi in rete e gestire unità di input. Dovrebbe anche servire ad incrementare lo sviluppo delle applicazioni multimediali per Linux. Si veda il sito Web per ulteriori informazioni.
      La mailing lista del GSDK è stata spostata da linux-gsdk@endirect.qc.ca a linux-gsdk@mail.wustl.edu. Liste ulteriori sono state create per i vari team di sviluppo.
indent

WebMagick Image Web Generator


(Generatore di immagini da web)
    WebMagick è un pacchetto software per la creazione di collezioni di immagini disponibili su Web. Attraversa ricorsivamente le directory costruendo pagine HTML, file di immagini a mappa, e mappe lato-client/lato-server per consentire all'utilizzatore di navigare attraverso collezioni di immagini thumbnail (qualcosa di molto simile al Visual Schnauzer dell'xv) e selezionare l'immagine da visualizzare cliccandovi su con un mouse.
    WebMagick si basa sull'estensione PERL di ImageMagick: "PerlMagick" piuttosto che su utility esterne a ImageMagick (come faceva il suo predecessore "Gifmap"). Questa caratteristica, da sola, consente di ottenere un incremento di più del 40% delle prestazioni su piccole immagini. WebMagick supporta poi un poderoso stoccaggio di thumbnail per velocizzare l'assemblaggio di immagini di media grandezza. Dopo una prima passata a velocità "normale", le passate successive (dopo l'aggiunta o la cancellazione di ulteriori immagini) sono da 5 a 10 volte più veloci grazie a questo stoccaggio (caching).
    WebMagick dispone infine di una nuova caratteristica molto importante nel suo sottosistema di stoccaggio: può creare e condividere la sua cache di thumbnail con il software 'xv' di John Bradley. Ciò significa che se si dice a 'xv' di fare un aggiornamento, i montaggi realizzati da WebMagick ne beneficeranno e lo stesso WebMagick potrà essere eseguito in modalità batch per l'aggiornamento dei thumbnail xv senza dover attendere che 'xv' realizzi lui stesso la riduzione in thumbnail (avendo in questo modo anche un web navigabile!).
    WebMagick richiede i pacchetti ImageMagick (3.8.4 o successivi) e PerlMagick (1.0 o seguenti) così come la versione più recente di PERL 5.
Sito principale o di riferimento: http://www.cyberramp.net/~bfriesen/webmagick/dist/webmagick-1.17.tar.gz
Sito alternativo: ftp.wizards.dupont.com/pub/ImageMagick/perl/webmagick-1.17.tar.gz
Home Page del Linguaggio Perl: http://www.perl.com/perl/index.html
ImageMagick: http://www.wizards.dupont.com/cristy/ImageMagick.html
PerlMagick: http://www.wizards.dupont.com/cristy/www/perl.html
Autore: Bob Friesenhahn (bfriesen@simple.dallas.tx.us)
indent

Libreria Commerciale - SIMLIB IG

    SIMLIB IG è una libreria commerciale C che consente la comunicazione con i Supercomputer grafici di Evans e Sutherland (cosiddetti generatori di immagini). L'abilitazione dell'utente alla comunicazione con i predetti sistemi (sistemi Libertà ed ESIG) avviene mediante l'uso di un efficientissimo quanto grezzo protocollo Ethernet. Non c'è alcun bisogno di codici opzionali, poiché SIMLIB IG aggiunge un'API alla funzionalità dei generatori di immagini.
    La documentazione che accompagna il software è in inglese e sui supporti in distribuzione si può trovare il codice sorgente degli esempi. Il software è disponibile anche per sistemi SGI ed NT.

Il costo di SIMLIB IG per Linux è di $2500 (US)
Per tutti gli altri Sistemi Operativi SIMLIB IG costa $5000 (US)

Per ogni ulteriore informazione si può contattare: KNIENIEDER Simulationstechnik KG (office@knienieder.co.at)
Technologiezentrum Innsbruck
AUSTRIA/EUROPE

indent indent

mtekscan - driver Linux per scanner SCSI ScanMaker della MicroTek

mtekscan è un driver per Linux dello scanner SCSI ScanMaker (e compatibili). Originariamente sviluppato per lo ScanMaker E6, è ormai risaputo che funziona in maniera egregia con i modelli ScanMaker II/IIXE/IIHR/III/E3/35t, così come con l'Imagestar I Adara, il Genius ColorPage-SP2 ed il Primax Deskan Color.
    La nuova versione di mtekscan, la v0.2, è ancora una versione test anche se tutte le principali funzioni sono operative e non sembrano dare problemi. La nuova versione oltre ad aver fissato alcuni piccoli bachi della versione precedente ed averne migliorato alcune caratteristiche secondarie, ha un paio di nuove proprietà rimarchevoli:
  • supporto per una scannerizzazione a 3 passate
  • correzione gamma
  • tabelle caricabili per la correzione gamma
  • migliore documentazione
mtekscan v0.2 è disponibile come mtekscan-0.2.tar.gz dal velocissimo server ftp: Ftp-server per un inoltro veloce:
    ftp://fb4-1112.uni-muenster.de/pub/ffwd/
o sunsite:
    ftp://sunsite.unc.edu/
   pub/Linux/apps/graphics/scanners/
indent

Sono finalmente disponibili i pacchetti binari PNG per Netpbm

Le librerie Linux per pnmtopng, pngtopnm e gif2png son disponibili all'indirizzo: http://www.universe.digex.net/~dave/files/pngstuff.tgz Se si hanno problemi a scaricare il software si veda la pagina http://www.universe.digex.net/~dave/files/index.html ove si trovano istruzioni di aiuto.
    PNG è il formato delle immagini che rende obsoleto il GIF. Per dettagli su di esso si può visitare la home page di PNG all'indirizzo; http://www.wco.com/~png/.
    Le sole librerie condivise necessarie sono libc e libm; tutte le altre sono linkate staticamente. Le versioni delle librerie utilizzate per realizzare i programmi sono quelle pubblicamente disponibili come 1997-04-06:
  • pnmtopng-2.34
  • gif2png 0.6 (beta)
  • zlib-1.0.4 (linkata staticamente)
  • libpng-0.90 (linkata staticamente)
  • netpbm-1mar1994 (linkata staticamente)
indent

TN-Image Versione 2.5.0

TN-Image è:
  • Un programma per l'analisi di immagini scientifiche per il sistema X Window.
  • Un sistema per l'editazione di immagini, che fa un ricco uso di mouse e menu, e per l'analisi scientifica mediante un'interfaccia utente user-friendly.
  • Distribuito gratuitamente.
Include un manuale di 123 pagine, esempi guida e aiuto on line. La versione Unix è altamente personalizzabile per quanto concerne i font, i colori, ecc.
    Requisiti di Sistema
  • La versione Unix richiede X11R5 o successivi e Motif 1.2 o successivi. Versioni linkate staticamente non richiedono Motif.
  • I file binari sono forniti per Linux (x86), Solaris, Irix, ConvexOS, ed MS-DOS.
  • la versione DOS richiede una scheda SVGA e 4 MB di RAM; gestisce tutte le modalità video VESA compresa la 1600x1200, come pure le schede video XGA e XGA-2.
    Alcune caratteristiche di TN-Image
  • Interfaccia di pilotaggio per scanner SCSI HP con la funzione di vista in anteprima e scannerizzazione interattiva di immagini a 8, 10, 12, 24, 30, and 36 bit/pixel (Non disponibile nelle versioni ConvexOS ed MS-DOS).
  • Creazione, taglia e incolla, e aggiunta di etichette (in molteplici font) e di elementi grafici come cerchi, curve di Bezier, disegni a mano, ecc.
  • Capacità di gestione contemporanea di 512 immagini di ogni dimensione. Ogni immagine può essere in una finestra separata o in un'unica grande finestra per facilitare la creazione di immagini composite. Taglia e incolla funziona perfettamente anche se i formati delle immagini sono di dimensioni diverse o sono in diverse finestre.
  • È in grado di scrivere su stampante PCL o PostScript. Formati CMY, CMYK o RGB.
  • Formati importati o esportati sono: PCX, IMG, TIF (sia per Macintosh che PC), JPEG, BMP, GIF, TGA, IMG, scanner Lumisys Xray, ed immagini ASCII, di ogni tipo e dimensione da 1-32 bit per pixel, a colori o monocromatiche, immagini in rozzo binario, immagini 3D (come scan PET e immagini confocali) e formati di immagini definiti dall'utente. Vengono gestite anche profondità di immagini non usuali quali quelle derivanti da toni di grigio a 12 e 17 bit.
  • Conversione di qualunque formato di immagine in un altro.
  • Riempimento solido ed a flusso di gradiente.
  • I piani R, G, e B di un'immagine possono essere manipolati separatamente.
  • Sono disponibili funzioni di aggiustamento del colore, dell'intensità, del contrasto, e applicazione dei toni di grigio. Immagini a toni di grigio a più di 8 bit/pixel, quali le immagini mediche in bianco e nero, possono essere viste con una scala variabile per evidenziare ogni zona di intensità particolare.
  • Si può ruotare, ridimensionare, piegare, simmetrizzare, invertire o cambiare colori; smussare, dipingere, dipingere a spruzzo, ecc.
  • Filtri di convoluzione: per marcare, sfuocare, per evidenziare il bordo, per marcare ombre, per l'eliminazione dello sfondo o per il suo appiattimento e filtro del rumore.
  • Si possono creare mappe di colori arbitrarie in maniera interattiva o le si può selezionare tra 10.000 mappe predefinite.
  • Sono disponibili un macro linguaggio ed un editor di macro. È compresa anche una guida alla programmazione mediante macro.
  • La funzione di algebra delle immagini consente di sottrarre immagini multiple o comunque di trasformarle secondo equazioni arbitrarie definite dall'utente.
  • Istogrammi RGB e per l'intensità.
  • Immagini 3D possono essere viste interattivamente come un filmato, oppure ogni inquadratura può essere manipolata separatamente
  • Disponibilità di molte caratteristiche avanzate
Informazioni relative ad ulteriori contatti e ad archivi sono le seguenti:
Contatto: tjnelson@las1.ninds.nih.gov
Indirizzo degli archivi sunsite.unc.edu:/apps/graphics/tnimage250.linux.tar.gz
sunsite.unc.edu:/apps/graphics/tnimage250.linux-static.tar.gz
las1.ninds.nih.gov:/pub/unix/tnimage250.linux.tar.gz
las1.ninds.nih.gov:/pub/unix/tnimage250.linux-static.tar.gz
las1.ninds.nih.gov:/pub/unix/tnimage250.solaris.tar.gz
las1.ninds.nih.gov:/pub/unix/tnimage250.irix.tar.gz
las1.ninds.nih.gov:/pub/unix/tnimage250.solaris.tar.gz
las1.ninds.nih.gov:/pub/dos/tnimg216.zip
indent
indent
indent

Lo sapevate?

      ... che esiste un convertitore in grado di trasformare i campi di quote POV-ray in file RIB conformi RenderMan, da utilizzare con BMRT? Florian Hars scrive
Ho messo a punto il mio software in modo che ora utilizzi libpgm ed abbia tutte le routine vettoriali necessarie incluse, si trova sulla mia pagina (con qualche analisi comparativa relativa al tempo di rappresentazione ed all'uso della memoria): http://www.math.uni-hamburg.de/home/hars/rman/height.html
Florian ha anche alcune pagine di analisi comparative più generali tra POV e RenderMan: http://www.math.uni-hamburg.de/home/hars/rman/rm_vs_pov.html

      ... che c'è una libreria di ombreggiatori RenderMan scaricabile gratuitamente realizzata da Guido Quaroni? La libreria contiene ombreggiatori presi dalla Guida Renderman, dalla Pixar, da Larry Gritz e da svariati altri posti. Un collegamento a tale primizia può essere trovato sulle pagine Web di BMRT ed in particolare sul sito http://www.seas.gwu.edu/student/gritz/bmrt.html.

      ... che c'è un sito FTP della CalTech che contiene un gran numero di ombreggiatori RenderMan? La collezione è analoga all'archivio di Guido Quaroni se si eccettua il fatto che contiene esempi di file RIB che utilizzano gli ombreggiatori comprensivi dei file RIB in entrambi i formati GIF e TIFF. Il sito è all'indirizzo ftp://pete.cs.caltech.edu/pub/RMR/Shaders/.

Domande e Risposte

D: Dove posso reperire una copia del cubo a colori di Netscape per usarlo con Netpbm? Come posso utilizzarlo?

R: Il cubo a colori, per quanto concerne il testo, può essere trovato sul sito Web Creating Killer Websites all'indirizzo http://www.killersites.com/images/color_cube_colors.gif. Esso può essere utilizzato nella maniera seguente:

% giftopnm color_cube_colors.gif" > color_cube.ppm
% tgatoppm image.tga | ppmquant -m color_cube.ppm -fs | \
    ppmtogif -interlace -transparent rgb:ff/ff/ff > image.gif
ove ff/ff/ff è ogni possibile insieme di valori per Rosso, Verde, e Blue da rendere trasparenti.

D: Dove posso trovare modelli di esseri umani?

A: Di seguito vengono riportati due indirizzi di modelli umani. Il primo è la presentazione ufficiale di 3DCafe mentre il secondo vi conduce dritto dritto alle rappresentazioni umane. Leggete prima di tutto le avvertenze (anche se dovrete dotarvi, molto probabilmente, di un browser adeguato quale Netscape 3.x e simili): http://www.3dcafe.com/meshes.htm
http://www.3dcafe.com/anatomy.htm

Dalla mailing list dell'IRTC-L

D: C'è un browser per Linux conforme alle norme VRML 2.0?

R: Si. Liquid Reality della Dimension X è un browser pienamente conforme al VRML 2.0. La pagina da cui lo si può prelevare dice che ci sarà presto il supporto per Netscape 3.0 come plug-in. Si tratta di un prodotto commerciale con una versione di prova da scaricare. Per maggiori informazioni si veda http://www.dimensionx.com/products/lr/download/.

Da parte di un lettore affezionato, di cui ho dimenticato il nome prima ancora di segnarmelo. Tutte le mie scuse.

D: Qualcuno può dirmi come posso definire un campo di quote relativamente ad uno specifico insieme di punti? Il mio obiettivo è riuscire a prendere una carta topografica, sovrapporle una griglia qualsiasi e utilizzare marcatori di latitudine, longitudine e quota come punti di uno spazio tridimensionabile definibile per creare un campo di quote abbastanza simile ad una vera mappa topografica.

R: La maniera più semplice per ottenere quanto richiesto consiste probabilmente nella scrittura di un file PGM. Io non utilizzerei longitudine e latitudine poiché l'ampiezza di un grado non è fissata e darebbe risultati ragionevoli soltanto in prossimità dell'equatore. Utilizzando le coordinate UTM o sovrapponendo una griglia arbitraria sulla cartina in maniera da ottenere quadrati anche approssimati si ottengono migliori risultati.

	 P2
	 # kilimajaro.pgm
	 15 10
	 59
	 10 15 18 20 21 22 23 23 21 20 19 18 17 16 15
	 11 15 19 22 27 30 30 30 29 28 25 20 19 18 17
	 13 15 19 21 28 38 36 40 40 35 30 24 20 19 18
	 15 16 18 20 29 39 37 44 59 44 38 30 22 19 18
	 15 16 18 20 28 30 30 40 50 46 51 48 28 20 19
	 15 15 16 17 18 19 20 24 30 35 37 37 30 20 19
	 15 15 14 15 16 17 18 19 22 29 30 29 27 20 19
	 15 15 14 13 15 16 15 17 18 20 22 20 20 20 18
	 15 14 13 11 12 12 12 13 14 15 17 15 15 15 14
	 14 11 10  9  9 10 10 10  9 10 13 12 11 11 11
		
Si usi questa tabella con la scala <15,1.18,19> per ottenere un'immagine in scala e contemporaneamente una scala di misure più ampia per l'asse y se si vuole vedere qualcosa. La terra è incredibilmente piatta.

Da Florian Hars attraverso la mailing list IRTC-L

D: Sono così stupido nell'utilizzare BMRT, con alcuni semplici CSG, da riuscire ad incontrare problemi. Voglio ritagliare un quadrato da un piano ottenuto mediante una semplice pezza romboidale. Qualunque cosa usi per definire il quadrato (per ora una scatola) viene fuori bianco anziché con il colore di sfondo (nero in questo caso). Non so in cosa sbaglio e mi farebbe piacere se qualcuno mi desse qualche indicazione.

R: Ci sono diverse cose che non vanno nel file RIB, così come nell'uso del CSG. Le principali sono:

Quanto riportato appresso non si può assolutamente fare:

	    ObjectBegin 2
	       SolidBegin "primitive"
	       TransformBegin
		  Translate -1 0 0
		  Rotate -90 0 1 0
		  Patch "bilinear" "P" 
		     [ -1 -1 0   1 -1 0 
		       -1  1 0   1  1 0  ]
	       TransformEnd
	       ... ecc.
	    ObjectEnd
			
    Non sono consentite trasformazioni all'interno delle definizioni di oggetti. Si ricordi che le istanze degli oggetti ereditano l'intero stato grafico attivo quando gli oggetti vengono istanziati -- incluse le trasformazioni. In tal modo tutte le primitive all'interno dell'oggetto istanziato ereditano la medesima trasformazione. Se sono tutte romboidali come quelle definite nell'esempio si avrà che andranno a finire tutte l'una sull'altra.
    Per questo ed altri motivi invito chiunque a non usare affatto oggetti istanziati con qualunque rappresentatore conforme a RenderMan. Come descritto nelle specifiche 3.1 RenderMan essi sono pressoché inutili. Si, so che la Guida RenderMan presenta un esempio che propone esattamente ciò che ho appena asserito essere illecito, ma è chiaro che l'esempio è sbagliato e che non funzionerà né con PRMan né con BMRT.
    Si sa che operazioni (CSG) con solidi lavorano soltanto su solidi. Un solido è una rappresentazione limite che divide lo spazio in tre aree distinte: (a) la frontiera stessa, che ha una superficie finita, (b) una regione di volume finito (possibilmente concava) (l'interno) e (c) una regione connessa di volume infinito (l'esterno). Non si può sottrarre una scatola ad una toppa romboidale, poiché una toppa romboidale non è un solido da cui poter sottrarre nulla.
    Se si vuole una superficie piatta con un buco quadrato, ci sonno due metodi che raccomando: (a) utilizzare dei pezzi rettangolari (4 per l'esattezza) per creare la superficie, come appresso indicato:
	    +-----------------------+
	    |  #1                   |
	    |                       |
	    +======+---------+======+
	    |      |         |      |
	    | #2   |  (hole) | #3   |
	    |      |         |      |
	    +======+---------+======+
	    |  #4                   |
	    |                       |
	    +-----------------------+
Ovvero, (B) se veramente ci si vuole divertire, si usi una singola toppa NURBS piatta, di ordine 2, con una curva di taglio, sempre di ordine 2, per delimitare un buco.

Da Larry Gritz <lg@pixar.com>

indent
indent
indent

Riflessioni

Correzione dell'effetto gamma dei display

Gamma Correction Scale     Durante gli ultimi due mesi ho lavorato come un dannato alla realizzazione di un articolo sull'IRTC, la gara su Internet per la traccia di raggi. In precedenti edizioni della gara avevo preparato qualche riga utilizzando POV-Ray, ma nella competizione attuale ho deciso di passare a BMRT, per lo più perché in questo modo posso imparare ad usare l'API RenderMan e come fare a scrivere ombreggiatori usando il linguaggio del RenderMan. L'articolo principale di questo mese è il secondo di una trilogia sul BMRT. Il pacchetto BMRT è stato scritto da Larry Gritz e lui stesso è stato così gentile da offrirmi, per la mia immagine, delle critiche e dei suggerimenti notevoli.
    Nel corso del nostro scambio epistolare via e-mail, Larry mi ha informato del fatto che avevo sbagliato sovrailluminando le mie immagini. Mentre stavamo cercando di individuare la causa di tale effetto (è venuto fuori che si trattava di un uso sbagliato di alcuni parametri in determinati riflettori che stavo utilizzando) mi ha chiesto se avevo proceduto alla correzione dell'effetto gamma sul mio display. La correzione dell'effetto gamma è una conquista notevole della computer grafica, troppo spesso trascurata dai neofiti. Sebbene abbia ascoltato e letto abbastanza sulla correzione dell'effetto gamma non mi sono mai cimentato con l'impresa di procedere alla correzione di tale effetto sul mio display. Larry oltre a fornirmi una spiegazione del fenomeno mi ha dato la possibilità di testare in maniera molto veloce l'effetto gamma sul mio sistema ed, infine, mi ha fornito un suggerimento per poter procedere alla correzione dell'effetto direttamente mediante il rappresentatore BMRT. A me è sembrata una cosa grandiosa ed ho deciso di condividere le informazioni avute con i miei lettori. Quanto segue è il frutto di queste considerazioni.
    Rendrib produce in uscita pixel che "si comportano linermente" - in effetti un pixel con valore 200 ha un fattore di illuminazione doppio rispetto ad un pixel che porti un valore 100. C'è da aspettarsi pertanto che il proprio display sia almeno due volte più brillante (fotometricamente, non necessariamente percentualmente) con un pixel con valore 200 rispetto ad un pixel che presenti il valore 100.
    Questo tipo di visualizzazione si ottiene però soltanto se si corregge l'effetto gamma che corrisponde ad una non linearità del monitor. Per procedere alla correzione si dia un'occhiata alla carta riportata di seguito. Si visualizzi il diagramma come se si trattasse di una immagine qualsiasi. Si noterà che se si guarda l'immagine di traverso la brillantezza apparente del lato sinistro coincide con un particolare numero sulla destra. Questo valore è il fattore di correzione gamma che deve essere applicato all'immagine per ottenere una risposta lineare dal proprio monitor.

    Se il programma di visualizzazione usa Mesa (come fa il display del buffer di fotogrammi di rendrib) si può predisporre la variabile d'ambiente MESA_GAMMA con il valore di questo parametro ed il software effettuerà la correzione come se fosse lui a proiettare i pixel sullo schermo. Molti programmi di visualizzazione consentono di correggere l'effetto gamma allorché si va a guardare un'immagine, anche se io ho incontrato diversi problemi nell'ottenere questo risultato con xv senza dover essere costretto a manipolare i colori in maniera misteriosa.
    Un'alternativa può essere quella di inserire la riga seguente nel proprio file RIB:
	  Exposure 1 <gamma>

indent indent indent
Approfondimenti ...
Ciò che ho prodotto per l'IRTC di Marzo/Aprile - un esempio da manuale su come imparare ad utilizzare RenderMan e BMRT

BMRT Parte 2ª - Il linguaggio degli ombreggiatori RenderMan

indent
ove gamma è ciò che si è misurato con il diagramma. In tal modo si ottiene l'intervento di rendrib per pre-correggere l'effetto gamma del display sui pixel in uscita. Ritengo molto importante procedere alla correzione dell'effetto gamma in modo che le immagini si possano vedere nella maniera in cui rendrib "si aspetta" che esse appaiano. Ovviamente rendrib non è in grado di conoscere le non-linearità di un monitor se non gli viene detto nulla.
    Larry illustra con notevole ricchezza di dettagli le caratteristiche dell'effetto gamma sulle sue pagine, all'indirizzo: http://www.seas.gwu.edu/student/gritz/gamma.html. Larry mi ha chiesto anche di citare il fatto che il diagramma gli è stato dato da Greg Ward, anche se non disponiamo di alcun riferimento per poterlo contattare. Spero che Greg non si faccia alcun problema del fatto che la utilizziamo.     Il lettore tenga conto del fatto che l'immagine mostrata in questo articolo può non fornire le giuste informazioni per procedere alla correzione dell'effetto gamma poiché il browser di cui si dispone può caricare i colori alterandoli anche di molto rispetto a quello che dovrebbero essere. Inoltre questa immagine è una versione jpeg dell'immagine originale TIFF fornita da Larry. È possibile che anche la conversione influenzi le caratteristiche dell'immagine. Se si è interessati a fare un tentativo serio ci si deve procurare l'immagine originale TIFF (300x832).

Risorse

I riferimenti che seguono rappresentano esclusivamente il punto di partenza per l'acquisizione di ulteriori informazioni sulla computer grafica e, più in generale, sulla multimedialità, per sistemi Linux. Se disponete di informazioni specifiche su qualche applicazione e me ne mettete al corrente le aggiungerò alle mie pagine o, se lo preferite, potrete contattare qualche altro amministratore di siti web e prendere accordi con lui. Prenderò in considerazione la possibilità di aggiungere qualche altro riferimento di carattere generale qui di seguito, ma informazioni specifiche su applicazioni o siti troveranno sicuramente una migliore collocazione nei riferimenti di caratter generale riportati di seguito piuttosto che qui.

mini-Howto della Grafica su Linux
Programmi utili per la grafica in Unix
La pagina multimediale di Linux

Ecco alcune delle Liste di posta elettronica e dei Newsgroup che tengo sotto controllo e da cui traggo la maggior parte delle informazioni presentate in queste pagine:

Le liste dell'utente Gimp e dello sviluppatore Gimp.
La lista di discusione su IRTC-L
comp.graphics.rendering.raytracing
comp.graphics.rendering.renderman
comp.os.linux.announce

Sviluppi Futuri

Il prossimo mese:
Fatemi sapere di cosa volete che mi occupi!


Alla Home Page

Per l'articolo originale: © 1997 Michael J. Hammel - Pubblicato sul n. 17 della Linux Gazette
Per l'edizione italiana: © 1997 A. Cartelli - Pubblicato sul n. 6 anno I di LGEI a cura del LUGBari