Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Stack Of Tasks
pinocchio
Commits
77cf434f
Commit
77cf434f
authored
Sep 25, 2019
by
Joseph Mirabel
Browse files
[Doc] Add macro \cheatsheet + some documentation.
parent
566d2323
Changes
3
Hide whitespace changes
Inline
Side-by-side
doc/Doxyfile.extra.in
View file @
77cf434f
...
...
@@ -675,3 +675,9 @@ MATHJAX_RELPATH = MathJax/
# the tag USE_MATHJAX is set to YES.
MATHJAX_FORMAT = SVG
#---------------------------------------------------------------------------
# Aliases
#---------------------------------------------------------------------------
ALIASES += "cheatsheet=\xrefitem cheatsheet \"Remarkable identity\" \"Cheat sheet\""
src/multibody/liegroup/special-euclidean.hpp
View file @
77cf434f
...
...
@@ -439,6 +439,7 @@ namespace pinocchio
*
SE3
(
p1
.
matrix
(),
q1
.
derived
().
template
head
<
3
>())).
toVector
();
}
/// \cheatsheet \f$ \frac{\partial\ominus}{\partial q_1} {}^1X_0 = - \frac{\partial\ominus}{\partial q_0} \f$
template
<
ArgumentPosition
arg
,
class
ConfigL_t
,
class
ConfigR_t
,
class
JacobianOut_t
>
void
dDifference_impl
(
const
Eigen
::
MatrixBase
<
ConfigL_t
>
&
q0
,
const
Eigen
::
MatrixBase
<
ConfigR_t
>
&
q1
,
...
...
src/spatial/se3-base.hpp
View file @
77cf434f
...
...
@@ -10,15 +10,17 @@ namespace pinocchio
{
/** The rigid transform aMb can be seen in two ways:
*
* - given a point p expressed in frame B by its coordinate vector
Bp, aMb
* computes its coordinates in frame A by
A
p = aMb
Bp
.
* -
aMb
displaces a solid S centered at frame A into the solid centered in
* B. In particular, the origin of A is displaced at the origin of B:
$^aM_b
* ^aA = ^aB$.
* - given a point p expressed in frame B by its coordinate vector
\f$ ^bp \f$, \f$ ^aM_b \f$
* computes its coordinates in frame A by
\f$ ^a
p =
{}^
aM
_
b
{}^bp \f$
.
* -
\f$ ^aM_b \f$
displaces a solid S centered at frame A into the solid centered in
* B. In particular, the origin of A is displaced at the origin of B:
*
\f$^aM_b {}
^aA =
{}
^aB
\f
$.
* The rigid displacement is stored as a rotation matrix and translation vector by:
* aMb (x) = aRb*x + aAB
* where aAB is the vector from origin A to origin B expressed in coordinates A.
* \f$ ^aM_b x = {}^aR_b x + {}^aAB \f$
* where \f$^aAB\f$ is the vector from origin A to origin B expressed in coordinates A.
*
* \cheatsheet \f$ {}^aM_c = {}^aM_b {}^bM_c \f$
*/
template
<
class
Derived
>
struct
SE3Base
...
...
@@ -41,12 +43,21 @@ namespace pinocchio
}
operator
HomogeneousMatrixType
()
const
{
return
toHomogeneousMatrix
();
}
/**
* @brief The action matrix \f$ {}^aX_b \f$ of \f$ {}^aM_b \f$.
*
* \cheatsheet \f$ {}^a\nu_c = {}^aX_b {}^b\nu_c \f$
*/
ActionMatrixType
toActionMatrix
()
const
{
return
derived
().
toActionMatrix_impl
();
}
operator
ActionMatrixType
()
const
{
return
toActionMatrix
();
}
/**
* @brief The action matrix \f$ {}^bX_a \f$ of \f$ {}^aM_b \f$.
* \sa toActionMatrix()
*/
ActionMatrixType
toActionMatrixInverse
()
const
{
return
derived
().
toActionMatrixInverse_impl
();
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment