本文整理汇总了C++中eigen::SparseMatrix::diagonal方法的典型用法代码示例。如果您正苦于以下问题:C++ SparseMatrix::diagonal方法的具体用法?C++ SparseMatrix::diagonal怎么用?C++ SparseMatrix::diagonal使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类eigen::SparseMatrix
的用法示例。
在下文中一共展示了SparseMatrix::diagonal方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: diag
IGL_INLINE void igl::diag(
const Eigen::SparseMatrix<T>& X,
Eigen::SparseVector<T>& V)
{
assert(false && "Just call X.diagonal().sparseView() directly");
V = X.diagonal().sparseView();
//// Get size of input
//int m = X.rows();
//int n = X.cols();
//V = Eigen::SparseVector<T>((m>n?n:m));
//V.reserve(V.size());
//// Iterate over outside
//for(int k=0; k<X.outerSize(); ++k)
//{
// // Iterate over inside
// for(typename Eigen::SparseMatrix<T>::InnerIterator it (X,k); it; ++it)
// {
// if(it.col() == it.row())
// {
// V.coeffRef(it.col()) += it.value();
// }
// }
//}
}