1*bf2c3715SXin Li// This file is part of Eigen, a lightweight C++ template library 2*bf2c3715SXin Li// for linear algebra. 3*bf2c3715SXin Li// 4*bf2c3715SXin Li// This Source Code Form is subject to the terms of the Mozilla 5*bf2c3715SXin Li// Public License v. 2.0. If a copy of the MPL was not distributed 6*bf2c3715SXin Li// with this file, You can obtain one at http://mozilla.org/MPL/2.0/. 7*bf2c3715SXin Li 8*bf2c3715SXin Li#ifndef EIGEN_GEOMETRY_MODULE_H 9*bf2c3715SXin Li#define EIGEN_GEOMETRY_MODULE_H 10*bf2c3715SXin Li 11*bf2c3715SXin Li#include "Core" 12*bf2c3715SXin Li 13*bf2c3715SXin Li#include "SVD" 14*bf2c3715SXin Li#include "LU" 15*bf2c3715SXin Li#include <limits> 16*bf2c3715SXin Li 17*bf2c3715SXin Li#include "src/Core/util/DisableStupidWarnings.h" 18*bf2c3715SXin Li 19*bf2c3715SXin Li/** \defgroup Geometry_Module Geometry module 20*bf2c3715SXin Li * 21*bf2c3715SXin Li * This module provides support for: 22*bf2c3715SXin Li * - fixed-size homogeneous transformations 23*bf2c3715SXin Li * - translation, scaling, 2D and 3D rotations 24*bf2c3715SXin Li * - \link Quaternion quaternions \endlink 25*bf2c3715SXin Li * - cross products (\ref MatrixBase::cross, \ref MatrixBase::cross3) 26*bf2c3715SXin Li * - orthognal vector generation (\ref MatrixBase::unitOrthogonal) 27*bf2c3715SXin Li * - some linear components: \link ParametrizedLine parametrized-lines \endlink and \link Hyperplane hyperplanes \endlink 28*bf2c3715SXin Li * - \link AlignedBox axis aligned bounding boxes \endlink 29*bf2c3715SXin Li * - \link umeyama least-square transformation fitting \endlink 30*bf2c3715SXin Li * 31*bf2c3715SXin Li * \code 32*bf2c3715SXin Li * #include <Eigen/Geometry> 33*bf2c3715SXin Li * \endcode 34*bf2c3715SXin Li */ 35*bf2c3715SXin Li 36*bf2c3715SXin Li#include "src/Geometry/OrthoMethods.h" 37*bf2c3715SXin Li#include "src/Geometry/EulerAngles.h" 38*bf2c3715SXin Li 39*bf2c3715SXin Li#include "src/Geometry/Homogeneous.h" 40*bf2c3715SXin Li#include "src/Geometry/RotationBase.h" 41*bf2c3715SXin Li#include "src/Geometry/Rotation2D.h" 42*bf2c3715SXin Li#include "src/Geometry/Quaternion.h" 43*bf2c3715SXin Li#include "src/Geometry/AngleAxis.h" 44*bf2c3715SXin Li#include "src/Geometry/Transform.h" 45*bf2c3715SXin Li#include "src/Geometry/Translation.h" 46*bf2c3715SXin Li#include "src/Geometry/Scaling.h" 47*bf2c3715SXin Li#include "src/Geometry/Hyperplane.h" 48*bf2c3715SXin Li#include "src/Geometry/ParametrizedLine.h" 49*bf2c3715SXin Li#include "src/Geometry/AlignedBox.h" 50*bf2c3715SXin Li#include "src/Geometry/Umeyama.h" 51*bf2c3715SXin Li 52*bf2c3715SXin Li// Use the SSE optimized version whenever possible. 53*bf2c3715SXin Li#if (defined EIGEN_VECTORIZE_SSE) || (defined EIGEN_VECTORIZE_NEON) 54*bf2c3715SXin Li#include "src/Geometry/arch/Geometry_SIMD.h" 55*bf2c3715SXin Li#endif 56*bf2c3715SXin Li 57*bf2c3715SXin Li#include "src/Core/util/ReenableStupidWarnings.h" 58*bf2c3715SXin Li 59*bf2c3715SXin Li#endif // EIGEN_GEOMETRY_MODULE_H 60