diff options
author | Gael Guennebaud <g.gael@free.fr> | 2017-01-29 14:29:31 +0100 |
---|---|---|
committer | Gael Guennebaud <g.gael@free.fr> | 2017-01-29 14:29:31 +0100 |
commit | 0e89baa5d895e40bae63c804cd3d3c568dca50f1 (patch) | |
tree | 5ca000a97a71774cffde96cbb409a24a152fdfff /doc | |
parent | d024e9942d24e83478c1def5bbdf7f52895c5cc4 (diff) | |
parent | 15f273b63c1089df68129076de4f93cbd38aae5b (diff) |
import yoco xiao's work on reshape
Diffstat (limited to 'doc')
-rw-r--r-- | doc/examples/class_FixedReshape.cpp | 22 | ||||
-rw-r--r-- | doc/examples/class_Reshape.cpp | 23 | ||||
-rw-r--r-- | doc/snippets/MatrixBase_reshape.cpp | 3 | ||||
-rw-r--r-- | doc/snippets/MatrixBase_reshape_int_int.cpp | 3 |
4 files changed, 51 insertions, 0 deletions
diff --git a/doc/examples/class_FixedReshape.cpp b/doc/examples/class_FixedReshape.cpp new file mode 100644 index 000000000..40156a123 --- /dev/null +++ b/doc/examples/class_FixedReshape.cpp @@ -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; +} diff --git a/doc/examples/class_Reshape.cpp b/doc/examples/class_Reshape.cpp new file mode 100644 index 000000000..b9abdc2d5 --- /dev/null +++ b/doc/examples/class_Reshape.cpp @@ -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; +} diff --git a/doc/snippets/MatrixBase_reshape.cpp b/doc/snippets/MatrixBase_reshape.cpp new file mode 100644 index 000000000..549bd1007 --- /dev/null +++ b/doc/snippets/MatrixBase_reshape.cpp @@ -0,0 +1,3 @@ +Matrix4i m = Matrix4i::Random(); +cout << "Here is the matrix m:" << endl << m << endl; +cout << "Here is m.reshape<2,8>():" << endl << m.reshape<2,8>() << endl; diff --git a/doc/snippets/MatrixBase_reshape_int_int.cpp b/doc/snippets/MatrixBase_reshape_int_int.cpp new file mode 100644 index 000000000..1169cdb2d --- /dev/null +++ b/doc/snippets/MatrixBase_reshape_int_int.cpp @@ -0,0 +1,3 @@ +Matrix4i m = Matrix4i::Random(); +cout << "Here is the matrix m:" << endl << m << endl; +cout << "Here is m.reshape(2, 8):" << endl << m.reshape(2, 8) << endl; |