|
@@ -4,17 +4,64 @@ supports point handles and skeleton trees (bones). Cages are not supported.
|
|
|
This program only computes and outputs the weight function values. You should
|
|
|
be able to load them into matlab or maya or whatever.
|
|
|
|
|
|
+This demo (main.cpp) is really just a skeleton of function calls that load the
|
|
|
+input and writes the output. The real "meat" of the bbw demo is conducted in
|
|
|
+the bbw function of libigl. If you only want to look at that implementation,
|
|
|
+then download libigl and jump to libigl/include/igl/mosek/bbw.h and
|
|
|
+libigl/include/igl/mosek/bbw.cpp
|
|
|
+
|
|
|
+= Dependencies =
|
|
|
+
|
|
|
+The dependencies are:
|
|
|
+ libigl
|
|
|
+ eigen3
|
|
|
+ tetgen
|
|
|
+ mosek
|
|
|
+ libigl_tetgen
|
|
|
+ libigl_mosek
|
|
|
+
|
|
|
+ = libigl =
|
|
|
+ libigl is our groups internal library. The library functions as an inlined
|
|
|
+ header library and simultaneously a static library.
|
|
|
+ http://igl.ethz.ch/projects/libigl/
|
|
|
+
|
|
|
+ This demo depends on the libigl_tetgen and libigl_mosek extras that come with
|
|
|
+ libigl. You will have to edit your libigl Makefile.conf accordingly: set
|
|
|
+ IGL_WITH_TETGEN=1 and IGL_WITH_MOSEK=1 and then build the main libigl library
|
|
|
+ and the extras with:
|
|
|
+
|
|
|
+ make lib
|
|
|
+ make extras
|
|
|
+
|
|
|
+ = Eigen3 =
|
|
|
+ The libigl dependencies rely on a depracted version of the Sparse Matrix
|
|
|
+ suite in eigen 3. Thus you need the correct version of eigen. It's not
|
|
|
+ clear how much longer this will work with the current version of Eigen.
|
|
|
+
|
|
|
+ = Mosek =
|
|
|
+ Mosek is free for academics and has its own installation instructions.
|
|
|
+ Adjust the makefile accordingly.
|
|
|
+
|
|
|
+ = Tetgen =
|
|
|
+ Tetgen is also free and easy to install. Be sure to compile the library
|
|
|
+ version, i.e.:
|
|
|
+ make tetlib
|
|
|
+
|
|
|
+ To make life a little easier, libigl include a working version of tetgen in
|
|
|
+ libigl/external/tetgen/. You can go there and compile libtet.a or download
|
|
|
+ the tetgen source and do that on your own. Whatever.
|
|
|
+
|
|
|
= COMPILE =
|
|
|
|
|
|
-First install the dependencies (e.g. mosek). If your on a mac, and why
|
|
|
-wouldn't you be, then you *should* with any luck and by the grace of God be
|
|
|
-able to compile with:
|
|
|
+First install the dependencies (eigen, tetgen, mosek, libigl). If your on a
|
|
|
+mac, and why wouldn't you be, then you *should* with any luck and by the grace
|
|
|
+of God be able to compile with:
|
|
|
|
|
|
make
|
|
|
|
|
|
= RUN =
|
|
|
|
|
|
-Then run an example with (e.g.):
|
|
|
+Then run an example with:
|
|
|
|
|
|
./bbw_demo examples/brick.obj examples/brick.tgf
|
|
|
|
|
@@ -25,38 +72,14 @@ This will produce at least 2 files:
|
|
|
|
|
|
= File Formats =
|
|
|
|
|
|
-See file-formats/index.html
|
|
|
-
|
|
|
-The dependencies are:
|
|
|
- igl_lib
|
|
|
- eigen3
|
|
|
- tetgen
|
|
|
- mosek
|
|
|
-
|
|
|
-= Igl lib =
|
|
|
-IGL_lib is our groups internal library. It will someday be publically
|
|
|
-available, but not yet. Thus I only include here a bare minimum to get this
|
|
|
-demo to work. The library functions as an inlined header library. All the
|
|
|
-source is located in ./igl_lib/include/igl
|
|
|
-
|
|
|
- = Eigen3 =
|
|
|
- The igl dependencies rely on a depracted version of the Sparse Matrix suite
|
|
|
- in eigen 3. Thus you need the correct version of eigen. To make this easier I
|
|
|
- have included the necessary version of eigen here: ./eigen3
|
|
|
-
|
|
|
- = Mosek =
|
|
|
- Mosek is free for academics and has its own installation instructions. Adjust
|
|
|
- your makefile accordingly.
|
|
|
+See libigl/file-formats/index.html
|
|
|
|
|
|
- = Tetgen =
|
|
|
- Tetgen is also free and easy to install. Be sure to compile the library
|
|
|
- version, i.e.:
|
|
|
- make tetlib
|
|
|
+= Zip =
|
|
|
+Package up this demo using:
|
|
|
|
|
|
- To make life a little easier I include a working version of tetgen in
|
|
|
- ./igl_lib/external/tetgen/. You can go there and compile libtet.a or download
|
|
|
- the tetgen source and do that on your own. Whatever.
|
|
|
+zip -9 -r -x=*/.hg/* -x=*un~ bbw_demo_3d.zip ../bbw
|
|
|
|
|
|
+= Contact =
|
|
|
|
|
|
You can try to email Alec Jacobson (alecjacobson@gmail.com) with questions.
|
|
|
Especially regarding the algorithm described in "Bounded biharmonic weights for
|