scenario_simulator_v2 C++ API
common
math
geometry
include
geometry
quaternion
get_rotation.hpp
Go to the documentation of this file.
1
// Copyright 2015 TIER IV, Inc. All rights reserved.
2
//
3
// Licensed under the Apache License, Version 2.0 (the "License");
4
// you may not use this file except in compliance with the License.
5
// You may obtain a copy of the License at
6
//
7
// http://www.apache.org/licenses/LICENSE-2.0
8
//
9
// Unless required by applicable law or agreed to in writing, software
10
// distributed under the License is distributed on an "AS IS" BASIS,
11
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
// See the License for the specific language governing permissions and
13
// limitations under the License.
14
15
#ifndef GEOMETRY__QUATERNION__GET_ROTATION_HPP_
16
#define GEOMETRY__QUATERNION__GET_ROTATION_HPP_
17
18
#include <tf2/LinearMath/Matrix3x3.h>
19
20
#include <cmath>
21
#include <
geometry/quaternion/is_like_quaternion.hpp
>
22
#include <
geometry/quaternion/operator.hpp
>
23
24
namespace
math
25
{
26
namespace
geometry
27
{
28
template
<
29
typename
T,
typename
U,
30
std::enable_if_t<std::conjunction_v<IsLikeQuaternion<T>, IsLikeQuaternion<U>>, std::nullptr_t> =
31
nullptr
>
32
auto
getRotation
(T from, U to)
33
{
34
// This function gets the conjugate of the quaternion.
35
from.x *= -1;
36
from.y *= -1;
37
from.z *= -1;
38
return
from * to;
39
}
40
}
// namespace geometry
41
}
// namespace math
42
43
#endif
// GEOMETRY__QUATERNION__GET_ROTATION_HPP_
is_like_quaternion.hpp
math::geometry::getRotation
auto getRotation(T from, U to)
Definition:
get_rotation.hpp:32
math
Definition:
bounding_box.hpp:32
operator.hpp
Generated by
1.9.1