Wiki » History » Version 12
M. Rolf, 02/14/2012 02:10 PM
1 | 2 | M. Rolf | h1. Using the example binaries |
---|---|---|---|
2 | 2 | M. Rolf | |
3 | 11 | Anonymous | {{>toc}} |
4 | 11 | Anonymous | |
5 | 8 | M. Rolf | h3. Example 1: The ContinuumSegmentDemo (3D visualization) |
6 | 8 | M. Rolf | |
7 | 8 | M. Rolf | !/attachments/download/188/segmentdemo.jpg! |
8 | 8 | M. Rolf | |
9 | 8 | M. Rolf | This didactic example shows the geometric model underlying the simulated continuum kinematics, i.e. that each segment of a continuum robot behaves |
10 | 8 | M. Rolf | 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. |
11 | 9 | M. Rolf | The code shows how to use the basic class @ContinuumSegmentDrawable@, which takes take of the 3D rendering. |
12 | 8 | M. Rolf | |
13 | 8 | M. Rolf | h3. Example 2: The ContinuumRobotDemo (3D visualization) |
14 | 8 | M. Rolf | |
15 | 8 | M. Rolf | !/attachments/download/189/trunkdemo.jpg! |
16 | 8 | M. Rolf | |
17 | 10 | M. Rolf | h3. Example 3: The BhaTrajectoryPrediction |
18 | 10 | M. Rolf | |
19 | 10 | M. Rolf | !/attachments/download/190/predictiondemo.jpg! |
20 | 10 | M. Rolf | |
21 | 10 | M. Rolf | Predict and visualize the end-effector trajectory for the "Bionic Handling Assistant" morphology given a posture-trajectory. |
22 | 10 | M. Rolf | In the 3D visualization, press @N@ to generate a new trajectory. |
23 | 10 | M. Rolf | |
24 | 2 | M. Rolf | h2. Windows binaries |
25 | 2 | M. Rolf | |
26 | 6 | M. Rolf | In order to execute the examples, you need some "Microsoft Visual C++" libaries: |
27 | 2 | M. Rolf | * 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 |
28 | 2 | M. Rolf | * Having the "Microsoft Visual C++ 2010" development environment installed does the same job, of course. |
29 | 2 | M. Rolf | |
30 | 2 | M. Rolf | h2. Linux Debian packages |
31 | 2 | M. Rolf | |
32 | 12 | M. Rolf | There are debian-packages for "Ubuntu Linux Oneiric". Get them by adding the line |
33 | 12 | M. Rolf | <pre> |
34 | 12 | M. Rolf | deb http://packages.cor-lab.de/ubuntu/ oneiric testing |
35 | 12 | M. Rolf | </pre> |
36 | 12 | M. Rolf | to your @/etc/apt/sources.list@ file. Then type |
37 | 12 | M. Rolf | <pre> |
38 | 12 | M. Rolf | sudo apt-get install continuumkinematics-bin |
39 | 12 | M. Rolf | </pre> |
40 | 12 | M. Rolf | The example binaries will be installed to @/usr/bin/examples@. |
41 | 12 | M. Rolf | |
42 | 2 | M. Rolf | h2. Troubleshooting |
43 | 8 | M. Rolf | |
44 | 2 | M. Rolf | |
45 | 2 | M. Rolf | |
46 | 2 | M. Rolf | |
47 | 2 | M. Rolf | h1. Install and use from source |
48 | 2 | M. Rolf | |
49 | 2 | M. Rolf | h2. Dependencies |
50 | 2 | M. Rolf | |
51 | 2 | M. Rolf | * Required: "NemoMath":https://code.cor-lab.org/projects/nemomath/wiki/Wiki |
52 | 2 | M. Rolf | ** Which requires: "Eigen 2":http://eigen.tuxfamily.org/index.php?title=Main_Page |
53 | 2 | M. Rolf | ** Which requires: "Boost":http://www.boost.org/ (header-only parts) |
54 | 2 | M. Rolf | * Required: "CMake":http://www.cmake.org/ |
55 | 2 | M. Rolf | * 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. |
56 | 2 | M. Rolf | ** Which requires: "Qt 4":http://qt.nokia.com/ |
57 | 2 | M. Rolf | |
58 | 2 | M. Rolf | h2. Building from source |
59 | 2 | M. Rolf | |
60 | 5 | M. Rolf | * Get the source from https://code.cor-lab.org/svn/continuumkinematics, e.g. |
61 | 5 | M. Rolf | <pre> |
62 | 5 | M. Rolf | svn co https://code.cor-lab.org/svn/continuumkinematics</pre> |
63 | 5 | M. Rolf | * Build it under *Linux* (or MacOS???) |
64 | 1 | M. Rolf | <pre> |
65 | 1 | M. Rolf | cd continuumkinematics/build |
66 | 1 | M. Rolf | cmake -DCMAKE_INSTALL_PREFIX=${PREFIX} .. |
67 | 5 | M. Rolf | make install</pre> |
68 | 5 | M. Rolf | * Build it under *Windows/MSVC* |
69 | 5 | M. Rolf | <pre> |
70 | 5 | M. Rolf | cd continuumkinematics |
71 | 5 | M. Rolf | call project\build_vs.bat</pre> |
72 | 3 | M. Rolf | |
73 | 7 | M. Rolf | h2. Troubleshooting |
74 | 1 | M. Rolf | |
75 | 4 | M. Rolf | * 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: |
76 | 4 | M. Rolf | <pre> |
77 | 4 | M. Rolf | -DQT_QMAKE_EXECUTABLE="${PATH_TO_QMAKE}/qmake" </pre> |
78 | 3 | M. Rolf | * If you get linking errors like *@undefined reference to `QGLViewer::***'@*, you are probably linking against @libqglviewer-qt3@ instead of @qt4@ |
79 | 3 | M. Rolf | ** If you don't have the right version of @qglviewer@ around, install it. |
80 | 3 | M. Rolf | ** If cmake still does not configure the correct library, you can manually chose the correct path by setting the variables "@QGLVIEWER_*@": |
81 | 3 | M. Rolf | <pre> |
82 | 3 | M. Rolf | cmake -DCMAKE_INSTALL_PREFIX=${PREFIX} -DQGLVIEWER_INCLUDE_DIR=${QGL_QT4_DIR}/include -DQGLVIEWER_LIBRARIES=${QGL_QT4_DIR}/lib/${library_name} .. |
83 | 1 | M. Rolf | make install</pre> |
84 | 4 | M. Rolf | |
85 | 4 | M. Rolf | * When running the example binaries, you get the error message *@QWidget: Must construct a QApplication before a QPaintDevice@* |
86 | 4 | M. Rolf | ** 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. |
87 | 4 | M. Rolf | ** Solution: find out how QGLViewer was built (most likely as @release@) and set the build-configuration accordingly in the cmake call: |
88 | 1 | M. Rolf | <pre>-DCMAKE_BUILD_TYPE=[release/debug]</pre> |
89 | 7 | M. Rolf | |
90 | 7 | M. Rolf | h2. Platform/Compiler support |
91 | 7 | M. Rolf | |
92 | 7 | M. Rolf | Currently, the following combinations are explicitly supported and known to work: |
93 | 7 | M. Rolf | * *Ubuntu Linux/GCC* with Ubuntu version from @10.04 LTS (Lucid Lynx)@ and newer, and @GCC>=4.3@, 32bit as well as 64bit |
94 | 7 | M. Rolf | * *MacOS/CLang3.0* |
95 | 7 | M. Rolf | * *Windows 7/MSVC2010*, 32bit |
96 | 7 | M. Rolf | |
97 | 7 | M. Rolf | The following platforms are known _not_ to work: |
98 | 7 | M. Rolf | * GCC 4.2 or older |
99 | 7 | M. Rolf | * MSVC 2008 or older |