From 789ea9d6762b2a0b2c737978f83939853cdb9fc3 Mon Sep 17 00:00:00 2001 From: Benoit Jacob Date: Mon, 22 Dec 2008 20:50:47 +0000 Subject: unless i find more failures in the tests, this will be beta3... * fixes for mistakes (especially in the cast() methods in Geometry) revealed by the new "mixing types" test * dox love, including a section on coeff access in core and an overview in geometry --- doc/QuickStartGuide.dox | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'doc/QuickStartGuide.dox') diff --git a/doc/QuickStartGuide.dox b/doc/QuickStartGuide.dox index 81df4aa3d..446bade0c 100644 --- a/doc/QuickStartGuide.dox +++ b/doc/QuickStartGuide.dox @@ -14,6 +14,7 @@ namespace Eigen { - \ref TutorialCoreSimpleExampleFixedSize - \ref TutorialCoreSimpleExampleDynamicSize - \ref TutorialCoreMatrixTypes + - \ref TutorialCoreCoefficients - \ref TutorialCoreMatrixInitialization - \ref TutorialCoreArithmeticOperators - \ref TutorialCoreReductions @@ -87,8 +88,23 @@ For example, \c Vector3d is a typedef for \code Matrix \endcode For dynamic-size, that is in order to left the number of rows or of columns unspecified at compile-time, use the special value Eigen::Dynamic. For example, \c VectorXd is a typedef for \code Matrix \endcode +top\section TutorialCoreCoefficients Coefficient access +Eigen supports the following syntaxes for read and write coefficient access: +\code +matrix(i,j); +vector(i) +vector[i] +vector.x() // first coefficient +vector.y() // second coefficient +vector.z() // third coefficient +vector.w() // fourth coefficient +\endcode + +Notice that these coefficient access methods have assertions checking the ranges. So if you do a lot of coefficient access, these assertion can have an important cost. There are then two possibilities if you want avoid paying this cost: +\li Either you can disable assertions altogether, by defining EIGEN_NO_DEBUG or NDEBUG. Notice that some IDEs like MS Visual Studio define NDEBUG automatically in "Release Mode". +\li Or you can disable the checks on a case-by-case basis by using the coeff() and coeffRef() methods: see MatrixBase::coeff(int,int) const, MatrixBase::coeffRef(int,int), etc. top\section TutorialCoreMatrixInitialization Matrix and vector creation and initialization -- cgit v1.2.3