Wiki » History » Version 9

Version 8 (M. Rolf, 02/01/2012 12:36 PM) → Version 9/16 (M. Rolf, 02/01/2012 12:37 PM)

h1. Using the example binaries

h3. Example 1: The ContinuumSegmentDemo (3D visualization)

!/attachments/download/188/segmentdemo.jpg!

This didactic example shows the geometric model underlying the simulated continuum kinematics, i.e. that each segment of a continuum robot behaves
like a torus segment. The example shows an animated movement of such a segment. Press @Alt-T@(orus), @Alt-G@(eometry) to toggle various visualization modes.
The code shows how to use the basic class @ContinuumSegmentDrawable@, which takes take of the 3D rendering.


h3. Example 2: The ContinuumRobotDemo (3D visualization)

!/attachments/download/189/trunkdemo.jpg!

h2. Windows binaries

In order to execute the examples, you need some "Microsoft Visual C++" libaries:
* The easiest way to get them is installing the "Microsoft Visual C++ 2010 Redistributable Package" from http://www.microsoft.com/download/en/details.aspx?id=5555
* Having the "Microsoft Visual C++ 2010" development environment installed does the same job, of course.

h2. Linux Debian packages

h2. Troubleshooting

h1. Install and use from source

h2. Dependencies

* Required: "NemoMath":https://code.cor-lab.org/projects/nemomath/wiki/Wiki
** Which requires: "Eigen 2":http://eigen.tuxfamily.org/index.php?title=Main_Page
** Which requires: "Boost":http://www.boost.org/ (header-only parts)
* Required: "CMake":http://www.cmake.org/
* Optional: "libqglviewer-qt4-dev":http://www.libqglviewer.com/, in case you want to use the visualization. The pure kinematics part can be built and deployed without this dependency.
** Which requires: "Qt 4":http://qt.nokia.com/

h2. Building from source

* Get the source from https://code.cor-lab.org/svn/continuumkinematics, e.g.
<pre>
svn co https://code.cor-lab.org/svn/continuumkinematics</pre>
* Build it under *Linux* (or MacOS???)
<pre>
cd continuumkinematics/build
cmake -DCMAKE_INSTALL_PREFIX=${PREFIX} ..
make install</pre>
* Build it under *Windows/MSVC*
<pre>
cd continuumkinematics
call project\build_vs.bat</pre>

h2. Troubleshooting

* During configuration, cmake says *@Qt qmake not found!@*. Simply check out where the qmake binary is located in your filesystem and put this in your cmake call:
<pre>
-DQT_QMAKE_EXECUTABLE="${PATH_TO_QMAKE}/qmake" </pre>
* If you get linking errors like *@undefined reference to `QGLViewer::***'@*, you are probably linking against @libqglviewer-qt3@ instead of @qt4@
** If you don't have the right version of @qglviewer@ around, install it.
** If cmake still does not configure the correct library, you can manually chose the correct path by setting the variables "@QGLVIEWER_*@":
<pre>
cmake -DCMAKE_INSTALL_PREFIX=${PREFIX} -DQGLVIEWER_INCLUDE_DIR=${QGL_QT4_DIR}/include -DQGLVIEWER_LIBRARIES=${QGL_QT4_DIR}/lib/${library_name} ..
make install</pre>

* When running the example binaries, you get the error message *@QWidget: Must construct a QApplication before a QPaintDevice@*
** An annoying problem that is currently only observed under Windows/MSVC: It seems to happen when QGLViewer is built in *@release@* mode, but you build the @continuumkinematics@ code in *@debug@* mode, or vice versa.
** Solution: find out how QGLViewer was built (most likely as @release@) and set the build-configuration accordingly in the cmake call:
<pre>-DCMAKE_BUILD_TYPE=[release/debug]</pre>

h2. Platform/Compiler support

Currently, the following combinations are explicitly supported and known to work:
* *Ubuntu Linux/GCC* with Ubuntu version from @10.04 LTS (Lucid Lynx)@ and newer, and @GCC>=4.3@, 32bit as well as 64bit
* *MacOS/CLang3.0*
* *Windows 7/MSVC2010*, 32bit

The following platforms are known _not_ to work:
* GCC 4.2 or older
* MSVC 2008 or older