types.h
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 * @author Fabian Reister ( fabian dot reister at kit dot edu )
17 * @date 2021
18 * @copyright http://www.gnu.org/licenses/gpl-2.0.txt
19 * GNU General Public License
20 */
21
22#pragma once
23
24#include <Eigen/Geometry>
25
26#include <SimoxUtility/shapes/AxisAlignedBoundingBox.h>
27
34
36
37namespace armarx::armem
38{
45} // namespace armarx::armem
46
48{
49 struct Feature
50 {
51 float angle;
52 float scale;
53 Eigen::Vector2f point2d;
54 Eigen::Vector3f point3d;
55 std::vector<float> feature;
56 };
57
74} // namespace armarx::armem::clazz
75
77{
80
82 {
83 /**
84 * @brief id either pointing to a arondto::Robot or arondto::ArticulatedObject
85 *
86 */
88
89 std::string frame;
90 };
91
92 /**
93 * @brief ObjectAttachment describes a fixed transformation between an agent and an object.
94 *
95 * The transformation is defined as follows:
96 *
97 * agent.frame -> object root frame
98 *
99 */
112
113 /**
114 * @brief ArticulatedObjectAttachment describes a fixed transformation between an agent and an articulated object.
115 *
116 * The transformation is defined as follows:
117 *
118 * agent.frame -> object.frame
119 *
120 */
133
134} // namespace armarx::armem::attachment
135
137{
139
142} // namespace armarx::armem::articulated_object
143
144namespace armarx::armem::marker
145{
146 class Marker
147 {
148
149 public:
150 Marker(const armarx::armem::arondto::Marker& dto);
151 Marker(const std::string& name,
152 const FramedPose& markerPose,
153 const FramedPose& robotPose,
154 const FramedPose& rgbCameraPose,
155 const FramedPose& depthCameraPose);
156
157 std::string name;
163
165 };
166} // namespace armarx::armem::marker
The FramedPose class.
Definition FramedPose.h:281
A known object ID of the form "Dataset/ClassName" or "Dataset/ClassName/InstanceName".
Definition ObjectID.h:11
FramedPose getGlobalMarkerPose() const
Definition types.cpp:61
Marker(const armarx::armem::arondto::Marker &dto)
Definition types.cpp:47
armarx::armem::robot_state::Robots ArticulatedObjects
Definition types.h:141
armarx::armem::robot_state::Robot ArticulatedObject
Definition types.h:140
armarx::armem::robot_state::description::RobotDescription ArticulatedObjectDescription
Definition types.h:138
armem::MemoryID AgentID
Definition types.h:78
armem::MemoryID ObjectID
Definition types.h:79
armarx::core::time::DateTime Time
objpose::ObjectPose pose
Definition types.h:41
AgentID id
id either pointing to a arondto::Robot or arondto::ArticulatedObject
Definition types.h:87
ArticulatedObjectAttachment describes a fixed transformation between an agent and an articulated obje...
Definition types.h:122
ObjectAttachment describes a fixed transformation between an agent and an object.
Definition types.h:101
std::vector< float > feature
Definition types.h:55
Eigen::Vector3f point3d
Definition types.h:54
Eigen::Vector2f point2d
Definition types.h:53
armarx::PackagePath articulatedSdfPath
Definition types.h:66
armarx::PackagePath articulatedUrdfPath
Definition types.h:64
armarx::PackagePath simoxXmlPath
Definition types.h:61
armarx::PackagePath urdfPath
Definition types.h:63
armarx::PackagePath meshObjPath
Definition types.h:68
simox::OrientedBoxf oobb
Definition types.h:70
simox::AxisAlignedBoundingBox aabb
Definition types.h:69
armarx::PackagePath meshWrlPath
Definition types.h:67
armarx::PackagePath articulatedSimoxXmlPath
Definition types.h:62
std::vector< Feature > ivtFeatures
Definition types.h:72
armarx::PackagePath sdfPath
Definition types.h:65
An object pose as stored by the ObjectPoseStorage.
Definition ObjectPose.h:34