2015-10-26 18:46:05 +08:00
|
|
|
// This file is part of Eigen, a lightweight C++ template library
|
|
|
|
// for linear algebra.
|
|
|
|
//
|
|
|
|
// This Source Code Form is subject to the terms of the Mozilla
|
|
|
|
// Public License v. 2.0. If a copy of the MPL was not distributed
|
|
|
|
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
|
|
|
2008-06-03 06:58:36 +08:00
|
|
|
#ifndef EIGEN_GEOMETRY_MODULE_H
|
|
|
|
#define EIGEN_GEOMETRY_MODULE_H
|
|
|
|
|
2008-12-19 04:48:02 +08:00
|
|
|
#include "Core"
|
|
|
|
|
2011-02-22 22:31:22 +08:00
|
|
|
#include "src/Core/util/DisableStupidWarnings.h"
|
2008-12-19 04:48:02 +08:00
|
|
|
|
2009-07-06 17:15:38 +08:00
|
|
|
#include "SVD"
|
2009-08-16 05:37:20 +08:00
|
|
|
#include "LU"
|
2008-10-27 04:43:05 +08:00
|
|
|
#include <limits>
|
2008-06-03 06:58:36 +08:00
|
|
|
|
2009-01-26 21:53:43 +08:00
|
|
|
/** \defgroup Geometry_Module Geometry module
|
|
|
|
*
|
2008-07-20 23:18:54 +08:00
|
|
|
* This module provides support for:
|
|
|
|
* - fixed-size homogeneous transformations
|
2008-09-04 06:35:45 +08:00
|
|
|
* - translation, scaling, 2D and 3D rotations
|
2015-12-30 23:04:24 +08:00
|
|
|
* - \link Quaternion quaternions \endlink
|
|
|
|
* - cross products (\ref MatrixBase::cross, \ref MatrixBase::cross3)
|
|
|
|
* - orthognal vector generation (\ref MatrixBase::unitOrthogonal)
|
|
|
|
* - some linear components: \link ParametrizedLine parametrized-lines \endlink and \link Hyperplane hyperplanes \endlink
|
|
|
|
* - \link AlignedBox axis aligned bounding boxes \endlink
|
|
|
|
* - \link umeyama least-square transformation fitting \endlink
|
2008-08-27 03:12:23 +08:00
|
|
|
*
|
2008-07-20 23:18:54 +08:00
|
|
|
* \code
|
|
|
|
* #include <Eigen/Geometry>
|
|
|
|
* \endcode
|
|
|
|
*/
|
2008-07-20 04:36:41 +08:00
|
|
|
|
2008-07-27 22:24:32 +08:00
|
|
|
#include "src/Geometry/OrthoMethods.h"
|
2008-12-05 23:56:28 +08:00
|
|
|
#include "src/Geometry/EulerAngles.h"
|
2011-01-25 00:21:58 +08:00
|
|
|
|
2014-07-01 22:58:11 +08:00
|
|
|
#include "src/Geometry/Homogeneous.h"
|
|
|
|
#include "src/Geometry/RotationBase.h"
|
|
|
|
#include "src/Geometry/Rotation2D.h"
|
|
|
|
#include "src/Geometry/Quaternion.h"
|
|
|
|
#include "src/Geometry/AngleAxis.h"
|
|
|
|
#include "src/Geometry/Transform.h"
|
|
|
|
#include "src/Geometry/Translation.h"
|
|
|
|
#include "src/Geometry/Scaling.h"
|
2017-01-16 19:05:56 +08:00
|
|
|
#include "src/Geometry/Hyperplane.h"
|
2014-07-01 22:58:11 +08:00
|
|
|
#include "src/Geometry/ParametrizedLine.h"
|
|
|
|
#include "src/Geometry/AlignedBox.h"
|
|
|
|
#include "src/Geometry/Umeyama.h"
|
|
|
|
|
|
|
|
// Use the SSE optimized version whenever possible. At the moment the
|
|
|
|
// SSE version doesn't compile when AVX is enabled
|
|
|
|
#if defined EIGEN_VECTORIZE_SSE && !defined EIGEN_VECTORIZE_AVX
|
|
|
|
#include "src/Geometry/arch/Geometry_SSE.h"
|
2009-03-07 21:52:44 +08:00
|
|
|
#endif
|
|
|
|
|
2011-02-22 22:31:22 +08:00
|
|
|
#include "src/Core/util/ReenableStupidWarnings.h"
|
2008-12-19 04:48:02 +08:00
|
|
|
|
2008-06-03 06:58:36 +08:00
|
|
|
#endif // EIGEN_GEOMETRY_MODULE_H
|
2009-12-02 07:00:29 +08:00
|
|
|
/* vim: set filetype=cpp et sw=2 ts=2 ai: */
|