home *** CD-ROM | disk | FTP | other *** search
/ ftp.pasteur.org/FAQ/ / ftp-pasteur-org-FAQ.zip / FAQ / graphics / faq < prev    next >
Encoding:
Text File  |  1996-04-27  |  58.8 KB  |  1,452 lines

  1. Newsgroups: comp.graphics.misc,comp.answers,news.answers
  2. Path: senator-bedfellow.mit.edu!bloom-beacon.mit.edu!uhog.mit.edu!news.mathworks.com!newsfeed.internetmci.com!howland.reston.ans.net!ixnews1.ix.netcom.com!netcom.com!grieggs
  3. From: grieggs@netcom.com (John T. Grieggs)
  4. Subject: (16Oct95) comp.graphics.misc Frequently Asked Questions (FAQ)
  5. Message-ID: <grieggsDqAzuw.6IL@netcom.com>
  6. Followup-To: comp.graphics.misc
  7. Keywords: FAQ, graphics
  8. Sender: grieggs@netcom13.netcom.com
  9. Reply-To: grieggs@netcom.com (John T. Grieggs)
  10. Organization: Grizzly Bear Labs, Pasadena, Ca
  11. Date: Tue, 23 Apr 1996 07:08:56 GMT
  12. Approved: news-answers-request@MIT.edu
  13. Lines: 1436
  14. Xref: senator-bedfellow.mit.edu comp.graphics.misc:8818 comp.answers:18338 news.answers:70187
  15.  
  16. Archive-name: graphics/faq
  17.  
  18.  
  19.                             COMP.GRAPHICS.MISC FAQ
  20.                                        
  21.    Last update: 16Oct95
  22.    
  23.    This document answers a number of the most frequently asked questions
  24.    about graphics on the Internet. To avoid wasting bandwidth and as a
  25.    matter of politeness please look for the answer to your question in
  26.    this document BEFORE posting to comp.graphics.misc.
  27.    
  28.    If your copy of the FAQ is more than a couple of weeks old, you may
  29.    want to seek out the most recent version. The latest non-HTML version
  30.    of this FAQ is always available on rtfm.mit.edu as
  31.    /pub/usenet/news.answers/graphics/faq.
  32.    
  33.    In case you're reading the ASCII version of the FAQ, the HTML version
  34.    is at http://www.primenet.com/~grieggs/cg_faq.html.
  35.    
  36.    Send your updates to me at grieggs@primenet.com. I reserve the right
  37.    to reject or modify submissions based on my interpretation of the role
  38.    of the FAQ.
  39.      _________________________________________________________________
  40.    
  41. Contents
  42.  
  43.      * Editorial
  44.      * Copyright
  45.      * Changes since last revision
  46.      * Other Graphics-related FAQs and FAQ-like documents
  47.      * General References
  48.           + Books
  49.           + Eratta
  50.           + Other
  51.      * Specific References
  52.           + Ray-Tracing and Global Illumination
  53.           + Graphics File Formats
  54.           + Spatial Data Structures
  55.           + PEX and PHIGS
  56.           + OpenGL
  57.           + Morphing
  58.           + Radiosity
  59.      * How do I ...
  60.           + draw 3D objects on a 2D screen?
  61.           + quantize 24-bit images down to 8 bits?
  62.           + convert color to grayscale?
  63.           + convert grayscale to black & white?
  64.           + rotate a raster image by an arbitrary angle?
  65.           + draw a circle as a Bezier (or B-spline) curve?
  66.           + tell whether a point is within a planar polygon?
  67.           + tessellate a sphere?
  68.           + ray-trace height fields?
  69.           + find the area of a 3D polygon?
  70.           + convert between vector formats?
  71.           + get files if I can't ftp?
  72.      * Where can I get ...
  73.           + format documents for TIFF, IFF, GIF, etc.?
  74.           + free image manipulation software?
  75.           + free plotting software?
  76.           + standards documents?
  77.           + 3D objects?
  78.           + MRI and CT scan volume data?
  79.           + MPSC and AOEGA info?
  80.      * Graphics-related Mailing Lists
  81.           + Imagine mailing list
  82.           + DCTV mailing list
  83.           + Rayshade Users mailing list
  84.           + Lightwave mailing list
  85.           + Video Toaster mailing list
  86.           + Mailing List For Massive Parallel Rendering
  87.           + Netpbm mailing list
  88.           + POV-Ray mailing list
  89.           + RayDream mailing list
  90.           + Computational Geometry mailing list
  91.           + Photoshop mailing list
  92.           + 3DStudio mailing list
  93.           + KPT mailing list
  94.           + KODAK Photo CD mailing list
  95.           + Caligari TrueSpace mailing list
  96.           + Global Illumination mailing list
  97.           + Fractal Design Painter mailing list
  98.      * SIGGRAPH
  99.           + SIGGRAPH information online
  100.           + How to join ACM/SIGGRAPH
  101.           + SIGGRAPH Online Bibliography Project
  102.             
  103.    
  104.      _________________________________________________________________
  105.    
  106.    
  107.    
  108. Editorial
  109.  
  110.    I've decided to add a copyright notice to the FAQ. I've had several
  111.    requests to include portions of the FAQ in various compilations and
  112.    books and while I don't mind, I would like to make sure that readers
  113.    of such excerpts can find the latest version of the actual FAQ. I'd
  114.    also like to tone down the activities of those who try to make money
  115.    from the volunteer work of others...
  116.    
  117.    As far as I am concerned, the FAQ has never been available for
  118.    publication without permission anywhere but on the Internet.
  119.    
  120.    _john
  121.    
  122.    
  123.      _________________________________________________________________
  124.    
  125.    
  126.    
  127. Copyright
  128.  
  129.    The comp.graphics.misc FAQ is Copyright (c) 1995 John T. Grieggs. It
  130.    may be freely distributed electronically on the Usenet and via the
  131.    Internet, but may not be reprinted in whole or in part in
  132.    non-electronic form without prior permission of the editor (me).
  133.    
  134.    What this means in English is that if you want to reprint or quote the
  135.    FAQ or part of it in a book or on a CD-ROM, I want to know about it,
  136.    in advance, and reserve the right to put conditions on such
  137.    activities. To date I have allowed 6 or 7 authors to do what they
  138.    wanted, and refused permission to 1 blatantly tacky commercial
  139.    venture.
  140.    
  141.    Links to the HMTL version are welcome and even encouraged.
  142.    
  143.    
  144.      _________________________________________________________________
  145.    
  146.    
  147.    
  148. Changes since last revision
  149.  
  150.    Copyright notice (me). It's pretty innocent, but I'm sure I'll hear
  151.    about it if anyone finds it offensive...
  152.    
  153.    New version of ImageMagick (me). hollende@onecert.fr also sent in a
  154.    version update, but by the time I checked, it had already incremented
  155.    to yet another. :-)
  156.    
  157.    Fractal Design Painter mailing list (kima@netcom.com).
  158.    
  159.    Significantly updated ACR/gr info (Len.Makin@mel.dit.csiro.au).
  160.    
  161.    New xgraph info (me).
  162.    
  163.    New robotx version and location (Len.Makin@mel.dit.csiro.au).
  164.    
  165.    New plotting packages: XGobi, XgPlot, and PLOTMTV (which obsoletes
  166.    Drawplot) (Len.Makin@mel.dit.csiro.au).
  167.    
  168.    Special thanks to Len.Makin@mel.dit.csiro.au for sharing his research
  169.    on net-available plotting packages!
  170.    
  171.    New address, and WWW page, for Global Illumination mailing list
  172.    (Francois.Sillion@imag.fr).
  173.    
  174.    Fixed broken URLs (jsam@cs.adelaide.edu.au).
  175.    
  176.    Small correction to the SIGGRAPH Online Bibliography section (me).
  177.    
  178.    Don't forget to send your contributions to grieggs@netcom.com! If you
  179.    just post, I may not see it for one reason or another...
  180.    
  181.    
  182.      _________________________________________________________________
  183.    
  184.    
  185.    
  186. Other Graphics-related FAQs and FAQ-like documents
  187.  
  188.    The comp.graphics.misc FAQ attempts to cover a wide range of
  189.    material. If you don't find what you need here, try one of these more
  190.    focused documents.
  191.    
  192.    comp.graphics.algorithms FAQ
  193.           Maintained by Jon Stone (jdstone@destin.dazixco.ingr.com), the
  194.           comp.graphics.algorithms FAQ contains questions and answers
  195.           about computer graphics algorithms. There is some overlap
  196.           between this document and the one you are reading, for
  197.           historical reasons. It is available on rtfm.mit.edu as
  198.           /pub/usenet/news.answers/graphics/algorithms-faq.
  199.           
  200.    comp.graphics.animation FAQ
  201.           Maintained by Francisco X DeJesus (dejesus@vislab.navy.mil),
  202.           the comp.graphics.animation FAQ contains questions and answers
  203.           about computer graphics animation. He maintains a HTML version
  204.           at http://www.ridgecrest.ca.us/fx/cga-faq.html. The non-HTML
  205.           version is still available on rtfm.mit.edu as
  206.           /pub/usenet/news.answers/graphics/animation-faq.
  207.           
  208.    Graphics File Formats FAQ
  209.           Maintained by James Murray (jdm@netcom.com), the Graphics File
  210.           Formats FAQ contains information on graphics file formats,
  211.           including raster, vector, metafile, PDL, 3D object, animation,
  212.           and multimedia formats. It is available on rtfm.mit.edu as
  213.           /pub/usenet/news.answers/graphics/fileformats-faq.
  214.           
  215.    Color Space FAQ
  216.           Maintained by David Bourgin (david.bourgin@ufrima.imag.fr), the
  217.           Color Space FAQ contains questions and answers about colors and
  218.           color spaces. It is available on rtfm.mit.edu as
  219.           /pub/usenet/news.answers/graphics/colorspace-faq.
  220.           
  221.    Frequently Asked Questions about Gamma and Colour
  222.           Charles Poynton has written FAQs on Gamma and Color Spaces. His
  223.           FAQs are available from his web page,
  224.           http://www.inforamp.net/~poynton/ in a variety of formats.
  225.           Text versions may be obtained at ftp.inforamp.net in the
  226.           /pub/users/poynton/doc/colour directory.
  227.           
  228.    Computer Graphics Resource Listing
  229.           Maintained by Nick Fotis (nfotis@theseas.ntua.gr), the CGRL
  230.           contains questions and answers about general graphics
  231.           documents, sort of like this document. It came into existence
  232.           for political reasons. There is no clear division of
  233.           responsibility between his document and mine, but I do tend to
  234.           keep this one a bit more terse and free of commercial material.
  235.           As a result, the CGRL is much larger and is stored in six
  236.           parts. You can get the parts at rtfm.mit.edu as
  237.           /pub/usenet/news.answers/graphics/resources-list/part[1-6], or
  238.           get the auto-HTMLed version at
  239.           http://www.cis.ohio-state.edu/hypertext/faq/usenet/graphics/r
  240.           esources-list/top.html.
  241.           
  242.    
  243.      _________________________________________________________________
  244.    
  245.    
  246.    
  247. General References
  248.  
  249.    
  250.    
  251.   BOOKS
  252.   
  253.    
  254.      * Computer Graphics: Principles and Practice (2nd Ed.), J.D. Foley,
  255.        A. van Dam, S.K. Feiner, J.F. Hughes, Addison-Wesley 1990, ISBN
  256.        0-201-12110-7
  257.      * Procedural Elements for Computer Graphics, David F. Rogers, McGraw
  258.        Hill 1985, ISBN 0-07-053534-5
  259.      * Mathematical Elements for Computer Graphics (2nd Ed)., David F.
  260.        Rogers and J. Alan Adams, McGraw Hill 1990, ISBN 0-07-053530-2
  261.      * Fundamentals of Three-Dimensional Computer Graphics, Alan Watt,
  262.        Addison-Wesley 1990, ISBN 0-201-15442-0
  263.      * An Introduction to Ray Tracing, Andrew Glassner (ed.), Academic
  264.        Press 1989, ISBN 0-12-286160-4
  265.      * Graphics Gems, Andrew Glassner (ed.), Academic Press 1990, ISBN
  266.        0-12-286165-5
  267.      * Graphics Gems II, James Arvo (ed.), Academic Press 1991, ISBN
  268.        0-12-064480-0
  269.      * Graphics Gems III, David Kirk (ed.), Academic Press 1992, ISBN
  270.        0-12-409670-0 (with IBM disk) or 0-12-409671-9 (with Mac disk)
  271.      * Graphics Gems IV, Paul Heckbert (ed.), Academic Press 1994, ISBN
  272.        0-12-336156-7 with MAC floppy, ISBN 0-12-336155-9 with PC floppy
  273.      * Digital Image Processing (3rd Ed.), Rafael C. Gonzalez, Richard E.
  274.        Woods, Addison-Wesley 1992, ISBN 0-201-50803-6
  275.      * A Programmer's Geometry, Adrian Bowyer, John Woodwark,
  276.        Butterworths 1983, ISBN 0-408-01242-0 Pbk
  277.      * Advanced Animation and Rendering Techniques, Alan Watt, Mark Watt,
  278.        Addison-Wesley 1992, ISBN 0-201-54412-1
  279.        
  280.    
  281.    
  282.   ERATTA
  283.   
  284.    Errata for "An Introduction to Ray Tracing" is available on
  285.    wuarchive.wustl.edu as /graphics/graphics/books/erratas/IntroToRt.
  286.    
  287.    Errata for "Digital Image Warping" is available on wuarchive.wustl.edu
  288.    as /graphics/graphics/books/erratas/Digital-Image-Warping.
  289.    
  290.    Errata for "Photorealism and Ray Tracing in C" is available on
  291.    wuarchive.wustl.edu as
  292.    /graphics/graphics/books/erratas/Photorealism-and-ray-tracing-in-C.
  293.    
  294.    Errata for the "Graphics Gems" series are available on
  295.    wuarchive.wustl.edu in /graphics/graphics/books.
  296.    
  297.    
  298.    
  299.   OTHER
  300.   
  301.    An automatic mail handler at Brown University allows users of
  302.    "Computer Graphics: Principles and Practice," by Foley, van Dam,
  303.    Feiner, and Hughes, to obtain text errata and information on
  304.    distribution of the software packages described in the book. Also,
  305.    users can send the authors feedback, to report text errors and
  306.    software bugs, make suggestions, and submit exercises. To receive
  307.    information describing how you can use the mail handler, simply mail
  308.    graphtext@cs.brown.edu and put the word "Help" in the Subject line.
  309.    Use the Subject line "Software-Distribution" to receive information
  310.    specifically concerning the software packages SRGP and SPHIGS.
  311.    
  312.    All C code from the "Graphics Gems" series is available via anonymous
  313.    ftp from princeton.edu. Look in the directory
  314.    pub/Graphics/GraphicsGems for the various volumes (Gems, GemsII,
  315.    GemsIII, GemsIV), and get the README file first.
  316.    
  317.    A list of computer graphics, computational geometry and image
  318.    processing journals is available from Juhana Kouhia,
  319.    jk87377@cs.tut.fi.
  320.    
  321.    
  322.      _________________________________________________________________
  323.    
  324.    
  325.    
  326. Specific References
  327.  
  328.    
  329.    
  330.   RAY-TRACING AND GLOBAL ILLUMINATION
  331.   
  332.    Rick Speer maintains a cross-indexed ray-tracing bibliography. The
  333.    bib is in the form of a PostScript file. The printout is 41 pages
  334.    long. It may be found on wuarchive.wustl.edu as
  335.    /graphics/graphics/bib/RT.BIB.Speer/speer.rt.bib.ps.Z, and on
  336.    plaza.aarnet.edu.au as
  337.    /graphics/graphics/bib/RT.BIB.Speer/speer.rt.bib.ps.gz.
  338.    
  339.    While useful, this document has not been updated since 1991. Is there
  340.    a more recent version out there somewhere that I don't know about?
  341.    
  342.    Ian Ashdown maintains ray tracing and radiosity/global illumination
  343.    bibliographies. These are in "refer" format, and so can be searched
  344.    electronically (a simple awk script to search for keywords is included
  345.    with each). The bibliographies have been combined, and are available
  346.    on hobbes.lbl.gov as /pub/doc/RadBib95.Z. There are also some other
  347.    interesting papers in the same directory.
  348.    
  349.    Tom Wilson (twilson@dab.ge.com) has collected over 300 abstracts from
  350.    ray tracing related research papers and books. The information is
  351.    essentially in plaintext, and Latex formatting programs are included.
  352.    This collection is available at most of the sites mentioned above as
  353.    "rtabs.*".
  354.    
  355.    
  356.    
  357.   GRAPHICS FILE FORMATS
  358.   
  359.    
  360.      * Graphics File Formats, David Kay and John Levine,
  361.        Windcrest/McGraw-Hill 1992, ISBN 0-8306-3060-0 $36.95 hardcover,
  362.        ISBN 0-8306-3059-7 $24.95 paper. Comments - 26 formats, no
  363.        software (this is good, IMHO - I prefer books which are not
  364.        platform-dependent). Questions about this book may be sent to
  365.        gbook@iecc.cambridge.ma.us.
  366.      * Programming for Graphics Files in C and C++, by John Levine, J.
  367.        Wiley & Sons, 1994, ISBN 0-471-59854-2 $29.95 softcover. A good
  368.        complement to Kay & Levine's book: less text info about the
  369.        formats, but working code (IBM PC code) is given for many of the
  370.        basic operations for each type of format. Diskette can be ordered
  371.        separately.
  372.      * Encyclopedia of Graphics File Formats by James D. Murray and
  373.        William vanRyper, O'Reilly & Associates, Sebastopol, CA July,
  374.        1994, 900 pages, $59.95 (includes a CD-ROM) Softcover ISBN:
  375.        1-56592-058-9, Email: orders@ora.com. Good introduction to
  376.        graphics file format issues for both vector and raster formats,
  377.        plus specific descriptions of nearly 100 file formats. CD-ROM
  378.        includes sample images, original format spec documents where
  379.        available, and C code snippets. Also a lot of free and shareware
  380.        image conversion/manipulation software for Unix, DOS, Windows, and
  381.        Mac. Much of this is available on the net (and indeed the book
  382.        tells you where), but having it all pulled together is very
  383.        useful. Tom Lane (tgl@sss.pgh.pa.us) says: "My only complaint is
  384.        that there are too many typos in the printed text. Check the
  385.        original spec document whenever you find something unclear or
  386.        dubious."
  387.        
  388.    
  389.    
  390.   SPATIAL DATA STRUCTURES
  391.   
  392.    
  393.      * The Design and Analysis of Spatial Data Structures, H. Samet,
  394.        Addison-Wesley, Reading, MA, 1990. ISBN 0-201-50255-0.
  395.      * Applications of Spatial Data Structures: Computer Graphics, Image
  396.        Processing, and GIS, H. Samet, Addison-Wesley, Reading, MA, 1990.
  397.        ISBN 0-201-50300-0.
  398.        
  399.    
  400.    
  401.   PEX AND PHIGS
  402.   
  403.    
  404.      * PEXlib Programming Manual, Tom Gaskins, 1154 pages, O'Reilly &
  405.        Associates, ISBN 1-56592-028-7
  406.      * PEXlib Reference Manual, edited by Steve Talbott, 577 pages,
  407.        O'Reilly & Associates, ISBN 1-56592-029-5
  408.      * PHIGS Programming Manual, Tom Gaskins, 908 pages, O'Reilly &
  409.        Associates, ISBN 0-937175-85-4 (softcover), ISBN 0-937175-92-7
  410.        (casebound)
  411.      * PHIGS Reference Manual, edited by Linda Kosko, 1099 pages,
  412.        O'Reilly & Associates, ISBN 0-937175-91-9
  413.      * A Primer for PHIGS, Hopgood, Duce & Johnston, 298 pages, Wiley,
  414.        ISBN 0-471-93330-9
  415.        
  416.    There is an analysis of OpenGL vs. PEX, Analysis of PEX 5.1 and OpenGL
  417.    1.0, Allen Akin, available on sgi.sgi.com as
  418.    /sgi/opengl/doc/analysis.ps.Z.
  419.    
  420.    
  421.    
  422.   OPENGL
  423.   
  424.    
  425.      * OpenGL Programming Guide, Neider, Davis & Woo, Addison-Wesley,
  426.        1993
  427.      * OpenGL Programming Guide, The Official Guide to Learning OpenGL,
  428.        Release 1", Addison-Wesley, ISBN 0-201-63274-8
  429.        
  430.    There is an analysis of OpenGL vs. PEX, Analysis of PEX 5.1 and OpenGL
  431.    1.0, Allen Akin, available on sgi.sgi.com as
  432.    /sgi/opengl/doc/analysis.ps.Z.
  433.    
  434.    
  435.    
  436.   MORPHING
  437.   
  438.    Warping is the deformation of an image by mapping each pixel to a new
  439.    location. Morphing is blending from one image or object to another
  440.    one. Valerie Hall has written an excellent introduction to warping and
  441.    morphing. This is available for anonymous ftp from
  442.    marsh.cs.curtin.edu.au in the directory
  443.    pub/graphics/bibliography/Morph. There are three files:
  444.    
  445.      * /pub/graphics/bibliography/Morph/morph_intro.ps.Z (PostScript
  446.        version, many pictures)
  447.      * /pub/graphics/bibliography/Morph/morph_intro.txt.Z (text version)
  448.      * /pub/graphics/bibliography/Morph/m_responses.Z (Responses to
  449.        morphing questions)
  450.        
  451.    The files are compressed, so you must use binary transfer and
  452.    uncompress them afterwards.
  453.    
  454.    The definitive book on the topic:
  455.    
  456.      * Digital Image Warping, George Wolberg, IEEE Computer Society Press
  457.        Monograph 1990, ISBN 0-8186-8944-7
  458.        
  459.    
  460.    
  461.   RADIOSITY
  462.   
  463.    Radiosity is a technique for generating very realistic scenes using
  464.    global illumination (a radiative transfer problem).
  465.    
  466.      * Radiosity and Realistic Image Synthesis, Michael F. Cohen, John R.
  467.        Wallace, Academic Press, 1993, ISBN 0-12-178270-0
  468.      * Radiosity and Global Illumination, Francois Sillion, Claude Puech,
  469.        Morgan Kaufmann, 1994, ISBN 1-55860-277-1
  470.      * Radiosity: A Programmer's Perspective, Ian Ashdown, John Wiley &
  471.        Sons, 1994, ISBN 0-471-30444-1 (book only), ISBN 0-471-30488-3
  472.        (with diskette)
  473.        
  474.    
  475.      _________________________________________________________________
  476.    
  477.    
  478.    
  479. How do I ...
  480.  
  481.    This section provides brief answers to some of the most frequently
  482.    asked how-to questions. More verbose answers can generally be found in
  483.    the literature mentioned in the General References section. 
  484.    
  485.   HOW DO I DRAW 3D OBJECTS ON A 2D SCREEN?
  486.   
  487.    There are many ways to do this. Some approaches map the viewing
  488.    rectangle onto the scene, by shooting rays through each pixel center
  489.    and assigning color according to the object hit by the ray. Other
  490.    approaches map the scene onto the viewing rectangle, by drawing each
  491.    object into the region, keeping track of which object is in front of
  492.    which.
  493.    
  494.    The mapping mentioned above is also referred to as a "projection", and
  495.    the two most popular projections are perspective projection and
  496.    parallel projection. For example, to do a parallel projection of a
  497.    scene onto a viewing rectangle, you can just discard the Z coordinate
  498.    (divide by depth), and "clip" the objects to the viewing rectangle
  499.    (discard portions that lie outside the region).
  500.    
  501.    For details on 3D rendering, the Foley, van Dam, Feiner and Hughes
  502.    book, "Computer Graphics: Principles and Practice" would be a good
  503.    place to start reading. Chapter 6 is "Viewing in 3D", and chapter 15
  504.    is "Visible-Surface Determination". For more information go to chapter
  505.    16 for shading, chapter 19 for clipping, and branch out from there.
  506.    
  507.    
  508.    
  509.   HOW DO I QUANTIZE 24-BIT IMAGES DOWN TO 8 BITS?
  510.   
  511.    Find a copy of "Color Image Quantization for Frame Buffer Display" by
  512.    Paul Heckbert, SIGGRAPH '82 Proceedings, page 297. There are other
  513.    algorithms, but this one works well and is fairly simple.
  514.    Implementations are included in most raster toolkits (check out the
  515.    various free image manipulation software available).
  516.    
  517.    A variant method is described in "Graphics Gems", p. 287-293 (but no
  518.    code), and there is further information in "Graphics Gems II", p.
  519.    126-133 (code available online but not in book). Spencer Thomas'
  520.    article in Gems II on Efficient Inverse Color Map Computation (p.
  521.    116-125) is also relevant, and code is provided in the book and
  522.    online, as well as in the Utah Raster Toolkit. Note that the code from
  523.    the "Graphics Gems" series is all available from an FTP site, as
  524.    described above.
  525.    
  526.    Also check out John Bradley's "Diversity Algorithm", which is
  527.    incorporated into the xv package and described in the back of the
  528.    manual.
  529.    
  530.    The ImageMagick package contains another quantizing algorithm which is
  531.    presented as "doing a better job than the other algorithms, but
  532.    slower".
  533.    
  534.    Ian Ashdown (Ledalite@mindlink.bc.ca) is maintaining a bibliography of
  535.    color quantization papers and articles that is available at
  536.    hobbes.lbl.gov as /pub/doc/cquant95.Z. It includes both the original
  537.    presentations of the algorithms and their implementation in popular
  538.    computer magazines such as Dr. Dobb's Journal and The C/C++ Users
  539.    Journal.
  540.    
  541.    
  542.    
  543.   HOW DO I CONVERT COLOR TO GRAYSCALE?
  544.   
  545.    The NTSC formula is:
  546.    
  547.    luminosity = .299 red + .587 green + .114 blue
  548.    
  549.    For additional information, please refer to the Color Space FAQ.
  550.    
  551.    
  552.    
  553.   HOW DO I CONVERT GRAYSCALE TO BLACK & WHITE?
  554.   
  555.    The definitive book on the topic:
  556.    
  557.      * Digital Halftoning, Robert Ulichney, MIT Press 1987, ISBN
  558.        0-262-21009-6
  559.        
  560.    But before you go off and start coding, check out the variety of free
  561.    image manipulation software available. Almost all of the packages
  562.    mentioned can do some form of gray to b&w conversion.
  563.    
  564.    For additional information, please refer to the Color Space FAQ.
  565.    
  566.    
  567.    
  568.   HOW DO I ROTATE A RASTER IMAGE BY AN ARBITRARY ANGLE?
  569.   
  570.    The obvious but wrong method is to loop over the pixels in the source
  571.    image, transform each coordinate, and copy the pixel to the
  572.    destination. This is wrong because it leaves holes in the destination.
  573.    Instead, loop over the pixels in the destination image, apply the
  574.    *reverse* transformation to the coordinates, and copy that pixel from
  575.    the source. This method is quite general, and can be used for any
  576.    one-to-one 2-D mapping, not just rotation. You can add anti-aliasing
  577.    by doing sub-pixel sampling.
  578.    
  579.    However, there is a much faster method, with antialising included,
  580.    which involves doing three shear operations. The method was originally
  581.    created for the IM Raster Toolkit; an implementation is also present
  582.    in PBMPLUS. Reference: A Fast Algorithm for Raster Rotation", by Alan
  583.    Paeth (awpaeth@watcgl.waterloo.edu) Graphics Interface '86
  584.    (Vancouver). An article on the IM Raster Toolkit appears in the same
  585.    journal. An updated version of the rotation paper appears in "Graphics
  586.    Gems" under the original title.
  587.    
  588.    
  589.    
  590.   HOW DO I DRAW A CIRCLE AS A BEZIER (OR B-SPLINE) CURVE?
  591.   
  592.    The short answer is, "You can't." Unless you use a rational spline
  593.    you can only approximate a circle. The approximation may look
  594.    acceptable, but it is sensitive to scale. Magnify the scale and the
  595.    error of approximation magnifies. Deviations from circularity that
  596.    were not visible in the small can become glaring in the large. If you
  597.    want to do the job right, consult the article:
  598.    
  599.    "A Menagerie of Rational B-Spline Circles" by Leslie Piegl and Wayne
  600.    Tiller in IEEE Computer Graphics and Applications, volume 9, number 9,
  601.    September, 1989, pages 48-56.
  602.    
  603.    For rough, non-rational approximations, consult the book:
  604.    
  605.    Computational Geometry for Design and Manufacture by I. D. Faux and M.
  606.    J. Pratt, Ellis Horwood Publishers, Halsted Press, John Wiley 1980.
  607.    
  608.    For the best known non-rational approximations, consult the article:
  609.    
  610.    "Good Approximation of Circles by Curvature-continuous Bezier Curves"
  611.    by Tor Dokken, Morten Daehlen, Tom Lyche, and Knut Morken in Computer
  612.    Aided Geometric Design, volume 7, numbers 1-4 (combined), June, 1990,
  613.    pages 33-41 [Elsevier Science Publishers (North-Holland)]
  614.    
  615.    
  616.    
  617.   HOW DO I TELL WHETHER A POINT IS WITHIN A PLANAR POLYGON?
  618.   
  619.    Consider a ray originating at the point of interest and continuing to
  620.    infinity. If it crosses an odd number of polygon edges along the way,
  621.    the point is within the polygon. If the ray crosses an even number of
  622.    edges, the point is either outside the polygon, or within an interior
  623.    hole formed from intersecting polygon edges. This idea is known in the
  624.    trade as the Jordan curve theorem; see Eric Haines' article in
  625.    Glassner's ray tracing book (above) for more information, including
  626.    treatment of special cases.
  627.    
  628.    Another method is to sum the absolute angles from the point to all the
  629.    vertices on the polygon. If the sum is 2 pi, the point is inside, if
  630.    the sum is 0 the point is outside. However, this method is about an
  631.    order of magnitude slower than the previous method because evaluating
  632.    the trigonometric functions is usually quite costly.
  633.    
  634.    Code for both methods (plus barycentric triangle testing) can be found
  635.    in the Ray Tracing News, Vol. 5, No. 3, available from princeton.edu
  636.    as /pub/Graphics/RTNews/RTNv5n3.Z.
  637.    
  638.    This code has been updated and expanded. A long article on the topic
  639.    appears in _Graphics Gems IV_ and the code (along with a timing test
  640.    program) is available from princeton.edu as
  641.    /pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z.
  642.    
  643.    
  644.    
  645.   HOW DO I TESSELLATE A SPHERE?
  646.   
  647.    One simple way is to do recursive subdivision into triangles. The
  648.    base of the recursion is an octahedron, and then each level divides
  649.    each triangle into four smaller ones. Jon Leech has posted a nice
  650.    routine called sphere.c that generates the coordinates. It's available
  651.    for FTP on ftp.ee.lbl.gov and princeton.edu.
  652.    
  653.    
  654.    
  655.   HOW DO I RAY-TRACE HEIGHT FIELDS?
  656.   
  657.    Height fields are a special case in ray-tracing. They have a number
  658.    of uses, such as terrain rendering, and some optimization is possible.
  659.    Thus, they get their own FAQ section. Note that further references can
  660.    no doubt be located via the ray-tracing bibs in section 16 above.
  661.    
  662.    The following paper seems to be the definitive reference: "Grid
  663.    Tracing: Fast Ray Tracing For Height Fields", F. Kenton Musgrave,
  664.    July, 1988.
  665.    
  666.    This is available as "Research Report YALEU/DCS/RR-639" from Yale
  667.    University, it's also in the SIGGRAPH '91 Fractal Modeling in 3D
  668.    Computer Graphics and Imaging course notes, and (best of all) it's
  669.    available on the net, at princeton.edu, as
  670.    /pub/Graphics/Papers/musg88.ms.Z.
  671.    
  672.    An implementation of this paper may be found in Rayshade.
  673.    
  674.    Another paper exists: "Parametric Height Field Ray Tracing", D. W.
  675.    Paglieroni, S. M. Peterson, Proceedings of Graphics Interface '92,
  676.    Canadian Information Processing Society, Toronto, Ontario, May 1992,
  677.    p. 192-200
  678.    
  679.    And still one more: "The Synthesis and Rendering of Eroded Fractal
  680.    Terrains", Musgrave, Kolb, Mace, Computer Graphics Vol 23, No. 3
  681.    (SIGGRAPH '89 Proceedings) p. 41-50 
  682.    
  683.   HOW DO I FIND THE AREA OF A 3D POLYGON?
  684.   
  685.    The area of a triangle is given by (in C notation)
  686.  
  687.      area = 0.5 * ( ( x[0] * y[1] ) + ( x[1] * y[2] ) + ( x[2] * y[0] ) -
  688.                     ( x[1] * y[0] ) - ( x[2] * y[1] ) - ( x[0] * y[2] ) );
  689.  
  690.    
  691.    
  692.    and the area of a planar polygon is given by
  693.  
  694.      area = 0.0;
  695.  
  696.      for ( i = 0; i <n - 1; i++ )
  697.          area += ( x[i] * y[i + 1] ) - ( x[i + 1] * y[i] );
  698.      area += ( x[n - 1] * y[0] ) - ( x[0] * y[n - 1] );
  699.      area /= 2.0;
  700.  
  701.    
  702.    
  703.    or, equivalently but more quickly
  704.  
  705.     area = 0.0;
  706.  
  707.     for ( i = 0; i <n - 1; i++ )
  708.         area += ( x[i] - x[i + 1] ) * ( y[i + 1] + y[i] );
  709.     area += ( x[n - 1] - x[0] ) * ( y[0] + y[n - 1] );
  710.     area /= 2.0;
  711.  
  712.    
  713.    
  714.    If the area is a negative number, the polygon or triangle is
  715.    clockwise, if positive, it is counterclockwise.
  716.    
  717.    From Ronald Goldman's Gem (in Graphics Gems II - see section 1 above),
  718.    "Area of Planar Polygons and Volume of Polyhedra:"
  719.    
  720.    The area of a polygon P0, P1, P2, ... Pn, not in the x-y plane, is
  721.    given by
  722.  
  723.      Area(Polygon) = 1/2 * | N . Sigma { Pk x Pk+1 } |
  724.  
  725.    
  726.    
  727.    where N is the unit vector normal to the plane and P is a polygonal
  728.    vertex. The . represents the dot product operator and the x represents
  729.    the cross product operator. Sigma represents the summation operator. |
  730.    | represents the absolute value operator. Pn+1 is equal to P0.
  731.    
  732.    
  733.    
  734.   HOW DO I CONVERT BETWEEN VECTOR FORMATS?
  735.   
  736.    A lot of people ask about converting from HPGL to PostScript, or
  737.    MacDraw to CGM, or whatever. It is important to understand that this
  738.    is a very different problem from that addressed by the free image
  739.    manipulation software below. Converting one image format to another
  740.    is a fairly easy problem, since once you get past all the file header
  741.    junk, a pixel is a pixel -- the basic objects are the same for all
  742.    image formats. This is not so for vector formats. The basic objects --
  743.    circles, ellipses, drop-shadowed pattern-filled round-cornered
  744.    rectangles, etc. -- vary from one format to another. Except in
  745.    extremely restricted cases, it is simply not possible to do a
  746.    one-to-one conversion between vector formats.
  747.    
  748.    On the other hand, it is quite possible to do a close approximation,
  749.    rendering an image from one format using the primitives from another.
  750.    As far as I know, no one has put together a general toolkit of such
  751.    converters, but two different HPGL to PostScript converters have been
  752.    posted to comp.sources.misc. Check the index on your nearest archive
  753.    site.
  754.    
  755.    A related frequent question is how to convert from some vector format
  756.    to a bitmapped image - from PostScript to Sun raster format, or HPGL
  757.    to X11 bitmap. For example, some of the commercial PostScript clones
  758.    for PC's allow you to render to a disk file as well as a printer.
  759.    Also, the PostScript interpreters in the NeXT box and in Sun's
  760.    X11/NeWs can be used to render to a file if you're clever. But in
  761.    general, the answer is no. However, if someone were to put together a
  762.    vector to vector conversion toolkit, adding a vector to raster
  763.    converter would be trivial.
  764.    
  765.    GNU ghostscript (from the FSF - current version 2.6.1) includes
  766.    drivers for both ppm and gif format files, thus it can be used as a
  767.    PostScript to ppm or a PostScript to GIF filter. (It implements
  768.    essentially all of PostScript level 1 and alot of Display PostScript
  769.    and level 2).
  770.    
  771.    There is a package called hp2xx, which includes a fairly nice HP-GL
  772.    previewer/converter, and which can convert to several formats,
  773.    including PBM. The latest version is hp2xx-3.1.2.tar. It's available
  774.    on many archive sites.
  775.    
  776.    
  777.    
  778.   HOW DO I GET FILES IF I CAN'T FTP?
  779.   
  780.    There are a number of sites that archive the Usenet sources
  781.    newsgroups and make them available via an email query system. You send
  782.    a message to an automated server saying something like "send
  783.    comp.sources.unix/fbm", and a few hours or days later you get the file
  784.    in the mail.
  785.    
  786.    In addition, there is at least one FTP-by-mail server. Send mail to
  787.    ftpmail@decwrl.dec.com saying "help" and it will tell you how to use
  788.    it. Note that this service has at times been turned off due to abuse.
  789.    
  790.    
  791.      _________________________________________________________________
  792.    
  793.    
  794.    
  795. Where can I get ...
  796.  
  797.    This section provides information on how to obtain frequently sought
  798.    items. I tend to shy away from commercial products other than books so
  799.    as to remain as neutral as possible. I don't want to see things like
  800.    "... the paint program recommended in the comp.graphics.misc FAQ!" get
  801.    a toe-hold in my reality. :-) 
  802.    
  803.   WHERE CAN I GET FORMAT DOCUMENTS FOR TIFF, IFF, GIF, ETC.?
  804.   
  805.    You almost certainly don't need these due to the existence of a large
  806.    quantity of very good free image manipulation software. Get one or
  807.    more of these packages and look through them. Chances are excellent
  808.    that the image converter you were going to write is already there.
  809.    
  810.    But if you still want one of the format documents, many such files are
  811.    available by anonymous ftp from the following sites:
  812.    
  813.      * zamenhof.cs.rice.edu:/pub/graphics.formats
  814.      * ftp.ncsa.uiuc.edu:/misc/file.formats/graphics.formats
  815.      * telva.ccu.uniovi.es:/pub/graphics/file.formats
  816.      * peipa.essex.ac.uk:/ipa/file-formats
  817.      * avalon.vislab.navy.mil:/pub/format_specs
  818.        
  819.    There are many files in each of these directories. Your best bet is to
  820.    go there and look around.
  821.    
  822.    FITS stands for Flexible Image Transport System. It's a file format
  823.    most often used in astronomy. Despite the name, it can contain not
  824.    only images but other things as well. There is a regular monthly FITS
  825.    basics and information posting on sci.astro.fits - read it if you want
  826.    to know more.
  827.    
  828.    
  829.    
  830.   WHERE CAN I GET FREE IMAGE MANIPULATION SOFTWARE?
  831.   
  832.    There are a number of toolkits for converting from one image format
  833.    to another, doing simple image manipulations such as size scaling,
  834.    plus the above-mentioned 24 -> 8, color -> gray, gray -> b&w
  835.    conversions.
  836.    
  837.    While there is a full URL listed for many of these packages, this is
  838.    really quite misleading. Most of these packages are available from
  839.    numerouse sites. I highly recommend two things:
  840.    
  841.     1. Use archie or a similar tool to locate an ftp site close to you,
  842.        rather than fighting the frothing hordes for access to wuarchive.
  843.     2. ftp to your chosen site manually, change to the directory listed
  844.        in the FAQ for your chosen package, and look around. You will
  845.        often find newer versions or additional, related files.
  846.        
  847.    That being said, here are the packages:
  848.    
  849.    xv by John Bradley
  850.           X-based image display, manipulation, and format conversion
  851.           package. XV displays many image formats and permits editing of
  852.           GIF files, among others. The latest version is 3.10a, and may
  853.           be found at John's site ftp.cis.upenn.edu as
  854.           /pub/xv/xv-3.10a.tar.gz.
  855.           
  856.    PBMPLUS by Jef Poskanzer
  857.           Comprehensive format conversion and image manipulation package.
  858.           It is available at ftp.ee.lbl.gov as /pbmplus10dec91.tar.Z and
  859.           at wuarchive.wustl.edu as
  860.           /graphics/graphics/packages/pbmplus/pbmplus10dec91.tar.Z.
  861.           
  862.    NETPBM
  863.           This is a Usenet community supported version of the PBMPLUS
  864.           toolkit, including many new and updated converters. It is
  865.           available at wuarchive.wustl.edu as
  866.           /graphics/graphics/packages/NetPBM/netpbm-1mar1994.tar.gz. A
  867.           mailing list exists as well.
  868.           
  869.    IM Raster Toolkit by Alan Paeth (awpaeth@watcgl.uwaterloo.ca)
  870.           Provides a portable and efficient format and related toolkit.
  871.           The format is versatile in supporting pixels of arbitrary
  872.           channels, components, and bit precisions while allowing
  873.           compression and machine byte-order independence. The kit
  874.           contains more than 50 tools with extensive support of image
  875.           manipulation, digital halftoning and format conversion.
  876.           Previously distributed on tape c/o the University of Waterloo,
  877.           an FTP version will appear someday.
  878.           
  879.           Ed. Note: This is a very old blurb. Is this kit available on
  880.           the net? If so, where? If not, how does one get it? Is it
  881.           obsolete?
  882.           
  883.    Utah RLE Toolkit
  884.           Conversion and manipulation package, similar to PBMPLUS.
  885.           Available via FTP as cs.utah.edu:pub/urt-*,
  886.           princeton.edu:pub/Graphics/urt-*, and
  887.           freebie.engin.umich.edu:pub/urt-*.
  888.           
  889.    Fuzzy Pixmap Manipulation by Michael Mauldin
  890.           Conversion and manipulation package, similar to PBMPLUS.
  891.           Version 1.0 available via FTP at network.ucsd.edu as
  892.           /graphics/fbm.tar.Z.
  893.           
  894.    Xim (X Image Manipulator) by Philip R. Thompson
  895.           It does essential interactive image manipulations and uses
  896.           x11r4 and the OSF/Motif toolkit for the interface. It supports
  897.           images in 1, 8, 24 and 32 bit formats. Reads/writes and
  898.           converts to/from GIF, xwd, xbm, tiff, rle, xim, and other
  899.           formats. Writes level 2 postscript. Other utilities and image
  900.           application library are included. Not a paint package.
  901.           Available at gis.mit.edu as /pub/xim3i.tar.Z.
  902.           
  903.    xloadimage by Jim Frost
  904.           Reads in images in various formats and displays them on an X11
  905.           screen. Available via FTP as in your nearest comp.sources.x
  906.           archive.
  907.           
  908.    xli, by Graeme Gill
  909.           This is an updated xloadimage with numerous improvements in
  910.           both speed and in the number of formats supported. Available at
  911.           ftp.x.org as /contrib/applications/xli.1.16.tar.gz.
  912.           
  913.    TIFF Software by Sam Leffler
  914.           Nice portable library for reading and writing TIFF files, plus
  915.           a few tools for manipulating them and reading other formats.
  916.           Available via FTP as sgi.com:graphics/tiff/*.tar.Z.
  917.           
  918.    xtiff
  919.           This is an X11 tool for viewing a TIFF file. It was written to
  920.           handle as many different kinds of TIFF files as possible while
  921.           remaining simple, portable and efficient. xtiff illustrates
  922.           some common problems with building pixmaps and using different
  923.           visual classes. It is distributed as part of Sam Leffler's
  924.           libtiff package and it is also available on ftp.uu.net and
  925.           comp.sources.x. xtiff 2.0 was announced in 4/91; it includes
  926.           Xlib and Xt versions.
  927.           
  928.    ALV
  929.           This is a Sun-specific image toolkit. Version 2.0.6 was posted
  930.           to comp.sources.sun on 11dec89. Also available via email to
  931.           alv-users-request@cs.bris.ac.uk.
  932.           
  933.    popi
  934.           This is an image manipulation language. Version 2.1 posted to
  935.           comp.sources.misc on 12dec89.
  936.           
  937.    ImageMagick
  938.           This is an X11 package for display and interactive manipulation
  939.           of images. Includes tools for image conversion, annotation,
  940.           compositing, animation, and creating montages. ImageMagick can
  941.           read and write many of the more popular image formats.
  942.           Available from ftp.x.org as
  943.           /contrib/applications/ImageMagick/ImageMagick-3.7.tar.gz.
  944.           
  945.    Khoros
  946.           This is a huge (~100 meg) graphical development environment
  947.           based on X11R4. Khoros components include a visual programming
  948.           language, code generators for extending the visual language and
  949.           adding new application packages to the system, an interactive
  950.           user interface editor, an interactive image display package, an
  951.           extensive library of image and signal processing routines, and
  952.           2D/3D plotting packages. Available at ftp.eece.unm.edu as
  953.           /pub/khoros/*. A newsgroup exists for the discussion of khoros
  954.           and khoros-related topics, comp.soft-sys.khoros.
  955.           
  956.    LaboImage
  957.           This is a SunView-based image processing and analysis package.
  958.           It includes more than 200 image manipulation, processing and
  959.           measurement routines, on-line help, plus tools such as an image
  960.           editor, a color table editor and several biomedical utilities.
  961.           Available via anonymous FTP on nic.funet.fi in
  962.           /pub/graphics/packages.
  963.           
  964.    The San Diego Supercomputer Center Image Tools
  965.           These are software tools for reading, writing, and manipulating
  966.           raster images. Binaries for some machines are available at
  967.           sdsc.edu as /pub/sdsc/graphics/imtools/*.
  968.           
  969.    Independent JPEG Group's free JPEG software
  970.           The Independent JPEG Group has written a package for reading
  971.           and writing JPEG files. FTP to
  972.           ftp.uu.net:graphics/jpeg/jpegsrc.v?.tar.gz
  973.           
  974.    bit (Bitmap Image Touchup) by T.C. Zhao
  975.           This is a full color viewer/editor with a variety of features.
  976.           SGI only. It may be obtained via FTP at monte.svec.uh.edu in
  977.           /pub/bit.
  978.           
  979.    "Libreria de Utilidades Graficas" or "Graphic Utilities Library"
  980.           This is a library of subroutines for image manipulation. It has
  981.           routines for loading, viewing and manipulationg a variety of
  982.           formats. It may be obtained at ftp.uniovi.es as
  983.           /uniovi/mathdept/src/liblug.tar.gz.
  984.           
  985.    Dore' (Dynamic Object Rendering Environment)
  986.           Dore' is a powerful 3D graphics subroutine library. It provides
  987.           a comprehensive set of tools for creating graphics
  988.           applications. It is also easy to use, portable, and extendable.
  989.           This version has interfaces/drivers to X11, PEX, IrisGL,
  990.           OpenGL, Postscript and more. It is known to run on NetBSD 1.0,
  991.           Linux, FreeBSD, Solaris 2.3, and OSF/1. It has also been ported
  992.           to Windows NT 3.5. The official distribution site is
  993.           sunsite.unc.edu, where it may be found in
  994.           pub/packages/development/graphics/Dore as pdore-6.0.tar.Z.
  995.           
  996.    XMegaWave
  997.           XMegaWave is a graphics window environment oriented to image
  998.           processing. It is based in the collaboration between
  999.           researchers from the University of Balear Islands (U.I.B.), The
  1000.           University of Las Palmas (U.L.P.G.C.) and the University of
  1001.           Paris IX Dauphine (U.P.D.). XMW is oriented to UNIX
  1002.           workstations which work with X11R4 and Motif1.1 libraries (this
  1003.           XMW version). Currently, it is available for HP-Apollo and SGI
  1004.           workstations. Full source is not available as of yet, but the
  1005.           authors say they will cooperate in getting other versions
  1006.           built. XMW may be obtained on ftp.dis.ulpgc.es in the
  1007.           /investigacion/ami/XMegaWave directory.
  1008.           
  1009.    Please do *not* post or mail messages saying "I can't FTP, could
  1010.    someone mail this to me?" There are a number of automated mail servers
  1011.    that will send you things like this in response to a message. Refer to
  1012.    the section of this document titled How do I get files if I can't ftp?
  1013.    for more help.
  1014.    
  1015.    Also, the newsgroup alt.graphics.pixutils is specifically for
  1016.    discussion of software like this. You may find useful information
  1017.    there.
  1018.    
  1019.    
  1020.    
  1021.   WHERE CAN I GET FREE PLOTTING SOFTWARE?
  1022.   
  1023.    Gnuplot is a command-driven interactive data/function plotting
  1024.    program. It runs on just about any machine, and is very flexible in
  1025.    terms of supported output devices. The official North American
  1026.    distribution site for the latest version is dartmouth.edu in
  1027.    /pub/gnuplot. More information is available from the USENET newsgroup
  1028.    comp.graphics.gnuplot and its FAQ, graphics/gnuplot-faq.
  1029.    
  1030.    ACE/gr (xmgr - Motif/xvgr - XView) is a data/function plotting tool
  1031.    for workstations or X-terminals using X. Available from
  1032.    ftp.teleport.com in /pub/users/pturner/acegr. There is also a WWW page
  1033.    for this package at http://www.teleport.com/~pturner/acegr/.
  1034.    
  1035.    robotx (Robot) is a general purpose plotting and data analysis
  1036.    program. Requires XView, X-terminal or workstation. Available from
  1037.    ftp.x.org as /R5contrib/robotx0.48.tar.gz. There is a much improved
  1038.    version in beta testing as well. Contact corbet@bastet.gsfc.nasa.gov
  1039.    for info.
  1040.    
  1041.    Xgraph is a popular two-dimensional plotting program that accepts data
  1042.    in a form similar to the unix program graph and displays line graphs,
  1043.    scatter plots, or bar charts on an X11 display. Available from a
  1044.    multitude of sites, including ftp.cs.umn.edu, as xgraph-11.3.2.tgz.
  1045.    
  1046.    XGobi is an interactive dynamic graphics program for data
  1047.    visualization in the X Window System. It is especially designed for
  1048.    the exploration of multivariate data. It may be found at ftp.archie.au
  1049.    in /graphics/graphics/packages/XGobi.
  1050.    
  1051.    XgPlot is a 3d plotting packages which supports linear, log, and
  1052.    probability scaling of axes, as well as division marker lines in the
  1053.    graph. It can plot up to 20 datasets on a single graph, and the graph
  1054.    may be saved to or loaded from an ascii graph description file. It may
  1055.    be found at ftp.x.org as /R5contrib/XgPlot-4.4.tar.Z.
  1056.    
  1057.    PLOTMTV is a multipurpose X11 plotting program. It's capabilities
  1058.    include 2D line and scatter plots (x-vs-y), contour plots, 3D surface,
  1059.    line and scatter plots as well as vector plots. The program has an
  1060.    rough but functional Graphical User Interface, through which it is
  1061.    possible to zoom in, zoom out, pan, toggle between 2D and 3D plots,
  1062.    and rotate 3D plots. Both color and grayscale postscript output are
  1063.    supported. It may be found at ftp.x.org as
  1064.    /contrib/applications/Plotmtv1.4.1.tar.Z.
  1065.    
  1066.    
  1067.    
  1068.   WHERE CAN I GET STANDARDS DOCUMENTS?
  1069.   
  1070.    The American National Standards Institute sells ANSI standards, and
  1071.    also ISO (international) standards. Their sales office is at
  1072.    1-212-642-4900, mailing address is 1430 Broadway, NY NY 10018. It
  1073.    helps if you have the complete name and number.
  1074.    
  1075.    Some useful numbers to know:
  1076.    
  1077.      * CGM (Computer Graphics Metafile) is ISO 8632-4 (1987)
  1078.      * GKS (Graphical Kernel System) is ANSI X3.124-1985
  1079.      * PHIGS (Programmer's Hierarchical Interactive Graphics System) is
  1080.        ANSI X3.144-1988
  1081.      * IGES is ASME/ANSI Y14.26M-1987
  1082.        
  1083.    Language bindings are often separate but related numbers; for example,
  1084.    the GKS FORTRAN binding is X3.124.1-1985.
  1085.    
  1086.    Standards-in-progress are made available at key milestones to solicit
  1087.    comments from the graphical public (this includes you!). ANSI can let
  1088.    you know where to order them; most are available from Global
  1089.    Engineering at 1-800-854-7179.
  1090.    
  1091.    
  1092.    
  1093.   WHERE CAN I GET 3D OBJECTS?
  1094.   
  1095.    So far, I know of only one really large clump of them on the net. It
  1096.    is located at avalon.vislab.navy.mil. The site administrators request
  1097.    that major downloads be kept to non-peak hours. Their official mirror
  1098.    site is ftp.kpc.com.
  1099.    
  1100.    
  1101.    
  1102.   WHERE CAN I GET MRI AND CT SCAN VOLUME DATA?
  1103.   
  1104.    Volume data sets are available from the University of North Carolina
  1105.    at omicron.cs.unc.edu (152.2.128.159) in /pub/softlab/CHVRTD.
  1106.    (Commercial use is prohibited.)
  1107.      * Head data - A 109-slice MRI data set of a human head.
  1108.      * Knee data - A 127-slice MRI data set of a human knee.
  1109.      * HIPIP data - The result of a quantum mechanical calculation of a
  1110.        SOD data of a one-electron orbital of HIPIP, an iron protein.
  1111.      * SOD data - An electron density map of the active site of SOD
  1112.        (superoxide dismutase).
  1113.      * CT Cadaver Head data - A 113-slice MRI data set of a CT study of a
  1114.        cadaver head.
  1115.      * MR Brain data - A 109-slice MRI data set of a head with skull
  1116.        partially removed to reveal brain.
  1117.      * RNA data - An electron density map for Staphylococcus Aureus
  1118.        Ribonuclease.
  1119.        
  1120.    
  1121.    
  1122.   WHERE CAN I GET MPSC AND AOEGA INFO?
  1123.   
  1124.    The Motion Picture Screen Cartoonists and Affiliated Optical
  1125.    Electronic and Graphic Arts, Local 839 IATSE is pleased to announce
  1126.    the availability by anonymous FTP of information files about our
  1127.    organization.
  1128.    
  1129.    Local 839 IATSE is the largest local union of motion picture graphic
  1130.    artists in the world. We have over 1,500 active members employed in
  1131.    animation and CGI in Southern California.
  1132.    
  1133.    These files are available at ftp.netcom.com:/pub/mp/mpsc839 via
  1134.    anonymous ftp.
  1135.    
  1136.    For further information, contact them at mpsc839@netcom.com.
  1137.    
  1138.    
  1139.      _________________________________________________________________
  1140.    
  1141.    
  1142.    
  1143. Graphics-related Mailing Lists
  1144.  
  1145.    There are a variety of graphics-related mailing list out there, each
  1146.    covering either a single product or a single topic. I have been an
  1147.    active participant in several of these for some time now, and find the
  1148.    focus and expertise which can be brought to bear on an isolated topic
  1149.    to be nothing short of amazing.
  1150.    
  1151.    Please send corrections if you notice outdated or erroneous
  1152.    information in this list! Also, feel free to send me any other lists
  1153.    you would like to see added.
  1154.    
  1155.    
  1156.    
  1157.   IMAGINE MAILING LIST
  1158.   
  1159.    The Imagine mailing list provides a discussion forum for users of the
  1160.    Imagine 3D Rendering and Animation package from Impulse. Currently,
  1161.    Imagine runs on the Amiga and the PC.
  1162.    
  1163.    To subscribe, send mail to imagine-request@email.sp.paramax.com with
  1164.    the word "subscribe" in the subject line.
  1165.    
  1166.    
  1167.    
  1168.   DCTV MAILING LIST
  1169.   
  1170.    The DCTV mailing list provides a discussion forum for users of the
  1171.    Digital Creations DCTV box, software, and file formats. DCTV is an
  1172.    Amiga graphics module.
  1173.    
  1174.    To subscribe, send mail to DCTV-request@nova.cc.purdue.edu with the
  1175.    word "subscribe" in the subject line.
  1176.    
  1177.    
  1178.    
  1179.   RAYSHADE USERS MAILING LIST
  1180.   
  1181.    The Rayshade Users mailing list provides a discussion forum for users
  1182.    of the Rayshade raytracer. Rayshade is a public domain raytracer, with
  1183.    source available on the net. It runs on most Unix boxes, as well as
  1184.    the Amiga, Mac and PC platforms. To subscribe, send mail to
  1185.    rayshade-request@cs.princeton.edu with the word "subscribe" in the
  1186.    subject line.
  1187.    
  1188.    
  1189.    
  1190.   LIGHTWAVE MAILING LIST
  1191.   
  1192.    The Lightwave mailing list provides a discussion forum for users of
  1193.    the Lightwave 3D Rendering and Animation package from Newtek.
  1194.    Currently, Lightwave runs on the Amiga, but it will soon be available
  1195.    on various other platforms.
  1196.    
  1197.    To subscribe, send mail to lightwave-request@bobsbox.rent.com with the
  1198.    "subscribe lightwave-l address" in your message.
  1199.    
  1200.    
  1201.    
  1202.   VIDEO TOASTER MAILING LIST
  1203.   
  1204.    The Video Toaster mailing list provides a discussion forum for users
  1205.    of the Video Toaster product from Newtek. The Video Toaster is an
  1206.    Amiga board which includes Lightwave and a lot of video functionality.
  1207.    
  1208.    To subscribe, send mail to toaster-request@bobsbox.rent.com with
  1209.    "subscribe toaster-l address" in your message.
  1210.    
  1211.    
  1212.    
  1213.   MAILING LIST FOR MASSIVE PARALLEL RENDERING
  1214.   
  1215.    This list title seems pretty self-explanatory. I believe it is
  1216.    primarly a Unix-oriented list.
  1217.    
  1218.    To subscribe, send mail to mp-render-request@icase.edu with the word
  1219.    "subscribe" in the subject line.
  1220.    
  1221.    
  1222.    
  1223.   NETPBM MAILING LIST
  1224.   
  1225.    The Netpbm mailing list provides a discussion forum for the
  1226.    net-supported netpbm package. I believe this to be largely a developer
  1227.    forum. Netpbm runs on just about any platform you could name.
  1228.    
  1229.    To subscribe, send mail to oliver@fysik4.kth.se with the word
  1230.    "subscribe" in the subject line.
  1231.    
  1232.    
  1233.    
  1234.   POV-RAY MAILING LIST
  1235.   
  1236.    The POV-Ray mailing list provides a discussion forum for users of the
  1237.    POV-Ray raytracer. POV-Ray is a public domain raytracer, with source
  1238.    available on the net. It runs on most Unix boxes, as well as the
  1239.    Amiga, Mac and PC platforms. To subscribe, send mail to
  1240.    listserv@vm3090.ege.edu.tr with "subscribe dkb-l" in the subject line.
  1241.    
  1242.    
  1243.    
  1244.   RAYDREAM MAILING LIST
  1245.   
  1246.    The Ray Dream mailing list provides a discussion forum for users of
  1247.    the Ray Dream Rendering and Animation package. Currently, Ray Dream
  1248.    runs only on the Mac.
  1249.    
  1250.    To subscribe, send mail to listserv@cornell.edu with "subscribe
  1251.    raydream-l address" in your message.
  1252.    
  1253.    
  1254.    
  1255.   COMPUTATIONAL GEOMETRY MAILING LIST
  1256.   
  1257.    The Computational Geometry mailing lists are meant for those working
  1258.    or interested in computational geometry. There are actually three
  1259.    separate but related lists:
  1260.    
  1261.      * compgeom-announce: for announcements about professional activities
  1262.      * compgeom-discuss: for discussion or questions
  1263.      * compgeom-tribune: a newsletter in LaTeX.
  1264.        
  1265.    To subscribe to one of these lists, send mail to
  1266.    compgeom-request@research.att.com with the message "subscribe xxxx" in
  1267.    the message body or subject line, where xxxx is the name of one of the
  1268.    three lists.
  1269.    
  1270.    The compgeom list also provides some other neat stuff, such as a
  1271.    bibliographic search service. Send mail to
  1272.    compgeom-request@research.att.com with the message "send readme" for
  1273.    more information.
  1274.    
  1275.    
  1276.    
  1277.   PHOTOSHOP MAILING LIST
  1278.   
  1279.    The Photoshop mailing list provides a discussion forum for users of
  1280.    the Photoshop image conversion and manipulation package from Adobe.
  1281.    Adobe Photoshop runs on Windows, Macintosh, and SGI platforms. The
  1282.    latest version, 3.0, does not work properly under OS/2 and Adobe
  1283.    refuses to address the problem (editorial comment).
  1284.    
  1285.    To subscribe, send mail to photshop@bgu.edu with "subscribe" in the
  1286.    body of your message.
  1287.    
  1288.    
  1289.    
  1290.   3DSTUDIO MAILING LIST
  1291.   
  1292.    The 3dstudio mailing list provides a discussion forum for users of
  1293.    the 3D Studio modelling and rendering package from Autodesk. Autodesk
  1294.    3D Studio runs only on the PC platform, AFAIK.
  1295.    
  1296.    To subscribe, send mail to majordomo@autodesk.com with "Subscribe
  1297.    3dstudio <address>" in the body of your message. The <address>
  1298.    section is optional, and should not include the <>.
  1299.    
  1300.    
  1301.    
  1302.   KPT MAILING LIST
  1303.   
  1304.    The KPT mailing list provides a discussion forum for users of Kai's
  1305.    Power Tools, a set of cool texture plugins for Adobe Photoshop and
  1306.    other packages. Kai's Power Tools work on Windows and the Mac.
  1307.    
  1308.    To subscribe, send mail to listserv@netcom.com with "subscribe
  1309.    kpt-list" in the body of your message.
  1310.    
  1311.    
  1312.    
  1313.   KODAK PHOTO CD MAILING LIST
  1314.   
  1315.    The KODAK Photo CD mailing list is a public mailing list for
  1316.    discussion of the Photo CD format and related topics.
  1317.    
  1318.    To subscribe, send mail to listserv@info.kodak.com with the command
  1319.    "SUBSCRIBE PHOTO-CD <first-name> <last-name>", substituting
  1320.    your own first and last names in the obvious spots. Both these names
  1321.    and the address you subscribe from will be used by the mailing list
  1322.    software.
  1323.    
  1324.    
  1325.    
  1326.   CALIGARI TRUESPACE MAILING LIST
  1327.   
  1328.    The Caligari mailing list provides a discussion forum for users of
  1329.    the Caligari TrueSpace Rendering and Animation package from Caligari.
  1330.    I believe Caligari currently runs on the Amiga and PC (Windows)
  1331.    platforms.
  1332.    
  1333.    To subscribe, send mail to truespace-request@cs.uregina.ca with
  1334.    "subscribe" in your message.
  1335.    
  1336.    
  1337.    
  1338.   GLOBAL ILLUMINATION MAILING LIST
  1339.   
  1340.    The Global Illumination mailing list is a forum for the discussion of
  1341.    research issues pertaining to the simulation of 'global illumination',
  1342.    that is the balance of radiant energy between a set of surfaces of
  1343.    radiatively active media. This is not a list for the newbie or the
  1344.    dabbler - 75% of the current members are researchers in academic
  1345.    environments.
  1346.    
  1347.    To subscribe, send a message to globillum-request@imag.fr containing
  1348.    your name, affiliation, and 2 lines describing your interests. There
  1349.    is also an affiliated Global Illumination WWW page,
  1350.    http://safran.imag.fr/Membres/Francois.Sillion/globillum.html
  1351.    
  1352.    
  1353.    
  1354.   FRACTAL DESIGN PAINTER MAILING LIST
  1355.   
  1356.    The Fractal Design Painter mailing list provides a discussion forum
  1357.    for users of the Fractal Design Painter package. I believe Fractal
  1358.    Design Painter currently runs on the PC (Windows) and Mac platforms.
  1359.    
  1360.    To subscribe, send the message "subscribe painter-list" to
  1361.    listserv@netcom.com.
  1362.    
  1363.    
  1364.      _________________________________________________________________
  1365.    
  1366.    
  1367.    
  1368. SIGGRAPH
  1369.  
  1370.    SIGGRAPH, the Special Interest Group for Graphics of the Association
  1371.    for Computing Machinery, is the premiere professional organization in
  1372.    the computer graphics world. It is so active and so pervasive that I
  1373.    feel it deserves its own section.
  1374.    
  1375.    
  1376.    
  1377.   SIGGRAPH INFORMATION ONLINE
  1378.   
  1379.    ACM-SIGGRAPH provides an online information site at siggraph.org
  1380.    (128.248.245.250). This site provides SIGGRAPH information via both
  1381.    anonymous ftp and an electronic mail archive server.
  1382.    
  1383.    The anonymous ftp service is very standard, and the ftp directory
  1384.    includes both conference and publications subdirectories.
  1385.    
  1386.    To retrieve information by electronic mail, send mail to
  1387.    archive-server@siggraph.org and in the subject or the body of the
  1388.    message include the message send followed by the topic and subtopic
  1389.    you wish. A good place to start is with the command send index which
  1390.    will give you an up-to-date list of available information.
  1391.    
  1392.    The coolest way to get SIGGRAPH info, of course, is via their WWW page
  1393.    at http://www.siggraph.org.
  1394.    
  1395.    
  1396.    
  1397.   HOW TO JOIN ACM/SIGGRAPH
  1398.   
  1399.    Probably the easiest way to join ACM/SIGGRAPH is to trot over to your
  1400.    local technical library and find a copy of Communications of the ACM.
  1401.    Somewhere within the first few pages will be an application blank.
  1402.    Fill it out and mail it in. ACM membership for students costs $24.00,
  1403.    Voting or Associate Membership $79.00 (yearly).
  1404.    
  1405.    SIGGRAPH student membership costs an additional $50.00, $59.00 for
  1406.    Voting or Associate Members (also yearly). To get TOG (Transactions on
  1407.    Graphics) it's another $27.00 for students and $32.00 for Voting or
  1408.    Associate Members (TOG is an ACM publication, not a SIGGRAPH
  1409.    publication).
  1410.    
  1411.    If you just want to join SIGGRAPH without joining ACM, it'll cost you
  1412.    $85.00 (no student discount).
  1413.    
  1414.    There are surcharges for overseas airmailing of publications.
  1415.    
  1416.    ACM Member services may be contacted via email at
  1417.    acmhelp@acmvm.bitnet. Their phone number is (212) 626-0500. FAX number
  1418.    (212) 944-1318. Snailmail address ACM, PO Box 12114, Church Street
  1419.    Station, NY, NY 10257
  1420.    
  1421.    SIGGRAPH `95 will be held in Los Angeles, California, August 6-11,
  1422.    1995.
  1423.    
  1424.    
  1425.    
  1426.   SIGGRAPH ONLINE BIBLIOGRAPHY PROJECT
  1427.   
  1428.    The ACM SIGGRAPH Online Bibliography Project is a database of over
  1429.    15,000 unique computer graphics and computational geometry references
  1430.    in BibTeX format, available to the computer graphics community as a
  1431.    research and educational resource.
  1432.    
  1433.    The database is located at "siggraph.org". Users may download the
  1434.    BibTeX files via FTP and peruse them offline, or telnet to
  1435.    "siggraph.org" and log in as "biblio" and interactively search the
  1436.    database for entries of interest, by keyword.
  1437.    
  1438.    Web users may also access the SIGGRAPH Online Bibliography Project via
  1439.    the URL http://siggraph.org/library/bibliography/bibliography.html.
  1440.    
  1441.    Additions/corrections/suggestions may be directed to the admin,
  1442.    "bibadmin@siggraph.org".
  1443.    
  1444.    
  1445.      _________________________________________________________________
  1446.    
  1447.    Check out John Grieggs' Home Page
  1448.      _________________________________________________________________
  1449.    
  1450.    
  1451.     grieggs@netcom.com / grieggs@primenet.com / JohnG@cup.portal.com
  1452.