cpd  0.5.1
Coherent Point Drift: C++ library for point set registration
matrix.hpp
Go to the documentation of this file.
1 // cpd - Coherent Point Drift
2 // Copyright (C) 2017 Pete Gadomski <pete.gadomski@gmail.com>
3 //
4 // This program is free software; you can redistribute it and/or modify
5 // it under the terms of the GNU General Public License as published by
6 // the Free Software Foundation; either version 2 of the License, or
7 // (at your option) any later version.
8 //
9 // This program is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 // GNU General Public License for more details.
13 //
14 // You should have received a copy of the GNU General Public License along
15 // with this program; if not, write to the Free Software Foundation, Inc.,
16 // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
17 
21 
22 #pragma once
23 
24 #include <Eigen/Dense>
25 
26 namespace cpd {
27 
29 typedef Eigen::MatrixXd Matrix;
30 
32 typedef Eigen::VectorXd Vector;
33 
35 typedef Eigen::Matrix<Matrix::Index, Eigen::Dynamic, 1> IndexVector;
36 
38 typedef Eigen::ArrayXd Array;
39 
43 Matrix apply_transformation_matrix(Matrix points, const Matrix& transform);
44 } // namespace cpd
Eigen::MatrixXd Matrix
Our base matrix class.
Definition: matrix.hpp:29
Eigen::VectorXd Vector
Typedef for our specific type of vector.
Definition: matrix.hpp:32
Eigen::Matrix< Matrix::Index, Eigen::Dynamic, 1 > IndexVector
Typedef for an index vector, used to index other matrices.
Definition: matrix.hpp:35
Eigen::ArrayXd Array
Typedef for our specific type of array.
Definition: matrix.hpp:38
Top-level cpd namespace.
Definition: affine.hpp:26
Matrix apply_transformation_matrix(Matrix points, const Matrix &transform)
Apply a transformation matrix to a set of points.