1. Introduction
   This archive contains reconstructions and a preliminary implementation 
   of the filtering and fiber-growing algorithms presented in 

   "Capturing Hair Assemblies Fiber by Fiber" by Wenzel Jakob, Jonathan T. Moon
   and Steve Marschner (SIGGRAPH Asia 2009). 

   The reconstructions can be found in the directory 'mdl'. These should 
   be fairly straightforward to parse - each hair is given by a series 
   of line segments, which are encoded as follows:

    hr "<Identifier>"
      mtrlNm "hairMtrl" end
      <Hair Radius>
      vrtxPstn
         X1 Y1 Z1
         X2 Y2 Z2
         ..
      end
    end

   To run the code, you will also need an input dataset. Due to the sheer 
   size of the photographs in one capture, we only provide partially 
   processed datasets in the form of pre-built fiber observation kd-trees. 
   These will be made available at:

     http://www.cs.cornell.edu/projects/HairCapture

3. Prerequisites
   The code compiles on Linux -- porting it to other platforms will involve
   some work (parts heavily rely on Linux memory mapped I/O facilities). 
   Other requirements are:

   - GCC 4.2,
   - OpenMP,
   - Boost 1.35 & Boost Numeric Bindings
     (http://mathema.tician.de/software/boost-bindings)
   - LAPACK,
   - OpenCV 1.0.0,
   - Qt 4.3
   - OpenGL
 
4. Compiling and running

   Run 'qmake-qt4', followed by 'make'. The interactive viewer can be launched
   by pointing it to the configuration file of a dataset, e.g.

   $ ./glviewer -f config-straight.conf

   Hit the 'Go' button to start the fiber-growing process. Fore more 
   parallelism, modify the configuration's 'threadCount' parameter.

5. Copyright notice:
   The documents contained in this archive are included by the contributing 
   authors as a means to ensure timely dissemination of scholarly and technical 
   work on a non-commercial basis. Copyright and all rights therein are 
   maintained by the authors or by other copyright holders, notwithstanding 
   that they have offered their works here electronically. It is understood 
   that all persons copying this information will adhere to the terms and 
   constraints invoked by each author's copyright. These works may not be 
   reposted without the explicit permission of the copyright holder. 
