mirror of
https://gitlab.com/libeigen/eigen.git
synced 2025-04-22 01:29:35 +08:00
add example code for Reshape class
This commit is contained in:
parent
fe2ad0647a
commit
1e1d0c15b5
22
doc/examples/class_FixedReshape.cpp
Normal file
22
doc/examples/class_FixedReshape.cpp
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
#include <Eigen/Core>
|
||||||
|
#include <iostream>
|
||||||
|
using namespace Eigen;
|
||||||
|
using namespace std;
|
||||||
|
|
||||||
|
template<typename Derived>
|
||||||
|
Eigen::Reshape<Derived, 4, 2>
|
||||||
|
reshape_helper(MatrixBase<Derived>& m)
|
||||||
|
{
|
||||||
|
return Eigen::Reshape<Derived, 4, 2>(m.derived());
|
||||||
|
}
|
||||||
|
|
||||||
|
int main(int, char**)
|
||||||
|
{
|
||||||
|
MatrixXd m(2, 4);
|
||||||
|
m << 1, 2, 3, 4,
|
||||||
|
5, 6, 7, 8;
|
||||||
|
MatrixXd n = reshape_helper(m);
|
||||||
|
cout << "matrix m is:" << endl << m << endl;
|
||||||
|
cout << "matrix n is:" << endl << n << endl;
|
||||||
|
return 0;
|
||||||
|
}
|
23
doc/examples/class_Reshape.cpp
Normal file
23
doc/examples/class_Reshape.cpp
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
#include <Eigen/Core>
|
||||||
|
#include <iostream>
|
||||||
|
using namespace std;
|
||||||
|
using namespace Eigen;
|
||||||
|
|
||||||
|
template<typename Derived>
|
||||||
|
const Reshape<const Derived>
|
||||||
|
reshape_helper(const MatrixBase<Derived>& m, int rows, int cols)
|
||||||
|
{
|
||||||
|
return Reshape<const Derived>(m.derived(), rows, cols);
|
||||||
|
}
|
||||||
|
|
||||||
|
int main(int, char**)
|
||||||
|
{
|
||||||
|
MatrixXd m(3, 4);
|
||||||
|
m << 1, 4, 7, 10,
|
||||||
|
2, 5, 8, 11,
|
||||||
|
3, 6, 9, 12;
|
||||||
|
cout << m << endl;
|
||||||
|
auto n = reshape_helper(m, 2, 6);
|
||||||
|
cout << "Matrix m is:" << endl << m << endl;
|
||||||
|
cout << "Matrix n is:" << endl << n << endl;
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user