Visualization.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <atomic>
4
#include <cstdint>
5
#include <mutex>
6
#include <utility>
7
8
#include <Eigen/Core>
9
10
#include <
ArmarXCore/core/PackagePath.h
>
11
12
#include <
RobotAPI/components/ArViz/Client/Client.h
>
13
#include <
RobotAPI/components/ArViz/Client/ScopedClient.h
>
14
#include <
RobotAPI/components/ArViz/Client/elements/Robot.h
>
15
16
#include <
armarx/navigation/core/Trajectory.h
>
17
#include <
armarx/navigation/core/basic_types.h
>
18
19
namespace
armarx::navigation::util
20
{
21
22
class
Visualization
23
{
24
25
public
:
26
struct
Params
27
{
28
armarx::PackagePath
robotModelFileName
;
29
30
bool
enableVisualization
=
true
;
31
bool
enableTrajectoryVisualization
=
false
;
32
33
int
hideDelaySeconds
= 2;
// [s]
34
35
int
alphaValue
= 30;
36
};
37
38
Visualization
(
armarx::viz::Client
& arviz,
const
Params
& params);
39
40
Visualization
(
Visualization
&& other) noexcept :
41
params(std::move(other.params)), arviz(other.arviz), robotVis(other.robotVis)
42
{
43
}
44
45
void
setTarget
(
const
core::Pose
& m);
46
47
void
success
();
48
void
failed
();
49
50
51
void
visualize
(
const
core::GlobalTrajectory
& trajectory);
52
53
void
54
updateParams
(
const
Params
& params)
55
{
56
std::lock_guard g{paramsMutex};
57
this->params = params;
58
}
59
60
private
:
61
void
visualizeTrajectory(
const
core::GlobalTrajectory
& trajectory);
62
63
void
asyncHideDelayed();
64
65
std::atomic<std::int64_t> lastUpdate = 0;
66
67
// Params
68
std::mutex paramsMutex;
69
Params params;
70
71
// ArViz
72
std::mutex mutex;
73
armarx::viz::ScopedClient
arviz;
74
75
viz::Robot
robotVis{
""
};
76
};
77
78
}
// namespace armarx::navigation::util
Client.h
armarx::navigation::core::GlobalTrajectory
Definition:
Trajectory.h:70
armarx::navigation::util::Visualization::failed
void failed()
Definition:
Visualization.cpp:162
armarx::navigation::util::Visualization::Params::alphaValue
int alphaValue
Definition:
Visualization.h:35
Robot.h
armarx::navigation::util
This file is part of ArmarX.
Definition:
geometry.cpp:12
armarx::navigation::core::Pose
Eigen::Isometry3f Pose
Definition:
basic_types.h:31
basic_types.h
ScopedClient.h
armarx::viz::ScopedClient
viz::Client that will delete (clear) committed layers when destroyed.
Definition:
ScopedClient.h:42
armarx::navigation::util::Visualization::updateParams
void updateParams(const Params ¶ms)
Definition:
Visualization.h:54
armarx::navigation::util::Visualization::visualize
void visualize(const core::GlobalTrajectory &trajectory)
Definition:
Visualization.cpp:37
armarx::navigation::util::Visualization::setTarget
void setTarget(const core::Pose &m)
Definition:
Visualization.cpp:181
armarx::navigation::util::Visualization
Definition:
Visualization.h:22
armarx::navigation::util::Visualization::Visualization
Visualization(Visualization &&other) noexcept
Definition:
Visualization.h:40
armarx::navigation::util::Visualization::Params::hideDelaySeconds
int hideDelaySeconds
Definition:
Visualization.h:33
armarx::viz::Robot
Definition:
Robot.h:10
armarx::navigation::util::Visualization::Visualization
Visualization(armarx::viz::Client &arviz, const Params ¶ms)
Definition:
Visualization.cpp:23
armarx::navigation::util::Visualization::Params::enableTrajectoryVisualization
bool enableTrajectoryVisualization
Definition:
Visualization.h:31
armarx::navigation::util::Visualization::Params
Definition:
Visualization.h:26
Trajectory.h
armarx::viz::Client
Definition:
Client.h:117
armarx::PackagePath
Definition:
PackagePath.h:52
armarx::navigation::util::Visualization::Params::robotModelFileName
armarx::PackagePath robotModelFileName
Definition:
Visualization.h:28
armarx::navigation::util::Visualization::Params::enableVisualization
bool enableVisualization
Definition:
Visualization.h:30
armarx::navigation::util::Visualization::success
void success()
Definition:
Visualization.cpp:143
PackagePath.h
armarx
navigation
util
Visualization.h
Generated on Sat Mar 29 2025 09:17:38 for armarx_documentation by
1.8.17