Skip to content

Commit

Permalink
Reorganize dox files
Browse files Browse the repository at this point in the history
  • Loading branch information
jlblancoc committed Aug 13, 2020
1 parent f2f46c5 commit 287b326
Show file tree
Hide file tree
Showing 9 changed files with 44 additions and 32 deletions.
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -22,4 +22,3 @@ cython/gtsam_wrapper.pxd
# for QtCreator:
CMakeLists.txt.user*
docs/build
docs/source/_static
2 changes: 1 addition & 1 deletion docs/Doxyfile
Original file line number Diff line number Diff line change
Expand Up @@ -2261,7 +2261,7 @@ HIDE_UNDOC_RELATIONS = YES
# set to NO
# The default value is: YES.

HAVE_DOT = NO
HAVE_DOT = YES

# The DOT_NUM_THREADS specifies the number of dot invocations doxygen is allowed
# to run in parallel. When set to 0 doxygen will base this on the number of
Expand Down
4 changes: 4 additions & 0 deletions docs/_static/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Ignore everything in this directory
*
# Except this file
!.gitignore
23 changes: 23 additions & 0 deletions docs/source/TutorialCreateNewFactor.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
Creating new factor and variable types
=======================================

GTSAM comes with a set of variable and factor types typically used in SFM and
SLAM. Geometry variables such as points and poses are in the geometry
subdirectory and module. Factors such as BetweenFactor and BearingFactor are in
the gtsam/slam directory.

To use GTSAM to solve your own problems, you will often have to create new factor
types, which derive either from NonlinearFactor or NoiseModelFactor, or one of
their derived types. Here is an outline of the options:

- The number of variables your factor involves is <b>unknown</b> at compile time - derive from NoiseModelFactor and implement NoiseModelFactor::unwhitenedError()

- This is a factor expressing the sum-of-squares error between a measurement \f$ z \f$ and a measurement prediction function \f$ h(x) \f$, on which the errors are expected to follow some distribution specified by a noise model (see noiseModel).

- The number of variables your factor involves is <b>known</b> at compile time and is between 1 and 6 - derive from NoiseModelFactor1, NoiseModelFactor2, NoiseModelFactor3, NoiseModelFactor4, NoiseModelFactor5, or NoiseModelFactor6, and implement <b>\c evaluateError()</b>

- This factor expresses the same sum-of-squares error with a noise model, but makes the implementation task slightly easier than with %NoiseModelFactor.

- Derive from NonlinearFactor

- This is more advanced and allows creating factors without an explicit noise model, or that linearize to HessianFactor instead of JacobianFactor.
1 change: 1 addition & 0 deletions docs/source/Tutorials.rst
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ Tutorials

KeyConcepts
FactorGraphsAndGTSAM
TutorialCreateNewFactor
CppExamples
PythonExamples
MatlabExamples
4 changes: 4 additions & 0 deletions docs/source/_static/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Ignore everything in this directory
*
# Except this file
!.gitignore
2 changes: 1 addition & 1 deletion docs/source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
read_the_docs_build = os.environ.get('READTHEDOCS', None) == 'True'

if read_the_docs_build:
subprocess.call('cd ..; mkdir -p build/html/doxygen/; doxygen; mkdir _static || true; cp -r build/html/doxygen source/_static/', shell=True)
subprocess.call('cd ..; mkdir -p build/html/doxygen/; doxygen; cp -r build/html/doxygen source/_static/', shell=True)

# -- Project information -----------------------------------------------------
project = u'GTSAM'
Expand Down
24 changes: 6 additions & 18 deletions gtsam/mainpage.dox
Original file line number Diff line number Diff line change
@@ -1,25 +1,13 @@
// This causes Doxygen to find classes inside the gtsam namespace without
// explicitly specifying it when writing class names.
namespace gtsam {
/**

\mainpage GTSAM

\section new_factor_variable_types Creating new factor and variable types

GTSAM comes with a set of variable and factor types typically used in SFM and
SLAM. Geometry variables such as points and poses are in the geometry
subdirectory and module. Factors such as BetweenFactor and BearingFactor are in
the gtsam/slam directory.
Get back to [main documentation root](../../../index.html)...

To use GTSAM to solve your own problems, you will often have to create new factor types, which derive either from NonlinearFactor or NoiseModelFactor, or one of their derived types. Here is an outline of the options:
\htmlonly
<script>
location.replace("../../../index.html")
</script>
\endhtmlonly

-# The number of variables your factor involves is <b>unknown</b> at compile time - derive from NoiseModelFactor and implement NoiseModelFactor::unwhitenedError()
- This is a factor expressing the sum-of-squares error between a measurement \f$ z \f$ and a measurement prediction function \f$ h(x) \f$, on which the errors are expected to follow some distribution specified by a noise model (see noiseModel).
-# The number of variables your factor involves is <b>known</b> at compile time and is between 1 and 6 - derive from NoiseModelFactor1, NoiseModelFactor2, NoiseModelFactor3, NoiseModelFactor4, NoiseModelFactor5, or NoiseModelFactor6, and implement <b>\c evaluateError()</b>
- This factor expresses the same sum-of-squares error with a noise model, but makes the implementation task slightly easier than with %NoiseModelFactor.
-# Derive from NonlinearFactor
- This is more advanced and allows creating factors without an explicit noise model, or that linearize to HessianFactor instead of JacobianFactor.

*/
}
15 changes: 4 additions & 11 deletions gtsam_unstable/mainpage.dox → gtsam_unstable/gtsam_unstable.dox
Original file line number Diff line number Diff line change
@@ -1,20 +1,13 @@
// This causes Doxygen to find classes inside the gtsam namespace without
// explicitly specifying it when writing class names.
namespace gtsam {

/**

\mainpage GTSAM_UNSTABLE

\section gtsam_unstable_overview GTSAM_UNSTABLE Overview
\page gtsam_unstable_overview gtsam_unstable overview

GTSAM_UNSTABLE is a set of experimental additions to GTSAM that are not fully ready to be
GTSAM_UNSTABLE is a set of experimental additions to GTSAM that are not fully ready to be
integrated into the rest of the library. This library is actively maintained,
and should follow the same design procedures as GTSAM.

Because parts of this library are supposed to be a part of GTSAM, all code should
be in the gtsam namespace, rather than a gtsam_unstable namespace.
be in the gtsam namespace, rather than a gtsam_unstable namespace.

*/

}
*/

0 comments on commit 287b326

Please sign in to comment.