Browse Source

Better doc

Alec Jacobson 6 years ago
parent
commit
33cea64ae8
1 changed files with 16 additions and 7 deletions
  1. 16 7
      include/igl/uniformly_sample_two_manifold.h

+ 16 - 7
include/igl/uniformly_sample_two_manifold.h

@@ -11,19 +11,28 @@
 #include <Eigen/Dense>
 namespace igl
 {
-  // UNIFORMLY_SAMPLE_TWO_MANIFOLD Attempt to sample a mesh uniformly by
-  // furthest point relaxation as described in "Fast Automatic Skinning
-  // Transformations"
-  //
-  // [Jacobson et al. 12] Section 3.3.
+  // UNIFORMLY_SAMPLE_TWO_MANIFOLD Attempt to sample a mesh uniformly with
+  // k-points by furthest point relaxation as described in "Fast Automatic
+  // Skinning Transformations" [Jacobson et al. 12] Section 3.3. The input is
+  // not expected to be a typical 3D triangle mesh (e.g., [V,F]), instead each
+  // vertex is embedded in a high dimensional unit-hypercude ("weight space")
+  // defined by W, with triangles given by F. This algorithm will first conduct
+  // furthest point sampling from the set of vertices and then attempt to relax
+  // the sampled points along the surface of the high-dimensional triangle mesh
+  // (i.e., the output points may be in the middle of triangles, not just at
+  // vertices). An additional "push" factor will repel samples away from the
+  // corners of the hypercube.
   //
   // Inputs:
   //   W  #W by dim positions of mesh in weight space
   //   F  #F by 3 indices of triangles
-  //   k  number of samplse
+  //   k  number of samples
   //   push  factor by which corners should be pushed away
   // Outputs
-  //   WS  k by dim locations in weights space
+  //   WS  k by dim locations in weight space
+  //
+  // See also:
+  //   random_points_on_mesh
   //
   IGL_INLINE void uniformly_sample_two_manifold(
     const Eigen::MatrixXd & W,