types.cpp
Go to the documentation of this file.
1
/*
2
* This file is part of ArmarX.
3
*
4
* ArmarX is free software; you can redistribute it and/or modify
5
* it under the terms of the GNU General Public License version 2 as
6
* published by the Free Software Foundation.
7
*
8
* ArmarX is distributed in the hope that it will be useful, but
9
* WITHOUT ANY WARRANTY; without even the implied warranty of
10
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
* GNU General Public License for more details.
12
*
13
* You should have received a copy of the GNU General Public License
14
* along with this program. If not, see <http://www.gnu.org/licenses/>.
15
*
16
* @package RobotAPI::ArmarXObjects::marker_pose_data
17
* @author Hawo Höfer ( uuujt at student dot kit dot edu )
18
* @date 2022
19
* @copyright http://www.gnu.org/licenses/gpl-2.0.txt
20
* GNU General Public License
21
*/
22
23
#include "
types.h
"
24
25
#include "
RobotAPI/libraries/core/FramedPose.h
"
26
#include <RobotAPI/libraries/armem_objects/aron/Marker.aron.generated.h>
27
#include <
RobotAPI/libraries/aron/common/aron_conversions/framed.h
>
28
29
#include "
aron_forward_declarations.h
"
30
31
namespace
armarx::armem::marker
32
{
33
Marker::Marker
(
const
std::string& name,
34
const
FramedPose
& framedMarkerPose,
35
const
FramedPose
& framedRobotPose,
36
const
FramedPose
& framedRGBCameraPose,
37
const
FramedPose
& framedDepthCameraPose) :
38
name(name),
39
robotGlobal(framedRobotPose),
40
rgbCamera(framedRGBCameraPose),
41
depthCamera(framedDepthCameraPose),
42
markerPose(framedMarkerPose)
43
{
44
markerGlobal
=
getGlobalMarkerPose
();
45
}
46
47
Marker::Marker
(
const
armarx::armem::arondto::Marker& dto) :
48
name(dto.name),
49
robotGlobal(
50
armarx
::
fromAron
<
armarx
::
FramedPose
,
armarx
::arondto::
FramedPose
>(dto.robotGlobal)),
51
rgbCamera(
armarx
::
fromAron
<
armarx
::
FramedPose
,
armarx
::arondto::
FramedPose
>(dto.rgbCamera)),
52
depthCamera(
53
armarx
::
fromAron
<
armarx
::
FramedPose
,
armarx
::arondto::
FramedPose
>(dto.depthCamera)),
54
markerPose(
55
armarx
::
fromAron
<
armarx
::
FramedPose
,
armarx
::arondto::
FramedPose
>(dto.markerPose))
56
{
57
markerGlobal
=
getGlobalMarkerPose
();
58
}
59
60
armarx::FramedPose
61
Marker::getGlobalMarkerPose
()
const
62
{
63
return
{
robotGlobal
.
toEigen
() *
depthCamera
.
toEigen
() *
markerPose
.
toEigen
(),
64
GlobalFrame
,
65
"marker"
};
66
}
67
68
}
// namespace armarx::armem::marker
framed.h
armarx::FramedPose
The FramedPose class.
Definition:
FramedPose.h:258
armarx::armem::marker::Marker::Marker
Marker(const armarx::armem::arondto::Marker &dto)
Definition:
types.cpp:47
armarx::GlobalFrame
const std::string GlobalFrame
Definition:
FramedPose.h:62
armarx::armem::marker::Marker::markerPose
FramedPose markerPose
Definition:
types.h:161
FramedPose.h
types.h
armarx::armem::marker::Marker::getGlobalMarkerPose
FramedPose getGlobalMarkerPose() const
Definition:
types.cpp:61
armarx::armem::marker::Marker::markerGlobal
FramedPose markerGlobal
Definition:
types.h:162
armarx::Pose::toEigen
virtual Eigen::Matrix4f toEigen() const
Definition:
Pose.cpp:334
armarx::armem::marker::Marker::robotGlobal
FramedPose robotGlobal
Definition:
types.h:158
armarx::armem::marker
Definition:
types.cpp:31
armarx::armem::marker::Marker::depthCamera
FramedPose depthCamera
Definition:
types.h:160
armarx::armem::fromAron
void fromAron(const arondto::MemoryID &dto, MemoryID &bo)
Definition:
aron_conversions.cpp:8
aron_forward_declarations.h
armarx
This file offers overloads of toIce() and fromIce() functions for STL container types.
Definition:
ArmarXTimeserver.cpp:28
RobotAPI
libraries
armem_objects
types.cpp
Generated on Sat Oct 12 2024 09:14:09 for armarx_documentation by
1.8.17