10 template <
typename MatType>
12 const std::vector<MatType, Eigen::aligned_allocator<MatType> > &Ms) {
13 const std::size_t n = Ms.size();
14 for (std::size_t i = 0; i < n; i++) {
15 std::cout <<
"el[" << i <<
"] =\n" << Ms[i] <<
'\n';
19 template <
typename MatType>
20 std::vector<MatType, Eigen::aligned_allocator<MatType> >
copy(
21 const std::vector<MatType, Eigen::aligned_allocator<MatType> > &Ms) {
22 std::vector<MatType, Eigen::aligned_allocator<MatType> > out = Ms;
26 template <
typename MatType>
27 void setZero(std::vector<MatType, Eigen::aligned_allocator<MatType> > &Ms) {
28 for (std::size_t i = 0; i < Ms.size(); i++) {
43 bp::def(
"printVectorOfMatrix", printVectorOfMatrix<Eigen::VectorXd>);
44 bp::def(
"printVectorOfMatrix", printVectorOfMatrix<Eigen::MatrixXd>);
46 bp::def(
"copyStdVector", copy<Eigen::MatrixXd>);
47 bp::def(
"copyStdVector", copy<Eigen::VectorXd>);
49 exposeStdVectorEigenSpecificType<Eigen::Matrix3d>(
"Mat3d");
50 bp::def(
"printVectorOf3x3", printVectorOfMatrix<Eigen::Matrix3d>);
51 bp::def(
"copyStdVec_3x3", copy<Eigen::Matrix3d>, bp::args(
"mats"));
53 typedef Eigen::Ref<Eigen::MatrixXd> RefXd;
55 bp::def(
"setZero", setZero<Eigen::MatrixXd>,
"Sets the coeffs to 0.");
61 bp::class_<std::vector<Eigen::Matrix2d> >(
"StdVec_Mat2d")
62 .def(boost::python::vector_indexing_suite<
63 std::vector<Eigen::Matrix2d> >());
64 exposeStdVectorEigenSpecificType<Eigen::Matrix2d>(
"Mat2d");
70 "StdVec_CustomTestStruct",
"some documentation");