GCC Code Coverage Report


Directory: ./
File: examples/interpolation-SE3.cpp
Date: 2025-02-12 21:03:38
Exec Total Coverage
Lines: 24 24 100.0%
Branches: 26 52 50.0%

Line Branch Exec Source
1 #include <iostream>
2 #include "pinocchio/multibody/liegroup/liegroup.hpp"
3
4 using namespace pinocchio;
5
6 1 int main()
7 {
8 typedef double Scalar;
9
10 typedef SpecialEuclideanOperationTpl<3, Scalar> SE3Operation;
11
1/2
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
1 SE3Operation aSE3;
12
2/4
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
1 SE3Operation::ConfigVector_t pose_s, pose_g;
13
1/2
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
1 SE3Operation::TangentVector_t delta_u;
14
15 // Starting configuration
16
1/2
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
1 pose_s(0) = 1.0;
17
1/2
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
1 pose_s(1) = 1.0;
18
1/2
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
1 pose_s(2) = 1;
19
1/2
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
1 pose_s(3) = -0.13795;
20
1/2
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
1 pose_s(4) = 0.13795;
21
1/2
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
1 pose_s(5) = 0.69352;
22
1/2
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
1 pose_s(6) = 0.69352;
23
1/2
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
1 aSE3.normalize(pose_s);
24
25 // Goal configuration
26
1/2
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
1 pose_g(0) = 4;
27
1/2
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
1 pose_g(1) = 3;
28
1/2
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
1 pose_g(2) = 3;
29
1/2
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
1 pose_g(3) = -0.46194;
30
1/2
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
1 pose_g(4) = 0.331414;
31
1/2
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
1 pose_g(5) = 0.800103;
32
1/2
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
1 pose_g(6) = 0.191342;
33
1/2
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
1 aSE3.normalize(pose_g);
34
35
1/2
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
1 SE3Operation::ConfigVector_t pole_u;
36
1/2
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
1 aSE3.interpolate(pose_s, pose_g, 0.5, pole_u);
37
4/8
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
1 std::cout << "Interpolated configuration: " << pole_u.transpose() << std::endl;
38
39 1 return 0;
40 }
41