From 6e2c53e0562785f2f8c72a67dd8c40451cf2a319 Mon Sep 17 00:00:00 2001 From: Gael Guennebaud Date: Sat, 19 Jul 2008 20:36:41 +0000 Subject: Added an automatically generated list of selected examples in the documentation. Added the custom gemetry_module tag, and use it. --- Eigen/src/Array/Random.h | 2 ++ Eigen/src/Core/Block.h | 18 ++++++++++++++++++ Eigen/src/Core/CommaInitializer.h | 2 ++ Eigen/src/Core/CwiseBinaryOp.h | 2 ++ Eigen/src/Core/CwiseNullaryOp.h | 6 ++++++ Eigen/src/Core/CwiseUnaryOp.h | 2 ++ Eigen/src/Core/DiagonalMatrix.h | 2 ++ Eigen/src/Core/Extract.h | 2 ++ Eigen/src/Core/Flagged.h | 2 ++ Eigen/src/Geometry/AngleAxis.h | 8 +++++--- Eigen/src/Geometry/Cross.h | 3 ++- Eigen/src/Geometry/Quaternion.h | 6 ++++-- Eigen/src/Geometry/Rotation.h | 8 ++++++-- Eigen/src/Geometry/Transform.h | 4 +++- 14 files changed, 58 insertions(+), 9 deletions(-) (limited to 'Eigen/src') diff --git a/Eigen/src/Array/Random.h b/Eigen/src/Array/Random.h index 5cafb878a..97a34433a 100644 --- a/Eigen/src/Array/Random.h +++ b/Eigen/src/Array/Random.h @@ -44,6 +44,8 @@ struct ei_functor_traits > * it is redundant to pass \a rows and \a cols as arguments, so ei_random() should be used * instead. * + * \addexample RandomExample \label How to create a matrix with random coefficients + * * Example: \include MatrixBase_random_int_int.cpp * Output: \verbinclude MatrixBase_random_int_int.out * diff --git a/Eigen/src/Core/Block.h b/Eigen/src/Core/Block.h index e7eb87a26..b185e90cf 100644 --- a/Eigen/src/Core/Block.h +++ b/Eigen/src/Core/Block.h @@ -341,6 +341,8 @@ template class Block MatrixBase * * \only_for_vectors * + * \addexample BlockIntInt \label How to reference a sub-vector (dynamic size) + * * \param start the first coefficient in the block * \param size the number of coefficients in the block * @@ -410,6 +414,8 @@ inline const Block MatrixBase * * \param size the number of coefficients in the block * + * \addexample BlockInt \label How to reference a sub-vector (fixed-size) + * * Example: \include MatrixBase_start_int.cpp * Output: \verbinclude MatrixBase_start_int.out * @@ -452,6 +458,8 @@ MatrixBase::start(int size) const * * \param size the number of coefficients in the block * + * \addexample BlockEnd \label How to reference the end of a vector (fixed-size) + * * Example: \include MatrixBase_end_int.cpp * Output: \verbinclude MatrixBase_end_int.out * @@ -498,6 +506,8 @@ MatrixBase::end(int size) const * * The template parameter \a Size is the number of coefficients in the block * + * \addexample BlockStart \label How to reference the start of a vector (fixed-size) + * * Example: \include MatrixBase_template_int_start.cpp * Output: \verbinclude MatrixBase_template_int_start.out * @@ -569,6 +579,8 @@ MatrixBase::end() const * \param cRows the number of rows in the corner * \param cCols the number of columns in the corner * + * \addexample BlockCornerDynamicSize \label How to reference a sub-corner of a matrix + * * Example: \include MatrixBase_corner_enum_int_int.cpp * Output: \verbinclude MatrixBase_corner_enum_int_int.out * @@ -678,6 +690,8 @@ inline const Block MatrixBase * \param startRow the first row in the block * \param startCol the first column in the block * + * \addexample BlockSubMatrixFixedSize \label How to reference a sub-matrix (fixed-size) + * * Example: \include MatrixBase_block_int_int.cpp * Output: \verbinclude MatrixBase_block_int_int.out * @@ -704,6 +718,8 @@ inline const Block MatrixBase } /** \returns an expression of the \a i-th column of *this. Note that the numbering starts at 0. + * + * \addexample BlockColumn \label How to reference a single column of a matrix * * Example: \include MatrixBase_col.cpp * Output: \verbinclude MatrixBase_col.out @@ -725,6 +741,8 @@ MatrixBase::col(int i) const } /** \returns an expression of the \a i-th row of *this. Note that the numbering starts at 0. + * + * \addexample BlockRow \label How to reference a single row of a matrix * * Example: \include MatrixBase_row.cpp * Output: \verbinclude MatrixBase_row.out diff --git a/Eigen/src/Core/CommaInitializer.h b/Eigen/src/Core/CommaInitializer.h index 61a004780..137413a7c 100644 --- a/Eigen/src/Core/CommaInitializer.h +++ b/Eigen/src/Core/CommaInitializer.h @@ -113,6 +113,8 @@ struct MatrixBase::CommaInitializer * The coefficients must be provided in a row major order and exactly match * the size of the matrix. Otherwise an assertion is raised. * + * \addexample CommaInit \label How to easily set all the coefficients of a matrix + * * Example: \include MatrixBase_set.cpp * Output: \verbinclude MatrixBase_set.out */ diff --git a/Eigen/src/Core/CwiseBinaryOp.h b/Eigen/src/Core/CwiseBinaryOp.h index ba9304b64..8df4097c3 100644 --- a/Eigen/src/Core/CwiseBinaryOp.h +++ b/Eigen/src/Core/CwiseBinaryOp.h @@ -228,6 +228,8 @@ Cwise::max(const MatrixBase &other) const * The template parameter \a CustomBinaryOp is the type of the functor * of the custom operator (see class CwiseBinaryOp for an example) * + * \addexample CustomCwiseBinaryFunctors \label How to use custom coeff wise binary functors + * * Here is an example illustrating the use of custom functors: * \include class_CwiseBinaryOp.cpp * Output: \verbinclude class_CwiseBinaryOp.out diff --git a/Eigen/src/Core/CwiseNullaryOp.h b/Eigen/src/Core/CwiseNullaryOp.h index 3cf9070e2..6df351201 100644 --- a/Eigen/src/Core/CwiseNullaryOp.h +++ b/Eigen/src/Core/CwiseNullaryOp.h @@ -261,6 +261,8 @@ Derived& MatrixBase::setConstant(const Scalar& value) * it is redundant to pass \a rows and \a cols as arguments, so zero() should be used * instead. * + * \addexample Zero \label How to take get a zero matrix + * * Example: \include MatrixBase_zero_int_int.cpp * Output: \verbinclude MatrixBase_zero_int_int.out * @@ -356,6 +358,8 @@ Derived& MatrixBase::setZero() * it is redundant to pass \a rows and \a cols as arguments, so ones() should be used * instead. * + * \addexample One \label How to get a matrix with all coefficients equal one + * * Example: \include MatrixBase_ones_int_int.cpp * Output: \verbinclude MatrixBase_ones_int_int.out * @@ -446,6 +450,8 @@ Derived& MatrixBase::setOnes() * This variant is meant to be used for dynamic-size matrix types. For fixed-size types, * it is redundant to pass \a rows and \a cols as arguments, so identity() should be used * instead. + * + * \addexample Identity \label How to get an identity matrix * * Example: \include MatrixBase_identity_int_int.cpp * Output: \verbinclude MatrixBase_identity_int_int.out diff --git a/Eigen/src/Core/CwiseUnaryOp.h b/Eigen/src/Core/CwiseUnaryOp.h index 77dcaa350..b5a9e4d91 100644 --- a/Eigen/src/Core/CwiseUnaryOp.h +++ b/Eigen/src/Core/CwiseUnaryOp.h @@ -109,6 +109,8 @@ class CwiseUnaryOp : ei_no_assignment_operator, * The template parameter \a CustomUnaryOp is the type of the functor * of the custom unary operator. * + * \addexample CustomCwiseUnaryFunctors \label How to use custom coeff wise unary functors + * * Here is an example: * \include class_CwiseUnaryOp.cpp * Output: \verbinclude class_CwiseUnaryOp.out diff --git a/Eigen/src/Core/DiagonalMatrix.h b/Eigen/src/Core/DiagonalMatrix.h index 34bd7ebf3..029e273e5 100644 --- a/Eigen/src/Core/DiagonalMatrix.h +++ b/Eigen/src/Core/DiagonalMatrix.h @@ -84,6 +84,8 @@ class DiagonalMatrix : ei_no_assignment_operator, * * \only_for_vectors * + * \addexample AsDiagonalExample \label How to build a diagonal matrix from a vector + * * Example: \include MatrixBase_asDiagonal.cpp * Output: \verbinclude MatrixBase_asDiagonal.out * diff --git a/Eigen/src/Core/Extract.h b/Eigen/src/Core/Extract.h index 516178c2c..ff84d0ece 100755 --- a/Eigen/src/Core/Extract.h +++ b/Eigen/src/Core/Extract.h @@ -94,6 +94,8 @@ template class Extract * The parameter \a Mode can have the following values: \c Upper, \c StrictlyUpper, \c UnitUpper, * \c Lower, \c StrictlyLower, \c UnitLower. * + * \addexample ExtractExample \label How to extract a triangular part of an arbitrary matrix + * * Example: \include MatrixBase_extract.cpp * Output: \verbinclude MatrixBase_extract.out * diff --git a/Eigen/src/Core/Flagged.h b/Eigen/src/Core/Flagged.h index 2b26e3016..a6abe617b 100644 --- a/Eigen/src/Core/Flagged.h +++ b/Eigen/src/Core/Flagged.h @@ -120,6 +120,8 @@ template clas }; /** \returns an expression of *this with added flags + * + * \addexample MarkExample \label How to mark a triangular matrix as triangular * * Example: \include MatrixBase_marked.cpp * Output: \verbinclude MatrixBase_marked.out diff --git a/Eigen/src/Geometry/AngleAxis.h b/Eigen/src/Geometry/AngleAxis.h index 639e75a87..abb9b50f6 100644 --- a/Eigen/src/Geometry/AngleAxis.h +++ b/Eigen/src/Geometry/AngleAxis.h @@ -25,9 +25,11 @@ #ifndef EIGEN_ANGLEAXIS_H #define EIGEN_ANGLEAXIS_H -/** \class AngleAxis +/** \geometry_module \ingroup Geometry * - * \brief Represents a rotation in a 3 dimensional space as a rotation angle around a 3D axis + * \class AngleAxis + * + * \brief Represents a 3D rotation as a rotation angle around an arbitray 3D axis * * \param _Scalar the scalar type, i.e., the type of the coefficients. * @@ -35,7 +37,7 @@ * \li \c AngleAxisf for \c float * \li \c AngleAxisd for \c double * - * \sa class Quaternion, class EulerAngles, class Transform + * \sa class Quaternion, class Transform */ template class AngleAxis diff --git a/Eigen/src/Geometry/Cross.h b/Eigen/src/Geometry/Cross.h index 61b630c2a..ab8f7528c 100644 --- a/Eigen/src/Geometry/Cross.h +++ b/Eigen/src/Geometry/Cross.h @@ -25,7 +25,8 @@ #ifndef EIGEN_CROSS_H #define EIGEN_CROSS_H -/** \returns the cross product of \c *this and \a other */ +/** \geometry_module + * \returns the cross product of \c *this and \a other */ template template inline typename ei_eval::type diff --git a/Eigen/src/Geometry/Quaternion.h b/Eigen/src/Geometry/Quaternion.h index fcc7e21ca..1d31e2f96 100644 --- a/Eigen/src/Geometry/Quaternion.h +++ b/Eigen/src/Geometry/Quaternion.h @@ -30,7 +30,9 @@ template struct ei_quaternion_assign_impl; -/** \class Quaternion +/** \geometry_module \ingroup Geometry + * + * \class Quaternion * * \brief The quaternion class used to represent 3D orientations and rotations * @@ -48,7 +50,7 @@ struct ei_quaternion_assign_impl; * \li \c Quaternionf for \c float * \li \c Quaterniond for \c double * - * \sa class AngleAxis, class EulerAngles, class Transform + * \sa class AngleAxis, class Transform */ template class Quaternion diff --git a/Eigen/src/Geometry/Rotation.h b/Eigen/src/Geometry/Rotation.h index fb4179786..e0855b739 100644 --- a/Eigen/src/Geometry/Rotation.h +++ b/Eigen/src/Geometry/Rotation.h @@ -28,7 +28,9 @@ // this file aims to contains the various representations of rotation/orientation // in 2D and 3D space excepted Matrix and Quaternion. -/** \class ToRotationMatrix +/** \geometry_module + * + * \class ToRotationMatrix * * \brief Template static struct to convert any rotation representation to a matrix form * @@ -101,7 +103,9 @@ struct ToRotationMatrix > } }; -/** \class Rotation2D +/** \geometry_module + * + * \class Rotation2D * * \brief Represents a rotation/orientation in a 2 dimensional space. * diff --git a/Eigen/src/Geometry/Transform.h b/Eigen/src/Geometry/Transform.h index 4428e3c74..7669838de 100644 --- a/Eigen/src/Geometry/Transform.h +++ b/Eigen/src/Geometry/Transform.h @@ -35,7 +35,9 @@ template< typename Other, int OtherCols=Other::ColsAtCompileTime> struct ei_transform_product_impl; -/** \class Transform +/** \geometry_module \ingroup Geometry + * + * \class Transform * * \brief Represents an homogeneous transformation in a N dimensional space * -- cgit v1.2.3