|
@@ -34,19 +34,21 @@ namespace igl
|
|
|
// of the ith octree cell
|
|
// of the ith octree cell
|
|
|
// Outputs:
|
|
// Outputs:
|
|
|
// I #P by k list of k-nearest-neighbor indices into P
|
|
// I #P by k list of k-nearest-neighbor indices into P
|
|
|
- template <typename DerivedP, typename IndexType,
|
|
|
|
|
- typename DerivedCH, typename DerivedCN, typename DerivedW,
|
|
|
|
|
|
|
+ template <
|
|
|
|
|
+ typename DerivedP,
|
|
|
|
|
+ typename IndexType,
|
|
|
|
|
+ typename DerivedCH,
|
|
|
|
|
+ typename DerivedCN,
|
|
|
|
|
+ typename DerivedW,
|
|
|
typename DerivedI>
|
|
typename DerivedI>
|
|
|
IGL_INLINE void knn(
|
|
IGL_INLINE void knn(
|
|
|
- const Eigen::MatrixBase<DerivedP>& P,
|
|
|
|
|
|
|
+ const Eigen::MatrixBase<DerivedP>& P,
|
|
|
size_t k,
|
|
size_t k,
|
|
|
const std::vector<std::vector<IndexType> > & point_indices,
|
|
const std::vector<std::vector<IndexType> > & point_indices,
|
|
|
const Eigen::MatrixBase<DerivedCH>& CH,
|
|
const Eigen::MatrixBase<DerivedCH>& CH,
|
|
|
const Eigen::MatrixBase<DerivedCN>& CN,
|
|
const Eigen::MatrixBase<DerivedCN>& CN,
|
|
|
const Eigen::MatrixBase<DerivedW>& W,
|
|
const Eigen::MatrixBase<DerivedW>& W,
|
|
|
Eigen::PlainObjectBase<DerivedI> & I);
|
|
Eigen::PlainObjectBase<DerivedI> & I);
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
// Inputs:
|
|
// Inputs:
|
|
|
// P #P by 3 list of point locations for which which we want the neighbors of
|
|
// P #P by 3 list of point locations for which which we want the neighbors of
|
|
|
// V #V by 3 list of point locations for which may be neighbors
|
|
// V #V by 3 list of point locations for which may be neighbors
|
|
@@ -61,12 +63,17 @@ namespace igl
|
|
|
// of the ith octree cell
|
|
// of the ith octree cell
|
|
|
// Outputs:
|
|
// Outputs:
|
|
|
// I #P by k list of k-nearest-neighbor indices into V
|
|
// I #P by k list of k-nearest-neighbor indices into V
|
|
|
- template <typename DerivedP, typename DerivedV, typename IndexType,
|
|
|
|
|
- typename DerivedCH, typename DerivedCN, typename DerivedW,
|
|
|
|
|
|
|
+ template <
|
|
|
|
|
+ typename DerivedP,
|
|
|
|
|
+ typename DerivedV,
|
|
|
|
|
+ typename IndexType,
|
|
|
|
|
+ typename DerivedCH,
|
|
|
|
|
+ typename DerivedCN,
|
|
|
|
|
+ typename DerivedW,
|
|
|
typename DerivedI>
|
|
typename DerivedI>
|
|
|
IGL_INLINE void knn(
|
|
IGL_INLINE void knn(
|
|
|
- const Eigen::MatrixBase<DerivedP>& P,
|
|
|
|
|
- const Eigen::MatrixBase<DerivedV>& V,
|
|
|
|
|
|
|
+ const Eigen::MatrixBase<DerivedP>& P,
|
|
|
|
|
+ const Eigen::MatrixBase<DerivedV>& V,
|
|
|
size_t k,
|
|
size_t k,
|
|
|
const std::vector<std::vector<IndexType> > & point_indices,
|
|
const std::vector<std::vector<IndexType> > & point_indices,
|
|
|
const Eigen::MatrixBase<DerivedCH>& CH,
|
|
const Eigen::MatrixBase<DerivedCH>& CH,
|