The NIH/NIGMS
Center for Integrative Biomedical Computing

The following tabs contain information designed for users interested in learning more about how to use Cleaver.

 

Building Cleaver
Usage
Comand Line

cmake [src]
make

Alternatively, if you do not wish to build the command line program (which requires the Teem Library) use ccmake to disable it.

 

What Can Cleaver Do?

Cleaver generates conforming tetrahedral meshes for multimaterial or multiphase volumetric data. Both geometric accuracy and element quality are bounded. The method is a stencil-based approach, and relies on an octree structure to provide a coarse level of grading in regions of homogeneity.

 

What does Cleaver use as input?

The cleaving algorithm works by utilizing indicator functions. These functions indicate the strength or relative presence of a particular material. At each point, only the material with the largest indicator value is considered present. In practice, inside-outside and distance functions are most common.

 

What is the input format?

The cleaver library takes as input an instance of the Cleaver::Volume class. The Volume is a collection of Cleaver::ScalarField's, along with a sampling rate. The Cleaver::ScalarField class is an abstract class, that can be extended by users to create arbitrary inputs. We provide the FloatField class for loading 3D arrays of floating point data. The Cleaver command-line tool also offers convenience functions for loading the teem NRRD image format into the FloatField format.

 

What is the output format?

The Cleaver Library returns a Cleaver::TetMesh object. This object supports direct output to file in several formats:

 

  1. TetGen: .node, .ele
  2. SCIRun: .pts, .elem, .txt
  3. Matlab: .mat

 

Running ./cleaver -h

usage: cleaver -p -as [val] -al [val]  -i [input1.nrrd input2.nrrd ...]  -o [output]  -f [format]
         -p      use padding         default=no
         -as    alpha short           default=0.357
         -al     alpha long            default=0.203
         -i       input filenames    minimimum=1
         -o     output filename    default=output
         -f      output format         default=tetgen
         -h     help

   Valid Parameters:
                 alpha short                  0.0 to 1.0
                 alpha long                   0.0 to 1.0
                 tetmesh formats         tetgen, scirun, matlab

Examples:
cleaver -h                                                                               print help guide
cleaver -i mat1.nrrd mat2.nrrd                                           basic use case
cleaver -p -i mat1.nrrd mat2.nrrd                                      pad boundary
cleaver -i mat1.nrrd mat2.nrrd -o mesh                          specify output name
cleaver -i mat1.nrrd mat2.nrrd -o mesh -f scirun           specify output format